Communitygithub.com

継続的学習 v2.1 - インスティンクトベースアーキテクチャ

フックを介したセッション観察、信頼度スコア付きのアトミックなインスティンクト(本能)作成、そしてそれらをスキル/コマンド/エージェントへ進化させる、インスティンクトベースの学習システム。v2.1ではプロジェクトスコープのインスティンクトを追加し、プロジェクト間の汚染を防止します。セッションから教訓を取得する、インスティンクトを管理する、またはそれらをスキル、コマンド、エージェントに昇格させる際に使用します。

継続的学習 v2.1 - インスティンクトベースアーキテクチャ とは?

継続的学習 v2.1は、Claude Codeセッションから再利用可能な知識を自動的に抽出・管理するための高度な学習システムです。アトミックな「インスティンクト」と呼ばれる小さな学習行動(信頼度スコア付き)を作成し、それらをクラスタリングしてスキル、コマンド、エージェントへと進化させます。 最大の特徴はv2.1で導入された**プロジェクトスコープ**です。ReactプロジェクトのパターンはReactプロジェクトに、Pythonの規約はPythonプロジェクトに留め、普遍的なパターン(「常に入力を検証する」など)のみをグローバルに共有することで、プロジェクト間の知識汚染を防止します。 システムはPreToolUse/PostToolUseフックを介して100%の確率でツール呼び出しを観測し、バックグラウンドのObserverエージェント(Haiku)がパターンを検出します。インスティンクトはYAML形式で保存され、信頼度(0.3~0.9)、ドメインタグ、証拠、スコープ(プロジェクト/グローバル)を持ちます。 コマンドラインインターフェース(/instinct-status、/evolve、/promoteなど)で直感的に管理でき、データはローカルに保存されるためプライバシーも確保されています。WSL2、Linux、macOSをサポートし、プラグインとしてインストールすることで自動的にフックが有効化されます。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/everything-claude-code/tree/main/skills/continuous-learning-v2

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

継続的学習 v2.1 - インスティンクトベースアーキテクチャ は何をしますか?

Claude Codeセッションを、アトミックな「インスティンクト」(信頼度スコア付きの小さな学習行動)を通じて再利用可能な知識に変える高度な学習システムです。

v2.1 ではプロジェクトスコープのインスティンクトが追加されました。ReactパターンはReactプロジェクトに、Python規約はPythonプロジェクトに留め、普遍的なパターン(「常に入力を検証する」)はグローバルに共有されます。

アクティベートすべきタイミング

  • Claude Codeセッションからの自動学習を設定する場合
  • フックを介したインスティンクトベースの行動抽出を構成する場合
  • 学習行動の信頼度しきい値を調整する場合
  • インスティンクトライブラリをレビュー、エクスポート、インポートする場合
  • インスティンクトをフルスキル、コマンド、エージェントに進化させる場合
  • プロジェクトスコープとグローバルインスティンクトを管理する場合
  • インスティンクトをプロジェクトスコープからグローバルスコープに昇格させる場合

v2.1の新機能

機能v2.0v2.1
ストレージグローバル (~/.claude/homunculus/)プロジェクトスコープ (${XDG_DATA_HOME:-~/.local/share}/ecc-homunculus/projects/<ハッシュ>/)
スコープすべてのインスティンクトがどこにでも適用プロジェクトスコープ + グローバル
検出なしgit remote URL / リポジトリパス
昇格N/A2つ以上のプロジェクトで確認された場合、プロジェクト→グローバル
コマンド4 (status/evolve/export/import)6 (+promote/projects)
プロジェクト間汚染リスクありデフォルトで分離

v2(v1と比較)の新機能

機能v1v2
観測停止フック(セッション終了)PreToolUse/PostToolUse(100%信頼性)
分析メインコンテキストバックグラウンドエージェント(Haiku)
粒度フルスキルアトミックな「インスティンクト」
信頼度なし0.3-0.9の重み付け
進化スキルに直接インスティンクト -> クラスタ -> スキル/コマンド/エージェント
共有なしインスティンクトのエクスポート/インポート

インスティンクトモデル

インスティンクトは小さな学習行動です:

---
id: prefer-functional-style
trigger: "新しい関数を書くとき"
confidence: 0.7
domain: "code-style"
source: "session-observation"
scope: project
project_id: "a1b2c3d4e5f6"
project_name: "my-react-app"
---

# 関数型スタイルを優先

## アクション

適切な場合、クラスベースのパターンよりも関数型パターンを使用する。

## 証拠
- 関数型パターン優先の5つのインスタンスを観測
- 2025-01-15にユーザーがクラスベースのアプローチを関数型に修正

