mcpField
D
deep-research

deep-research

github.com/actionbook生産性1.6k148 回インストール2 週間前に更新
リポジトリ

deep-research について

deep-researchは、トピックや学術論文、Webページを調査し、構造化されたJSONレポートとHTMLを生成するClaudeスキルです。Actionbookのブラウザー自動化を使って検索とページ分析を行います。

主な機能

  1. 01トピックと論文の調査
  2. 02arXivの高度な検索
  3. 03複数ソースのページ分析
  4. 04JSONレポートの生成
  5. 05HTMLレポートの描画

活用シーン

  1. 01学術論文の調査
  2. 02複数ソースによるトピック調査
  3. 03バイリンガルレポートの作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/actionbook/actionbook --skill deep-research

インストール後、Claude Code で/deep-researchを入力して読み込まれたか確認します。

詳細

ディープリサーチ

Actionbook のブラウザー自動化と json-ui のレンダリングを使用して、あらゆるトピック、分野、論文を分析し、美しい HTML レポートを生成します。

使い方

/deep-research:analyze <topic>
/deep-research:analyze <topic> --lang zh
/deep-research:analyze <topic> --output ./reports/my-report.json

または、Claude に「XXX を深く調査してレポートを生成して」/「XXX を調査してレポートを生成して」と伝えるだけです。

パラメーター
パラメーター必須デフォルト説明
topicはい-調査する対象(任意のテキスト)
--langいいえboth言語:en、zh、または both(バイリンガル)
--outputいいえ./output/<topic-slug>.jsonJSON レポートの出力先
トピックの検出
パターン種類戦略
arxiv:XXXX.XXXXX論文arXiv Advanced Search(ステップ 2b)+ ar5iv による詳細な読み込み
doi:10.XXX/...論文DOI を解決してから、関連研究を arXiv Advanced Search で検索
学術関連のキーワード(paper、research、model、algorithm)学術トピックarXiv Advanced Search(ステップ 2b)+学術以外の情報源を Google で検索
URL特定のページページを取得して分析
一般的なテキストトピック調査Google 検索+関連する場合は arXiv Advanced Search

アーキテクチャ

┌──────────┐     ┌──────────────┐     ┌──────────────┐     ┌──────────┐
│  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
└──────────┘     └──────────────┘     └──────────────┘
WebFetch/WebSearch ではなく Actionbook を使う理由
機能ActionbookWebFetch/WebSearch
複雑なウェブフォーム(ドロップダウン、チェックボックス、日付選択)を操作はい — インデックス化されたセレクターを使用いいえ
arXiv:著者、タイトル、要約を個別に指定して検索はい — #terms-0-field セレクトいいえ — キーワードのみ
arXiv:分野(CS、Physics、Math など)で絞り込みはい — カテゴリーのチェックボックスいいえ
arXiv:期間または特定の年で絞り込みはい — 日付入力欄いいえ
検証済みのセレクターでページを読み込み(推測不要)はい — actionbook getいいえ — 生の HTML を解析
インデックス化されたサイトの UI を操作はい — クリック、入力、選択いいえ — 読み取り専用

これが調査における Actionbook の中核的な価値です。ウェブフォームを、AI エージェント向けの構造化されたプログラム可能なインターフェースに変換します。

Actionbook CLI を必ず使用する

ウェブ閲覧には常に actionbook browser コマンドを使用してください。WebFetch や WebSearch は使用しないでください。

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)

完全なワークフロー

ステップ 1:検索戦略を立てる

トピックに基づいて、さまざまな観点から 5~8 件の検索クエリを作成します。

  • 中核となる定義/概要
  • 最新の動向/ニュース
  • 技術的な詳細/実装
  • 比較/代替手段
  • 専門家の意見/分析
  • ユースケース/応用

検索順序 — 必ず Actionbook API に問い合わせてから検索します。

ステップアクション理由
ステップ 2(最初)Actionbook API に問い合わせる閲覧を始める前に、arXiv Advanced Search フォーム、ar5iv の論文、その他の既知のサイトについて、検証済みのセレクターを取得します。これが以降のすべてのステップの土台になります。
ステップ 3(2 番目)arXiv Advanced Searchステップ 2 で取得した Actionbook のセレクターを使用して、複数のフィールドや条件で絞り込んだ学術検索を実行します。学術以外のトピックでも、関連する論文が見つかることはよくあります。
ステップ 4(3 番目)Google/Bing 検索ブログ、ニュース、コード、ディスカッションなど、学術以外の情報源を補足します。

