AIツール活用・比較 Hermes Agent × Obsidian──AIエージェントの記憶を「内部メモリ」と「外部ノート」に分けて設計する実践ガイド

Hermes Agent × Obsidian──AIエージェントの記憶を「内部メモリ」と「外部ノート」に分けて設計する実践ガイド

2026.05.27 · AIツール活用・比較 · スキル・学習 · 約25分

この記事は約 25 分で読めます

Hermes Agent を使い始めて最初にぶつかる壁は、「昨日話したこと、覚えてないの?」です。新しいセッションを開くたびに、プロジェクトの背景を説明し直し、ルールを伝え直し、好みを伝え直す。毎回ゼロからやり直す感覚。

「Obsidian に全部まとめておけば解決するのでは?」──その発想は正しい方向ですが、半分しか合っていません。Hermes Agent 公式ドキュメントを読みながら、AIエージェントの記憶を「内部」と「外部」に分けて設計する方法を整理します。

Hermes Agent と Obsidian を組み合わせる本当の価値

Hermes Agent は Nous Research が開発したオープンソースの汎用 AI エージェントで、2026 年 2 月にリリースされてから 3 ヶ月で GitHub スター 22,000 超、242 名のコントリビューターを集めています。「あなたと一緒に成長するエージェント」を掲げ、セッションをまたいで学習し、スキルを自動生成し、使うほど賢くなる──そういう設計思想のツールです。

一方、Obsidian はローカルの Markdown ファイルで知識を管理するツール。Git や Obsidian Sync でデバイス間同期ができ、ファイルは人間が直接読み書きできます。

この 2 つを組み合わせるとき、よくある誤解が「Obsidian に情報を入れておけば AI が全部覚えてくれる」です。実際は違います。

ここで大事なのは

Hermes Agent × Obsidian の本当の価値は、「AI に全部覚えさせること」ではなく、「AI が覚えるべきこと」と「人間がノートとして管理すべきこと」を分けられること。

この切り分けができると、毎回ゼロから説明し直す回数が激減します。でもそのためには、何をどこに保存するかの設計が必要です。

まず理解したい、Hermes Agent の記憶と Obsidian の違い

Hermes Agent と Obsidian はどちらも「情報を保存する」ツールですが、保存の仕組みと目的がまったく違います。ここを理解していないと、保存先を間違えて情報が散らかるだけになります。

Hermes Agent の記憶システム

Hermes Agent の記憶は ~/.hermes/ ディレクトリに保存されます。公式ドキュメントに基づくと、主要な記憶ファイルは 3 つです。

ファイル場所役割サイズ上限
SOUL.md~/.hermes/SOUL.mdエージェントの人格・トーン・スタイルの定義制限なし(ただし簡潔推奨)
MEMORY.md~/.hermes/memories/MEMORY.mdエージェントが自己管理するメモ。環境情報、発見した回避策、学んだ教訓約 2,200 文字
USER.md~/.hermes/memories/USER.mdユーザーの役割、技術スタック、好み、目標約 1,375 文字

さらに ~/.hermes/state.db という SQLite データベースがあり、全セッションの会話履歴を FTS5(全文検索)インデックス付きで保存しています。「前にやったよね?」「覚えてる?」と聞くと、このデータベースから過去のセッションを自動検索してくれます。

ポイントは、MEMORY.md と USER.md にはサイズ上限があることです。MEMORY.md は約 2,200 文字、USER.md は約 1,375 文字。合計しても原稿用紙 9 枚分程度。ここに長文の作業ログや仕様書を入れようとすると、すぐにあふれます。

Obsidian の役割

Obsidian は、Markdown ファイルをローカルに保存する「知識ベース」です。Hermes Agent との違いを整理するとこうなります。

  • サイズ制限がない──何千ファイル、何万行でも保存できる
  • 人間が直接読める──Markdown なのでエディタでもブラウザでも開ける
  • 構造を自分で設計できる──フォルダ、タグ、リンクで自由に整理
  • デバイス間で同期できる──Obsidian Sync、Git、iCloud、Google Drive 等
  • AI が自動で学習しない──Hermes Agent に「読め」と指示しない限り、ただのファイルのまま

最後の点が重要です。Obsidian にどれだけ情報を入れても、Hermes Agent が自動的にそれを学習するわけではありません。「ここにあるから読んで」と明示的に指示するか、Hermes Agent の Obsidian スキルを使って読ませる必要があります。

補足