プロパティ:

  • アトミック -- 1つのトリガー、1つのアクション
  • 信頼度重み付け -- 0.3 = 暫定的、0.9 = ほぼ確実
  • ドメインタグ付き -- code-style、testing、git、debugging、workflowなど
  • 証拠ベース -- どの観測が作成したかを追跡
  • スコープ認識 -- project(デフォルト)または global

動作の仕組み

セッションアクティビティ(gitリポジトリ内)
      |
      | フックがプロンプト + ツール使用をキャプチャ(100%信頼性)
      | + プロジェクトコンテキストを検出(git remote / リポジトリパス)
      v
+---------------------------------------------+
|  projects/<プロジェクトハッシュ>/observations.jsonl  |
|   (プロンプト、ツール呼び出し、結果、プロジェクト)  |
+---------------------------------------------+
      |
      | Observerエージェントが読み取り(バックグラウンド、Haiku)
      v
+---------------------------------------------+
|          パターン検出                        |
|   * ユーザーの修正 -> インスティンクト        |
|   * エラー解決 -> インスティンクト            |
|   * 繰り返しワークフロー -> インスティンクト   |
|   * スコープ判断: プロジェクトまたはグローバル? |
+---------------------------------------------+
      |
      | 作成/更新
      v
+---------------------------------------------+
|  projects/<プロジェクトハッシュ>/instincts/personal/ |
|   * prefer-functional.yaml (0.7) [project]   |
|   * use-react-hooks.yaml (0.9) [project]     |
+---------------------------------------------+
|  instincts/personal/  (グローバル)            |
|   * always-validate-input.yaml (0.85) [global]|
|   * grep-before-edit.yaml (0.6) [global]     |
+---------------------------------------------+
      |
      | /evolve クラスタリング + /promote
      v
+---------------------------------------------+
|  projects/<ハッシュ>/evolved/ (プロジェクトスコープ) |
|  evolved/ (グローバル)                        |
|   * commands/new-feature.md                  |
|   * skills/testing-workflow.md               |
|   * agents/refactor-specialist.md            |
+---------------------------------------------+

プロジェクト検出

システムは現在のプロジェクトを自動的に検出します:

  1. CLAUDE_PROJECT_DIR 環境変数(最優先) -- ディレクトリがgitリポジトリでない場合でも明示的なオーバーライドとして尊重されます(絶対パスでハッシュ化)
  2. git remote get-url origin -- ハッシュ化してポータブルなプロジェクトIDを作成(同じリポジトリは異なるマシンでも同じIDになります)
  3. git rev-parse --show-toplevel -- フォールバックとしてリポジトリパスを使用(マシン固有)
  4. グローバルフォールバック -- プロジェクトが検出されない場合、インスティンクトはグローバルスコープに送られます

各プロジェクトは12文字のハッシュID(例:a1b2c3d4e5f6)を取得します。${XDG_DATA_HOME:-~/.local/share}/ecc-homunculus/projects.json のレジストリファイルがIDを人間が読める名前にマッピングします。

データディレクトリ

Continuous-learning-v2は、Claude Codeの機密パスガードがバックグラウンドのインスティンクト書き込みをブロックしないように、~/.claude の外部にObserverデータを保存します:

  1. CLV2_HOMUNCULUS_DIR が絶対パスに設定されている場合
  2. $XDG_DATA_HOME/ecc-homunculus
  3. $HOME/.local/share/ecc-homunculus

~/.claude/homunculus にデータを持つ既存ユーザーは、一度だけ移行できます:

bash skills/continuous-learning-v2/scripts/migrate-homunculus.sh

クイックスタート

1. 観測フックを有効にする

プラグインとしてインストールされた場合(推奨):

余分な settings.json フックブロックは不要です。Claude Code v2.1+ はプラグイン hooks/hooks.json を自動的にロードし、observe.sh は既にそこに登録されています。

以前に observe.sh を ~/.claude/settings.json にコピーした場合は、その重複した PreToolUse / PostToolUse ブロックを削除してください。プラグインフックが重複すると二重実行が発生し、${CLAUDE_PLUGIN_ROOT} 変数はプラグイン管理下の hooks/hooks.json エントリ内でのみ利用可能なため、解決エラーが発生します。

手動で ~/.claude/skills にインストールした場合、~/.claude/settings.json に以下を追加します:

{
  "hooks": {
    "PreToolUse": [{
      "matcher": "*",
      "hooks": [{
        "type": "command",
        "command": "~/.claude/skills/continuous-learning-v2/hooks/observe.sh"
      }]
    }],
    "PostToolUse": [{
      "matcher": "*",
      "hooks": [{
        "type": "command",
        "command": "~/.claude/skills/continuous-learning-v2/hooks/observe.sh"
      }]
    }]
  }
}

2. ディレクトリ構造を初期化する

システムは初回使用時に自動的にディレクトリを作成しますが、手動で作成することもできます:

