Files
playchat/docs/notes-guide.md
T
colcaroliandClaude Opus 5 216d38c7bd Let users download shared notes as Markdown
The shared notes had no way out: everything lived in the SQLite row and the
only reader was the panel itself. Add two export endpoints and buttons for
them at the bottom of the note panel.

GET /api/notes/{page_id}/export returns one page as .md, and
GET /api/notes/export returns every page as a zip laid out as
<section>/<NN>_<title>.md. Pages are not concatenated into a single file on
purpose - the headings inside a page would collide with whatever heading
level we used as a page separator, so each page stays a verbatim file and the
numeric prefix carries the tab order instead.

Titles reach the filesystem here, so strip the Windows-forbidden characters
and control characters, cap the length, and send Content-Disposition with an
RFC 5987 filename* so Japanese titles survive. The front end deliberately
omits the anchor's download attribute to let that name win.

notes store: flush() now returns a promise so the download can wait for
pending edits to be saved before asking the server for the file.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 15:33:08 +09:00

5.0 KiB
Raw Blame History

共有ノートの使い方

ユーザーとAIが同じノートを一緒に編集できる機能。ページをタブで切り替え、関連するページ同士は セクションでグループ化できる。実装の詳細は docs/architecture.md の「共有ノート」節、 API 仕様は docs/api.md の「共有ノート」節を参照。

開き方

画面右上ヘッダーの 「ノート」 ボタンをクリックすると、右側にノートパネルが開く。 もう一度クリックすると閉じる。

ページの操作

操作 方法
ページを開く タブをクリック
ページを新規作成 タブ列右端の + をクリック(末尾に「新しいページ」が追加される)
タイトルを変更 タブをダブルクリックすると入力欄になるので書き換えて Enter(または欄外をクリック)
ページを削除 タブ内の × をクリック(確認ダイアログあり)
本文を編集 ページを開いた状態で下の編集エリアに直接入力
ページを1つ保存 パネル下部の ⬇ このページ (.md) をクリック
全ページを保存 パネル下部の ⬇ すべて (.zip) をクリック

本文は入力を止めてから少し待つと自動保存される。保存待ちの間はタブに ●(未保存マーク)が付く。 ページが1つも無い場合は「+ 最初のページを作成」から始められる。

手元にダウンロードする

パネル下部の ⬇ ボタンでノートをファイルとして保存できる。未保存の編集があっても、 保存してから書き出すので取りこぼしはない。

ボタン 出てくるもの
⬇ このページ (.md) 開いているページの本文そのままの Markdown ファイル。ファイル名はページのタイトル
⬇ すべて (.zip) 全ページをまとめた ZIP。1 ページ 1 Markdown で、セクションはフォルダになる

ZIP の中のファイル名には 01_, 02_ … と通し番号が付く。タブの並び順を残すためで、 展開したときも画面と同じ順番で並ぶ。ファイル名に使えない文字(/ や : など)は _ に置き換わる。

複数ページを 1 つのファイルに連結せず ZIP にしているのは、ページ内の見出し(#)が ページ間の見出しと混ざって階層が壊れるのを避けるため。

セクションでまとめる

複数のページを1つのグループとしてタブ上にまとめられる。

操作 方法
ページをセクションに入れる タブにマウスを乗せると出てくる 🏷 をクリックし、セクション名を入力
セクション名を変更する セクションのラベル(タブ群の左上に表示される名前)をクリックし、新しい名前を入力
セクションを解除する 🏷 またはセクションラベルをクリックした際、名前を空欄にして確定

同じセクションに入れたページは、タブ列上で必ず隣り合って表示される (新しくセクションに追加したページは、そのセクションの末尾に自動的に移動する)。 セクション名を変更すると、そのグループに属する全ページのラベルが一括で変わる。

タブをドラッグで動かす

タブはドラッグ&ドロップでも操作できる(🏷 やセクションラベルのクリックと同等の結果になる)。

操作 方法
同じグループ内で順番を変える タブを掴んで、移動先のタブの左半分/右半分にドロップ(左=そのタブの前、右=後ろに入る)
別のセクションへ移動する 移動先のセクション内のタブにドロップ(そのタブと同じセクションに入る)
セクションから外す 未分類のタブにドロップ、またはタブ列の一番右(+ボタンの手前の細い枠)にドロップ

ドラッグ中はドロップ位置に青い線が表示される。タイトル編集中(ダブルクリックで入力欄になっている間)のタブはドラッグできない。

AIとの連携

  • 全ページのタイトル一覧は、会話のたびに自動でAIに渡される(セクションがあれば見出し付きで)。 ただし本文はここには含まれない。
  • AIは read_note ツールでページ本文を読み、write_note ツールで追記・置き換え・新規ページ作成ができる。 「ノートに書いておいて」「〇〇について記録して」のように頼むと、AIが該当ページを判断して書き込む。
  • AIがノートを書き換えると、開いているノートパネルは自動的に最新の内容へ更新される。
  • 自分が編集中(未保存)のページは、AIの更新で上書きされない。