Hypomnema - Claude Code 内で動作する LLMネイティブ個人Wiki(オープンソース)
(github.com/sk-lim19f)Hypomnemaは、Claude Code 内でスラッシュ一発で動作する LLM-native の個人Wiki OSSです。
~/hypomnema/ フォルダにプレーンな Markdown + git で保存され、外部サービス / API キー / ベクターDBはありません。
ユーザーが投入した元データは sources/ にそのまま保存され、Claude が合成した結果は pages/ に蓄積されます。
同じトピックに再び出会ったときは新しいページを作らず、既存ページを更新します。
これを作ることになった理由は、AI と毎日仕事をするなかで積み上がった4つの問題でした。
(1) 新しいセッションのたびに昨日のコンテキストを説明し直すコスト
(2) 結果は素早く蓄積されるのに、なぜそう実装したのか がどこにも残らず、1か月後のデバッグのほうが高くつく技術的負債
(3) Notion・Obsidian・Confluence をすべて試したが、「自動化がない / 合成がない / レガシー化する / 見なくなる」という4つの罠で崩れる手動Wiki
(4) Karpathy の短い Gist — 「RAG は毎回読み直すが、Wiki は一度合成した知識を永続化する。ボトルネックは常にブックキーピングであり、LLM はそのコストを 0 に近づける」 — が答えを示していたこと。
そこで、Markdown フォルダ2つから始め、日々うんざりする点が生まれるたびにライフサイクルフックを1つずつ追加していきました。
主要ポイント
- コンセプト: RAG(Retrieval-Augmented Generation、検索拡張生成)ではなく Wiki。LLM が一度合成したページを保存し、次回はその上にさらに積み上げます。プレーンな Markdown + git で、外部サービス / API キー / ベクターDBは不要です。
- インストール:
npm install -g hypomnema→ Claude Code で/hypo:init。 - 単一の真実の源泉 + 一方向反映: 振る舞いの修正は
pages/feedback/<slug>.mdという1か所にのみ記録します。hypomnema feedback-syncコマンドがMEMORY.md(上限200行)と<learned_behaviors>(上限10件、5フィールドを厳格検証)を自動で再計算して反映します。 - 新しい SCHEMA の強制フィールド:
type: feedbackページに9つの必須フィールドを強制します。upgrade --applyは backfill 用チェックリストを自動生成します。自動ドラフト(stub)はあえて拒否しました。誤ったデフォルト値を埋め込むと、2つの派生面(MEMORY と CLAUDE.md)に静かに誤動作が流れ込むからです。 - 拡張ファイル同梱同期: Wiki 内に
extensions/{agents,commands,hooks,skills}ディレクトリを一緒に置き、~/.claude/に自動ミラーリングします。--codexフラグを付けると、~/.codex/にはhooks+commandsのサブセット(コアフック含む)のみがミラーされます。 - 自動化の強化: 現在の作業ディレクトリ(cwd)に Wiki プロジェクトがなければ自動作成を提案し、意味のあるセッションが終わると軽い締め処理(minimal crystallize)を自動提案し、WebFetch / WebSearch 直後には
/hypo:ingestの提案を表示し、更新通知を2チャネル(npm / plugin)で行い、W8lint 警告で古いdesign-history.mdを検出し、他プロジェクトへ漏れる修正を防ぐためscope: project:*の厳密一致を強制し、コードコメント整理の第1段階として(時間がたつと意味が薄れる時点依存の参照を削除し、設計アンカーは保持します)。
既存の LLM Wiki OSS との違い
Karpathy の Gist から派生したプロジェクトは短期間で10件以上登場しました。
実際に確認したうえで、領域ごとの差分を整理すると次のとおりです。
- Hypomnema が主に扱う領域: セッションライフサイクル自動化(14個のフックで SessionStart / PreCompact / Stop などに Wiki 運用を結び付ける)、AI の振る舞い修正の単一ソース化 + 自動一方向反映、
~/.claude/{commands,agents,skills,hooks}の自動ミラーリング。 nvk/llm-wiki:--mode thesisで命題の賛否エージェントを並列実行する検証モードが強みです。SamurAIGPT/llm-wiki-agent: PDF / Word / PPT / Excel のマルチフォーマット ingest が強みです。nashsu/llm_wiki: Electron デスクトップ GUI(6.6k stars)が最も成熟しています。
Hypomnema は thesis モード・マルチフォーマット ingest・独自 GUI を意図的に作っていません。この領域は上記プロジェクトのほうが優れており、必要なら Obsidian のような既存ツールを併用します。
要するに、Claude Code ユーザーが毎日使うワークフローの中へ Wiki を引き込む部分 が、Hypomnema の最も強い領域です。
構成要素
スラッシュコマンド8個(/hypo:ingest, /hypo:query, /hypo:crystallize, /hypo:resume, /hypo:feedback, /hypo:verify, /hypo:lint, /hypo:graph)+ CLI サブコマンド5個(init, upgrade [--apply] [--codex], doctor [extensions], uninstall, feedback-sync)+ ライフサイクルフック14個 + Claude Agent Skills 互換。
各コマンドとフックの詳細な動作は README と dev.to の英語 walkthrough にまとめられています。
意図的に省いたもの
ベクターDB・API キー・GUI・モードマトリクス・SCHEMA 自動 stub はありません。いずれも 「誤ったデフォルト値が静かに誤動作へ流れ込む」 または 「すでに他のツールがうまくやっている」 という理由で、意図的に除外しました。
要件 + リンク
- Node.js ≥ 18 / Claude Code CLI
- GitHub: https://github.com/sk-lim19f/Hypomnema · npm: https://www.npmjs.com/package/hypomnema · License: MIT
- 回顧録: https://velog.io/@dlatkdrb980219/…
コントリビューション案内
フィードバック・Issue・PR を歓迎します。
まだコメントはありません。