Skip to content

Latest commit

 

History

History
412 lines (303 loc) · 20.4 KB

File metadata and controls

412 lines (303 loc) · 20.4 KB

Before vs After — AIエージェントの7つの規律法則

AIエージェントの7つの規律法則

AIエージェントがステップを飛ばし、推測し、検証せずに「完了」と宣言するのを防ぐ

npm downloads license tests

Claude Code Cursor Codex Gemini CLI


English | 简体中文 | 日本語


問題

AIエージェントは個々のステップは得意です。しかし規律がありません。

リサーチを飛ばします。計画が曖昧です。検証せずに「完了」と宣言します。タスクの途中で機能を追加します。振り返りをしません。セッションごとに同じミスを繰り返します。

7つの法則がこれを解決します。さらに学習システム(Mulahazah)が時間とともにインスティンクト(直感)を構築します。設定不要、デーモン不要、手動セットアップ不要です。

Before vs After

continuous-improvement なし — エージェントがリサーチを飛ばし、検証せずに「完了」と宣言
あなた: /api/users エンドポイントにレート制限を追加して

エージェント: レート制限を追加します。
       *express-rate-limit ミドルウェアを作成*
       完了しました!/api/users エンドポイントにレート制限を追加しました。

あなた: 既にレート制限があるか確認した?
エージェント: 確認します... あ、middleware/rateLimit.ts に既にレートリミッターがありました。
       重複を作ってしまいました。修正します。

あなた: テストした?
エージェント: テストを実行します... 失敗しています。インポートパスが間違っています。
       *インポートを修正*
       動きました!

あなた: /api/auth エンドポイントも壊れているよ — 同じミドルウェアを共有していたのに。
エージェント: なるほど。それも修正します...

結果: 4回のやり取り。重複コード。壊れたエンドポイント。15分の無駄。

continuous-improvement あり — エージェントが7つの法則に従う
あなた: /api/users エンドポイントにレート制限を追加して

エージェント: **[法則1: リサーチ]** 既存のレート制限を検索中...
       発見: middleware/rateLimit.ts — 既に /api/auth に適用中。
       発見: express-rate-limit は package.json に既にあり。

       **[法則2: 計画]**
       実行すること: 既存の rateLimit ミドルウェアを拡張して /api/users をカバー
       実行しないこと: 新しいミドルウェアの作成、既存の /api/auth の動作変更
       検証方法: テスト実行 + curl で /api/users に101回リクエストし 429 レスポンスを確認

       **[法則3: 一つずつ実行]** middleware/rateLimit.ts の
       ルートリストに /api/users を追加中...

       **[法則4: 検証]**
       ✓ npm test — 47/47 パス
       ✓ curl テスト — 100リクエスト後に 429
       ✓ /api/auth は正常 — 200 OK

       完了。既存のレートリミッターを拡張して /api/users をカバーしました。
       変更ファイル1つ: middleware/rateLimit.ts (+1行)。

結果: 初回で正解。重複コードなし。壊れたエンドポイントなし。2分。


インストール

Beginner(デフォルト) — フックのみ、セットアップ不要

npx continuous-improvement install

これだけです。Claude Code の場合、以下がインストールされます:

  • Observation フック(すべてのツール呼び出しをキャプチャ、50ms未満、jq はオプション)
  • /continuous-improvement/planning-with-files/discipline/dashboard コマンド
  • 自動レベリング・インスティンクトシステム

Expert — フルパワー、MCP サーバー付き

npx continuous-improvement install --mode expert

Beginner のすべてに加えて:

  • MCP サーバー — 12ツール(インスティンクト管理、計画ファイル、インポート/エクスポート、observation ビューア、ダッシュボード、パック)
  • セッションフック(セッション開始時にインスティンクトを自動ロード、終了時に振り返りをリマインド)
  • Claude Code、Claude Desktop、その他の MCP クライアントで動作

MCP のみ — Claude 以外のエディタ向け