重要: まず必ず Actionbook API に問い合わせ(ステップ 2)、セレクターを取得してから、arXiv Advanced Search(ステップ 3)で使用してください。これが、Actionbook を活用した調査を WebFetch/WebSearch と根本的に異なるものにしています。ブラウザーを開く前に、エージェントが各フォームフィールドの正確なセレクターを把握できるのです。

Step 2: セレクターを取得するために Actionbook API に問い合わせます(必ず最初に実行してください)

URL を閲覧する前に、Actionbook のインデックス済みセレクターに問い合わせてください。 推測ではなく、検証済みの CSS/XPath セレクターを取得できます。

# Search for indexed actions by domain
actionbook search "<keywords>" -d "<domain>"

# Get detailed selectors for a specific page
actionbook get "<domain>:/<path>:<area>"

調査に役立つインデックス済みサイト:

サイトarea_id主なセレクター
arXiv 詳細検索arxiv.org:/search/advanced:default40 個以上のセレクター:フィールド選択、検索語入力、カテゴリのチェックボックス(CS/物理学/数学など)、日付範囲フィルター、クロスリスト制御 — Step 3 で使用
ar5iv 論文ar5iv.labs.arxiv.org:/html/{paper_id}:defaulth1.ltx_title_document(タイトル)、div.ltx_authors(著者)、div.ltx_abstract(概要)、section.ltx_section(セクション)
Google Scholarscholar.google.com:/:default#gs_hdr_tsi(検索入力)、#gs_hdr_tsb(検索ボタン)
arXiv ホームページarxiv.org:/:default240 万件以上の記事を横断するグローバル検索

アクセスする予定の URL ごとに、actionbook search "<keywords>" -d "<domain>" を実行して、インデックス済みか確認してください。利用可能な場合はインデックス済みセレクターを使用し、インデックスされていないサイトでは actionbook browser snapshot に切り替えてください。

例:検索前に arXiv 詳細検索のセレクターを取得する:

# Query Actionbook for arXiv form selectors
actionbook get "arxiv.org:/search/advanced:default"
# Returns 40+ selectors: #terms-0-field, #terms-0-term, #classification-computer_science, etc.
Step 3: arXiv 詳細検索(Actionbook セレクターを使用)

主な差別化要因: WebFetch/WebSearch でできるのは、簡単なキーワード検索だけです。Actionbook は arXiv 詳細検索フォーム全体を、検証済みの 40 個以上のセレクターでインデックス化しています(Step 2 で取得)。これにより、人間の研究者がフォームを使うのと同じように、複数のフィールドや条件を組み合わせて学術検索できます。

Step 2 で取得したセレクターを使用すると、エージェントは次の操作を行えます。

機能Actionbook セレクターWebFetch/WebSearch
特定のフィールド(タイトル、著者、概要)で検索#terms-0-field セレクト → フィールドを選択不可能
論理演算子を使って複数の検索語を追加button "Add another term +"不可能
分野(CS、物理学、数学など)で絞り込み#classification-computer_science チェックボックス不可能
日付範囲で絞り込み#date-filter_by-3 ラジオ + #date-from_date / #date-to_date不可能
特定の年で絞り込み#date-filter_by-2 ラジオ + #date-year 入力不可能
クロスリストされた論文を含める/除外する#classification-include_cross_list-0/1 ラジオ不可能
検索結果の表示を制御#size セレクト、#abstracts-0/1 ラジオ不可能

例:特定の著者による最近の CS 論文を検索する:

# Open arXiv Advanced Search
actionbook browser open "https://arxiv.org/search/advanced"

# 1. Set search field to "Author" and type author name
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
actionbook browser click "#classification-computer_science"

# 3. Restrict to past 12 months
actionbook browser click "#date-filter_by-1"

# 4. Show abstracts in results
actionbook browser click "#abstracts-0"

# 5. Submit search
actionbook browser click "button:has-text('Search'):nth(2)"

# 6. Extract results
actionbook browser text "#main-container"

例:日付範囲を指定してタイトルのキーワードで検索する:

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"

