deep-research
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseDeep Research
深度研究
Analyze any topic, domain, or paper and generate a beautiful HTML report using Actionbook browser automation and json-ui rendering.
分析任意主题、领域或论文,并通过Actionbook浏览器自动化与json-ui渲染生成美观的HTML报告。
Usage
使用方法
/deep-research:analyze <topic>
/deep-research:analyze <topic> --lang zh
/deep-research:analyze <topic> --output ./reports/my-report.jsonOr simply tell Claude: "帮我深度研究 XXX 并生成报告" / "Research XXX and generate a report"
/deep-research:analyze <主题>
/deep-research:analyze <主题> --lang zh
/deep-research:analyze <主题> --output ./reports/my-report.json或者直接告诉Claude:"帮我深度研究 XXX 并生成报告" / "Research XXX and generate a report"
Parameters
参数说明
| Parameter | Required | Default | Description |
|---|---|---|---|
| Yes | - | The subject to research (any text) |
| No | | Language: |
| No | | Output path for JSON report |
| 参数 | 是否必填 | 默认值 | 说明 |
|---|---|---|---|
| 是 | - | 要研究的主题(任意文本) |
| 否 | | 语言选项: |
| 否 | | JSON报告的输出路径 |
Topic Detection
主题检测
| Pattern | Type | Strategy |
|---|---|---|
| Paper | arXiv Advanced Search (Step 2b) + ar5iv deep read |
| Paper | Resolve DOI, then arXiv Advanced Search for related work |
| Academic keywords (paper, research, model, algorithm) | Academic topic | arXiv Advanced Search (Step 2b) + Google for non-academic sources |
| URL | Specific page | Fetch and analyze the page |
| General text | Topic research | Google search + arXiv Advanced Search if relevant |
| 匹配模式 | 类型 | 策略 |
|---|---|---|
| 学术论文 | arXiv高级搜索(步骤2b)+ ar5iv深度读取 |
| 学术论文 | 解析DOI,然后通过arXiv高级搜索查找相关研究 |
| 学术关键词(paper、research、model、algorithm) | 学术主题 | arXiv高级搜索(步骤2b)+ 谷歌搜索非学术来源 |
| URL | 特定页面 | 获取并分析页面内容 |
| 通用文本 | 主题研究 | 谷歌搜索 + 相关时使用arXiv高级搜索 |
Architecture
架构
┌──────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────┐
│ Claude │────▶│ Actionbook │────▶│ Web Pages │────▶│ Extract │
│ Code │ │ Browser CLI │ │ (multiple) │ │ Content │
└──────────┘ └──────────────┘ └──────────────┘ └─────┬────┘
│ │
│ ┌──────────────┐ ┌──────────────┐ │
├─────────▶│ Actionbook │ │ arXiv Adv. │ │
│ │ search/get │────▶│ Search Form │──────────▶│
│ │ (selectors) │ │ (40+ fields) │ │
│ └──────────────┘ └──────────────┘ │
│ │
│ Actionbook indexes arXiv form selectors, │
│ enabling field-specific, filtered academic │
│ searches that WebFetch/WebSearch CANNOT do. │
│ │
┌──────────┐ ┌──────────────┐ ┌──────────────┐ │
│ Open in │◀────│ json-ui │◀────│ Write JSON │◀──────────┘
│ Browser │ │ render │ │ Report │ Synthesize
└──────────┘ └──────────────┘ └──────────────┘┌──────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────┐
│ Claude │────▶│ Actionbook │────▶│ Web Pages │────▶│ Extract │
│ Code │ │ Browser CLI │ │ (multiple) │ │ Content │
└──────────┘ └──────────────┘ └──────────────┘ └─────┬────┘
│ │
│ ┌──────────────┐ ┌──────────────┐ │
├─────────▶│ Actionbook │ │ arXiv Adv. │ │
│ │ search/get │────▶│ Search Form │──────────▶│
│ │ (selectors) │ │ (40+ fields) │ │
│ └──────────────┘ └──────────────┘ │
│ │
│ Actionbook indexes arXiv form selectors, │
│ enabling field-specific, filtered academic │
│ searches that WebFetch/WebSearch CANNOT do. │
│ │
┌──────────┐ ┌──────────────┐ ┌──────────────┐ │
│ Open in │◀────│ json-ui │◀────│ Write JSON │◀──────────┘
│ Browser │ │ render │ │ Report │ Synthesize
└──────────┘ └──────────────┘ └──────────────┘Why Actionbook, Not WebFetch/WebSearch?
为何选择Actionbook而非WebFetch/WebSearch?
| Capability | Actionbook | WebFetch/WebSearch |
|---|---|---|
| Operate complex web forms (dropdowns, checkboxes, date pickers) | Yes — uses indexed selectors | No |
| arXiv: search by Author, Title, Abstract separately | Yes — | No — keyword only |
| arXiv: filter by subject (CS, Physics, Math, ...) | Yes — category checkboxes | No |
| arXiv: filter by date range or specific year | Yes — date inputs | No |
| Read pages with verified selectors (no guessing) | Yes — | No — raw HTML parse |
| Interact with any indexed site's UI | Yes — click, type, select | No — read-only |
This is the core value of Actionbook for research: it turns web forms into structured, programmable interfaces for AI agents.
| 功能 | Actionbook | WebFetch/WebSearch |
|---|---|---|
| 操作复杂网页表单(下拉框、复选框、日期选择器) | 是 — 使用索引化选择器 | 否 |
| arXiv:按作者、标题、摘要单独搜索 | 是 — 通过 | 否 — 仅支持关键词搜索 |
| arXiv:按学科筛选(计算机科学、物理学、数学等) | 是 — 分类复选框 | 否 |
| arXiv:按日期范围或特定年份筛选 | 是 — 日期输入框 | 否 |
| 通过验证后的选择器读取页面内容(无需猜测) | 是 — 使用 | 否 — 仅支持原始HTML解析 |
| 与任意索引化网站的UI交互 | 是 — 支持点击、输入、选择操作 | 否 — 仅支持只读访问 |
这正是Actionbook用于研究的核心价值:它将网页表单转化为AI Agent可调用的结构化、可编程接口。
MUST USE Actionbook CLI
必须使用Actionbook CLI
Always use commands for web browsing. Never use WebFetch or WebSearch.
actionbook browserbash
actionbook browser open <url> # Navigate to page
actionbook browser snapshot # Get accessibility tree
actionbook browser text [selector] # Extract text content
actionbook browser screenshot [path] # Capture visual
actionbook browser click <selector> # Click element
actionbook browser close # Close browser (ALWAYS do this at end)始终使用命令进行网页浏览,切勿使用WebFetch或WebSearch。
actionbook browserbash
actionbook browser open <url> # 导航至页面
actionbook browser snapshot # 获取可访问性树
actionbook browser text [selector] # 提取文本内容
actionbook browser screenshot [path] # 捕获截图
actionbook browser click <selector> # 点击元素
actionbook browser close # 关闭浏览器(务必在最后执行)Complete Workflow
完整工作流程
Step 1: Plan Search Strategy
步骤1:规划搜索策略
Based on the topic, generate 5-8 search queries from different angles:
- Core definition / overview
- Latest developments / news
- Technical details / implementation
- Comparisons / alternatives
- Expert opinions / analysis
- Use cases / applications
Search order — ALWAYS query Actionbook API first, then search:
| Step | Action | Why |
|---|---|---|
| Step 2 (FIRST) | Query Actionbook API | Get verified selectors for arXiv Advanced Search form, ar5iv papers, and any other known sites BEFORE browsing. This is the foundation for all subsequent steps. |
| Step 3 (SECOND) | arXiv Advanced Search | Use Actionbook selectors from Step 2 to perform multi-field, filtered academic search. Even non-academic topics often have relevant papers. |
| Step 4 (THIRD) | Google / Bing search | Supplement with blogs, news, code, discussions, non-academic sources. |
IMPORTANT: Always query Actionbook API first (Step 2) to get selectors, then use them in arXiv Advanced Search (Step 3). This is what makes Actionbook-powered research fundamentally different from WebFetch/WebSearch — the agent knows the exact selectors for every form field before it even opens the browser.
根据主题,从不同角度生成5-8个搜索查询:
- 核心定义/概述
- 最新进展/新闻
- 技术细节/实现方案
- 对比分析/替代方案
- 专家观点/深度分析
- 应用场景/实际案例
搜索顺序 — 始终先调用Actionbook API,再进行搜索:
| 步骤 | 操作 | 原因 |
|---|---|---|
| 步骤2(优先) | 调用Actionbook API | 在浏览前获取arXiv高级搜索表单、ar5iv论文及其他已知网站的验证选择器,这是后续所有步骤的基础。 |
| 步骤3(其次) | arXiv高级搜索 | 使用步骤2获取的Actionbook选择器执行多字段、多条件的学术搜索。即使是非学术主题,通常也有相关论文可供参考。 |
| 步骤4(最后) | 谷歌/必应搜索 | 补充博客、新闻、代码、讨论等非学术来源的信息。 |
重要提示: 始终先调用Actionbook API(步骤2)获取选择器,再用于arXiv高级搜索(步骤3)。这正是基于Actionbook的研究与WebFetch/WebSearch的根本区别 — Agent在打开浏览器前就已知道每个表单字段的确切选择器。
Step 2: Query Actionbook API for Selectors (ALWAYS DO THIS FIRST)
步骤2:调用Actionbook API获取选择器(务必优先执行)
BEFORE browsing any URL, query Actionbook's indexed selectors. This gives you verified CSS/XPath selectors instead of guessing.
bash
undefined在浏览任何URL之前,先查询Actionbook的索引化选择器。 这样可以获取经过验证的CSS/XPath选择器,无需猜测。
bash
undefinedSearch for indexed actions by domain
按域名搜索索引化操作
actionbook search "<keywords>" -d "<domain>"
actionbook search "<关键词>" -d "<域名>"
Get detailed selectors for a specific page
获取特定页面的详细选择器
actionbook get "<domain>:/<path>:<area>"
**Pre-indexed sites useful for research:**
| Site | area_id | Key Selectors |
|------|---------|---------------|
| arXiv Advanced Search | `arxiv.org:/search/advanced:default` | **40+ selectors**: field select, term input, category checkboxes (CS/Physics/Math/...), date range filters, cross-list control — used in Step 3 |
| ar5iv paper | `ar5iv.labs.arxiv.org:/html/{paper_id}:default` | `h1.ltx_title_document` (title), `div.ltx_authors` (authors), `div.ltx_abstract` (abstract), `section.ltx_section` (sections) |
| Google Scholar | `scholar.google.com:/:default` | `#gs_hdr_tsi` (search input), `#gs_hdr_tsb` (search button) |
| arXiv homepage | `arxiv.org:/:default` | Global search across 2.4M+ articles |
**For any URL you plan to visit**, run `actionbook search "<keywords>" -d "<domain>"` to check if it's indexed. Use indexed selectors when available; fall back to `actionbook browser snapshot` for unindexed sites.
**Example: Get arXiv Advanced Search selectors before searching:**
```bashactionbook get "<域名>:/<路径>:<区域>"
**对研究有用的预索引网站:**
| 网站 | 区域ID | 关键选择器 |
|------|---------|---------------|
| arXiv高级搜索 | `arxiv.org:/search/advanced:default` | **40+个选择器**:字段选择、术语输入、分类复选框(计算机科学/物理学/数学等)、日期范围筛选、跨列表控制 — 用于步骤3 |
| ar5iv论文 | `ar5iv.labs.arxiv.org:/html/{paper_id}:default` | `h1.ltx_title_document`(标题)、`div.ltx_authors`(作者)、`div.ltx_abstract`(摘要)、`section.ltx_section`(章节) |
| 谷歌学术 | `scholar.google.com:/:default` | `#gs_hdr_tsi`(搜索输入框)、`#gs_hdr_tsb`(搜索按钮) |
| arXiv首页 | `arxiv.org:/:default` | 可搜索240万+篇文章的全局搜索功能 |
**对于计划访问的任何URL**,先运行`actionbook search "<关键词>" -d "<域名>"`检查是否已被索引。如果有索引化选择器则优先使用;未索引的网站则回退到`actionbook browser snapshot`。
**示例:搜索前获取arXiv高级搜索选择器:**
```bashQuery Actionbook for arXiv form selectors
查询Actionbook获取arXiv表单选择器
actionbook get "arxiv.org:/search/advanced:default"
actionbook get "arxiv.org:/search/advanced:default"
Returns 40+ selectors: #terms-0-field, #terms-0-term, #classification-computer_science, etc.
返回40+个选择器:#terms-0-field、#terms-0-term、#classification-computer_science等
undefinedundefinedStep 3: arXiv Advanced Search (Using Actionbook Selectors)
步骤3:arXiv高级搜索(使用Actionbook选择器)
Key differentiator: WebFetch/WebSearch can only do simple keyword searches. Actionbook has indexed the entire arXiv Advanced Search form with 40+ verified selectors (queried in Step 2), enabling multi-field, multi-criteria academic searches — just like a human researcher would use the form.
Using the selectors obtained from Step 2, the Agent can:
| Capability | Actionbook Selector | WebFetch/WebSearch |
|---|---|---|
| Search by specific field (Title, Author, Abstract) | | Not possible |
| Add multiple search terms with boolean logic | | Not possible |
| Filter by subject (CS, Physics, Math, etc.) | | Not possible |
| Filter by date range | | Not possible |
| Filter by specific year | | Not possible |
| Include/exclude cross-listed papers | | Not possible |
| Control results display | | Not possible |
Example: Search for recent CS papers by a specific author:
bash
undefined核心差异化优势: WebFetch/WebSearch仅支持简单的关键词搜索。Actionbook已索引整个arXiv高级搜索表单的40+个验证选择器(步骤2中获取),可执行多字段、多条件的学术搜索 — 就像人类研究员操作表单一样。
使用步骤2获取的选择器,Agent可以:
| 功能 | Actionbook选择器 | WebFetch/WebSearch |
|---|---|---|
| 按特定字段搜索(标题、作者、摘要) | | 无法实现 |
| 添加带布尔逻辑的多个搜索术语 | | 无法实现 |
| 按学科筛选(计算机科学、物理学、数学等) | | 无法实现 |
| 按日期范围筛选 | | 无法实现 |
| 按特定年份筛选 | | 无法实现 |
| 包含/排除跨列表论文 | | 无法实现 |
| 控制结果显示 | | 无法实现 |
示例:搜索特定作者的近期计算机科学论文:
bash
undefinedOpen arXiv Advanced Search
打开arXiv高级搜索页面
actionbook browser open "https://arxiv.org/search/advanced"
actionbook browser open "https://arxiv.org/search/advanced"
1. Set search field to "Author" and type author name
1. 将搜索字段设置为“作者”并输入作者姓名
actionbook browser click "#terms-0-field"
actionbook browser click "option[value='author']"
actionbook browser type "#terms-0-term" "Yann LeCun"
actionbook browser click "#terms-0-field"
actionbook browser click "option[value='author']"
actionbook browser type "#terms-0-term" "Yann LeCun"
2. Filter to Computer Science only
2. 仅筛选计算机科学领域
actionbook browser click "#classification-computer_science"
actionbook browser click "#classification-computer_science"
3. Restrict to past 12 months
3. 限制为过去12个月的论文
actionbook browser click "#date-filter_by-1"
actionbook browser click "#date-filter_by-1"
4. Show abstracts in results
4. 在结果中显示摘要
actionbook browser click "#abstracts-0"
actionbook browser click "#abstracts-0"
5. Submit search
5. 提交搜索
actionbook browser click "button:has-text('Search'):nth(2)"
actionbook browser click "button:has-text('Search'):nth(2)"
6. Extract results
6. 提取结果
actionbook browser text "#main-container"
**Example: Search by title keywords in a date range:**
```bash
actionbook browser open "https://arxiv.org/search/advanced"actionbook browser text "#main-container"
**示例:按标题关键词在指定日期范围内搜索:**
```bash
actionbook browser open "https://arxiv.org/search/advanced"Search in "Title" field
在“标题”字段中搜索
actionbook browser click "#terms-0-field"
actionbook browser click "option[value='title']"
actionbook browser type "#terms-0-term" "large language model agent"
actionbook browser click "#terms-0-field"
actionbook browser click "option[value='title']"
actionbook browser type "#terms-0-term" "large language model agent"
Date range: 2025-01 to 2026-02
日期范围:2025-01至2026-02
actionbook browser click "#date-filter_by-3"
actionbook browser type "#date-from_date" "2025-01-01"
actionbook browser type "#date-to_date" "2026-02-09"
actionbook browser click "#date-filter_by-3"
actionbook browser type "#date-from_date" "2025-01-01"
actionbook browser type "#date-to_date" "2026-02-09"
Submit and extract
提交并提取结果
actionbook browser click "button:has-text('Search'):nth(2)"
actionbook browser text "#main-container"
undefinedactionbook browser click "button:has-text('Search'):nth(2)"
actionbook browser text "#main-container"
undefinedStep 4: Supplement with Google / Bing Search
步骤4:补充谷歌/必应搜索
After arXiv, use Google/Bing to find non-academic sources (blogs, news, docs, code, discussions):
bash
undefined完成arXiv搜索后,使用谷歌/必应查找非学术来源(博客、新闻、文档、代码、讨论):
bash
undefinedSearch via Google
谷歌搜索
actionbook browser open "https://www.google.com/search?q=<encoded_query>"
actionbook browser text "#search"
actionbook browser open "https://www.google.com/search?q=<编码后的查询词>"
actionbook browser text "#search"
Or search via Bing
或必应搜索
actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
actionbook browser text "#b_results"
Parse the search results to extract URLs and snippets. Collect the top 5-10 most relevant URLs. For each discovered URL, query Actionbook API (Step 2 pattern) to check if the site is indexed before visiting.actionbook browser open "https://www.bing.com/search?q=<编码后的查询词>"
actionbook browser text "#b_results"
解析搜索结果以提取URL和摘要,收集最相关的5-10个URL。对于每个发现的URL,先按照步骤2的方式调用Actionbook API检查网站是否已被索引,再进行访问。Step 5: Deep Read Sources
步骤5:深度读取来源内容
For each relevant URL, first query Actionbook API (same as Step 2) to check if the site is indexed, then use verified selectors:
bash
actionbook browser open "<url>"
actionbook browser text # Full page text (fallback)
actionbook browser text "<selector>" # Use Actionbook selector if indexedFor arXiv papers, try sources in this order (newer papers often fail on ar5iv):
bash
undefined对于每个相关URL,先调用Actionbook API(与步骤2相同)检查网站是否已被索引,再使用验证后的选择器:
bash
actionbook browser open "<url>"
actionbook browser text # 回退方案:提取整页文本
actionbook browser text "<selector>" # 如果已索引,使用Actionbook选择器对于arXiv论文,按以下顺序尝试来源(较新的论文常常无法在ar5iv正常显示):
bash
undefined1. Try ar5iv first (best structured selectors from Actionbook)
1. 优先尝试ar5iv(Actionbook提供最佳结构化选择器)
actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
actionbook browser text "h1.ltx_title_document" # Title
actionbook browser text "div.ltx_authors" # Authors
actionbook browser text "div.ltx_abstract" # Abstract
actionbook browser open "https://ar5iv.org/html/<arxiv_id>"
actionbook browser text "h1.ltx_title_document" # 标题
actionbook browser text "div.ltx_authors" # 作者
actionbook browser text "div.ltx_abstract" # 摘要
NOTE: section.ltx_section often fails on newer papers — use "article" as fallback
注意:section.ltx_section在较新论文上常常失效 — 回退使用"article"
2. If ar5iv content is truncated (<5KB), fall back to arxiv abstract + other sources
2. 如果ar5iv内容被截断(<5KB),回退到arXiv摘要+其他来源
actionbook browser open "https://arxiv.org/abs/<arxiv_id>"
actionbook browser text "main"
actionbook browser open "https://arxiv.org/abs/<arxiv_id>"
actionbook browser text "main"
3. Supplement with HuggingFace model cards and GitHub READMEs for full details
3. 补充HuggingFace模型卡片和GitHub README以获取完整细节
actionbook browser open "https://huggingface.co/papers/<arxiv_id>"
actionbook browser text "main"
**Key lesson:** Don't rely solely on ar5iv. Always cross-reference 3-4 sources for completeness.
**For Google Scholar** (indexed by Actionbook):
```bash
actionbook browser open "https://scholar.google.com"actionbook browser open "https://huggingface.co/papers/<arxiv_id>"
actionbook browser text "main"
**关键经验:** 不要仅依赖ar5iv。始终交叉参考3-4个来源以确保内容完整。
**对于谷歌学术**(已被Actionbook索引):
```bash
actionbook browser open "https://scholar.google.com"Type into search: use selector #gs_hdr_tsi
搜索输入:使用选择器#gs_hdr_tsi
actionbook browser click "#gs_hdr_tsi"
actionbook browser click "#gs_hdr_tsi"
... type query, click #gs_hdr_tsb to search
... 输入查询词,点击#gs_hdr_tsb进行搜索
**For unindexed sites**, use snapshot to discover page structure:
```bash
actionbook browser open "<url>"
actionbook browser snapshot # Get accessibility tree to find selectors
actionbook browser text "<discovered_selector>"
**对于未索引的网站**,使用snapshot发现页面结构:
```bash
actionbook browser open "<url>"
actionbook browser snapshot # 获取可访问性树以查找选择器
actionbook browser text "<发现的选择器>"Step 6: Synthesize Findings
步骤6:整合研究结果
Organize collected information into a coherent report:
- Overview / Executive Summary
- Key Findings
- Detailed Analysis
- Supporting Data / Evidence
- Implications / Significance
- Sources
将收集到的信息组织成连贯的报告:
- 概述/执行摘要
- 核心发现
- 详细分析
- 支持数据/证据
- 影响/重要性
- 信息来源
Step 7: Generate json-ui JSON Report
步骤7:生成json-ui JSON报告
Write a JSON file following the schema. Use the Write tool.
@actionbookdev/json-uiOutput path: (or user-specified path)
./output/<topic-slug>.json--output按照架构编写JSON文件,使用Write工具。
@actionbookdev/json-ui输出路径: (或用户指定的路径)
./output/<topic-slug>.json--outputStep 8: Render HTML
步骤8:渲染HTML
Try these in order until one works:
bash
undefined按以下顺序尝试,直到成功:
bash
undefined1. Local monorepo (if running inside actionbook project)
1. 本地单仓库(如果在actionbook项目中运行)
node packages/json-ui/dist/cli.js render <report.json> -o <report.html>
node packages/json-ui/dist/cli.js render <report.json> -o <report.html>
2. npx (if published)
2. npx(如果包已发布到npm)
npx @actionbookdev/json-ui render <report.json> -o <report.html>
npx @actionbookdev/json-ui render <report.json> -o <report.html>
3. npx with @latest
3. 使用@latest标签的npx
npx @actionbookdev/json-ui@latest render <report.json> -o <report.html>
If all fail, save the JSON file and inform the user of its path.npx @actionbookdev/json-ui@latest render <report.json> -o <report.html>
如果所有方法都失败,保存JSON文件并告知用户文件路径。Step 9: Open in Browser
步骤9:在浏览器中打开
bash
undefinedbash
undefinedmacOS
macOS
open <report.html>
open <report.html>
Linux
Linux
xdg-open <report.html>
undefinedxdg-open <report.html>
undefinedStep 10: Close Browser
步骤10:关闭浏览器
Always close the browser when done:
bash
actionbook browser close完成后务必关闭浏览器:
bash
actionbook browser closejson-ui Report Template
json-ui报告模板
IMPORTANT: Always include BrandHeader and BrandFooter.
json
{
"type": "Report",
"props": { "theme": "auto" },
"children": [
{
"type": "BrandHeader",
"props": {
"badge": { "en": "Deep Research Report", "zh": "深度研究报告" },
"poweredBy": "Actionbook"
}
},
{
"type": "Section",
"props": { "title": { "en": "Overview", "zh": "概述" }, "icon": "paper" },
"children": [
{
"type": "Prose",
"props": {
"content": { "en": "English overview...", "zh": "中文概述..." }
}
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Key Findings", "zh": "核心发现" }, "icon": "star" },
"children": [
{
"type": "ContributionList",
"props": {
"items": [
{
"badge": { "en": "Finding", "zh": "发现" },
"title": { "en": "...", "zh": "..." },
"description": { "en": "...", "zh": "..." }
}
]
}
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Detailed Analysis", "zh": "详细分析" }, "icon": "bulb" },
"children": [
{
"type": "Prose",
"props": { "content": { "en": "...", "zh": "..." } }
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Key Metrics", "zh": "关键指标" }, "icon": "chart" },
"children": [
{
"type": "MetricsGrid",
"props": { "metrics": [], "cols": 3 }
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Sources", "zh": "信息来源" }, "icon": "link" },
"children": [
{
"type": "LinkGroup",
"props": { "links": [] }
}
]
},
{
"type": "BrandFooter",
"props": {
"timestamp": "YYYY-MM-DDTHH:MM:SSZ",
"attribution": "Powered by Actionbook",
"disclaimer": {
"en": "This report was generated by AI using web sources. Verify critical information independently.",
"zh": "本报告由 AI 基于网络来源生成,请独立验证关键信息。"
}
}
}
]
}重要提示:务必包含BrandHeader和BrandFooter。
json
{
"type": "Report",
"props": { "theme": "auto" },
"children": [
{
"type": "BrandHeader",
"props": {
"badge": { "en": "Deep Research Report", "zh": "深度研究报告" },
"poweredBy": "Actionbook"
}
},
{
"type": "Section",
"props": { "title": { "en": "Overview", "zh": "概述" }, "icon": "paper" },
"children": [
{
"type": "Prose",
"props": {
"content": { "en": "English overview...", "zh": "中文概述..." }
}
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Key Findings", "zh": "核心发现" }, "icon": "star" },
"children": [
{
"type": "ContributionList",
"props": {
"items": [
{
"badge": { "en": "Finding", "zh": "发现" },
"title": { "en": "...", "zh": "..." },
"description": { "en": "...", "zh": "..." }
}
]
}
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Detailed Analysis", "zh": "详细分析" }, "icon": "bulb" },
"children": [
{
"type": "Prose",
"props": { "content": { "en": "...", "zh": "..." } }
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Key Metrics", "zh": "关键指标" }, "icon": "chart" },
"children": [
{
"type": "MetricsGrid",
"props": { "metrics": [], "cols": 3 }
}
]
},
{
"type": "Section",
"props": { "title": { "en": "Sources", "zh": "信息来源" }, "icon": "link" },
"children": [
{
"type": "LinkGroup",
"props": { "links": [] }
}
]
},
{
"type": "BrandFooter",
"props": {
"timestamp": "YYYY-MM-DDTHH:MM:SSZ",
"attribution": "Powered by Actionbook",
"disclaimer": {
"en": "This report was generated by AI using web sources. Verify critical information independently.",
"zh": "本报告由 AI 基于网络来源生成,请独立验证关键信息。"
}
}
}
]
}Paper Report Template (for arXiv papers)
论文报告模板(适用于arXiv论文)
When analyzing academic papers, use a richer template with:
- (title, arxivId, date, categories)
PaperHeader - (authors with affiliations)
AuthorList - (with keyword highlights)
Abstract - (key contributions)
ContributionList - (step-by-step method)
MethodOverview - (experimental results)
ResultsTable - (key equations, LaTeX)
Formula - (paper figures from ar5iv)
Figure
分析学术论文时,使用更丰富的模板,包含:
- (标题、arxivId、日期、分类)
PaperHeader - (带所属机构的作者列表)
AuthorList - (带关键词高亮的摘要)
Abstract - (核心贡献)
ContributionList - (分步方法说明)
MethodOverview - (实验结果)
ResultsTable - (关键公式,LaTeX格式)
Formula - (来自ar5iv的论文图表)
Figure
Available json-ui Components
可用的json-ui组件
| Component | Use For | Key Props |
|---|---|---|
| Report header | |
| Paper metadata | |
| Authors | |
| Major section | |
| Rich text | |
| Abstract text | |
| Numbered findings | |
| Step-by-step | |
| Key stats | |
| Data table | |
| Generic table | |
| Info/tip/warning | |
| Blockquote | |
| Key finding card | |
| Code snippet | |
| LaTeX equation | |
| Image(s) | |
| Single image | |
| Term/definition | |
| Source links | |
| Grid layout | |
| Card container | |
| Tags | |
| Footer | |
| 组件 | 用途 | 关键属性 |
|---|---|---|
| 报告页眉 | |
| 论文元数据 | |
| 作者列表 | |
| 主要章节 | |
| 富文本内容 | |
| 摘要文本 | |
| 编号式发现 | |
| 分步说明 | |
| 关键统计数据 | |
| 数据表格 | |
| 通用表格 | |
| 信息/提示/警告 | |
| 引用块 | |
| 核心发现卡片 | |
| 代码片段 | |
| LaTeX公式 | |
| 图片组 | |
| 单张图片 | |
| 术语/定义列表 | |
| 来源链接组 | |
| 网格布局 | |
| 卡片容器 | |
| 标签列表 | |
| 报告页脚 | |
json-ui Known Pitfalls
json-ui已知陷阱
| Pitfall | Symptom | Fix |
|---|---|---|
| | |
| Render error | |
Missing | Report looks broken | Always include both |
| | Row cell values must be plain strings. Column |
| Very long Prose content | Truncated render | Split into multiple Prose blocks or use subsections |
| 问题 | 症状 | 修复方案 |
|---|---|---|
| | |
| 渲染错误 | |
缺少 | 报告显示异常 | 务必同时包含两者 |
| 单元格显示 | 行单元格值必须是纯字符串。列 |
| Prose内容过长 | 渲染被截断 | 拆分为多个Prose块或使用子章节 |
i18n Support
国际化支持
All text fields support bilingual output unless noted above:
json
{ "en": "English text", "zh": "中文文本" }For , use plain strings. For , use plain Chinese strings. For (default), use i18n objects.
--lang en--lang zh--lang bothExceptions:
- props
MetricsGridandvaluemust always be plain strings.suffix - row cell values must be plain strings (column
Tablesupports i18n, but row data does not). For bilingual, uselabelformat."English / 中文"
所有文本字段均支持双语输出除非上述特别说明:
json
{ "en": "English text", "zh": "中文文本" }对于,使用纯字符串;对于,使用纯中文字符串;对于默认的,使用国际化对象。
--lang en--lang zh--lang both例外情况:
- 的
MetricsGrid和value属性必须始终为纯字符串。suffix - 的行单元格值必须为纯字符串(列
Table支持国际化,但行数据不支持)。如需双语,使用label格式。"英文 / 中文"
Academic Paper Support
学术论文支持
arXiv Papers
arXiv论文
ar5iv.org HTML (preferred for reading, but often incomplete for papers < 3 months old):
| Element | Selector (Actionbook-verified) | Reliability | Fallback |
|---|---|---|---|
| Title | | High | |
| Authors | | High | — |
| Abstract | | High | — |
| Full article | | Medium | Use when section selectors fail |
| Sections | | Low on new papers | |
| Section title | | Low on new papers | Parse from |
| Figures | | Medium | — |
| Tables | | Medium | — |
| Bibliography | | Medium | — |
Note: For papers submitted within the last ~3 months, ar5iv often renders incomplete content. Always check — if < 5KB, the page didn't fully render. Fall back to other sources.
actionbook browser text 2>&1 | wc -carXiv API (for metadata via actionbook browser):
actionbook browser open "http://export.arxiv.org/api/query?id_list={arxiv_id}"
actionbook browser textar5iv.org HTML(优先用于阅读,但对于提交时间不足3个月的论文常常内容不完整):
| 元素 | Actionbook验证选择器 | 可靠性 | 回退方案 |
|---|---|---|---|
| 标题 | | 高 | |
| 作者 | | 高 | — |
| 摘要 | | 高 | — |
| 全文 | | 中 | 当章节选择器失效时使用 |
| 章节 | | 新论文可靠性低 | 使用 |
| 章节标题 | | 新论文可靠性低 | 从 |
| 图表 | | 中 | — |
| 表格 | | 中 | — |
| 参考文献 | | 中 | — |
注意: 对于提交时间约3个月内的论文,ar5iv常常无法完整渲染内容。始终检查 — 如果结果小于5KB,说明页面未完全渲染,需回退到其他来源。
actionbook browser text 2>&1 | wc -carXiv API(通过actionbook browser获取元数据):
actionbook browser open "http://export.arxiv.org/api/query?id_list={arxiv_id}"
actionbook browser textRecommended Source Priority for Papers
论文来源优先级推荐
Based on testing, use this priority order for maximum coverage:
| Priority | Source | What you get | Reliability |
|---|---|---|---|
| 1 | | Abstract, metadata, submission history | Very high |
| 2 | | Abstract, community comments, related models/datasets | Very high |
| 3 | GitHub repo (from search results) | README with method details, model zoo, code | High |
| 4 | HuggingFace model card | Training recipe, benchmark results, quick start | High |
| 5 | | Full paper HTML with structured selectors | Medium (fails on new papers) |
| 6 | Google Scholar / Semantic Scholar | Citations, related work | Medium |
Key insight: Don't rely on a single source. The combination of arxiv abstract + HuggingFace + GitHub typically gives 90%+ of what you need, even when ar5iv fails.
基于测试结果,按以下优先级使用来源以获取最全面的信息:
| 优先级 | 来源 | 可获取内容 | 可靠性 |
|---|---|---|---|
| 1 | | 摘要、元数据、提交历史 | 极高 |
| 2 | | 摘要、社区评论、相关模型/数据集 | 极高 |
| 3 | GitHub仓库(来自搜索结果) | 包含方法细节、模型库、代码的README | 高 |
| 4 | HuggingFace模型卡片 | 训练方案、基准测试结果、快速开始指南 | 高 |
| 5 | | 带结构化选择器的全文HTML | 中(新论文常常失效) |
| 6 | 谷歌学术/语义学术 | 引用文献、相关研究 | 中 |
核心见解: 不要依赖单一来源。结合arXiv摘要 + HuggingFace + GitHub通常能获取90%+的所需信息,即使ar5iv失效也不受影响。
Other Academic Sources
其他学术来源
Use to visit and extract content from:
actionbook browser- Google Scholar () — Actionbook indexed, use
scholar.google.comfor search#gs_hdr_tsi - Semantic Scholar ()
semanticscholar.org - Papers With Code ()
paperswithcode.com - Conference proceedings sites
使用访问并提取以下平台的内容:
actionbook browser- 谷歌学术()— 已被Actionbook索引,使用
scholar.google.com进行搜索#gs_hdr_tsi - 语义学术()
semanticscholar.org - Papers With Code()
paperswithcode.com - 会议论文集网站
Error Handling
错误处理
| Error | Action |
|---|---|
| Browser fails to open | Run |
| Page load timeout (30s) | Skip source, try next. Common on papers.cool, slow academic sites |
| ar5iv content truncated (<5KB) | Paper too new for ar5iv. Fall back to arxiv abstract + HuggingFace + GitHub |
| ar5iv rendering incomplete. Use |
| Actionbook selector not found | Use |
| Site not indexed. Use |
json-ui render crash ( | Check MetricsGrid |
| Package not on npm. Use local: |
| No search results | Broaden search terms, try different angles |
| Render failed | Save JSON and inform user of the path |
IMPORTANT: Always run before finishing, even on errors.
actionbook browser close| 错误 | 操作 |
|---|---|
| 浏览器无法打开 | 运行 |
| 页面加载超时(30秒) | 跳过该来源,尝试下一个。在papers.cool等加载缓慢的学术网站上很常见 |
| ar5iv内容被截断(<5KB) | 论文太新,ar5iv尚未处理。回退到arXiv摘要 + HuggingFace + GitHub |
| ar5iv渲染不完整。使用 |
| Actionbook选择器未找到 | 使用 |
| 网站未被索引。使用 |
json-ui渲染崩溃( | 检查MetricsGrid的 |
| 包未发布到npm。使用本地方式: |
| 无搜索结果 | 放宽搜索词,尝试不同角度 |
| 渲染失败 | 保存JSON文件并告知用户文件路径 |
重要提示: 即使发生错误,完成后务必运行。
actionbook browser closeQuality Guidelines
质量准则
- Breadth: Research from at least 3-5 diverse sources
- Depth: Read full articles, not just snippets
- Accuracy: Cross-reference facts across sources
- Structure: Use appropriate json-ui components for each content type
- Attribution: Always include source links in the report
- Freshness: Prefer recent sources when relevance is equal
- 广度:至少从3-5个不同来源进行研究
- 深度:阅读完整文章,而非仅摘要
- 准确性:跨来源交叉验证事实
- 结构:针对不同内容类型使用合适的json-ui组件
- 归因:报告中务必包含来源链接
- 时效性:当相关性相同时,优先选择较新的来源
Chinese Content Quality Guidelines (中文内容质量规范)
中文内容质量规范
CRITICAL: Chinese text must be written as native Chinese, NOT translated from English.
The field is not a translation — it is an independent Chinese version of the content. Write it as if authoring a Chinese tech article from scratch.
zh关键要求:中文文本必须以原生中文撰写,而非从英文直译。
zhCommon Problems to Avoid
需避免的常见问题
| Problem | Bad Example | Good Example |
|---|---|---|
| 被动语态过多 | "Wasm 已被广泛采用" | "Wasm 已经大规模落地" |
| 英语语序直译 | "广泛但常常不可见地被采用" | "已经深入渗透到各类产品中,只是用户浑然不觉" |
| 生硬术语拼接 | "语言无关的异步通信" | "不绑定特定编程语言的异步通信机制" |
| 直译英文短语 | "关键缺失部分" | "最后一块拼图" |
| "地道"当形容词 | "地道绑定" | "符合各语言习惯的绑定" |
| 逗号长句(一逗到底) | "A,B,C,D,E。" | 拆成 2-3 个短句 |
| 引用原文硬翻 | "「许多用户并未意识到它正在被使用」" | 用中文重新表述引用的核心意思,必要时保留原文人名 |
| 问题 | 错误示例 | 正确示例 |
|---|---|---|
| 被动语态过多 | "Wasm 已被广泛采用" | "Wasm 已经大规模落地" |
| 英语语序直译 | "广泛但常常不可见地被采用" | "已经深入渗透到各类产品中,只是用户浑然不觉" |
| 生硬术语拼接 | "语言无关的异步通信" | "不绑定特定编程语言的异步通信机制" |
| 直译英文短语 | "关键缺失部分" | "最后一块拼图" |
| "地道"当形容词 | "地道绑定" | "符合各语言习惯的绑定" |
| 逗号长句(一逗到底) | "A,B,C,D,E。" | 拆成2-3个短句 |
| 引用原文硬翻 | "「许多用户并未意识到它正在被使用」" | 用中文重新表述引用的核心意思,必要时保留原文人名 |
Writing Rules
写作规则
- 先写中文,再对照英文查漏:不要从英文逐句翻译。先理解内容本质,用中文重新组织表达。
- 主动语态优先:中文天然偏好主动句。"X 被 Y 采用" → "Y 采纳了 X" 或 "Y 已在用 X"。
- 短句 > 长句:中文读者偏好短句。超过 40 字的句子应拆分。
- 术语处理原则:
- 有公认中文译名的术语用中文:服务器 → 服务器、容器 → 容器、沙箱 → 沙箱
- 无公认译名的术语保留英文:Component Model、WASI、SIMD、Cold Start
- 首次出现时中英对照:「组件模型(Component Model)」,之后可只用中文
- 不要硬造中文译名(如"非干扰分析",应写"Noninterference 分析"或解释性表述)
- 数据和事实保持一致:中英文的数字、日期、引用来源必须完全一致。
- 语气自然:可以用"说白了"、"换句话说"、"简单来说"等口语化连接词,避免全篇书面腔。
- 标点规范:用中文标点(,。;:「」)而非英文标点。引号优先用「」。
- 先写中文,再对照英文查漏:不要逐句翻译英文。先理解内容本质,用中文重新组织表达。
- 主动语态优先:中文天然偏好主动句。将"X 被 Y 采用"改写为"Y 采纳了 X"或"Y 已在用 X"。
- 短句优于长句:中文读者偏好短句。超过40字的句子应拆分。
- 术语处理原则:
- 有公认中文译名的术语使用中文:服务器、容器、沙箱
- 无公认译名的术语保留英文:Component Model、WASI、SIMD、Cold Start
- 首次出现时中英对照:「组件模型(Component Model)」,之后可仅用中文
- 不要硬造中文译名(如"非干扰分析"应写为"Noninterference 分析"或解释性表述)
- 数据和事实保持一致:中英文的数字、日期、引用来源必须完全一致。
- 语气自然:可以使用"说白了"、"换句话说"、"简单来说"等口语化连接词,避免全篇书面腔。
- 标点规范:使用中文标点(,。;:「」)而非英文标点。引号优先使用「」。
Bilingual Tone Reference
双语语气参考
| English Tone | Chinese Equivalent | Example |
|---|---|---|
| "X has reached a critical milestone" | 不要直译"关键里程碑" | "X 迎来了重要转折点" 或 "X 进入成熟期" |
| "This is the key missing piece" | 不要直译"关键缺失部分" | "这是最后一块拼图" 或 "补上了最关键的短板" |
| "excels at cold starts" | 不要直译"在冷启动方面表现卓越" | "冷启动速度远超同类方案" |
| "security scrutiny intensifies" | 不要直译"安全审查加强" | "安全领域的关注度持续升温" |
| "emerging as a standard" | 不要直译"正成为标准" | "逐渐确立了标准地位" 或 "大有一统江湖之势" |
| "widespread but invisible adoption" | 不要直译"广泛但不可见的采用" | "已经悄然渗透到各类产品中" |
| 英文语气 | 中文对应表达 | 示例 |
|---|---|---|
| "X has reached a critical milestone" | 不要直译"关键里程碑" | "X 迎来了重要转折点"或"X 进入成熟期" |
| "This is the key missing piece" | 不要直译"关键缺失部分" | "这是最后一块拼图"或"补上了最关键的短板" |
| "excels at cold starts" | 不要直译"在冷启动方面表现卓越" | "冷启动速度远超同类方案" |
| "security scrutiny intensifies" | 不要直译"安全审查加强" | "安全领域的关注度持续升温" |
| "emerging as a standard" | 不要直译"正成为标准" | "逐渐确立了标准地位"或"大有一统江湖之势" |
| "widespread but invisible adoption" | 不要直译"广泛但不可见的采用" | "已经悄然渗透到各类产品中" |