Hermes Agent v0.14.0(2026 年 5 月 16 日リリース)で、ファーストクラスの Obsidian プロバイダが搭載されました。OBSIDIAN_VAULT_PATH を設定すると、Vault 内のノートの読み取り・検索・作成・編集が可能になります。バンドルスキル skills/note-taking/obsidian/SKILL.md として同梱されています。

AIの内部メモリ構造と知見ノートの対比図

何を Hermes Agent に覚えさせるべきか

MEMORY.md と USER.md には 2,200 + 1,375 ≒ 3,575 文字しか入りません。つまり「短くて、毎回効かせたい情報」だけを入れるべきです。

Hermes Agent に覚えさせるのに向いている情報は、こういうものです。

  • ユーザーの好みとスタイル──「AI 記事では煽りより実務視点を重視する」「返答は日本語、コードコメントは英語」
  • 継続的な禁止ルール──「Secret 類はチャットに出さない」「Markdown 中に絵文字を使わない」
  • よく使う判断基準──「画像生成は 16:9 WebP、Pillow 実寸確認を必須にする」
  • 作業の型──「コードレビュー時はセキュリティ → パフォーマンス → 可読性の順に確認」
  • 短く抽象化された方針──「PR は 1 機能 1 PR。バンドルしない」

共通点は「短い」「抽象的」「時間が経っても変わりにくい」の 3 点です。

逆に入れてはいけないのが、具体的で長い情報。作業ログ、議事録、URL リスト、仕様書の全文。これらは MEMORY.md に入れると一瞬であふれますし、毎セッションのシステムプロンプトに注入される(=毎回トークンを消費する)ので、コストも増えます。

SOUL.md の使い方

SOUL.md はエージェントの「人格」を定義するファイルです。MEMORY.md / USER.md とは別の用途で、コミュニケーションのトーンやスタイルを決めます。

たとえば「フレンドリーだが冗長にはならない」「技術用語はそのまま使うが、概念は日本語で補足する」「結論を先に言ってから理由を述べる」など。これは一度設定すればほぼ変わらないため、最初に書いて放置で構いません。

覚えさせるかどうかの判断基準

「次のセッションでもこれを自動で効かせたいか?」── Yes なら Hermes Agent に覚えさせる。「後で参照したいが、毎回読む必要はない」── Obsidian に保存する。

何を Obsidian に保存すべきか

Obsidian に向いている情報は、「長い」「具体的」「時間とともに増える」「人間が読んで確認したい」ものです。

  • プロジェクト概要──目的、関係者、スケジュール、現在地
  • 意思決定ログ──「なぜこの技術を選んだか」「なぜこの方針を変えたか」
  • 作業ログ──日次・週次の作業記録、進捗、詰まったこと
  • 仕様書──API 仕様、DB スキーマ、画面設計
  • 記事ネタ・下書き──タイトル案、構成案、調査メモ
  • 参考 URL と調査メモ──記事や公式ドキュメントの要約
  • 失敗ログ──何をやって、なぜ失敗して、どう直したか
  • ルール集──プロジェクト固有のルール(多くなるものは MEMORY.md に入りきらない)
  • 変更履歴──設定やポリシーの変更記録

たとえば私の場合、AI ニュースサイトの運営で以下のようなファイルを Obsidian に置いています。

AIニュースラボ/current-state.md    ← プロジェクトの現在地
AIニュースラボ/rules.md            ← 記事制作ルール(長文)
AIニュースラボ/article-log.md      ← 記事一覧と公開日
AIニュースラボ/decision-log.md     ← 方針変更の履歴
AIニュースラボ/palette-rules.md    ← 画像カラーパレットのルール
AIニュースラボ/incidents.md        ← 過去の事故と対処

これらは Hermes Agent の MEMORY.md には到底入りきりません。でもプロジェクトの文脈を理解するために必要な情報です。必要なときに「このファイルを読んで」と指示する──それが Obsidian の使い方です。

毎回読ませる情報と、必要な時だけ読む情報を分ける

Obsidian に情報を置いたとして、全部を毎回読ませたら意味がありません。Vault が 100 ファイルあるのに毎回全部読ませたら、トークン消費が爆発し、応答も遅くなります。

ここで 2 つに分ける設計が効いてきます。

毎回読ませる(セッション開始時に必ず読む)

ファイル内容理由
user-rules.mdユーザーのルールと好み(MEMORY.md に入りきらない分)ルール違反を防ぐため
safety-rules.md禁止事項、セキュリティルール事故防止
active-projects.md現在進行中のプロジェクト一覧文脈のベースライン
{project}/current-state.mdいま取り組んでいるプロジェクトの現在地「どこまで進んだか」を毎回説明し直さない
{project}/rules.mdプロジェクト固有のルールプロジェクトごとに異なるルールを適用