# Date range: 2025-01 to 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"

# Submit and extract
actionbook browser click "button:has-text('Search'):nth(2)"
actionbook browser text "#main-container"
Step 4: Google/Bing 検索で補足する

arXiv で検索した後、Google/Bing を使って、学術論文以外の情報源(ブログ、ニュース、ドキュメント、コード、議論)を探します。

# Search via Google
actionbook browser open "https://www.google.com/search?q=<encoded_query>"
actionbook browser text "#search"

# Or search via Bing
actionbook browser open "https://www.bing.com/search?q=<encoded_query>"
actionbook browser text "#b_results"

検索結果を解析して URL とスニペットを抽出します。関連性の高い上位 5~10 件の URL を収集します。見つかった URL ごとに、アクセスする前に Actionbook API に問い合わせ(Step 2 と同じ手順)、サイトがインデックス済みか確認してください。

Step 5: 情報源を詳しく読む

関連する URL ごとに、まず Actionbook API に問い合わせて(Step 2 と同じ手順)サイトがインデックス済みか確認し、その後、検証済みセレクターを使用します。

actionbook browser open "<url>"
actionbook browser text                # Full page text (fallback)
actionbook browser text "<selector>"   # Use Actionbook selector if indexed

arXiv 論文の場合は、次の順番で情報源を試してください(新しい論文は ar5iv で読み込めないことがよくあります)。

# 1. Try ar5iv first (best structured selectors from 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
# NOTE: section.ltx_section often fails on newer papers — use "article" as fallback

# 2. If ar5iv content is truncated (<5KB), fall back to arxiv abstract + other sources
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
actionbook browser open "https://huggingface.co/papers/<arxiv_id>"
actionbook browser text "main"

重要な教訓: ar5iv だけに頼らないでください。情報を網羅するため、必ず 3~4 件の情報源を相互に照合してください。

Google Scholar の場合(Actionbook によりインデックス済み):

actionbook browser open "https://scholar.google.com"
# Type into search: use selector #gs_hdr_tsi
actionbook browser click "#gs_hdr_tsi"
# ... type query, click #gs_hdr_tsb to search

インデックスされていないサイトの場合は、snapshot を使ってページの構造を確認します。

actionbook browser open "<url>"
actionbook browser snapshot            # Get accessibility tree to find selectors
actionbook browser text "<discovered_selector>"
Step 6: 調査結果をまとめる

収集した情報を、次のような一貫性のあるレポートに整理します。

  1. 概要/要約
  2. 主な調査結果
  3. 詳細な分析
  4. 裏付けとなるデータ/証拠
  5. 意義/重要性
  6. 情報源
Step 7: json-ui JSON レポートを生成する

@actionbookdev/json-ui スキーマに従って JSON ファイルを作成します。Write ツールを使用してください。

出力先: ./output/<topic-slug>.json(またはユーザー指定の --output パス)

ステップ 8:HTML をレンダリングする

重要:あきらめる前に、必ずすべてのフォールバック方法を試してください。最初の失敗で止めないでください。

重要:JSON_FILE と HTML_FILE には、必ず絶対パスを使用してください。 git rev-parse が絶対パスのリポジトリルートを返すため、相対パスでは動作しません。

成功するまで、各方法を順番に試してください。

# Method 1: npx (recommended — works anywhere if npm is available)
npx @actionbookdev/json-ui render /absolute/path/to/report.json -o /absolute/path/to/report.html

# Method 2: Global install (if user ran: npm install -g @actionbookdev/json-ui)
json-ui render /absolute/path/to/report.json -o /absolute/path/to/report.html

# Method 3: Monorepo local path (fallback if inside actionbook project)
node "$(git rev-parse --show-toplevel)/packages/json-ui/dist/cli.js" render /absolute/path/to/report.json -o /absolute/path/to/report.html

黙ってあきらめてはいけません。 すべての方法が失敗した場合は、ユーザーに次の内容を伝えてください。

  1. JSON レポートは <path> に保存されています
  2. レンダラーをインストールするには、次を実行してください:npm install -g @actionbookdev/json-ui
ステップ 9:ブラウザーで開く
# macOS
open <report.html>

# Linux
xdg-open <report.html>
ステップ 10:ブラウザーを閉じる

