セッション:あなたのAIは会話を決して忘れない
Personality & SOUL.md — Give AI a Character — easy-to-understand guide based on official docs
セッション:あなたのAIは会話を決して忘れない
チャットウィンドウを閉じた瞬間、会話全体が消えてしまった経験はありませんか?Hermes Agentなら、そんな心配はもう不要です。CLI、Telegram、Discord、Slack、WhatsApp、その他どんなプラットフォームで話していても、すべての会話が自動的にセッションとして保存されます。検索・再開・管理ができる、超高性能なチャット履歴だと思ってください。
セッションの仕組み
内部では、HermesはすべてをSQLiteデータベース~/.hermes/state.dbに保存します。これは単なるログではありません。以下を含む完全な記録です。
- セッションIDとソースプラットフォーム(会話が行われた場所)
- 識別しやすいユニークな人間可読タイトル
- モデル設定とシステムプロンプトのスナップショット
- 完全なメッセージ履歴(ツール呼び出しと結果を含む)
- トークン数とタイムスタンプ
- 親セッションID(長い会話が分割された場合用)
そして何より素晴らしいのは、データベースがFTS5全文検索に対応していること。キーワードで過去の会話を簡単に見つけられます。
実際にコンテキストに入るもの
よくある誤解があります。Hermesは毎ターン、履歴の全バイトを再送信しているわけではありません。代わりに、モデルはシステムプロンプト、現在の会話ウィンドウ、そしてそのターンに明示的に注入されたものだけを見ます。
メディアファイルはスマートに処理されます。
- 画像は(モデルがビジョン対応なら)一度だけ分析されるか、テキスト説明に変換されます
- 音声はテキストに文字起こしされます
- ドキュメントはテキストが抽出され、その他のファイルはパスとメモ付きで保存されます
つまり、画像からミームを作ってほしいと頼んだ場合、将来のターンでそのJPEGを引きずり続けることはありません。説明と結果だけが保持されるのです。
本当にコンテキストを圧迫するのは冗長なテキストです。貼り付けられた文字起こし、完全なログ、巨大なツール出力、長い差分など。ドキュメントでは、大きな成果物をチャットにそのまま流し込むのではなく、要約・ファイルパス・焦点を絞った抜粋を使うことを推奨しています。
セッション管理のプロのコツ
- セッションが長くなりすぎたら
/compressを使う /newで新しいスレッドを開始する(/new payments-refactorのように名前も付けられます)hermes sessions pruneで終了した古いセッションを削除するhermes sessions optimizeでデータベースを削除せずに圧縮する
CLIセッション再開:中断したところから再開
CLIには会話を再開するいくつかの方法があります。
最後のセッションを続行:
hermes --continue
# または
hermes -c
ターミナルごとの魔法: ここがクールなトリックです。裸の-cはターミナルを認識します。2つのターミナルペインを並べている場合、それぞれが自分の会話を再開します。「最新の」セッションをめぐって争う必要はもうありません。これはtmuxペイン、kittyウィンドウ、weztermペインなどで機能します。設定でsession.terminal_continue: falseにすれば無効化できます。
名前で再開:
hermes -c "my project"
同じ名前のセッションが複数ある場合(「my project #2」「my project #3」など)、自動的に最新のものが選ばれます。
特定のセッションを再開:
hermes --resume 20250305_091523_a1b2c3d4
# またはタイトルで
hermes --resume "refactoring auth"
# または単に最新
hermes --resume latest
セッションソース:すべてのプラットフォームが対象
Hermesは各セッションがどのプラットフォームから来たかを追跡します。そのリストは印象的です:CLI、Telegram、Discord、Slack、WhatsApp、Signal、Matrix、Mattermost、Email、SMS、DingTalk、Feishu、WeCom、Weixin、iMessage(BlueBubbles経由)、QQ Bot、Home Assistant、webhooks、APIサーバー、ACPエディター、cronジョブ、バッチ処理。
つまり、Telegramで会話を始めて、CLIから再開することも可能です。完全な履歴がそこにあるのです。
まとめ
セッションによって、Hermesはステートレスなチャットボットから、すべてを記憶する永続的なアシスタントへと進化します。厄介な問題のデバッグ、大規模なリファクタリングの計画、あるいは単に昨日の会話を拾いたいとき。セッションがあなたを支えます。そしてスマートなコンテキスト管理により、トークン使用量を爆発させることなく、記憶のメリットを得られます。
次に長い会話をしているとき、重くなってきたら/compressを試してみてください。あるいは後で見つけられるようにセッションに名前を付けてみてください。未来の自分がきっと感謝するはずです。
📖 公式ドキュメント
この記事は Hermes Agent の公式ドキュメントに基づいています:公式ドキュメント › user-guide/features/personality