これらは合計しても 2,000〜5,000 文字程度に収めるのが理想です。長くなりすぎたら「本当に毎回必要か?」を問い直してください。

必要な時だけ読む(明示指示があるときだけ)

ファイルいつ読むか
decision-log.md「なぜこうなっているか」を確認したいとき
work-log.md過去の作業を振り返るとき
references.md参考 URL を調べるとき
incidents.md過去の事故を参照するとき
archive/完了済みプロジェクトの情報が必要なとき
past-drafts/過去の下書きを参考にするとき

「毎回読む」と「必要な時だけ」を分ける基準はシンプルです。

分類の判断基準

「これを読まずに作業を始めたら事故になるか?」── なるなら毎回読ませる。「なくても作業自体は始められるか?」── 始められるなら必要な時だけ。

Internal MemoryとExternal Markdown Knowledge Baseのアーキテクチャ図

おすすめの Obsidian Vault 構成

Hermes Agent と組み合わせる前提で Vault を設計するなら、以下の構成が実用的です。番号プレフィックスでフォルダの並び順を制御します。

/00_Inbox                        ← 未整理のメモを一時置き
/10_System                       ← エージェントに毎回読ませるファイル
  /10_System/user-rules.md
  /10_System/safety-rules.md
  /10_System/active-projects.md
/20_Projects                     ← プロジェクト別の知識ベース
  /20_Projects/AIニュースラボ/
    index.md                     ← プロジェクト概要
    current-state.md             ← 現在地(頻繁に更新)
    rules.md                     ← プロジェクト固有ルール
    decision-log.md              ← 意思決定の履歴
    work-log.md                  ← 作業ログ
    article-log.md               ← 記事一覧
  /20_Projects/個人開発アプリ/
    index.md
    current-state.md
    ...
/30_Daily                        ← 日次メモ、日報
/40_References                   ← 参考 URL、調査メモ、書籍メモ
/50_Templates                    ← テンプレートファイル
/90_Archive                      ← 完了済みプロジェクト、古い情報

この構成のポイントは 3 つあります。

  1. /10_System/ は「エージェントのシステムプロンプト拡張」。Hermes Agent の MEMORY.md / USER.md に入りきらないルールや方針をここに置く。毎セッション開始時に読ませるファイルはここに集約
  2. /20_Projects/ はプロジェクト別に独立。複数プロジェクトを並行する場合、「今日はどのプロジェクトの文脈か」を明確にできる
  3. /90_Archive/ で古い情報を隔離。完了済みのプロジェクトや古い情報を archive に移すことで、エージェントが誤って古い情報を参照するリスクを減らせる

Hermes Agent に渡す読み込みルール例

ステップ 1:Obsidian Vault パスを設定する

まず ~/.hermes/.env に Vault のパスを設定します。

# macOS / Linux
OBSIDIAN_VAULT_PATH="/Users/yourname/Documents/Obsidian/HermesVault"

# Windows
OBSIDIAN_VAULT_PATH="C:\Users\yourname\Documents\Obsidian\HermesVault"

または CLI コマンドで設定できます。

hermes config set OBSIDIAN_VAULT_PATH /path/to/your/vault

未設定の場合、デフォルトは ~/Documents/Obsidian Vault になります。

ステップ 2:Hermes Agent の内部メモリを整理する

~/.hermes/memories/MEMORY.md~/.hermes/memories/USER.md には、短くて毎回効かせたい情報だけを入れます。

USER.md の例:

## 基本情報
- 役割: フリーランスのWebエンジニア兼ブロガー
- 技術スタック: Python, TypeScript, WordPress, GitHub Actions
- 日本語で応答、コードコメントは英語

## 好み
- AI記事では煽りより実務視点を重視
- 結論を先に言ってから理由を述べる
- 不確実なことは断定せず「検証が必要」と書く

MEMORY.md の例:

## 継続ルール
- 画像生成は16:9 WebP、Pillow実寸確認必須
- Secret類はチャットに出さない
- PRは1機能1PR
- WP投稿はdraft固定、publishはしない

## 環境メモ
- Python仮想環境は .venv/Scripts/python.exe で明示実行
- PowerShell 5.1のstdin pipeは日本語が化ける → argv経由を使う

ステップ 3:セッション開始時の読み込みプロンプトを用意する

