Pi × EvoX Loop — エージェント経験継承スキル は何をしますか?
Agent が同じミスを二度としないように:失敗経験は自動でデータベースに登録(ガードフィルタリング)、類似タスクでは検証済みの修正方法が自動的に呼び出されます。
用語規定(0.29):本文は日本語を中心に、技術フィールドは初回出現時のみ英名を併記(例:「信号マッチ signals_match」)、以降は日本語のみを使用し、混在は避けます。完全な日英対照表は
docs/faq.mdQ17 を参照。ドキュメントマップ(0.21 階層化):
- 新規ユーザーは3セクションのみ読めばOK:30秒でスタート → フローA → フローB(約60行);残りは必要に応じて参照。
- 1分で使用判断:
docs/one-pager.md(0.30 新規追加)- ベストプラクティス集約エントリ:
examples/quickstart.md(5分で完結)+docs/overview.md(プロジェクト概要)+docs/common-mistakes.md(14のアンチパターン)——「ハンズオン/全体像/注意点」をカバー。- 本ファイルの残り部分=トリガーポイント/セキュリティサマリ/アンチパターン一覧/ナビゲーション;
docs/advanced.md= バックフィルアドレッシング/タイムライン/harvest/同時実行ロック/共有プール/ホスト統合/運用/セキュリティゲート詳細;docs/common-mistakes.md= よくある誤った使い方の完全リスト;docs/config-errors.md= よくある設定ミス;docs/faq.md= 完全なFAQ。docs/research.md= フローC 制御実験 + トラップ設計規律——研究専用であり、大多数のユーザーは開く必要はありません。
30秒でスタート(Quick-Start)
EN: Requires Node >= 22. Optional
@evomap/evolverintegration is GPL-3.0-or-later (only if you install and use--engine evolver); the default light backend is MIT, zero-dependency, zero-exfiltration. Three things only: A recall validated fixes at task start, B deposit after fixing a non-obvious failure, C (optional, research) controlled experiments. Daily use = A/B only. ⚠️ 前提条件:Node ≥ 22(node -vで確認;古いバージョンはサポート外、事前にアップグレードが必要)。オプションの@evomap/evolver統合は GPL-3.0-or-later です — これは、ユーザーが自らインストールし--engine evolverを使用する場合にのみ適用され、デフォルトの light バックエンドは MIT、依存関係ゼロ、データ外部送信なしです。
このスキルが行うのは次の3つだけです:A タスク開始時に検証済み修正を呼び出す、B 障害修正後に経験を蓄積する、C(オプション、研究用)制御実験で効果を定量化する。日常使用は A/B のみで、C はデフォルトで完全オフ。本番運用には使用しないでください。
# A — タスク開始時に対象を絞って修正を呼び出し(タスク内容を一言で置き換えてください)
node code/evolver-recall.mjs --query "GBKエンコーディングファイルの読み込みエラー処理" --top 5
# B — 非自明な障害を修正した後、元のエラーメッセージを貼り付けて下書きを生成し、さらにFIXを追加してデータベースに保存
node code/light-cli.mjs draft --error "<元のエラーメッセージ>" --tool <ツール名> --context "<当時何をしていたか>"
node code/light-cli.mjs draft --error "<元のエラーメッセージ>" --strategy "AVOID: <やるべきでないこと> FIX: <具体的なパラメータ/コマンド/エンコーディング>" --commit
コマンドはすべてこのリポジトリのルートディレクトリで実行します。依存関係をインストールしていない場合は、下の「インストール」を参照してください。
初回実行 · 3ステップで準備完了(最初に自己診断、それから経験を蓄積)
- Node ≥22 をインストール(トラップ生成器と pi/evolver で必要;FAQ·Q8 参照);
- 環境自己診断:
node code/light-cli.mjs doctor—— Node バージョン、経験データベースディレクトリの書き込み可否、ヒット登録ディレクトリの到達可能性をチェック(失敗項目には修正ガイドを表示); - 経験データベースを起動:データベースが空で修正方法が呼び出せないのは正常です。下のフローB に従って最初の修正方法を蓄積すれば起動完了。
初心者必読(よくある質問のクイックリスト)
- 初回実行で「呼び出せる修正方法がありません」と表示される? 正常です — データベースはゼロから始まります。最初にフローB を実行して経験を蓄積すれば起動します(FAQ·Q1)。
- Node のバージョン要件は? ≥22 が必要(トラップ生成器にはさらに Python 3 が必要)。バージョンが低すぎると pi/evolver が起動失敗します(FAQ·Q8)。
- その他の質問は
docs/faq.md(完全版14項目)と下のアンチパターン一覧を参照。
インストール(一度限り)
EN: One-time setup. A/B flows need ONLY Node >= 22 — zero npm dependencies. Get the folder by any of three paths below; any location works (a "skill" is just a folder — put it wherever your host expects, e.g.
~/.claude/skills/pi-evox-lab). Default backend = built-in light (pure Node, MIT). evolver is an optional integration (--engine evolver, needsnpm install). Flow C additionally needs Pi CLI + an OpenAI-compatible LLM key.
3つの入手方法(どれか1つを選択):
# 方法1: git clone(推奨)
git clone https://github.com/stwhwing/pi-evox-lab.git && cd pi-evox-lab
# 方法2: 制限ネットワーク環境 → Release zip を直接ダウンロード(sha256付き)、解凍してすぐ使用可能
# https://github.com/stwhwing/pi-evox-lab/releases (国内ミラーは FAQ Q7 参照)
# 方法3: マーケットからのワンクリックインストール —— skillhub.cn / ClawHub で pi-evox-loop を検索(WorkBuddy/OpenClaw ユーザー向け)
node -v # 前提条件:Node >= 22(唯一のハード依存関係)
node code/light-cli.mjs doctor # 30秒の自己診断——合格すればすぐに使用可能、追加のインストール手順は不要
- A/B 日常フローは npm 依存ゼロ;以下の
npm installはオプションの統合/実験モード C の準備のみ:
Provider 設定(フロー C のみ必要)
EN: Flow C only - any OpenAI-compatible endpoint;
$ENVinterpolation needs pi >= 0.85.1. Examples + domestic endpoints (DeepSeek/Bailian/SiliconFlow/Zhipu):docs/providers.md.
フロー A:タスク開始時 — 経験の呼び出し(任意の非自明タスク)
EN: Flow A - recall at task start.
--querywith the task text does targeted recall (unrelated experience is never injected - injection is gated by signals_match x query-token overlap, below threshold = no injection). On error (T3), the raw error text IS the query. Multiple matches: geneConflicts drops anti_patterns-mutual low scorers; no targeted hit = no injection. Register the hit at task end with--register-hit --gene <id>(id-addressed, concurrency-safe).
# 国内頻出シナリオ(中国語 Windows ログ / CSV はデフォルトで GBK、utf-8 で読み込むと必ずエラー)——空のデータベースでスターターを実行した後、これを試すと最も効果的
node code/evolver-recall.mjs --query "中国語ログ読み込み時に UnicodeDecodeError が発生" --top 5
# 推奨:タスクテキストを指定して「対象を絞った」呼び出し(タスクに関係ない経験は注入されません)
node code/evolver-recall.mjs --query "<現在のタスクの一言/キーシグナル>" --top 5
# エラー発生時(T3):エラー原文をそのままクエリとして使用——エラー自体がリマインダーです
node code/evolver-recall.mjs --error "UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc4"
- 「審査済み かつ 修正ガード通過 かつ クエリに対象一致」した遺伝子の番号付きリストのみを出力(空のデータベースの場合は明確なメッセージ表示、これは正常);
- パラメータデフォルト値:
--topはデフォルト5件(ソフトプロンプト注入にはコンテキストコストがかかるため、少なめに。多すぎるより少なすぎる方が良い);経験データベースにハードな容量制限はないが、単一プールは <500 エントリ推奨(500超で対象精度が低下、共有プールで分散可能); - 対照ルール:遺伝子の
signals_matchヒット数とクエリワードの共通部分でスコアリング、しきい値未満のエントリは一切注入しない(対象外の注入はコストを増やすだけ); - 複数遺伝子の競合時:
geneConflictsガードがanti_patterns相互排他的な低スコア項目を自動的に除外;それでも複数ある場合はスコアが高い方を採用;対象一致項目がない場合、注入しない方が良い、無関係な遺伝子で無理やり数を揃える必要なし; - このタスクに関連する場合に優先的に採用;終了時に実際に採用した遺伝子のヒットを登録(
--gene <id>でID指定、同時実行セーフ):
node code/evolver-recall.mjs --register-hit --gene <asset_idまたはgene_id> --note "<タスクの一言>"
- 無関係な経験を無理に当てはめないこと;採用しなかったエントリの登録は不要。
フロー B:障害修正後 — 経験の蓄積
EN: Flow B - deposit after fixing a non-obvious failure. Deposit bar (any one): docs/2+ tries needed, environment-specific, counter-intuitive error, or second occurrence. Guided path:
draft --errorauto-extracts signals + pre-fills AVOID + writes anti_patterns; fill in FIX then--commit. Manual path:distillwith explicit signals. strategy MUST be an executable fix (params/commands/encodings) - success summaries are filtered by the repair-signal guard.--shareableonly for genes meant for the shared pool. 判定基準(いずれか1つでも満たせば蓄積する価値あり):
- 問題解決にドキュメント調査/試行錯誤を ≥2回 必要とした;
- マシン環境や環境特性に依存(エンコーディング、パス規則、シェルの違い、ネットワーク環境);
- エラーメッセージが直感に反する、またはドキュメントの説明と一致しない;
- 同じ問題が過去のタスクで2回目に発生。 (どの条件も満たさない通常のエラーは蓄積不要——経験データベースのノイズを避けるため。)
推奨パス:ガイド方式(生のエラーメッセージを貼り付け、シグナルと「負の経験」を自動抽出)
# 1) 下書き生成:自動で signals_match を抽出 + AVOID テンプレートを事前入力 + anti_patterns(負の経験トークン)を書き込み
node code/light-cli.mjs draft --error "<元のエラーテキスト>" --tool <エラー発生ツール名> --context "<あなたが当時何をしていたか>"
# 2) 下書きに従って FIX を補完してデータベースに保存(--strategy でプレースホルダーを上書き)
node code/light-cli.mjs draft --error "<元のエラーテキスト>" \
--strategy "AVOID: <やるべきでないこと> FIX: <具体的なパラメータ/コマンド/エンコーディング>" --commit
# 3) 審査(4状態ステートマシンは下の「審査ステートマシン」セクションを参照;approve は自動で先に証拠収集を実行)
node code/light-cli.mjs approve <gene_id>
AVOID/FIX テンプレートの適用範囲(明確に書かないとガードに拒否される):
| フィールド | 何を書くか | 境界 |
|---|---|---|
AVOID: | やるべきでないこと(負の経験。危険な単語を含んでもOK——それは警告です) | 1~2文。成功の要約は書かないこと |
FIX: | 具体的なパラメータ/コマンド/エンコーディングにまで踏み込んだ実行可能な修正方法 | 必ず実際に記入する必要があります——プレースホルダー/再試行ログ/ナレーションは depositionGate に拒否されます(fail-closed) |
anti_patterns: | 単一トークンリテラル(例 assume-default-utf8) | 競合判定は文字列全体の一致に基づく;kebab形式の長文は避けること |
signals_match: | 呼び出し時の対象一致シグナルワード | クエリワードと共通部分がある場合のみ呼び出し可能;無関係なワードを詰め込まないこと |
代替パス:手書き方式(シグナルが既に明確な場合)
node code/light-cli.mjs distill --category repair --signals bash,exception \
--strategy "<修正方法を一文で;複数ステップはセミコロンで区切る;具体的なパラメータ/コマンド/エンコーディングを指定すること>" \
--summary "<問題の一言説明>" [--shareable]
- strategy は実行可能な修正方法(具体的なパラメータ/コマンドを含む)として記述すること。成功の要約は書かないでください——呼び出し側には修正ガードがあり、成功要約はフィルタリングされます(少なくとも悪質なものよりはマシという基準);
--shareableは、この遺伝子を共有プールに入れたい場合のみ追加(デフォルトは非共有 = 外部送信なし);- 蓄積基準の実データ(正直な範囲):本番の実際のセッションから自動抽出可能な「クリーンな修正ペア」の密度は非常に低い(実測
distillablePairs=0)——このライブラリの遺伝子は主に手動/ガイド方式で蓄積されます。
蓄積品質チェック depositionGate(0.17.0、fail-closed)
EN: Quality gate at DEPOSITION time (fail-closed): rejects unfilled placeholder / retry-log repetition / narration openings / missing repair-signal words / AVOID-without-FIX. Non-interactive deposits default to quarantined. Full review semantics: the「審査ステートマシン」section below.
distill/draft --commit時にエントリごとにチェック、不適格な場合は直接拒否(ディスクに書き込まれない):
| 拒否条件 | 理由 | 次のステップ |
|---|---|---|
FIX が未入力のプレースホルダー <ここに実行可能な修正方法を記入> | 注入しても全く無価値 | draft で実際の修正方法を補完して再送信 |
retry with corrected args(再試行ログの言い換え) | 「再試行したら直った」は修正方法ではない | AVOID(なぜ間違えたか)+FIX(どうするか)を記述 |
| ナレーションの冒頭(Now I understand…) | 推論の書き流しであり実行不可能 | 同上 |
| 修正シグナルワードの欠落 | 問題と修正方法を説明しているように見えない | 同上 |
| AVOID のみで FIX なし(半製品) | 問題のみで修正方法がなく、注入しても全く無価値(0.22 再審査の実証:3件の遮断された蓄積はすべてこの形態) | 実行可能な修正方法(パラメータ/コマンド/エンコーディング)を補完 |
審査ステートマシン(単一事実源 · 0.36 収束)
遺伝子がデータベースに登録されてから注入可能になるまでのすべての審査セマンティクスはこのセクションだけで管理され、他のドキュメントはすべてここを参照します(複数箇所での表記揺れ防止——0.35 評価で指摘)。 EN: The single source of truth for all review semantics; other docs only point here.
| シナリオ | デフォルト動作 | 上書き方法 |
|---|---|---|
ローカルインタラクティブ蓄積(draft --commit / distill、TTYあり) | 自動承認 | config --auto-approve off で手動審査に変更;ローカル蓄積のみに影響 |
| ローカル非インタラクティブ蓄積(スクリプト/cron/パイプ、TTYなし) | デフォルト隔離(quarantined) | 明示的に --auto-approve を指定すれば承認 |
approve <gene_id> | 自動で先に証拠収集を実行——ローカル4つの台帳(ツールエラー/呼び出し/注入/バックフィル)を3段階出力(強い証拠/弱いコンテキスト/証拠なし)、整合性を確認してから承認 | --skip-evidence は既知の証拠なしシナリオ用の明示的なエスケープハッチ(非推奨);結論が後続のイベントで覆された遺伝子は隔離を維持し、痕跡を残す |
プールインポート gene import / gene pull | official ティアは通過(署名検証);community はデフォルト隔離 | --tier で決定 |
- なぜ approve で証拠収集を必須にするのか:0.20.3 で
evidenceコマンドを作ったが「実行するのを覚えておく」ことに依存していた——当日6件の審査のうち、すべて実行されなかった。メカニズムはアクションノードにバインドされなければならない(T3 哲学:エラー自体がリマインダー)。 - 状態台帳
review.jsonlは LWW 追記型、approve/quarantine は双方向可逆;infoの「審査待ち」= 最後の状態が approved でも quarantined でもないもの。 - 2層の品質ゲートとの関係:depositionGate はデータベース登録前に拒否(上のセクション)、4つのガードは呼び出し側でフィルタリング(下のセクション)——いずれかの層で拒否されれば注入されない。
- ローカル証拠がない遺伝子(共有プール/他のマシン/スターターパック由来)は、内容とソースに基づいて審査し、承認時にその旨を記載。
EN: Review-with-evidence (0.20.3): before
approve, runevidence <gene_id>to check the four local ledgers for events matching the gene's claimed failure/fix. Approve only when consistent; genes whose conclusions were overturned by later events stay quarantined with an audit note. Genes without local evidence (pool imports / other machines / starter pack) are reviewed on content and source, noted at approval.
遺伝子署名と provenance(0.21)
EN: Every deposit is signed with this machine's Ed25519 identity (private key 0600, never leaves the machine); pool imports verify signatures - tampered content is REJECTED. Version-by-version details (v2 canonicalization, source attribution, source_kv, decay):
docs/advanced.md§Provenance.
- 蓄積時に自動署名、プールに付随、インポート時に署名検証:内容が改ざんされた場合 → インポート拒否;署名なしの古い遺伝子はそのまま受け入れ(レガシー);
- 秘密鍵はマシンから外部に出ない;公開鍵は遺伝子と共にプールの内外を移動し、他のマシンが検証できるようにする——信頼モデルは「keyid によるトレーサビリティ」であり、集中型CAではない;
- トレーサビリティフィールドは蓄積/バックフィル時に自動記録(
source_model/source_host/source_kv圧縮スキーム群);遺伝子の有効性はフィードバックに基づいて減衰(時間半減期90日 + 否定圧力、フロア0.25、フィードバックがない場合は減衰なし)——バージョン別詳細(v2正規化 / 正確な帰属 / 位相痕跡 / 減衰パラメータ)はdocs/advanced.md§Provenance を参照。
デプロイと配布(0.23)
EN: Download paths, host integration, pool collaboration, concurrency semantics and scoring; version-by-version detail in
docs/advanced.md§Deployment.
- ダウンロード:GitHub Release zip / npm(国内ミラーは FAQ Q7 参照、sha256 チェックサム付き);
- ホスト統合:
light-cli.mjs install <claude-code|cursor|codex|agents-md>(--yesで保存);OpenClaw/Hermes はinstall-hooksを使用;トリガープロシージャはinstall-snippetで任意の命令ファイルに書き込み可能; - 遺伝子プール連携:
gene pull --pool <URL|名前> --tier official [--scene <シナリオ>](署名検証);gene submit --bundle <file>でメンテナーに送信;名前付きプールは~/.evomap/pools.jsonを参照;コントリビューション規約は CONTRIBUTING.md(CC-BY-4.0); - 同時実行セマンティクス(3層、完全な動作表は
docs/boundary-and-triggers.md§5 を参照):シングルマシン・マルチセッション = withLock ファイルロック;クロスマシン = 遺伝子プールを Git 化(LWW 台帳で裁定);マルチホストは gene_id でアドレッシング(0.18 以降); - 呼び出しスコアリングとしきい値(公開値):signals ヒット +3/個 + 本文トークン共通部分 +1/個 + 負荷分散バイアス ±2;しきい値2点未満の場合は注入しない(対象外の注入は注入しないより悪い、実測 +36pp);トークナイゼーション = ASCII トークン(≥3文字)+ 中国語2文字バイグラム——複数文字の中国語フレーズを signals に書いても無効(
fix-signalsで検査可能); - セッションフェンス(0.27):
session open "<タスク>"で T1 呼び出し+記帳を1ステップで実行、session close "<結論>"で終了——ペアリングされていない open/close はビルドゲートによって拒否(監査バインディング); - 効果の定量化とバックフィル:
report週報(L1 活性/L2 バックフィル率/L3 再発、--jsonで機械可読);recall --record "<結論>"で検証結論をバックフィル;license verify <token>で Ed25519 署名ライセンスを検証; - IO 耐障害性とエラーコード(0.34):瞬時エラーは自動リトライ(3回/3秒)→ 連続5回失敗でサーキットブレーカー10秒(IO回復で閉じる);すべての失敗には名前付きエラーコード
[E_USAGE]/[E_ARGS]/[E_GUARD]/[E_NOTFOUND]/[E_INTERNAL]が付与(終了コード0/1/2は維持)——パラメータと完全なテーブルはdocs/advanced.mdを参照; - 理論的出自:異種検証の問題認識は arXiv:2512.05117 に基づく(詳細はREADMEの謝辞セクションと
docs/research.mdを参照);バージョン別詳細(トレーサビリティ/エイリアストリガーワード/ライセンス/減衰パラメータ)はdocs/advanced.md§Deployment を参照。
セキュリティ:4つのゲート(0.16.0)
EN: Four gates: repair-signal guard, narration guard, injection guard (malice; AVOID=warning allowed vs FIX=instruction blocked), redaction gate (privacy, fail-closed off-machine). Per-gate details:
docs/security-and-license.md§Gates.
| # | ゲート | 管轄範囲 | 有効範囲 |
|---|---|---|---|
| 1 | 修正ガード | 実際の修正方法があるかどうか(実行可能な内容がない場合 → 注入しない;質より量) | 呼び出し |
| 2 | ナラティブガード | ナレーションの書き流しかどうか(ナレーションはエージェントにとってゼロ情報、実測でノイズ +36pp 相当) | 呼び出し |
| 3 | インジェクションガード | 悪意のある命令かどうか(プロンプトインジェクションの場合 → 注入しない;「遺伝子によるホストの逆操作」に対する主な防御線) | 呼び出し(CLI / Pi 拡張ブリッジ簡易版 / オーケストレーター)+ インポート + エクスポート |
| 4 | 匿名化ゲート | プライバシーに関わる内容が漏洩するかどうか(IP/パス/キー → ブロックしてネットワーク外部に送信しない) | エクスポート + インポート |
- ダウングレードセマンティクス:エクスポート/インポートは fail-closed(ガードモジュールがない場合は実行を拒否);呼び出し側はインジェクションゲートのみスキップし、残りの3つのゲートは通常通り動作(ホストのブートストラップパスがガードの失敗によってユーザーをブロックしないようにする——読み取りはブロックせず、書き込みは closed である必要があります)。
- 各ゲートの具体的なスキャン対象、ヒット後の動作、0.31 で修正された2つの見逃しと回帰テストケース:すべて
docs/security-and-license.md§Gates に統一——この文書ではインジェクションのトリガー特徴を再掲載せず、ドキュメント自体がスキャナーによってサンプルとして扱われるのを防ぎます(このリポジトリにはこれによりリリースされた前例があります)。
能力境界クイックリファレンス(いつ期待すべきでないか)
不適切なシナリオ6カテゴリ(複数マシンでの同一データベース書き込み / 100% エラー回避保証 / リアルタイム同期データベース / 一度きりのタスク / 権威ある知識ベースとしての使用 / アーキテクチャ間の直接再利用)と量的境界(デフォルト注入5件、データベースサイズ上限未実測、クロスマシン分散ロックなし、Node ≥22)はすべて
docs/boundary-and-triggers.md§1–§2 を参照。 EN: Capability limits ("when NOT to use") and quantitative bounds:docs/boundary-and-triggers.md§1–§2.
いつリマインダーを出すか:5つのトリガーポイント(0.16.0 の中核設計)
EN: Recall bound to concrete action nodes, never left to memory: T1 task start, T2 before first side-effecting action, T3 on error (the error text IS the query), T4 after fixing, T5 task end (register-hit/negate). Full spec:
docs/boundary-and-triggers.md. 「スキルをインストールしたが誰も呼び出さない」がこのプロジェクトの最も根本的な障害モードです——作成者でさえ忘れます(実測:関連遺伝子が呼び出しランキングで1位になるのに、行動前に呼び出しを実行しなかったために同じミスを繰り返す)。したがって、「ユーザーが覚えている」ことに頼ることはできず、呼び出しを具体的なアクションノードにバインドする必要があります。
| # | トリガーポイント | タイミング | コマンド | 実行しなかった場合の結果 |
|---|---|---|---|---|
| T1 | タスク開始 | 非自明なタスクを受け取った時、計画する前 | recall --query "<タスク>" | 予防効果なし:避けるべきミスをそのまま踏む |
| T2 | 行動前 | 最初の不可逆的なアクションを実行する直前(ファイル書き込み/コード提出/デプロイ/外部インターフェース呼び出し/データ削除・変更);同一タスク内の同種アクションは1回のみトリガー、以降はこの結論を再利用 | 同上(query=これから行う具体的なアクション、例「スクリプトでファイルを一括書き換え」) | 近接予防(オプション) |
| T3 | エラー発生時 | ツールがエラーを返した時、再試行する前 | recall --error "<エラー原文>" | 最も惜しい:データベースに修正方法があるのに、盲目的に再試行してしまう |
| T4 | エラー修正後 | 非自明なエラーを修正した時 | draft --error ...(蓄積) | 経験が失われ、次のマシンで再びミスする |
| T5 | タスク終了 | 終了処理 | --register-hit --gene <id> / --negate --gene <id> | 測定不能、無効な修正方法を発見できない |
T3 は特に重要(効果が最も高いのに、最も無視されがち):唯一の「覚えている必要がない」トリガーポイント——エラー自体がリマインダーです。ツールがエラーを返し、再試行する前に、エラー原文をそのままクエリとして使用してください(自分で要約しないこと):node code/evolver-recall.mjs --error "<エラー原文>";ヒットしたら修正方法に従って再試行、それでも失敗する場合 → T4 へ進み経験を蓄積。
完全なトリガー仕様はすべて
docs/boundary-and-triggers.mdに統一——T2 判定口径と3つの例、マルチホスト同時実行マトリックス、トリガーワード↔コマンドマッピング、3種類のホスト統合方法、国内ミラー、「インストールしたのに効かない」自己診断を含む。このファイルには上記のコアテーブルのみを残し、両方の場所で個別に表記がずれることを防ぎます。 トリガーワードは呼び出しのヒントに過ぎず、呼び出し一致メカニズムではありません(ヒットはsignals_match × query-tokenの対象一致に依存);タスク開始時に「非自明」と判断されれば T1 を実行するだけで、特定のワードセットにヒットする必要はありません。
よくある誤った使い方(アンチパターン一覧)
EN: Anti-pattern quick list - each row explains the MECHANISM, not just the symptom. Full 14-item catalog with [A] evidence:
docs/common-mistakes.md. Key ones: success-summary strategies are noise (+36pp worse than nothing), model-may-fail traps have unreliable hit rates, token deltas need a no-injection control group (~-22% repeat-execution baseline), error counting must use authoritative flags (isError=true), cold start needs flow-B deposits first. 各行には「なぜ間違いなのか」——現象ではなくメカニズムを説明。完全なリスト(追加項目を含む)はdocs/common-mistakes.mdを参照。
| 誤った方法 | なぜ間違いなのか(メカニズム) | 正しい方法 |
|---|---|---|
修正方法の戦略に成功の要約(strategies)を書く | 修法ガードが通過したとしても、注入はノイズとなる(実測:注入なしに比べ +36pp 悪化) | 実行可能な修正方法(パラメータ/コマンド/エンコーディング)を書く |
モデルが失敗すると仮定したトラップ(trap)を使用 | ヒット率が低く、信頼性に欠ける | 実際のエラーに基づいて蓄積(T3→T4) |
| トークンデルタベースの実験で注入なしの対照群を設定しない | 再現実行のベースラインが約 -22% 低下する | 必ず注入なしの対照群を設定する |
エラーカウントに権威あるフラグ(isError=true)を使用しない | 誤ったエラーカウントにつながる | エラーカウントには isError=true を使用する |
| コールドスタートでいきなりフローAを使用 | データベースが空のため、呼び出せる修正方法がない | 最初にフローBでいくつか経験を蓄積する |
完全なアンチパターンカタログ(14項目、証拠付き)は
docs/common-mistakes.mdを参照。
目次
- ドキュメントガイド(ドキュメントランドスケープ)
- 使用開始(Quick Start)
- インストール(Installation)
- Provider 設定(Provider Configuration)
- フローA:タスク開始 — 経験呼び出し
- フローB:障害修正後 — 経験蓄積
- 蓄積品質チェック(Deposition Quality Gate)
- 審査ステートマシン(Review State Machine)
- 遺伝子署名とトレーサビリティ(Gene Signatures & Provenance)
- デプロイと配布(Deployment & Distribution)
- セキュリティ:4つのゲート(Security Gates)
- 能力境界(Capability Boundaries)
- トリガーポイント(Trigger Points)
- アンチパターン一覧(Anti-pattern Quick List)
- FAQ
- ライセンス
ドキュメントガイド(Documentation Landscape)
このリポジトリのドキュメントは階層化されており、必要な情報に素早くアクセスできます:
| ドキュメント | 対象読者 | 内容 |
|---|---|---|
examples/quickstart.md | 全ユーザー | 5分で完了するハンズオンチュートリアル |
docs/overview.md | 全ユーザー | プロジェクトの全体像とコアコンセプト |
docs/one-pager.md | 新規ユーザー | 1分で使用判断できる概要 |
docs/common-mistakes.md | 全ユーザー | 14のアンチパターンとその修正方法 |
docs/advanced.md | 上級ユーザー | 詳細な設定、運用、高度なトピック |
docs/boundary-and-triggers.md | 全ユーザー | 能力境界、トリガーポイント詳細、トラブルシューティング |
docs/security-and-license.md | セキュリティ関連 | 4つのセキュリティゲートの詳細、ライセンス情報 |
docs/providers.md | フローCユーザー | Provider設定の例 |
docs/config-errors.md | 全ユーザー | よくある設定ミスと修正方法 |
docs/faq.md | 全ユーザー | 完全なFAQ |
docs/research.md | 研究者 | 制御実験の設計と実装 |
FAQ
よくある質問は docs/faq.md を参照してください。
ライセンス
- デフォルトの light バックエンド:MIT(
light-cli.mjsおよびその他のコードファイルは、特に明記がない限り MIT ライセンス) - オプションの
@evomap/evolver統合:GPL-3.0-or-later(ユーザーが自らインストールし--engine evolverを使用する場合のみ適用) - ドキュメント(
docs/およびexamples/):CC-BY-4.0 - コントリビューション:コントリビューションには、特に明記がない限り、プロジェクトのライセンスが適用されます。詳細は
CONTRIBUTING.mdを参照。