npx continuous-improvement install --mode mcp

フックなしで MCP サーバーを登録します。Cursor、Zed、Windsurf、VS Code など MCP をサポートするエディタ向けです。

特定のターゲットにインストール

npx continuous-improvement install --target claude    # Claude Code + Mulahazah
npx continuous-improvement install --target openclaw  # OpenClaw(スキルのみ)
npx continuous-improvement install --target cursor    # Cursor(スキルのみ)
npx continuous-improvement install --target all       # すべてのターゲット

手動インストール

mkdir -p ~/.claude/skills/continuous-improvement && \
curl -fsSL -o ~/.claude/skills/continuous-improvement/SKILL.md \
  https://raw.githubusercontent.com/naimkatiman/continuous-improvement/main/SKILL.md

エージェントに直接指示する

Fetch and follow the skill at: https://raw.githubusercontent.com/naimkatiman/continuous-improvement/main/SKILL.md

AIエージェントの7つの規律法則

エコシステム内のすべてのスキルは機能を追加します。これは唯一、エージェントの思考方法を修正するスキルです。

# 法則 これがないと、エージェントは...
1 実行前にリサーチする 既に存在するものを再発明する
2 計画は神聖である スコープクリープし過剰に作り込む
3 一度に一つだけ テストされていない変更を積み重ねる
4 報告前に検証する 「完了」と嘘をつく
5 セッション後に振り返る 同じ失敗を繰り返す
6 一つの変更をイテレーションする 5つの変更を同時にデバッグする
7 すべてのセッションから学ぶ コンテキストウィンドウが終わると知識を失う

ループ

リサーチ → 計画 → 実行(一つずつ) → 検証 → 振り返り → 学習 → イテレーション

エージェントがステップを飛ばしているなら、それこそが最も必要なステップです。


Mulahazah: 自動レベリング学習

Mulahazah(アラビア語: 観察を意味する「ملاحظة」)は、エージェントが時間とともに**インスティンクト(直感)**を構築する仕組みです。自動的にレベルアップします。設定は一切不要です。

インストール:     フックがサイレントにキャプチャを開始。何も気づきません。
~20セッション:   エージェントがパターンを分析し、最初のインスティンクトを作成(サイレント)
~50セッション:   インスティンクトが 0.5 を超える → エージェントが行動を提案し始める
~100セッション:  インスティンクトが 0.7 を超える → エージェントが学習した内容を自動適用

仕組み

  1. フックがすべてのツール呼び出しをキャプチャ — PreToolUse/PostToolUse フックが JSONL の observation を書き込みます(50ms未満、セッションをブロックしない、jq 不要)
  2. 分析はインラインで実行 — 20件以上の observation が蓄積されると、セッション開始時に Claude が分析します。バックグラウンドデーモンなし。
  3. インスティンクトは信頼度を持つ — 0.3〜0.9 のスケールで段階的な動作:
    • サイレント (< 0.5) — 保存されるが表示されない
    • 提案 (0.5〜0.69) — 関連する場面でインラインで言及
    • 自動適用 (0.7+) — 自動的に適用
  4. 自己修正 — ユーザーの修正で信頼度が 0.1 低下。使われないインスティンクトは減衰。間違った行動は自然に消えます。
  5. プロジェクトスコープ — インスティンクトはデフォルトでプロジェクト単位。2つ以上のプロジェクトで確認されるとグローバルに昇格。

エージェントが学んだことを確認する

/continuous-improvement
/planning-with-files

プラグインアーキテクチャ

continuous-improvement は3つのレイヤーを持つプラグインとして提供されます。必要なものを選んでください:

レイヤー1: スキルのみ(任意の LLM)

SKILL.md をシステムプロンプトに貼り付けるだけ。エージェントは7つの法則に従います。ツール、フック、サーバー不要。

レイヤー2: フック(Claude Code)

npx continuous-improvement install — すべてのツール呼び出しをサイレントにキャプチャするフックをインストール。インスティンクトシステムが自動的に成長します。設定不要。