作業が終わったら、必ずブラウザーを閉じてください。

actionbook browser close

json-ui レポートテンプレート

重要:必ず BrandHeader と BrandFooter を含めてください。

{
  "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 基于网络来源生成,请独立验证关键信息。"
        }
      }
    }
  ]
}
論文レポートテンプレート(arXiv 論文向け)

学術論文を分析する場合は、次の要素を含む、より充実したテンプレートを使用してください。

  • PaperHeader(タイトル、arxivId、日付、カテゴリ)
  • AuthorList(所属先付きの著者)
  • Abstract(キーワードのハイライト付き)
  • ContributionList(主な貢献)
  • MethodOverview(手順ごとの手法)
  • ResultsTable(実験結果)
  • Formula(主要な数式、LaTeX)
  • Figure(ar5iv の論文図)
使用可能な json-ui コンポーネント
コンポーネント用途主な Props
BrandHeaderレポートのヘッダーbadge、poweredBy
PaperHeader論文のメタデータtitle、arxivId、date、categories
AuthorList著者authors: [{name, affiliation}]、maxVisible
Section主要なセクションtitle、icon(paper/star/bulb/chart/code/link/info/warning)
Proseリッチテキストcontent(太字、斜体、コード、リストに対応)
Abstractアブストラクトのテキストtext、highlights: ["keyword"]
ContributionList番号付きの知見items: [{badge, title, description}]
MethodOverview手順ごとの概要steps: [{step, title, description}]
MetricsGrid主要な統計値metrics: [{label, value, trend, suffix}]、cols
ResultsTableデータテーブルcolumns、rows、highlights: [{row, col}]
Table汎用テーブルcolumns: [{key, label}]、rows、striped、compact
Callout情報/ヒント/警告type(info/tip/warning/important/note)、title、content
Highlight引用type(quote/important/warning/code)、text、source
KeyPoint重要な知見カードicon、title、description、variant
CodeBlockコードスニペットcode、language、title、showLineNumbers
FormulaLaTeX 数式latex、block、label
Figure画像(複数可)images: [{src, alt, width}]、label、caption
Image単一の画像src、alt、caption、width
DefinitionList用語/定義items: [{term, definition}]
LinkGroupソースリンクlinks: [{href, label, icon}]
Gridグリッドレイアウトcols、children
Cardカードコンテナーpadding(sm/md/lg)、shadow
TagListタグtags: [{label, color, href}]
BrandFooterフッターtimestamp、attribution、disclaimer
json-ui の既知の落とし穴
落とし穴症状対処法
MetricsGrid.suffix に i18n オブジェクトを指定text.replace is not a functionsuffix は { "en": ..., "zh": ... } ではなく、プレーンな文字列である必要があります
MetricsGrid.value に数値を指定レンダリングエラーvalue は文字列である必要があります(例:58.5 ではなく "58.5")
BrandHeader/BrandFooter がないレポートの表示が崩れる必ず両方を含めてください
Table の行の値に i18n オブジェクトを指定セルに [object Object] と表示される行のセル値はプレーンな文字列である必要があります。列の label は i18n に対応していますが、行データは対応していません。{ "en": "Runtimes", "zh": "运行时" } の代わりに "Runtimes / 运行时" を使用してください
Prose のコンテンツが非常に長いレンダリング時に切り詰められる複数の Prose ブロックに分割するか、小見出しを使用してください
i18n サポート

特記がない限り、すべてのテキストフィールドでバイリンガル出力をサポートしています:

{ "en": "English text", "zh": "中文文本" }

--lang en の場合はプレーンな文字列を使用します。--lang zh の場合はプレーンな中国語の文字列を使用します。--lang both(デフォルト)の場合は i18n オブジェクトを使用します。

例外:

  • MetricsGrid の props value と suffix は、常にプレーンな文字列である必要があります。
  • Table の行セルの値はプレーンな文字列である必要があります(列の label は i18n に対応していますが、行データは対応していません)。バイリンガルにする場合は、"English / 中文" 形式を使用します。

学術論文のサポート

arXiv 論文

ar5iv.org HTML(閲覧に推奨。ただし、投稿から3か月未満の論文では不完全なことがよくあります):