Hermes Agent に毎回渡すプロンプト(またはスキルの指示)として、以下のような読み込みルールを設定します。

この作業では、まず以下のファイルだけ読んでください。

- /10_System/user-rules.md
- /10_System/safety-rules.md
- /20_Projects/AIニュースラボ/current-state.md
- /20_Projects/AIニュースラボ/rules.md

必要になった場合だけ、以下を参照してください。
- /20_Projects/AIニュースラボ/decision-log.md
- /20_Projects/AIニュースラボ/article-log.md

archive/ は明示指示がある時だけ読んでください。

このプロンプトを毎回手打ちするのが面倒なら、Obsidian の /50_Templates/ にテンプレートとして保存しておき、コピー&ペーストで使えます。Hermes Agent のスキルとして登録すれば、さらに自動化できます。

補足

Hermes Agent のスキルシステム(~/.hermes/skills/)を使えば、「作業開始時に特定ファイルを読む」手順をスキル化できます。複雑なタスクを完了した後、エージェントが自動的にスキルを生成してくれる機能もあります。「読み込みプロンプト」自体をスキル化するのが最終形です。

AI AgentがKnowledge Vaultの整理されたフォルダ階層にアクセスする俯瞰図

保存ルールの実例

何をどこに保存するか迷ったら、以下のルールに従ってください。

Hermes Agent に保存するもの

  • 繰り返し使う判断基準(「テストは実 DB で回す、モックは使わない」)
  • 今後の行動を変えるルール(「PR レビューではセキュリティを最優先」)
  • ユーザーの好み(「冗長な説明より箇条書き」)
  • 作業の型(「記事制作は調査→構成→執筆→レビューの順」)
  • エージェントが次回も使うべき判断軸

Obsidian に保存するもの

  • 長文のログ(作業記録、会議メモ、調査メモ)
  • 具体的な履歴(記事一覧、公開日、パフォーマンス記録)
  • 参考 URL と調査結果
  • 仕様書とスキーマ定義
  • 意思決定ログ(「なぜこの方針にしたか」の理由と日付)
  • 失敗ログ(「何をやって、なぜ壊れて、どう直したか」)
  • 週次・月次レビュー

どこにも保存しないもの

保存してはいけない情報

  • API キー、パスワード、トークン──Hermes Agent の MEMORY.md にも Obsidian にも入れない。~/.hermes/.env のみ
  • 個人情報、顧客情報──Vault が同期やバックアップされている場合、漏洩リスクがある
  • 一時的な雑談──「天気の話」「雑談」は保存する意味がない
  • 古くなったルール──変更されたルールは上書きか削除。古い版を残すと、エージェントが古いルールに従うリスクがある

メリット

Hermes Agent × Obsidian の記憶設計がうまく回ると、以下の効果が実感できます。

  1. 同じ説明を繰り返す回数が激減する──「毎回読ませるファイル」に現在地とルールを書いておけば、セッション開始時の説明が 1 行のプロンプトで済む
  2. プロジェクトの文脈を引き継ぎやすい──昨日の作業ログ、先週の意思決定、先月の方針変更。Obsidian に残しておけば、必要なときに参照できる
  3. 人間が AI の記憶を監査できる──Hermes Agent が何を覚えているかは MEMORY.md と USER.md を開けば分かる。Obsidian のノートも Markdown だから人間が直接読める。ブラックボックスにならない
  4. 別デバイスでも Vault を同期すれば前提情報を再利用できる──自宅の PC、出先のノート PC、スマートフォン。Obsidian Sync や Git で Vault を同期すれば、どのデバイスから Hermes Agent を使っても同じ前提情報を読ませられる
  5. 長期プロジェクトに強くなる──3 ヶ月、半年、1 年続くプロジェクトでも、Vault に蓄積された情報があれば文脈が途切れない

デメリットと落とし穴

「いいことずくめ」ではありません。実運用で遭遇しやすい問題点も整理しておきます。

  1. 設計しないとノートが散らかる──フォルダ構成も命名規則も決めずに Obsidian に投げ込むと、3 週間で検索不能になる。最初に構成を決めることが前提
  2. 古い情報を読ませるリスク──3 ヶ月前の current-state.md を更新し忘れたまま読ませると、エージェントは古い前提で作業する。定期的な棚卸しが必要
  3. Vault が大きすぎると検索・参照が雑になる──1,000 ファイルの Vault で「全部検索して」と言うと、精度が落ちる。「毎回読む」「必要な時だけ」「アーカイブ」の 3 層に分けるのはこのため
  4. 秘密情報を入れると危険──Obsidian Sync や Git で同期している Vault に API キーやパスワードを書くと、同期先すべてに伝播する
  5. 同期競合が起きる──複数デバイスで同じファイルを同時に編集すると、Git ならマージコンフリクト、Obsidian Sync なら「Conflicted」ファイルが生まれる
  6. AI が Obsidian の内容を常に正しく解釈するとは限らない──ファイルが長すぎる場合は途中で切り詰められるし、曖昧な表現は誤解される。ノートは AI に読ませる前提で明確に書く必要がある

