Handoff を公開しました — AI セッションに記憶を渡す
リリース

Handoff を公開しました — AI セッションに記憶を渡す

AI コーディングエージェントにセッションを跨いだ記憶を与える Handoff(MCP サーバー + VSCode 拡張)を公開しました。

毎回ゼロから、という問題

AI コーディングエージェントとの作業は、実のところ「記憶がない」わけではありません。エージェント自身のメモリやプロジェクトの設定ファイルに、ある程度の文脈は残せます。厄介なのはその先です。

ひとつは、その記憶が個人の開発環境に閉じてしまうこと。何をしていて、どんな決定をして、何が残っているのか——そうした文脈を、環境の異なる他のメンバーとそのまま共有するのは簡単ではありません。

もうひとつは、引き継ぎ自体のコストです。コンテキストを引き継ぎ用のドキュメントにまとめたり、会話を圧縮(コンパクト化)したりはできますが、その作業自体が毎回まとまったトークンを消費します。短い作業なら気になりませんが、数日にわたる開発では、この「引き継ぎのための消費」がじわじわと効いてきます。

Handoff は、文脈を構造化されたファイルとして残すことで、この共有のしにくさと、引き継ぎのトークンの無駄遣いの両方を抑えるための仕組みです。

2 つの要素

Handoff は次の 2 つから成り立っています。

  • handoff-mcp — AI エージェントに永続メモリを与える MCP サーバーです。Rust で実装し、npm から handoff-mcp-server として配布しています。セッションの状態を、プロジェクト直下の .handoff/ ディレクトリに「タスク・決定事項・ブロッカー・関連ファイルへのポインタ」として保存します。次のセッションは、これを開始時に自動で読み込みます。
  • handoff-vscode — その状況を VSCode の中で見えるようにする拡張です。VSCode Marketplace で公開しています。

使い方に、特別なコマンドを覚える必要はありません。作業を終えるときに「セッションをクローズして」と伝えれば、AI がその日にやったことと次にやるべきことをまとめて書き出します。そして次の日、新しいセッションで「前回の続きをやりたい」と言うだけで、AI が残りのタスクと必要な情報を自分で読み取り、そのまま作業を始められます。煩わしい説明や、長いプロンプトを書き直す手間はもう要りません。

記憶はファイルとして残るので、人もそのまま読めますし、Git にも乗ります。そのためチームで共有でき、必要なところだけを的確に読み込むことで、引き継ぎにかかるトークンも抑えられます。

なお、GUI での管理が要らなければ handoff-mcp 単体でも十分に機能します。VSCode 拡張は、その状態を見やすく可視化するための追加の選択肢です。

Handoff ダッシュボード

VSCode 拡張でできること

.handoff/ はテキストとして残るとはいえ、量が増えると全体像はつかみにくくなります。拡張はそこを補い、状況を一覧で見えるようにします。

  • Task Explorer — タスクをツリーで表示。ステータスアイコンと優先度が一目でわかります
  • Dashboard — ステータス別のタスク数、完了率、エフォート予算のバーンダウン、カンバン、タイムラインをまとめて表示します
  • Gantt Chart — ドラッグでそのまま再スケジュールできます
  • Kanban — ドラッグ&ドロップで動かすと、.handoff/ に自動で書き戻されます
  • Metrics — 見積もりと実績の比較、ベロシティ、セッション時間の分析
  • Time Tracker — アクティブなタスクに紐づくタイマー。アイドルも検出します
  • Session Browser — 過去のセッションをたどれます

ガントチャート

メトリクスパネル

実際の流れの中で

残った文脈はファイルとして共有できるので、続きを別のメンバーが引き取ることもできます。環境の違う相手でも、同じ .handoff/ を読み込めば、前任者の決定や残タスクを踏まえたところから手を動かせます。一人の数日越しの作業でも、チームでのバトンタッチでも、引き継ぎのために改めて説明する手間がかかりません。

派手な機能ではありませんが、日々の開発でいちばん削りたい摩擦は、案外こういう地味なところにあると感じています。私たち自身が作業の中で必要だったものを、そのまま形にしました。これからも使いながら少しずつ手を入れていきます。

Handoff の実績ページを見る