Skip to content

Kimi Code のセッション履歴の保存場所 ​

Kimi Code の主な記録は、既定で ~/.kimi-code/sessions/ 配下のセッションディレクトリにある agents/main/wire.jsonl です。KIMI_CODE_HOME で保存先を変更できます:

$KIMI_CODE_HOME/sessions/wd_<名前>_<ハッシュ>/session_<uuid>/

KIMI_CODE_HOME の既定値は ~/.kimi-code です。そのディレクトリの直下にフラットなインデックスもあります:

~/.kimi-code/session_index.jsonl

wd_ グループディレクトリ ​

wd_ は working directory の略です。その後ろに続くのはプロジェクトフォルダ自体の名前と、フルパスの短いハッシュです:

~/.kimi-code/sessions/wd_blog_dbc648dfdf98/

このハッシュがあるおかげで、親ディレクトリの異なる同名の blog が同じバケットに落ちません。つまりディレクトリ一覧だけでプロジェクトを区別できます。

Kimi Code のセッションディレクトリの中身 ​

state.json                 ← セッションのメタデータ
agents/main/wire.jsonl     ← 記録本体
logs/
media/

agents/main/ 配下の wire.jsonl が主たる記録です。agents/ という階層があるのは、1 つのセッションで複数のエージェントを走らせられるためで、main が実際に会話した相手です。

Kimi Code のセッションをターミナルから読む ​

インデックスのセッション ID とタイトルを一覧(会話本文ではありません):

bash
jq -r '[.sessionId, .title] | @tsv' ~/.kimi-code/session_index.jsonl

主イベント形式からユーザー入力とアシスタントのテキストを抽出:

bash
jq -r 'if .type=="turn.prompt" then
    select((.origin.kind // "user")=="user") | .input
    | if type=="string" then . else .[]? | select(.type=="text") | .text end
  elif .type=="context.append_loop_event" and .event.type=="content.part" then
    .event.part | select(.type=="text") | .text
  else empty end' \
  ~/.kimi-code/sessions/wd_blog_*/session_<uuid>/agents/main/wire.jsonl

セッションのメタデータを見る:

bash
jq . ~/.kimi-code/sessions/wd_blog_*/session_<uuid>/state.json

セッションを再開するには ​

Kimi Code をインストールし、プロジェクトのディレクトリで kimi --session SESSION_ID を実行します。アプリはターミナルでの再開に対応し、Kimi の内蔵チャットには対応していません。

根拠と制限 ​

実装:Kimi Code アダプター。上流:Kimi Code リポジトリ。

**対象範囲:**2026-10-05 に Sessions Viewer 0.6.0 のアダプター実装と照合しました。すべての CLI バージョンでの動作を保証するものではありません。シェル例は macOS/Linux のパスを使い、jq(opencode は sqlite3)が必要です。プレースホルダーと保存先は自分の環境に合わせてください。テキスト抽出はツール、画像、セッションツリーの現在の分岐を完全には再現しません。コマンドの回帰テストにはダウンロード可能な合成データを使い、個人の会話は読みません。能力と検証表で範囲を確認できます。履歴の閲覧と再開・編集の違いはプライバシーとデータの扱いを参照してください。

旧 context.append_message は別形式で、アダプターにはフォールバックがあります。上の例は主イベントのみを対象にし、ツール出力を結合しません。確認手順を参照してください。

アプリで開く ​

Sessions Viewer は wire.jsonl を他のエージェントと同じ会話ビューに読み込み、media/ の添付をインライン表示し、リネームと削除をセッションディレクトリ単位で扱います。Claude Code、Codex、Grok Build、Pi、Antigravity CLI、opencode にも対応しています。

MIT ライセンスのもとで公開されています。