見落としやすいリスク

Hermes Agent のセッション検索(session_search)は過去の全会話から情報を引っ張ってきます。これは便利ですが、過去セッションで間違った方針を話していた場合、それを「正しい情報」として参照してしまう可能性があります。重要な方針は会話の中で流すのではなく、Obsidian のルールファイルに明記しておくほうが安全です。

実際のユースケース

「で、実際にどういう場面で使うの?」をいくつか具体的に挙げます。

ブログ・メディア運営

Hermes Agent に「この読者層では煽りより実務視点」「引用は 2-3 文以内」などの編集方針を覚えさせる。Obsidian には記事一覧、公開日、PV 記録、記事ネタのストック、失敗した企画の理由を保存。毎回 current-state.md(今月の目標、直近の記事テーマ)を読ませ、新しい記事を書くときは article-log.md で過去記事とのテーマ重複を確認させる。

個人開発

Hermes Agent に「PR は 1 機能 1 PR」「テストは実 DB で回す」などの開発ルールを覚えさせる。Obsidian にはロードマップ、スキーマ設計、API 仕様、リリースノート、ユーザーからのフィードバックを保存。機能追加するときに decision-log.md を読ませて、過去に同じ機能を見送った理由がないか確認させる。

Claude Code / Codex との併用

Hermes Agent と Claude Code を併用している場合、Claude Code は CLAUDE.md でプロジェクトルールを管理し、Hermes Agent は MEMORY.md + USER.md で個人の好みとルールを管理する。Obsidian はその両方から参照される「共通の長期ノート」として機能する。同じ Obsidian Vault の情報をどちらのエージェントからも読めるので、ツール間で前提情報を統一できます。

学習ログ・自己投資の記録

新しい技術やツールを学ぶとき、Hermes Agent に「この分野は初学者レベル」と覚えさせる。Obsidian には学習メモ、読んだ記事の要約、試したコードのスニペット、つまずいたポイントを保存。次のセッションで「前回どこまで理解したか」を current-state.md に書いておけば、毎回ゼロからではなく続きから始められます。

営業・フリーランスの案件管理

Hermes Agent に「見積もりは工数 × 単価で出す」「初回は必ず NDA を確認する」などのルールを覚えさせる。Obsidian にはクライアント別のフォルダを作り、案件概要、連絡履歴、請求書の発行日、次のアクションを保存。案件が増えても、プロジェクト別に情報が整理されているので混乱しにくい。

結論──記憶の設計こそがエージェント運用の本質

Hermes Agent × Obsidian を組み合わせる価値は、「AI に全部覚えさせること」ではありません。

価値は、記憶の種類を 4 つに分けられることです。

  1. Hermes Agent の内部メモリ(MEMORY.md / USER.md / SOUL.md)── 毎回効かせたい短い記憶。好み、ルール、判断基準
  2. Obsidian の「毎回読むファイル」(10_System/ と current-state.md)── 現在地とプロジェクトルール
  3. Obsidian の「必要な時だけ読むファイル」(decision-log, work-log, references)── 履歴と参考資料
  4. Obsidian のアーカイブ(90_Archive/)── 完了済みの情報。明示指示があるときだけ

この切り分けができると、AI エージェントは単なるチャット相手ではなくなります。毎回ゼロから説明し直す必要がなくなり、プロジェクトの文脈が途切れず、長期の作業で「前もこれ話したよね」が実際に機能するようになる。

ただし、繰り返しますが──設計しないと何も変わりません。Obsidian を入れて Hermes Agent につないだだけでは、ただのメモアプリと AI チャットが並んでいるだけです。「何をどこに保存するか」を自分で決める。そこがスタートラインです。

Obsidian は AI の記憶そのものではなく、AI に読ませるために人間が設計する「外部記憶」。この違いを理解して使えば、Hermes Agent は「何回でも同じことを聞いてくるチャットボット」から「長期プロジェクトを一緒に走れる相棒」に近づきます。