# グローバルディレクトリ
mkdir -p "${XDG_DATA_HOME:-$HOME/.local/share}/ecc-homunculus"/{instincts/{personal,inherited},evolved/{agents,skills,commands},projects}

# プロジェクトディレクトリは、フックがgitリポジトリ内で初めて実行されると自動的に作成されます

3. インスティンクトコマンドを使用する

/instinct-status     # 学習したインスティンクトを表示(プロジェクト + グローバル)
/evolve              # 関連するインスティンクトをスキル/コマンドにクラスタリング
/instinct-export     # インスティンクトをファイルにエクスポート
/instinct-import     # 他の人からインスティンクトをインポート
/promote             # プロジェクトインスティンクトをグローバルスコープに昇格
/projects            # すべての既知のプロジェクトとそのインスティンクト数を一覧表示

コマンド

コマンド説明
/instinct-statusすべてのインスティンクト(プロジェクトスコープ + グローバル)を信頼度とともに表示
/evolve関連するインスティンクトをスキル/コマンドにクラスタリングし、昇格候補を提案
/instinct-exportインスティンクトをエクスポート(スコープ/ドメインでフィルタリング可能)
/instinct-import <ファイル>インスティンクトをスコープ制御付きでインポート
/promote [ID]プロジェクトインスティンクトをグローバルスコープに昇格
/projectsすべての既知のプロジェクトとそのインスティンクト数を一覧表示

設定

config.json を編集してバックグラウンドObserverを制御します:

{
  "version": "2.1",
  "observer": {
    "enabled": false,
    "run_interval_minutes": 5,
    "min_observations_to_analyze": 20
  }
}
キーデフォルト説明
observer.enabledfalseバックグラウンドObserverエージェントを有効にする
observer.run_interval_minutes5Observerが観測を分析する頻度
observer.min_observations_to_analyze20分析を実行する前に最低限必要な観測数

その他の動作(観測キャプチャ、インスティンクトしきい値、プロジェクトスコープ設定、昇格基準)は、instinct-cli.py および observe.sh のコードデフォルトで設定されています。

Observerプラットフォームサポート