要素セレクター(Actionbook で検証済み)信頼性フォールバック
タイトルh1.ltx_title_document高div.ltx_abstract にタイトルの文脈が含まれます
著者div.ltx_authors高—
要約div.ltx_abstract高—
全文article中セクションセレクターが失敗した場合に使用
セクションsection.ltx_section新しい論文では低すべてのコンテンツに article を使用
セクションタイトルh2.ltx_title_section新しい論文では低article のテキストから解析
図figure.ltx_figure中—
表table.ltx_tabular中—
参考文献.ltx_bibliography中—

注: 直近約3か月以内に投稿された論文では、ar5iv のレンダリングが不完全なことがよくあります。必ず actionbook browser text 2>&1 | wc -c を確認してください。結果が 5KB 未満の場合、ページが完全にレンダリングされていません。他のソースに切り替えてください。

arXiv API(actionbook browser 経由でメタデータを取得):

actionbook browser open "http://export.arxiv.org/api/query?id_list={arxiv_id}"
actionbook browser text
論文の推奨ソース優先順位

テスト結果に基づき、幅広く情報を得るには次の優先順位を使用してください:

優先順位ソース得られる情報信頼性
1arxiv.org/abs/<id>要約、メタデータ、投稿履歴非常に高
2huggingface.co/papers/<id>要約、コミュニティのコメント、関連モデル/データセット非常に高
3GitHub リポジトリ(検索結果から)手法の詳細、モデル一覧、コードを含む README高
4HuggingFace モデルカードトレーニングレシピ、ベンチマーク結果、クイックスタート高
5ar5iv.org/html/<id>構造化セレクターを備えた論文全文の HTML中(新しい論文では失敗)
6Google Scholar / Semantic Scholar引用、関連研究中

重要なポイント: 単一のソースに頼らないでください。ar5iv が失敗した場合でも、arXiv の要約、HuggingFace、GitHub を組み合わせれば、通常は必要な情報の90%以上を得られます。

その他の学術情報源

actionbook browser を使用して、次のサイトにアクセスし、コンテンツを抽出してください:

  • Google Scholar(scholar.google.com)— Actionbook でインデックス済み。検索には #gs_hdr_tsi を使用
  • Semantic Scholar(semanticscholar.org)
  • Papers With Code(paperswithcode.com)
  • 学会の論文集サイト

エラー処理

エラー対応
ブラウザが起動しないactionbook browser status を実行し、再試行する
ページ読み込みタイムアウト(30秒)ソースをスキップし、次を試す。papers.cool や低速な学術サイトでよく発生する
ar5iv のコンテンツが切り詰められている(5KB 未満)論文が新しすぎて ar5iv に対応していない。arxiv の要旨 + HuggingFace + GitHub にフォールバックする
section.ltx_section が見つからないar5iv のレンダリングが不完全。代わりに actionbook browser text "article" または "main" を使用する
Actionbook のセレクターが見つからないactionbook browser snapshot を使用して実際のページ構造を確認する
actionbook search が結果を返さないサイトがインデックスされていない。actionbook browser snapshot を使用してセレクターを手動で特定する
json-ui のレンダリングクラッシュ(text.replace)MetricsGrid の suffix/value を確認する — 必ずプレーンな文字列であり、i18n オブジェクトであってはならない
npx @actionbookdev/json-ui が失敗するnpm install -g @actionbookdev/json-ui を実行し、json-ui render で再試行する。それでも失敗する場合は、モノレポのローカルパスを試す
検索結果がない検索語を広げ、別の切り口を試す
レンダリングに失敗したJSON を保存し、ユーザーにパスを伝え、次を提案する: npm install -g @actionbookdev/json-ui

IMPORTANT: 終了する前に必ず actionbook browser close を実行してください。エラー時でも同様です。

品質ガイドライン

  1. 広さ: 少なくとも 3〜5 の多様なソースから調査する
  2. 深さ: 抜粋だけでなく、記事全文を読む
  3. 正確性: ソース間で事実を照合する
  4. 構成: コンテンツの種類ごとに適切な json-ui コンポーネントを使用する
  5. 出典表示: レポートには必ずソースリンクを含める
  6. 鮮度: 関連性が同等であれば、新しいソースを優先する

中国語コンテンツ品質ガイドライン (中文内容质量规范)

CRITICAL: 中国語のテキストは、英語から翻訳したものではなく、ネイティブな中国語として書かれなければなりません。

