claude-alfred 0.3.9 → 0.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/README.ja.md +98 -220
  2. package/README.md +98 -220
  3. package/content/rules/alfred-flow.md +1 -1
  4. package/dist/{audit-BoZ1ny8J.mjs → audit-e13xK9Fr.mjs} +1 -1
  5. package/dist/cli.mjs +3 -3
  6. package/dist/{directives-COYpcrJX.mjs → directives-B6ykVXYw.mjs} +3 -3
  7. package/dist/{dispatcher-VEw4zMBd.mjs → dispatcher-B4glWv7l.mjs} +6 -6
  8. package/dist/{epic-s_BVNu2z.mjs → epic-CfxJ13zy.mjs} +9 -6
  9. package/dist/{fts-DUZkPJPD.mjs → fts-DICqcpG_.mjs} +12 -21
  10. package/dist/{living-spec-ZVyfPGMW.mjs → living-spec-xBRUQkJf.mjs} +53 -3
  11. package/dist/{post-tool-BdPgHCy0.mjs → post-tool-ChRUEEQ1.mjs} +61 -106
  12. package/dist/post-tool-D0udgZh-.mjs +11 -0
  13. package/dist/{pre-compact-CvLJa1rL.mjs → pre-compact-D4vFlfQh.mjs} +34 -32
  14. package/dist/{pre-tool-QmdClB53.mjs → pre-tool-ejlfZEaA.mjs} +14 -8
  15. package/dist/{review-gate-Bst0t7jH.mjs → review-gate-BQxlpYj7.mjs} +8 -15
  16. package/dist/{server-B7dI3oXY.mjs → server-BcvoiJ-D.mjs} +198 -75
  17. package/dist/{server-BTRnvbYy.mjs → server-BxLC8k5Q.mjs} +106 -34
  18. package/dist/{session-start-ctDzNSg-.mjs → session-start-DUovCjn_.mjs} +14 -43
  19. package/dist/{stop-B2wfqVpM.mjs → stop-C4xBlDCN.mjs} +5 -6
  20. package/dist/{types-BBT-j5-a.mjs → types-K2jxpWyU.mjs} +53 -18
  21. package/dist/{user-prompt-BqSQPh2W.mjs → user-prompt-Djb3YAhO.mjs} +15 -6
  22. package/dist/{vectors-C3yIO_A5.mjs → vectors-DHZGQ096.mjs} +32 -1
  23. package/package.json +1 -1
  24. package/web/dist/assets/activity-CIf-gUcO.js +1 -0
  25. package/web/dist/assets/api-Czwixxki.js +1 -0
  26. package/web/dist/assets/{badge-C05td892.js → badge-3N7nOtqq.js} +1 -1
  27. package/web/dist/assets/chevron-down-NdONdQft.js +1 -0
  28. package/web/dist/assets/circle-check-18_r7T-x.js +1 -0
  29. package/web/dist/assets/circle-dot-_XLTikjN.js +1 -0
  30. package/web/dist/assets/{createLucideIcon-CXfoiJlS.js → createLucideIcon-Hw6uP-RZ.js} +1 -1
  31. package/web/dist/assets/dist-DSd8y50L.js +1 -0
  32. package/web/dist/assets/index-ChZ7KxdR.js +10 -0
  33. package/web/dist/assets/index-Cn-UIwZa.css +1 -0
  34. package/web/dist/assets/knowledge-BTc-2IO_.js +99 -0
  35. package/web/dist/assets/lib-CsXiUMMD.js +14 -0
  36. package/web/dist/assets/{link-kp6hDCe3.js → link-C0TZ2dA1.js} +1 -1
  37. package/web/dist/assets/pagination-DwHrdZBg.js +1 -0
  38. package/web/dist/assets/{progress-BvJqvG2c.js → progress-CUX5UlsU.js} +2 -2
  39. package/web/dist/assets/routes-DRFKiyaY.js +1 -0
  40. package/web/dist/assets/separator-gJQZ9Knq.js +1 -0
  41. package/web/dist/assets/skeleton-O1QZ4Uj4.js +1 -0
  42. package/web/dist/assets/tasks-Bdffj5wu.js +1 -0
  43. package/web/dist/assets/{tasks._slug-dRSuny4G.js → tasks._slug-DsY6CbBl.js} +16 -16
  44. package/web/dist/assets/types-CeuNEzVD.js +1 -0
  45. package/web/dist/assets/{useParams-Cwa1KzHT.js → useParams-B_mmji0Q.js} +1 -1
  46. package/web/dist/index.html +6 -6
  47. package/dist/post-tool-BYBYLgt7.mjs +0 -11
  48. package/web/dist/assets/activity-DaNbm_lE.js +0 -1
  49. package/web/dist/assets/api-CBU51vqb.js +0 -1
  50. package/web/dist/assets/button-D3z8_kMQ.js +0 -14
  51. package/web/dist/assets/checkbox-Bh9MPi9D.js +0 -1
  52. package/web/dist/assets/circle-dot-BNdwEV23.js +0 -1
  53. package/web/dist/assets/dist-DTaMiatS.js +0 -1
  54. package/web/dist/assets/index-CUO1k34R.js +0 -10
  55. package/web/dist/assets/index-hjQ-PBDH.css +0 -1
  56. package/web/dist/assets/knowledge-CCOXtQC7.js +0 -59
  57. package/web/dist/assets/routes-CjJIy5YD.js +0 -1
  58. package/web/dist/assets/separator-CAsWcbnS.js +0 -1
  59. package/web/dist/assets/skeleton-Bk7Yf44E.js +0 -1
  60. package/web/dist/assets/tasks-BEmeWSSO.js +0 -1
  61. /package/dist/{state-7LLZFgmO.mjs → state-Df6u4ZVI.mjs} +0 -0