レイヤー3: MCP サーバー(任意の MCP クライアント)

npx continuous-improvement install --mode expert — 任意のエディタが接続できるフル MCP サーバー。

Beginner vs Expert

機能 Beginner(デフォルト) Expert
Observation フック あり あり
/continuous-improvement コマンド あり あり
/planning-with-files コマンド あり あり
自動レベリング・インスティンクト あり あり
ci_status ツール - あり
ci_instincts ツール - あり
ci_reflect ツール - あり
ci_reinforce ツール - あり
ci_create_instinct ツール - あり
ci_observations ツール - あり
ci_export / ci_import - あり
ci_plan_init / ci_plan_status - あり
セッション開始/終了フック - あり
MCP サーバー - あり

Beginner は90%のユーザーに適しています。インストールして忘れるだけで動きます。システムはセッションからサイレントに学習します。

Expert は MCP サーバーによるプログラマティックアクセス、手動インスティンクト管理、チーム共有用のインポート/エクスポート、セッションレベルのフックを追加します。

MCP ツールリファレンス

ツール 説明
ci_status 現在のレベル、インスティンクト数、observation 数
ci_instincts 信頼度付きの学習済みインスティンクト一覧
ci_reflect 構造化されたセッション振り返りを生成
ci_reinforce インスティンクトの提案を承認/拒否(expert)
ci_create_instinct インスティンクトを手動作成(expert)
ci_observations 生のツール呼び出し observation を閲覧(expert)
ci_export インスティンクトを JSON としてエクスポート(expert)
ci_import JSON からインスティンクトをインポート(expert)
ci_plan_init プロジェクトルートに task_plan.mdfindings.mdprogress.md を作成(expert)
ci_plan_status 3つの計画ファイルの状態を要約(expert)

実例

詳細なウォークスルーは examples/ ディレクトリを参照してください:

  • バグ修正 — ダブル送信バグ: フレームワークなしで4ラウンド → ありで1ラウンド
  • 機能追加 — ページネーション追加: なしで3回の書き直し → ありで初回から正解
  • リファクタリング — SDK 移行: なしで連鎖的な障害 → ありでリグレッションゼロ

各例で、7つの法則の有無で同じタスクを実行し、どの法則が違いを生んだかを示しています。


ファイル構成

continuous-improvement/
├── SKILL.md                           # 7つの法則 + インスティンクトの振る舞い
├── bin/
│   ├── install.mjs                    # CLI インストーラー (--mode beginner|expert|mcp)
│   └── mcp-server.mjs                # MCP サーバー(依存関係ゼロ)
├── hooks/
│   ├── observe.sh                     # Observation フック(純粋な bash、50ms未満)
│   └── session.sh                     # セッション開始/終了フック(expert モード)
├── plugins/
│   ├── beginner.json                  # プラグインマニフェスト: 3ツール
│   └── expert.json                    # プラグインマニフェスト: 12ツール
├── commands/continuous-improvement.md # /continuous-improvement コマンド
├── commands/planning-with-files.md    # /planning-with-files コマンド
├── templates/planning-with-files/     # 計画ファイルテンプレート
├── test/                              # 34テスト (node --test)
├── examples/                          # 実例 before/after シナリオ
├── QUICKSTART.md
├── CHANGELOG.md
└── package.json

インストール先

Beginner モード(デフォルト):

~/.claude/skills/continuous-improvement/SKILL.md     # スキル
~/.claude/commands/continuous-improvement.md          # コマンド
~/.claude/commands/planning-with-files.md            # ファイル計画ワークフロー
~/.claude/instincts/
├── observe.sh                                       # フックスクリプト
├── global/                                          # グローバルインスティンクト (*.yaml)
└── <project-hash>/
    ├── project.json                                 # プロジェクトメタデータ
    ├── observations.jsonl                           # ツール呼び出し observation
    └── *.yaml                                       # プロジェクトインスティンクト