zh フィールドは翻訳ではありません — それはコンテンツの独立した中国語版です。まるで中国語の技術記事をゼロから執筆するかのように書いてください。

避けるべきよくある問題
問題悪い例良い例
受動態が多すぎる"Wasm 已被广泛采用""Wasm 已经大规模落地"
英語語順の直訳"广泛但常常不可见地被采用""已经深入渗透到各类产品中,只是用户浑然不觉"
硬直した用語の寄せ集め"语言无关的异步通信""不绑定特定编程语言的异步通信机制"
英語フレーズの直訳"关键缺失部分""最后一块拼图"
「地道」を形容詞として使う"地道绑定""符合各语言习惯的绑定"
カンマの多い長文(一文がだらだら続く)"A,B,C,D,E。"2〜3 の短い文に分割する
原文をそのまま引用して硬訳"「许多用户并未意识到它正在被使用」"引用の核心的な意味を中国語で言い換え、必要に応じて原文の人名は保持する
執筆ルール
  1. まず中国語で書き、その後英語と照合して漏れを確認する: 英語から逐語訳してはいけません。内容の本質を理解し、中国語で表現を再構成してください。
  2. 能動態を優先する: 中国語はもともと能動文を好みます。"X 被 Y 采用" → "Y 采纳了 X" または "Y 已在用 X"。
  3. 短文 > 長文: 中国語の読者は短文を好みます。40 字を超える文は分割すべきです。
  4. 用語の扱いの原則:
    • 定訳のある用語は中国語を使う: 服务器 → 服务器、容器 → 容器、沙箱 → 沙箱
    • 定訳のない用語は英語のまま残す: Component Model、WASI、SIMD、Cold Start
    • 初出時は中英併記: 「组件模型(Component Model)」、以降は中国語のみでも可
    • 無理に中国語訳を作らない(例:「非干扰分析」ではなく「Noninterference 分析」または説明的表現とすべき)
  5. データと事実を一致させる: 中国語と英語で数字、日付、引用元が完全に一致していなければなりません。
  6. 自然な語調: 「说白了」「换句话说」「简单来说」などの口語的な接続詞を使い、全文が書き言葉調にならないようにする。
  7. 句読点の規範: 英語の句読点ではなく中国語の句読点(,。;:「」)を使う。引用符は「」を優先する。
表と短いテキストのルール (表格与短文本规则)

表の行における "English / 中文" 形式は、中国語品質の鬼門です。短いテキストほど機械翻訳の痕跡が露呈しやすくなります。

ルール: 中国語部分は、英語の逐語訳ではなく、独立した中国語表現でなければなりません。

悪い悪い理由良い
"应用级错误处理"硬すぎて翻訳調"应用层统一报错"
"高性能 Web 框架"悪くはないが平凡"主打性能的 Web 框架"
"序列化框架"許容範囲"序列化框架" ✓
"嵌入式异步执行器"回りくどい"嵌入式异步运行器"
"凸块分配器"無理に作った訳語で、誰もそう言わない"Bump 分配器(arena 风格)"
"安全内存擦除"硬すぎる"安全清零内存"
"多生产者多消费者通道"長すぎる"MPMC 通道"
"类 React UI 框架"OK"类 React 的 UI 框架" ✓

表の中国語短テキストの核心原則:

  1. 英語用語を残す: Bump allocator、MPMC、ECS といった定訳のない概念は、そのまま英語で残す。無理に翻訳しない。
  2. 口語 > 書き言葉: 短テキストは読者が一瞥して流し読みするものなので、話すように自然であるべき。「主打性能」は「性能优化的」より良い。
  3. 逐語訳しない: まず英語の説明の意味を理解し、それを中国語で言い直す。"Full-featured datetime" → 「功能齐全的时间日期库」であり、「全功能日期时间」ではない。
  4. 冗長な修飾は省略してよい: 英語の "A generic serialization/deserialization framework" → 中国語では「序列化框架」だけで十分。
  5. 字数は 10 字以内に抑える: 表の中国語説明はできるだけ 10 漢字以内で、簡潔かつ的確に。
バイリンガルなトーン参考表
英語のトーン中国語での表現例
"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"「广泛但不可见的采用」と直訳しない「已经悄然渗透到各类产品中」

コメント