package/README.ja.md CHANGED
@@ -4,287 +4,165 @@
4
4
  [![Node](https://img.shields.io/badge/node-%3E%3D22-339933?logo=node.js&logoColor=white)](https://nodejs.org/)
5
5
  [![MIT License](https://img.shields.io/github/license/hir4ta/claude-alfred)](https://github.com/hir4ta/claude-alfred/blob/main/LICENSE)
6
6
 
7
- Claude Code の開発執事。
7
+ [Claude Code](https://docs.anthropic.com/en/docs/claude-code) の開発執事。仕様、記憶、レビュー — 全部自動。
8
8
 
9
- [English README](README.md)
10
-
11
- ## 何が辛いのか
12
-
13
- Claude Code で開発してると、3つの壁にぶつかる。
14
-
15
- **忘れる。** Compact するたび、セッション切れるたび、全部消える。20分かけた設計判断、もう一回聞かれる。
16
-
17
- **行き当たりばったり。** 仕様もなく、計画もなく、ノリで実装。動くけど、壊れる。
18
-
19
- **誰もレビューしない。** コードがそのまま出ていく。バグは本番で見つかる。
20
-
21
- alfred は3つとも潰す。
9
+ **他のツールは提案する。alfred は強制する。**
22
10
 
23
- ## アプローチ
11
+ [English README](README.md)
24
12
 
25
- alfred は**仕様駆動の開発フロー**を強制する。全タスクが同じ構造に従う。例外はない。
13
+ ## 30秒で分かる alfred
26
14
 
27
15
  ```
28
- Spec > Wave > Task
29
- ```
30
-
31
- **Spec** はこれから作るものを記述するドキュメント群。**Wave** は関連タスクをレビュー可能な塊にまとめたもの。**Task** は1つの作業単位。
32
-
33
- フローはこう進む。
34
-
35
- 1. **Spec を作る** — 要件、設計、タスク、テスト仕様
36
- 2. **セルフレビュー** — 3つの AI エージェントがアーキテクチャを議論する(S サイズ含む全サイズ)
37
- 3. **承認を得る** — ブラウザダッシュボードでレビュー、任意の行にコメント(M/L/XL)
38
- 4. **Wave ごとに実装** — 各 Wave 完了後にコミット、セルフレビュー、学びを保存
39
- 5. **クローズ** — 最終レビューして `dossier complete`
40
-
41
- これは提案じゃない。Hook が強制する。Spec なしでコードを書こうとするとブロックされる。Wave レビューをスキップすると Edit/Write が使えなくなる。
42
-
43
- ## 何ができるか
44
-
45
- ### 消えない仕様
46
-
47
- 要件、設計、決定、セッション状態 — 構造化された Markdown が Compact を跨いで生き残る。コンテキストは失われない。タスクの大きさに合わせてファイル数が変わる。バグ修正なら3ファイル、大規模機能なら6ファイル。
48
-
49
- ### 積み重なる記憶
50
-
51
- 「あの時こう決めた」「このバグ前にも見た」「X は試したけどダメだった」— 全てが `.alfred/knowledge/` に構造化 JSON として保存される。3分類のみ: **decision**、**pattern**、**rule**。Git フレンドリーで、チームで共有できる。矛盾は自動検出。次に似た問題に当たったとき、聞く前に alfred が出してくる。
52
-
53
- ### ドリフトしない仕様
54
-
55
- コミットの度に、変更ファイルを Spec と照合。設計書にないコンポーネントを変更した? 警告。メモリに保存した規約がコードと合わなくなった? フラグ。
56
-
57
- ### スケールするレビュー
58
-
59
- 6つのレビュープロファイル(code, config, security, docs, architecture, testing)、それぞれにチェックリスト。並列エージェント、スコア付きレポート、具体的な修正案。
60
-
61
- ### バイパスできない承認ゲート
62
-
63
- 3層の enforcement で守る。
64
- - **Review gate** が spec/wave レビュー完了まで Edit/Write をブロック
65
- - **Approval gate** が未承認 M/L/XL をブロック
66
- - **Intent guard** が spec なし実装をブロック
67
-
68
- ステータスの手動書き換えでは突破できない。レビュー JSON ファイルの存在も検証する。
69
-
70
- ### 能動的スキル提案
71
-
72
- 調査中か、実装中か、バグ修正中か、PR マージ直後か、大きな PDF を読んでいるか — alfred が状況を検知して、適切なスキルを提案する。コマンドを覚える必要はない。
73
-
74
- ### 日英切り替え対応のダッシュボード
16
+ あなた: 「ユーザー認証を追加して」
75
17
 
76
- `localhost:7575` でリアルタイムにプロジェクト状態を確認。タスク進捗、ナレッジ健全性、アクティビティ。ワンクリックで日本語・英語を切り替え。設定はブラウザに保存される。
18
+ alfred: spec を作成(要件 + 設計 + タスク)→
19
+ 3つのエージェントがアーキテクチャを議論 →
20
+ ブラウザダッシュボードで承認 →
21
+ Wave ごとに実装、都度コミット+レビュー →
22
+ 学んだことを次回のために保存
23
+ ```
77
24
 
78
- ## セットアップ
25
+ 何を作るか言うだけ。あとは alfred がやる。
79
26
 
80
- ### 1. インストール
27
+ ## はじめる
81
28
 
82
29
  ```bash
83
30
  npm install -g claude-alfred
84
31
  ```
85
32
 
86
- SQLite データベースとユーザールールが自動セットアップされる。`alfred doctor` で確認。
87
-
88
- ### 2. プラグイン
89
-
90
- Claude Code 内で:
33
+ Claude Code で:
91
34
 
92
35
  ```
93
36
  /plugin marketplace add hir4ta/claude-alfred
94
37
  /plugin install alfred
38
+ /init # "alfred" を選択 — ステアリングドキュメント + ナレッジインデックスをセットアップ
95
39
  ```
96
40
 
97
- ### 3. 環境変数
98
-
99
- `~/.zshrc` に追加:
100
-
101
- ```bash
102
- export VOYAGE_API_KEY=your-key # セマンティック検索が有効に(1セッション約$0.01)
103
- export ALFRED_LANG=ja # 出力言語 (en/ja/zh/ko/fr/de/es/pt...)
104
- ```
105
-
106
- Voyage のキーがなくても動く。FTS5 全文検索がフォールバックする。
41
+ 任意: `~/.zshrc` に `export VOYAGE_API_KEY=your-key` を追加するとセマンティック検索が有効に(1セッション約$0.01)。なくても FTS5 全文検索で動く。
107
42
 
108
- ### 4. プロジェクトセットアップ
43
+ ## 何が違うのか
109
44
 
110
- Claude Code 内で、プロジェクトルートから:
45
+ 多くの spec ツールは「先に仕様を書いた方がいいですよ」と slash command で提案する。alfred は Claude Code の Hook システムで Edit/Write を**物理的にブロック**する。提案ではなく、ツールレベルでの強制 — それが根本的な違い。
111
46
 
112
- ```
113
- /init <- 候補から "alfred" を選択
114
- ```
47
+ **提案ではなく強制。** 3層のゲートがコード編集を制御する。spec なしの実装を防ぐインテントガード。前の Wave をレビューするまで次を止めるレビューゲート。ダッシュボードで人間が承認するまで M/L/XL の実装を止める承認ゲート。YAML を手で書き換えてもダメ — 署名済みレビューファイルまで検証する。
115
48
 
116
- ステアリングドキュメント、テンプレート、ナレッジインデックスを生成する。
49
+ **記憶が育つ。** 「あの時なぜこう決めた」「このパターンは前もうまくいった」「X は試してダメだった」— `.alfred/knowledge/` に JSON で残る。15回以上検索ヒットしたパターンはルールに自動昇格。知識タイプごとに半減期が違う — ルールは120日、仮定は30日で鮮度が落ちる。矛盾は自動検出。Git に入れてチームで共有できる。次に似た状況が来たら、聞く前に出てくる。
117
50
 
118
- > **注意**: `/alfred:init` ではなく `/init` (短縮形) を使うこと。Claude Code の補完が `alfred:` プレフィックスを別スキルに誤ルーティングする場合がある。全スキル共通で `/brief`, `/attend`, `/mend` のように短縮形を推奨。
51
+ **仕様がズレたら教えてくれる。** コミットの度に変更を設計ドキュメントと照合。spec にないコンポーネントを触ったら警告が飛ぶ。新しいソースファイルは該当コンポーネントのセクションに自動追記 手動で spec を更新する必要はない。
119
52
 
120
- ## アップデート
53
+ **コンテキストが適応する。** プロジェクトの成熟度に応じて注入量を調整する。新しいプロジェクトにはセッション開始時に spec 全体を注入。20件以上のナレッジがあるプロジェクトには現在のタスクとゴールだけ — コンテキストを膨らませない。
121
54
 
122
- 両方を一緒に更新する。
55
+ **スキルが勝手に出てくる。** 調べものしてたら `/brief` を提案。バグ直してたら `/mend`。PR マージしたら `/harvest`。覚えなくていい — 意図をセマンティック or キーワードで分類(日英バイリンガル)して、適切なスキルを出す。
123
56
 
124
- ```bash
125
- npm update -g claude-alfred # CLI、hooks、MCP サーバー、ダッシュボード
126
- ```
127
-
128
- ```
129
- /plugin update alfred # skills、agents、rules(Claude Code 内で)
130
- ```
131
-
132
- `alfred doctor` でバージョンの一致を確認できる。
57
+ **ダッシュボードが使える。** `alfred dashboard` で `localhost:7575` が開く。タスク進捗、行レベルコメント付きレビュー、ファイル単位の承認、ナレッジの健全性、操作履歴。日英ワンクリック切替。
133
58
 
134
59
  ## スキル
135
60
 
136
- ### コアワークフロー
137
-
138
- | スキル | やること |
61
+ | スキル | ひとこと |
139
62
  |--------|----------|
140
- | `/alfred:brief` | Spec を生成。3エージェントがアーキテクチャを議論し、ダッシュボードで承認する |
141
- | `/alfred:attend` | 全自動。Spec 作成 → 承認ゲート → Wave ごとの実装 → レビュー → コミットまで放置でOK |
142
- | `/alfred:tdd` | テスト駆動開発。redgreenrefactor のサイクルを自律的に回す |
143
- | `/alfred:mend` | バグ修正。再現原因特定(過去バグの記憶も使う)→ 修正 検証 → コミット |
144
- | `/alfred:inspect` | 6プロファイル並列レビュー(code, config, security, docs, architecture, testing)。スコア付き |
145
-
146
- ### 探索と設計
147
-
148
- | スキル | やること |
149
- |--------|----------|
150
- | `/alfred:survey` | 既存コードから Spec をリバースエンジニアリング。信頼度スコア付き |
151
- | `/alfred:salon` | ブレスト。3人の専門家が並列でアイデアを出して、トレードオフを議論する |
152
- | `/alfred:harvest` | PR レビューコメントからナレッジを抽出して永続メモリに保存 |
63
+ | `/alfred:attend` | 全自動。spec 承認 → 実装 → レビュー → コミット。放置でOK |
64
+ | `/alfred:brief` | spec を生成。3エージェントがアーキテクチャを議論、ダッシュボードで承認 |
65
+ | `/alfred:mend` | バグ修正。再現原因特定(過去バグの記憶も使う)→ 修正 検証 |
66
+ | `/alfred:tdd` | テスト駆動。redgreenrefactor。パターンをセッション越しに記憶 |
67
+ | `/alfred:inspect` | 6プロファイル並列レビュー。スコア付き |
68
+ | `/alfred:survey` | 既存コードから spec をリバースエンジニアリング。信頼度スコア付き |
69
+ | `/alfred:salon` | ブレスト。3人の専門家が並列で出して、トレードオフを議論 |
70
+ | `/alfred:harvest` | PR レビューコメントからナレッジを抽出して永続化 |
153
71
  | `/alfred:archive` | 参照資料(PDF, CSV, 大きなテキスト)を検索可能なナレッジに変換 |
72
+ | `/alfred:init` | プロジェクト初期化。マルチエージェントで探索 → ステアリングドキュメント生成 |
154
73
 
155
- ### セットアップと保守
156
-
157
- | スキル | やること |
158
- |--------|----------|
159
- | `/alfred:init` | プロジェクト初期化。マルチエージェントでコードベースを探索し、ステアリングドキュメントを生成 |
160
-
161
- ## MCP ツール
162
-
163
- | ツール | 役割 |
164
- |--------|------|
165
- | `dossier` | Spec のライフサイクル管理 — init, update, status, switch, complete, delete, history, rollback, review, validate, gate |
166
- | `roster` | エピック管理 — タスクのグループ化、依存関係、Spec 横断の進捗追跡 |
167
- | `ledger` | ナレッジ — search, save (decision/pattern/rule), promote (pattern → rule), reflect, audit-conventions |
168
-
169
- ## Hook
170
-
171
- 全自動。触らなくていい。
172
-
173
- | イベント | 動作 |
174
- |----------|------|
175
- | SessionStart | Spec コンテキスト復元、ナレッジ同期、セットアップ提案(`/alfred:init`) |
176
- | UserPromptSubmit | セマンティック検索 + スキル提案 + Spec enforcement(Spec なし実装ブロック、未承認 M/L/XL ブロック) |
177
- | PreToolUse | 3層 enforcement — review gate, intent guard, approval gate。ゲートが有効な間は Edit/Write をブロック |
178
- | PostToolUse | tasks.md / session.md の進捗自動更新。Wave 完了検知とレビューゲート設定。コミット後のドリフト検出。PR マージ後の `/alfred:harvest` 提案、大きな参照ファイル読み込み時の `/alfred:archive` 提案 |
179
- | PreCompact | セッションスナップショット保存、決定抽出、エピック進捗同期 |
180
- | Stop | review gate → ブロック。その他 → コンテキストリマインド(ブロックなし) |
181
-
182
- ## ブラウザダッシュボード
74
+ ## 仕組み
183
75
 
184
- ```bash
185
- alfred dashboard # ブラウザで localhost:7575 を開く
186
- alfred dashboard --port 8080 # ポート指定
187
- alfred dashboard --url-only # URLだけ出力
188
76
  ```
189
-
190
- 4つのタブ: **Overview**(プロジェクト健全性、タスク進捗、メモリ統計)、**Tasks**(Spec の詳細表示、折りたたみセクション、インラインレビュー)、**Knowledge**(メモリの検索・閲覧、有効/無効切り替え)、**Activity**(操作タイムラインとフィルタ)。
191
-
192
- **日本語/英語のワンクリック切り替え**対応。設定はセッションを跨いで保持。
193
-
194
- 着手中のタスクがシマーで光る。何が進行中か、一目でわかる。
195
-
196
- 開発用: `ALFRED_DEV=1 alfred dashboard` + `task dev`(web/ 内)で Vite HMR が使える。
197
-
198
- ## Steering 文書
199
-
200
- プロジェクトレベルのコンテキストを全 Spec に注入する。
201
-
202
- ```bash
203
- /alfred:init
77
+ あなた
78
+ |-- /alfred:brief -> spec + 3エージェント議論 + ダッシュボード承認
79
+ |-- /alfred:attend -> spec → 承認 → 実装(Wave ごと)→ レビュー → コミット
80
+ |-- /alfred:mend -> 再現 → 原因分析(+ 過去バグ記憶)→ 修正 → 検証
81
+ v
82
+ Hook(見えない)
83
+ |-- SessionStart -> コンテキスト復元、ナレッジ同期
84
+ |-- UserPromptSubmit -> セマンティック検索 + スキル提案 + spec enforcement
85
+ |-- PreToolUse -> review gate + intent guard + approval gate(3層)
86
+ |-- PostToolUse -> 進捗自動更新、ステータス自動遷移、ドリフト検出
87
+ |-- PreCompact -> タスクスナップショット、決定抽出、エピック進捗
88
+ |-- Stop -> review gate ブロック + リマインド
89
+ v
90
+ ストレージ
91
+ |-- .alfred/knowledge/ -> JSON(decisions/, patterns/, rules/)— ソースオブトゥルース
92
+ |-- .alfred/specs/ -> spec ファイル + バージョン履歴 + レビュー
93
+ |-- .alfred/epics/ -> エピック YAML + 依存関係
94
+ |-- .alfred/steering/ -> プロジェクトコンテキスト(product, structure, tech)
95
+ +-- ~/.claude-alfred/ -> SQLite 検索インデックス(再構築可能)
204
96
  ```
205
97
 
206
- `.alfred/steering/` に3ファイルを作成する。
207
- - `product.md` — プロジェクトの目的、対象ユーザー、スコープ境界
208
- - `structure.md` — パッケージ構成、モジュール境界、命名規約
209
- - `tech.md` — 技術スタック、依存関係、アーキテクチャ判断
210
-
211
- 3ファイル全てが `dossier init` 時に読み込まれ、コンテキストとして注入される。AI は常にアーキテクチャを理解している。
212
-
213
- ## 検索パイプライン
214
-
215
- 3段階で、順にフォールバックする。
216
-
217
- 1. **Voyage AI ベクトル検索** + リランキング(API キーがあるとき)
218
- 2. **FTS5 全文検索** — タグエイリアス展開 + ファジーマッチ付き
219
- 3. **キーワードフォールバック**(LIKE クエリ)
98
+ ## MCP ツール
220
99
 
221
- タグエイリアスが検索を自動拡張する。「auth」で「authentication」「login」「認証」もヒット。ファジーマッチがタイポを吸収する。
100
+ | ツール | 管理対象 |
101
+ |--------|----------|
102
+ | `dossier` | spec ライフサイクル — init, update, complete, defer, cancel, review, gate など |
103
+ | `roster` | エピック — タスクのグループ化、依存関係、spec 横断の進捗追跡 |
104
+ | `ledger` | ナレッジ — 検索、保存、パターン → ルール昇格、ヘルスレポート |
222
105
 
223
- ## ナレッジアーキテクチャ
106
+ ## ナレッジ
224
107
 
225
- ナレッジはプロジェクトディレクトリ内の構造化 JSON ファイル。3分類、曖昧さゼロ。
108
+ JSON ファイルとして Git にコミットし、PR でレビューし、チームで共有できる。
226
109
 
227
110
  ```
228
111
  .alfred/knowledge/
229
- ├── decisions/ # 一回きりの選択 + 理由 + 却下した代替案
230
- ├── patterns/ # 繰り返し実践 + 適用条件 + 期待結果
231
- └── rules/ # 強制ルール + 優先度 + 根拠
112
+ decisions/ # 「X を選んだ。理由は Y。Z は却下」
113
+ patterns/ # 「A のとき B をやる。C が期待結果」
114
+ rules/ # 「常に X する。優先度: P0。根拠: Y」
232
115
  ```
233
116
 
234
- スキーマは厳密([mneme](https://github.com/hir4ta/mneme) 互換)。テンプレート化されたパラメータで保存するので、セッション間のフォーマット揺れはゼロ。
117
+ スキーマ厳密([mneme](https://github.com/hir4ta/mneme) 互換)。15回以上検索ヒットしたパターンはルールに自動昇格。矛盾は自動検出。
235
118
 
236
- Git フレンドリー(コミットしてチームと共有、PR でレビュー)。アトミック書き込み(temp + rename)。再構築可能(SQLite インデックスを消しても次のセッションで再生成)。パターンは検索ヒット15回以上でルールに自動昇格。矛盾は自動検出。
119
+ 検索パイプライン: Voyage AI ベクトル + リランキング > FTS5 ファジーマッチ > キーワードフォールバック。「auth」で「authentication」「login」「認証」もヒット。
237
120
 
238
- ## 適応的スペック
239
-
240
- 全タスクに6ファイルは要らない。
121
+ ## spec サイズ
241
122
 
242
123
  | サイズ | ファイル数 | 用途 |
243
124
  |--------|-----------|------|
244
- | **S** | 3 (requirements, tasks, session) | バグ修正、設定変更、小さな変更 |
245
- | **M** | 5 (+ design, test-specs) | 新エンドポイント、リファクタ、中規模機能 |
246
- | **L/XL** | 6 (+ research) | アーキテクチャ変更、新サブシステム |
247
- | **D** (delta) | 2 (delta.md + session) | 既存コードへのブラウンフィールド変更 |
248
- | **Bugfix** | 3-4 (bugfix.md, tasks, session, +test-specs) | 再現手順付きバグ修正 |
125
+ | **S** | 2 | バグ修正、設定変更 |
126
+ | **M** | 4 | 新エンドポイント、リファクタ |
127
+ | **L/XL** | 5 | アーキテクチャ変更、新サブシステム |
128
+ | **D** | 1 | 既存コードへの差分変更 |
249
129
 
250
- サイズは説明文から自動判定、または `dossier action=init size=S` で明示指定。
130
+ ## アップデート
251
131
 
252
- ## 仕組み
132
+ ```bash
133
+ npm install -g claude-alfred # CLI、hooks、MCP サーバー、ダッシュボード
134
+ ```
253
135
 
254
136
  ```
255
- あなた
256
- |
257
- |-- /alfred:brief -> Spec + 3エージェント議論 + ダッシュボード承認
258
- |-- /alfred:attend -> Spec → 承認 → 実装(Wave ごと)→ レビュー → コミット
259
- |-- /alfred:mend -> 再現 → 原因分析(+ 過去バグ記憶)→ 修正 → 検証
260
- |
261
- v
262
- Hook(見えない)
263
- |-- SessionStart -> コンテキスト復元、ナレッジ同期、セットアップ提案
264
- |-- UserPromptSubmit -> ベクトル検索 + スキル提案 + Spec enforcement
265
- |-- PreToolUse -> review gate + intent guard + approval gate(3層)
266
- |-- PostToolUse -> 進捗自動更新、Wave ゲート、ドリフト検出
267
- |-- PreCompact -> スナップショット、決定抽出、エピック進捗
268
- |-- Stop -> review gate ブロック + リマインド
269
- |
270
- v
271
- ストレージ
272
- |-- .alfred/knowledge/ -> JSON(decisions/, patterns/, rules/)— 真のソース
273
- |-- .alfred/specs/ -> Spec ファイル + バージョン履歴 + レビュー
274
- |-- .alfred/epics/ -> エピック YAML + タスク依存関係
275
- |-- .alfred/steering/ -> プロジェクトコンテキスト(product, structure, tech)
276
- +-- ~/.claude-alfred/ -> SQLite 検索インデックス(再構築可能)
137
+ /plugin update alfred # skills、agents、rules(Claude Code 内で)
277
138
  ```
278
139
 
140
+ `alfred doctor` で同期を確認。
141
+
279
142
  ## トラブルシューティング
280
143
 
281
144
  | 症状 | 対処 |
282
145
  |------|------|
283
- | メモリ検索で結果が出ない | `VOYAGE_API_KEY` を設定、または FTS5 フォールバックの動作確認 |
284
- | 出力が意図しない言語 | `ALFRED_LANG=ja`(または `en`, `zh` 等)を `~/.zshrc` に追加 |
146
+ | メモリ検索で結果が出ない | `VOYAGE_API_KEY` を設定、または FTS5 の動作確認 |
147
+ | 意図しない言語 | `export ALFRED_LANG=ja` `~/.zshrc` に追加 |
285
148
  | Hook が動かない | `/plugin install alfred` して Claude Code を再起動 |
286
- | ダッシュボードが空 | `.alfred/specs/` があるディレクトリで `alfred dashboard` を実行 |
287
- | レート制限エラー | 対策済み。エージェントは段階的バッチ起動(最大2並列) |
149
+ | ダッシュボードが空 | `.alfred/specs/` があるディレクトリで実行 |
150
+
151
+ ## アンインストール
152
+
153
+ Claude Code で:
154
+
155
+ ```
156
+ /plugin # alfred を選択 → marketplace から削除(プラグインも一緒に消える)
157
+ ```
158
+
159
+ ```bash
160
+ npm uninstall -g claude-alfred
161
+ rm -rf ~/.claude-alfred/ # SQLite 検索インデックス
162
+ rm -f ~/.claude/rules/alfred.md # ユーザールール
163
+ rm -rf ~/.claude/plugins/cache/claude-alfred/ # プラグインキャッシュ
164
+ rm -rf .alfred/ # プロジェクトの spec、ナレッジ、ステアリング(プロジェクトごと)
165
+ ```
288
166
 
289
167
  ## ライセンス
290
168