Expert モード で追加されるもの:

~/.claude/instincts/session.sh                       # セッションフック
~/.claude/settings.json                              # + MCP サーバー + セッションフック

明示的にファイルベース計画を初期化すると、プロジェクトルートに次も作成されます:

task_plan.md                                         # フェーズ、状態、決定、エラー
findings.md                                          # 調査メモとソース
progress.md                                          # セッションログと検証メモ

アンインストール

npx continuous-improvement install --uninstall

スキル、フック、コマンドを削除します。~/.claude/instincts/ に保存された学習済みインスティンクトは保持されます。完全にクリーンな状態にしたい場合は、そのディレクトリを手動で削除してください。


対応ツール

ツール サポート
Claude Code フルサポート — スキル + フック + MCP サーバー + 自動レベリング・インスティンクト
Claude Desktop MCP サーバー (expert/mcp モード)
Cursor MCP サーバー (mcp モード) またはスキルのみ (SKILL.md を rules に貼り付け)
Zed / Windsurf MCP サーバー (mcp モード)
VS Code MCP サーバー (mcp モード)、Copilot MCP サポートあり
Codex スキルのみ
Gemini CLI スキルのみ
OpenClaw スキルのみ
任意の LLM SKILL.md をシステムプロンプトに貼り付け

レッドフラグ

エージェントが以下のような発言をしたら、法則を飛ばしています:

  • 「ちょっとだけ...」 → 法則3違反
  • 「これで動くはず...」 → 法則4違反(検証せよ、推測するな)
  • 「もう知っているから...」 → 法則1違反(それでもリサーチせよ)
  • 「ついでに追加して...」 → 法則6違反(まず今のタスクを完了せよ)
  • 「覚えておきます...」 → 法則7違反(書き留めよ)

ロードマップ

フェーズ1: 基盤 -- 完了

  • 公開 npm に公開済み(npx continuous-improvement install が動作)
  • Node テストスイート(インストーラー、フック、MCP サーバー、プラグイン設定、SKILL.md 検証)
  • README + examples/ ディレクトリに before/after の実例
  • Gemini CLI サポート
  • プラットフォームバッジと改善された npm メタデータ
  • awesome-agent-skills への投稿(14K スター)

フェーズ2: プラグインアーキテクチャ -- 完了

  • MCP サーバー — 12ツール(beginner: 3、expert: さらに9)、依存関係ゼロ
  • Beginner / Expert の分離 — シンプルなデフォルト、必要な時にパワーを
  • プラグインマニフェストplugins/beginner.jsonplugins/expert.json
  • セッションフック — セッション開始時にインスティンクトを自動ロード、終了時に振り返りをリマインド
  • --mode フラグbeginner | expert | mcp のインストールモード
  • インポート/エクスポート — チームメンバー間でインスティンクトを JSON として共有
  • マルチエディタ MCP サポート — Claude Desktop、Cursor、Zed、Windsurf、VS Code

フェーズ3: コンテンツと実証

  • 2分デモ動画 — 規律あり/なしのエージェントを並べて比較。X + YouTube に投稿。
  • 「AIエージェントが完了と嘘をつき続ける理由」 — X スレッド / ブログ記事
  • 「今週の法則」X シリーズ — 各法則を7週間かけて解説

フェーズ4: エコシステムの成長

  • GitHub Action — エージェントのトランスクリプトを法則準拠でリント
  • VS Code 拡張機能 — インスティンクトの信頼度を表示するサイドバー
  • クイックスタート・インスティンクトパック — React、Python、Go 等の事前構築済みインスティンクト

フェーズ5: コミュニティ

  • インスティンクト・マーケットプレイス — チーム間で学習済みインスティンクトを共有
  • Mulahazah のカンファレンストーク — 自動レベリングシステムは真に新しいコンセプト
  • リーダーボード / バッジ — 「100セッション」の実績システム

ライセンス

MIT