{"_id":"@coratch/ai-news-agent","_rev":"5-de2153f83419d7ea3593fb8e27ccfa91","name":"@coratch/ai-news-agent","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@coratch/ai-news-agent","version":"1.0.0","keywords":["ai","news","rss","claude","agent","newsletter","anthropic","llm"],"author":{"name":"Coratch"},"license":"MIT","_id":"@coratch/ai-news-agent@1.0.0","maintainers":[{"name":"coratch","email":"coratchb@gmail.com"}],"homepage":"https://github.com/Coratch/ai-news-agent#readme","bugs":{"url":"https://github.com/Coratch/ai-news-agent/issues"},"bin":{"ai-news":"bin/ai-news.js"},"dist":{"shasum":"9cadff8a5d7450c9e1068e111a55c25807854e52","tarball":"https://registry.npmjs.org/@coratch/ai-news-agent/-/ai-news-agent-1.0.0.tgz","fileCount":12,"integrity":"sha512-IqiCw+HG+gj6NxyrLvJabKHoEQTGTBT+3YvKUCbbn7ILitI/LIYtS6/KPB5SvwPHtX+KKYbYQa63KguDNYWO/Q==","signatures":[{"sig":"MEUCIDfi9UiV84+eCwHcvz/CIel3OgVqSbEV/XAxnNLeuIK1AiEA7Yx9xC8yJNIHCWNB70wmdz82a1X3VfHuJPwPWwl5qeA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37706},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"cd40229471c3739be29483fcd1f5ae97ec50ddf6","scripts":{"dev":"node bin/ai-news.js","start":"node bin/ai-news.js run"},"_npmUser":{"name":"coratch","email":"coratchb@gmail.com"},"repository":{"url":"git+https://github.com/Coratch/ai-news-agent.git","type":"git"},"_npmVersion":"10.8.2","description":"AI 前沿资讯智能订阅 Agent - 自动抓取 RSS、Claude AI 匹配关注点、生成中文摘要报告","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^8.1.1","yaml":"^2.7.0","chalk":"^5.4.1","inquirer":"^12.3.2","linkedom":"^0.18.6","commander":"^13.1.0","rss-parser":"^3.13.0","better-sqlite3":"^11.7.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-news-agent_1.0.0_1770631552180_0.17345669425259347","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@coratch/ai-news-agent","version":"1.0.1","keywords":["ai","news","rss","claude","agent","newsletter","anthropic","llm"],"author":{"name":"Coratch"},"license":"MIT","_id":"@coratch/ai-news-agent@1.0.1","maintainers":[{"name":"coratch","email":"coratchb@gmail.com"}],"homepage":"https://github.com/Coratch/ai-news-agent#readme","bugs":{"url":"https://github.com/Coratch/ai-news-agent/issues"},"bin":{"ai-news":"bin/ai-news.js"},"dist":{"shasum":"6693f882f5d19a2bc19072803c6564a548fc80e3","tarball":"https://registry.npmjs.org/@coratch/ai-news-agent/-/ai-news-agent-1.0.1.tgz","fileCount":12,"integrity":"sha512-ffABSkZtoyCkU5GEMb+96na89Ar5mmNAWZQVCLstRzZFr8nvCaVBhcfiFeVvtl+PJVRgaq2fGRZh8yg7U2BlVw==","signatures":[{"sig":"MEYCIQDqcvJp9BTP9Ij+2O9PkvdECDdVjSHzpZuMPWe29r3r1wIhALbExXIR5Wom9mJSYzX7wYu7t549h6eU4cmCcRWuaIoG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52318},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"4344d8f1cf3c9ae5241031886cc6fa3909757e1e","scripts":{"dev":"node bin/ai-news.js","start":"node bin/ai-news.js run"},"_npmUser":{"name":"coratch","email":"coratchb@gmail.com"},"repository":{"url":"git+https://github.com/Coratch/ai-news-agent.git","type":"git"},"_npmVersion":"10.8.2","description":"AI 前沿资讯智能订阅 Agent - 自动抓取 RSS、Claude AI 匹配关注点、生成中文摘要报告","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^8.1.1","yaml":"^2.7.0","chalk":"^5.4.1","inquirer":"^12.3.2","linkedom":"^0.18.6","commander":"^13.1.0","rss-parser":"^3.13.0","better-sqlite3":"^11.7.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-news-agent_1.0.1_1770690542810_0.2964076624255416","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@coratch/ai-news-agent","version":"1.0.2","keywords":["ai","news","rss","claude","agent","newsletter","anthropic","llm"],"author":{"name":"Coratch"},"license":"MIT","_id":"@coratch/ai-news-agent@1.0.2","maintainers":[{"name":"coratch","email":"coratchb@gmail.com"}],"homepage":"https://github.com/Coratch/ai-news-agent#readme","bugs":{"url":"https://github.com/Coratch/ai-news-agent/issues"},"bin":{"ai-news":"bin/ai-news.js"},"dist":{"shasum":"4e8d6662684160edc6c5b98f2c077dc28bbf78df","tarball":"https://registry.npmjs.org/@coratch/ai-news-agent/-/ai-news-agent-1.0.2.tgz","fileCount":12,"integrity":"sha512-KJbFoOtQydHoo+OIUtduYYgLaFPLDlv8as8z08vp7/04CjjhgFnE9hxlaJ7F3L8oGbR/B4MelYM5mxgxLobM5A==","signatures":[{"sig":"MEUCIQD+bOuGNWshrna6eaqO0U2/15vLgj+VC2aHao3ID+xVwAIgbzqGaWkmo3sJEsf0rLUU3XcSPX39IbrbGYiUtofGatA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52320},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"cd96593cbe8ff4c33bb40d078bcae0d821c25086","scripts":{"dev":"node bin/ai-news.js","start":"node bin/ai-news.js run"},"_npmUser":{"name":"coratch","email":"coratchb@gmail.com"},"repository":{"url":"git+https://github.com/Coratch/ai-news-agent.git","type":"git"},"_npmVersion":"10.8.2","description":"AI 前沿资讯智能订阅 Agent - 自动抓取 RSS、Claude AI 匹配关注点、生成中文摘要报告","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^8.1.1","yaml":"^2.7.0","chalk":"^5.4.1","inquirer":"^12.3.2","linkedom":"^0.18.6","commander":"^13.1.0","rss-parser":"^3.13.0","better-sqlite3":"^11.7.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-news-agent_1.0.2_1770691485544_0.2769754955734327","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@coratch/ai-news-agent","version":"1.0.3","keywords":["ai","news","rss","claude","agent","newsletter","anthropic","llm"],"author":{"name":"Coratch"},"license":"MIT","_id":"@coratch/ai-news-agent@1.0.3","maintainers":[{"name":"coratch","email":"coratchb@gmail.com"}],"homepage":"https://github.com/Coratch/ai-news-agent#readme","bugs":{"url":"https://github.com/Coratch/ai-news-agent/issues"},"bin":{"ai-news":"bin/ai-news.js"},"dist":{"shasum":"834bad9e9830867dc5397ef1b3d0a382d93faa9d","tarball":"https://registry.npmjs.org/@coratch/ai-news-agent/-/ai-news-agent-1.0.3.tgz","fileCount":12,"integrity":"sha512-3qM8Jb3EqvX5xftGTyi2o9Bx3PnefIi1awWoEo2KWTKk6h4Z2B8ZbtV9g7SkD66ukDXHRzkC2uBh6wEw9uYpzg==","signatures":[{"sig":"MEYCIQCX2gW8dKSzy7J9ZsD1gvz71hDTdODOOdF4EI67WZ2CRAIhANcGo+ubMKebmkav0iDnqQcihJKURJto2/NBWq4NioTa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52440},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"faf95fc0679123a041139b6788f877ee9ac6acf2","scripts":{"dev":"node bin/ai-news.js","start":"node bin/ai-news.js run"},"_npmUser":{"name":"coratch","email":"coratchb@gmail.com"},"repository":{"url":"git+https://github.com/Coratch/ai-news-agent.git","type":"git"},"_npmVersion":"10.8.2","description":"AI 前沿资讯智能订阅 Agent - 自动抓取 RSS、Claude AI 匹配关注点、生成中文摘要报告","directories":{},"_nodeVersion":"20.19.5","dependencies":{"ora":"^8.1.1","yaml":"^2.7.0","chalk":"^5.4.1","inquirer":"^12.3.2","linkedom":"^0.18.6","commander":"^13.1.0","rss-parser":"^3.13.0","better-sqlite3":"^11.7.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-news-agent_1.0.3_1770694038652_0.9293470640524388","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@coratch/ai-news-agent","version":"1.1.0","description":"AI 前沿资讯智能订阅 Agent - 自动抓取 RSS、Claude AI 匹配关注点、生成中文摘要报告","type":"module","bin":{"ai-news":"bin/ai-news.js"},"scripts":{"start":"node bin/ai-news.js run","dev":"node bin/ai-news.js"},"keywords":["ai","news","rss","claude","agent","newsletter","anthropic","llm"],"author":{"name":"Coratch"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/Coratch/ai-news-agent.git"},"homepage":"https://github.com/Coratch/ai-news-agent#readme","bugs":{"url":"https://github.com/Coratch/ai-news-agent/issues"},"dependencies":{"@anthropic-ai/sdk":"^0.39.0","better-sqlite3":"^11.7.0","chalk":"^5.4.1","commander":"^13.1.0","inquirer":"^12.3.2","linkedom":"^0.18.6","nodemailer":"^8.0.1","ora":"^8.1.1","rss-parser":"^3.13.0","yaml":"^2.7.0"},"engines":{"node":">=18.0.0"},"_id":"@coratch/ai-news-agent@1.1.0","gitHead":"e6e46e0b89e1a499de5dcf5114805222e842777c","_nodeVersion":"20.19.5","_npmVersion":"10.8.2","dist":{"integrity":"sha512-vc9dr0VsSiyqw3jKy0M9dnbthJZxCZfS6E+Wv1KwoORHtz0JCiBAic8GV+pQ/+QvbPnW4+U4T0DBGc6QT+RjjQ==","shasum":"52401a09f6686637def310959d00f8bedb0ca5f5","tarball":"https://registry.npmjs.org/@coratch/ai-news-agent/-/ai-news-agent-1.1.0.tgz","fileCount":13,"unpackedSize":63478,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDIkOpRK9TDbujYm5qyHDqijcITTFo3PbKyCO1/38go3AIhAO7qu2sZvWHTIwZrVmSldI8WUct3xuRtgcIf24edfJVb"}]},"_npmUser":{"name":"coratch","email":"coratchb@gmail.com"},"directories":{},"maintainers":[{"name":"coratch","email":"coratchb@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ai-news-agent_1.1.0_1770723579861_0.39688421830277965"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-09T10:05:52.025Z","modified":"2026-02-10T11:39:40.140Z","1.0.0":"2026-02-09T10:05:52.323Z","1.0.1":"2026-02-10T02:29:03.019Z","1.0.2":"2026-02-10T02:44:45.688Z","1.0.3":"2026-02-10T03:27:18.818Z","1.1.0":"2026-02-10T11:39:40.019Z"},"bugs":{"url":"https://github.com/Coratch/ai-news-agent/issues"},"author":{"name":"Coratch"},"license":"MIT","homepage":"https://github.com/Coratch/ai-news-agent#readme","keywords":["ai","news","rss","claude","agent","newsletter","anthropic","llm"],"repository":{"type":"git","url":"git+https://github.com/Coratch/ai-news-agent.git"},"description":"AI 前沿资讯智能订阅 Agent - 自动抓取 RSS、Claude AI 匹配关注点、生成中文摘要报告","maintainers":[{"name":"coratch","email":"coratchb@gmail.com"}],"readme":"# AI News Agent\n\nAI 前沿资讯智能订阅 Agent — 自动抓取 RSS 订阅源，通过 AI 智能匹配用户关注点，生成中文摘要报告。支持 Anthropic Claude 和 MiniMax 双后端。\n\n## 项目概览\n\n### 痛点\n- AI 领域资讯爆炸，手动追踪效率低\n- 关注的技术方向（如 Claude Code 新版本特性）散落在多个博客/论坛，容易遗漏\n- 英文资讯需要额外时间阅读理解\n\n### 目标价值\n- 自动聚合多个 RSS 源的 AI 资讯\n- 基于用户自定义的关注主题，AI 智能筛选匹配文章\n- 生成中文摘要 + 行动建议，节省 80% 的信息获取时间\n\n## 架构\n\n```\nRSS 订阅源 → 抓取解析 → 去重(SQLite) → AI 快速筛选 → 正文提取 → AI 深度分析 → 多格式输出(终端/Markdown/HTML/邮件)\n                                         (阶段1)                    (阶段2)\n                                    ┌─────────────────────┐\n                                    │  Anthropic Claude    │\n                              AI 后端│  或                  │\n                                    │  MiniMax (M2.1 等)   │\n                                    └─────────────────────┘\n```\n\n**两阶段 AI 分析策略**（控制成本）：\n1. **快速筛选**：仅传标题+摘要（几百 token），批量判断是否匹配用户关注点\n2. **深度分析**：仅对匹配文章提取全文，生成中文摘要和行动建议\n\n## 快速开始\n\n### 方式一：npm 全局安装（推荐）\n\n```bash\nnpm install -g @coratch/ai-news-agent\n```\n\n安装后直接使用 `ai-news` 命令。\n\n### 方式二：从源码安装\n\n```bash\ngit clone https://github.com/Coratch/ai-news-agent.git\ncd ai-news-agent\nnpm install\nnpm link  # 全局注册 ai-news 命令\n```\n\n### 设置 API Key\n\n支持两种 AI 后端，选择其一即可：\n\n**方式 A：Anthropic Claude（默认）**\n\n```bash\nexport ANTHROPIC_API_KEY=your-api-key\n```\n\n**方式 B：MiniMax**\n\n```bash\nexport AI_PROVIDER=minimax\nexport MINIMAX_API_KEY=your-api-key\n```\n\n> MiniMax 通过 Anthropic SDK 兼容端点接入，无需额外安装依赖。\n\n### 初始化配置\n\n```bash\nai-news init\n```\n\n交互式创建配置，选择 RSS 源和关注主题。\n\n### 运行\n\n```bash\n# 正常模式（需要 API Key）\nai-news run\n\n# Dry-run 模式（本地关键词匹配，无需 API Key）\nai-news run --dry-run\n```\n\n## CLI 命令\n\n| 命令 | 说明 |\n|------|------|\n| `ai-news init` | 交互式初始化配置 |\n| `ai-news run` | 执行一次抓取+分析 |\n| `ai-news run --dry-run` | 跳过 AI，使用本地关键词匹配 |\n| `ai-news add-feed` | 添加 RSS 订阅源 |\n| `ai-news add-topic` | 添加关注主题 |\n| `ai-news config-email` | 交互式配置邮件通知 |\n| `ai-news test-email` | 发送测试邮件验证配置 |\n| `ai-news history` | 查看历史匹配记录 |\n| `ai-news config` | 显示当前配置（含邮件状态） |\n\n## 配置文件\n\n配置文件位于 `~/.ai-news-agent/config.yaml`：\n\n```yaml\n# RSS 订阅源\nfeeds:\n  - name: \"Hacker News - Claude\"\n    url: \"https://hnrss.org/newest?q=claude+anthropic\"\n\n# 关注主题（AI 据此匹配文章）\ntopics:\n  - name: \"Claude Code 版本特性\"\n    description: \"Claude Code CLI 工具的新版本发布、新功能、效率提升特性\"\n    keywords: [\"claude code\", \"claude cli\"]\n    priority: high  # high/medium/low\n\n# 邮件通知（可选，运行 ai-news config-email 交互式配置）\noutput:\n  email:\n    enabled: false\n    smtp:\n      host: \"smtp.163.com\"\n      port: 465\n      secure: true\n      user: \"your-email@163.com\"\n      pass: \"your-auth-code\"        # 邮箱授权码（非登录密码）\n    from: \"AI News <your-email@163.com>\"\n    to:\n      - \"recipient@example.com\"\n    subjectPrefix: \"AI 资讯日报\"\n\n# AI API 设置\n# 支持 Anthropic 和 MiniMax 双后端，通过环境变量 AI_PROVIDER 切换\nclaude:\n  model: \"claude-haiku-4-5-20251001\"  # 或 MiniMax-M2.1 / MiniMax-M2.1-lightning\n  max_articles_per_run: 50\n```\n\n### 可用模型\n\n| 后端 | 模型 | 特点 |\n|------|------|------|\n| Anthropic | `claude-haiku-4-5-20251001` | 快速、低成本（默认） |\n| Anthropic | `claude-sonnet-4-5-20250929` | 更强能力 |\n| MiniMax | `MiniMax-M2.1` | 多语言编程能力强，~60 tps |\n| MiniMax | `MiniMax-M2.1-lightning` | 更快更轻量，~100 tps |\n| MiniMax | `MiniMax-M2` | 高级推理与 Agent 能力 |\n\n## 输出示例\n\n### 终端输出\n\n```\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n  AI 资讯日报 — 2026/2/9\n  已扫描 4 个源 | 32 篇文章 | 新增 32 篇 | 命中 4 篇\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n  [HIGH] Claude Code 版本特性\n  Claude Code 1.0.20: 支持后台 Agent 模式\n  来源: Anthropic Blog | 2026/2/8 10:00\n\n  新版本引入后台 Agent 模式，允许多个任务并行执行...\n\n   • 后台 Agent 支持并行任务\n   • 新增 /compact 命令优化上下文管理\n\n  → 立即升级，后台 Agent 对多任务开发场景有直接帮助\n```\n\n### Markdown / HTML 报告\n\n自动保存到 `~/.ai-news-agent/reports/YYYY-MM-DD.md` 和 `YYYY-MM-DD.html`\n\n### 邮件通知\n\n配置后，每次 `ai-news run` 匹配到文章会自动发送邮件报告：\n\n```bash\n# 1. 交互式配置 SMTP（支持 QQ、网易、Gmail 等）\nai-news config-email\n\n# 2. 发送测试邮件验证\nai-news test-email\n\n# 3. 正常运行，自动发送邮件\nai-news run\n```\n\n邮件发送失败不会阻断主流程，本地报告始终正常生成。\n\n## 技术栈\n\n| 组件 | 技术 | 用途 |\n|------|------|------|\n| RSS 解析 | rss-parser | 抓取和解析 RSS feed |\n| 正文提取 | linkedom | 从网页 HTML 提取正文 |\n| AI 分析 | @anthropic-ai/sdk | AI 匹配+摘要（支持 Anthropic / MiniMax） |\n| 数据存储 | better-sqlite3 | 文章去重和历史记录 |\n| CLI 框架 | commander + inquirer | 命令行交互 |\n| 邮件发送 | nodemailer | SMTP 邮件通知 |\n| 终端美化 | chalk + ora | 彩色输出和进度动画 |\n\n## 项目结构\n\n```\nai-news-agent/\n├── bin/\n│   └── ai-news.js          # CLI 入口\n├── src/\n│   ├── index.js             # 主流程编排\n│   ├── config.js            # 配置管理\n│   ├── feeds.js             # RSS 抓取\n│   ├── extractor.js         # 网页正文提取\n│   ├── analyzer.js          # AI 分析（Anthropic / MiniMax 双后端）\n│   ├── storage.js           # SQLite 去重存储\n│   ├── output.js            # 终端+Markdown+HTML 输出\n│   └── email.js             # 邮件发送（SMTP/nodemailer）\n├── config.example.yaml      # 配置示例\n├── package.json\n└── README.md\n```\n\n## 效果预估\n\n| 指标 | 手动方式 | 使用 Agent |\n|------|---------|-----------|\n| 每日信息获取时间 | 30-60 分钟 | 2 分钟（看报告） |\n| 遗漏重要资讯概率 | 高 | 低（自动化覆盖） |\n| 英文资讯理解成本 | 高 | 低（中文摘要） |\n| API 成本 | - | ~$0.01/次（Haiku / MiniMax） |\n\n## 后续规划\n\n- [x] 邮件通知（SMTP/nodemailer）\n- [ ] 定时任务（node-cron / 系统 crontab）\n- [ ] 更多 RSS 源预设（arxiv、GitHub trending 等）\n- [ ] Web UI 管理界面\n- [ ] 多用户支持\n","readmeFilename":"README.md"}