バックグラウンドObserverにはWSL2、Linux、またはmacOSが必要です。ネイティブWindows(Git Bash / MSYS2)では起動して成功を報告しますが、プロセスはスポーンフックが終了しジョブオブジェクトが閉じられると強制終了されるため、分析は実行されません。そのため、observer.enabled: true の設定は事実上何も行いません(issue #2489を参照)。

observe.sh は次のフック呼び出しでこれを検出し、Observerが連続して数回生存に失敗した後、observer-start.log に説明の警告を書き込みます。

| 環境変数 | デフォルト | 説明 | |---------|-------------| | ECC_OBSERVER_NOSURVIVE_WARN_AFTER | 3 | 警告がログに記録されるまでの連続非生存回数 |

ファイル構造

${XDG_DATA_HOME:-~/.local/share}/ecc-homunculus/
+-- identity.json           # プロフィール、技術レベル
+-- projects.json           # レジストリ: プロジェクトハッシュ -> 名前/パス/リモート
+-- observations.jsonl      # グローバル観測(フォールバック)
+-- instincts/
|   +-- personal/           # グローバル自動学習インスティンクト
|   +-- inherited/          # グローバルインポートインスティンクト
+-- evolved/
|   +-- agents/             # グローバル生成エージェント
|   +-- skills/             # グローバル生成スキル
|   +-- commands/           # グローバル生成コマンド
+-- projects/
    +-- a1b2c3d4e5f6/       # プロジェクトハッシュ(git remote URLから)
    |   +-- project.json    # プロジェクトごとのメタデータミラー(id/name/root/remote)
    |   +-- observations.jsonl
    |   +-- observations.archive/
    |   +-- instincts/
    |   |   +-- personal/   # プロジェクト固有の自動学習
    |   |   +-- inherited/  # プロジェクト固有のインポート
    |   +-- evolved/
    |       +-- skills/
    |       +-- commands/
    |       +-- agents/
    +-- f6e5d4c3b2a1/       # 別のプロジェクト
        +-- ...

スコープ判断ガイド

パターンタイプスコープ例
言語/フレームワークの規約プロジェクト「Reactフックを使用する」、「Django RESTパターンに従う」
ファイル構造の設定プロジェクト「__tests__/にテスト」、「コンポーネントはsrc/components/に」
コードスタイルプロジェクト「関数型スタイルを使用する」、「dataclassesを優先する」
エラーハンドリング戦略プロジェクト「エラーにResult型を使用する」
セキュリティプラクティスグローバル「ユーザー入力を検証する」、「SQLをサニタイズする」
一般的なベストプラクティスグローバル「最初にテストを書く」、「常にエラーを処理する」
ツールワークフローの設定グローバル「編集前にGrep」、「書き込み前に読み取り」
Gitプラクティスグローバル「Conventional Commits」、「小規模で焦点を絞ったコミット」

インスティンクトの昇格(プロジェクト -> グローバル)

同じインスティンクトが高い信頼度で複数のプロジェクトに現れる場合、グローバルスコープへの昇格候補となります。

自動昇格基準:

  • 2つ以上のプロジェクトで同じインスティンクトID
  • 平均信頼度 >= 0.8

昇格方法:

# 特定のインスティンクトを昇格
python3 instinct-cli.py promote prefer-explicit-errors

# 条件を満たすすべてのインスティンクトを自動昇格
python3 instinct-cli.py promote

# 変更せずにプレビュー
python3 instinct-cli.py promote --dry-run

/evolve コマンドも昇格候補を提案します。

信頼度スコアリング

信頼度は時間とともに変化します:

スコア意味動作
0.3暫定的提案されるが強制されない
0.5中程度関連する場合に適用される
0.7強い適用が自動承認される
0.9ほぼ確実中核的な動作

信頼度が上がる場合:

  • パターンが繰り返し観測される
  • ユーザーが提案された動作を修正しない
  • 他のソースからの類似インスティンクトが一致する

信頼度が下がる場合:

  • ユーザーが明示的に動作を修正する
  • パターンが長期間観測されない
  • 矛盾する証拠が現れる

なぜスキルではなくフックで観測するのか?

「v1は観測にスキルに依存していました。スキルは確率的です -- Claudeの判断に基づいて約50-80%の確率で発動します。」

フックは100%の確率で、決定論的に発動します。つまり:

  • すべてのツール呼び出しが観測される
  • パターンが見逃されることはない
  • 学習は包括的である

後方互換性

v2.1はv2.0およびv1と完全に互換性があります:

  • 既存のグローバルインスティンクトは scripts/migrate-homunculus.sh を使用して ~/.claude/homunculus/instincts/ から移行可能です
  • v1の既存の ~/.claude/skills/learned/ スキルは引き続き動作します
  • 停止フックは引き続き実行されます(ただし現在はv2にもフィードされます)
  • 段階的移行:並行して両方を実行できます

プライバシー

  • 観測はマシン上のローカルに留まります
  • プロジェクトスコープのインスティンクトはプロジェクトごとに分離されています
  • エクスポートできるのはインスティンクト(パターン)のみ -- 生の観測はエクスポートされません
  • 実際のコードや会話の内容は共有されません
  • エクスポートおよび昇格するものをユーザーが制御します

関連情報

  • ECC-Tools GitHub App - リポジトリ履歴からインスティンクトを生成
  • Homunculus - v2のインスティンクトベースアーキテクチャ(アトミック観測、信頼度スコアリング、インスティンクト進化パイプライン)に影響を与えたコミュニティプロジェクト
  • The Longform Guide - 継続的学習セクション

インスティンクトベースの学習: あなたのパターンをClaudeに教え、プロジェクトごとに。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/claude-api

Anthropic Claude API patterns for Python and TypeScript. Covers Messages API, streaming, tool use, vision, extended thinking, batches, prompt caching, and Claude Agent SDK. Use when building applications with the Claude API or Anthropic SDKs.

affaan-m/everything-claude-code

End-to-end marketing campaign planning and execution. Covers audience research, positioning, campaign angle definition, landing page copy, email sequences, social posts, ad copy, short-form video scripts, and content calendars. Use as the orchestration layer for multi-channel product launches. Use when planning or executing a multi-channel product launch, or producing landing page, email, social, or ad copy.

affaan-m/everything-claude-code

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/everything-claude-code-conventions

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use when the user asks to build web components, pages, or applications and the visual direction matters as much as the code quality.

affaan-m/gget

gget CLI and Python workflow for quick genomic database queries, sequence lookup, BLAST-style searches, enrichment checks, and reproducible bioinformatics evidence logs.

affaan-m/literature-review

Systematic literature-review workflow for academic, biomedical, technical, and scientific topics, including search planning, source screening, synthesis, citation checks, and evidence logging.

affaan-m/motion-ui

Production-ready UI motion system for React/Next.js. Use when implementing animations, transitions, or motion patterns.

affaan-m/project-guidelines-example

Example project-specific skill template based on a real production application.

affaan-m/pubmed-database

Direct PubMed and NCBI E-utilities search workflows for biomedical literature, MeSH queries, PMID lookup, citation retrieval, and API-backed literature monitoring.

affaan-m/scholar-evaluation

Structured scholarly-work evaluation for papers, proposals, literature reviews, methods sections, evidence quality, citation support, and research-writing feedback.

affaan-m/uspto-database

USPTO patent and trademark data workflow for official record lookup, PatentSearch queries, TSDR checks, assignment data, and reproducible IP research logs.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

関連スキル