Pi 的配置、擴充、平台設定和 API 參考。

會議

Pi 將對話儲存為會話,以便您可以繼續工作、從先前的回合分支並重新訪問先前的路徑。

會話存儲

會話自動儲存到~/.pi/agent/sessions/,依工作目錄組織。每個會話都是一個具有樹狀結構的JSONL檔案。

pi -c                  # Continue most recent session
pi -r                  # Browse and select from past sessions
pi --no-session        # Ephemeral mode; do not save
pi --name "my task"    # Set session display name at startup
pi --session <path|id> # Use a specific session file or partial session ID
pi --fork <path|id>    # Fork a session file or partial session ID into a new session

在互動模式下使用 /session 查看目前會話檔案、會話 ID、訊息計數、令牌和成本。

對於JSONL檔案格式和SessionManagerAPI,請參閱Session Format

會話命令

命令 描述
/resume 瀏覽並選擇先前的會話
/new 開始新會話
/name <name> 設定目前會話顯示名稱
/session 顯示會話訊息
/tree 導航當前session tree
/fork 根據先前的用戶訊息建立新會話
/clone 將目前活動分支複製到新會話中
/compact [prompt] 總結舊的背景;見Compaction
/export [file] 將會話匯出為 HTML
/share 上傳為私人 GitHub 要點,並帶有可共享的 HTML 鏈接

恢復和刪除會話

/resume 開啟目前專案的互動式會話選擇器。 pi -r 在啟動時開啟相同的選擇器。

在選擇器中您可以:

  • 透過輸入搜尋
  • 使用 Ctrl+P 切換路徑顯示
  • 使用 Ctrl+S 切換排序模式
  • 使用 Ctrl+N 過濾命名會話
  • 使用 Ctrl+R 重新命名
  • 使用 Ctrl+D 刪除,然後確認

如果可用,pi 使用 trash CLI 進行刪除,而不是永久刪除檔案。

命名會話

使用 /name <name> 設定人類可讀的會話名稱:

/name Refactor auth module

使用 --name-n 設定啟動時的名稱:

pi --name "Refactor auth module"
pi --name "CI audit" -p "Review this build failure"

命名會話在 /resumepi -r 中更容易找到。

使用 /tree 進行分支

會話儲存為樹。每個條目都有一個idparentId,目前位置是活動葉子。 /tree 讓您跳到任何先前的點並從那裡繼續,而無需建立新檔案。

Tree View

形狀範例:

├─ user: "Hello, can you help..."
│  └─ assistant: "Of course! I can..."
│     ├─ user: "Let's try approach A..."
│     │  └─ assistant: "For approach A..."
│     │     └─ user: "That worked..."  ← active
│     └─ user: "Actually, approach B..."
│        └─ assistant: "For approach B..."

樹控件

鑰匙 行動
↑/↓ 導航可見條目
←/→ 向上/向下翻頁
Ctrl+←/Ctrl+→ 或 Alt+←/Alt+→ 折疊/展開或在分支段之間跳躍
Shift+L 設定或清除所選條目上的標籤
Shift+T 切換標籤時間戳
進入 選擇條目
退出/Ctrl+C 取消
Ctrl+O 循環過濾模式

濾鏡模式有:預設、無工具、僅使用者、僅標記和全部。在 Settings 中配置預設值 treeFilterMode

選擇行為

選擇用戶或自訂訊息:

  1. 將葉移動到所選訊息的父級。
  2. 將選定的訊息文字放置在編輯器中。
  3. 允許您編輯並重新提交,建立新分支。

選擇助手、工具、壓縮或其他非使用者條目:

  1. 將葉子移到該條目。
  2. 將編輯器留空。
  3. 讓您從那一點繼續。

選擇根用戶訊息會將葉重設為空對話,並將原始提示放置在編輯器中。

/tree/fork/clone

特徵 /tree /fork /clone
輸出 相同的會話文件 新會話文件 新會話文件
看法 滿樹 使用者訊息選擇器 目前活動分支
典型用途 探索現有的替代方案 從先前的提示開始新會話 在繼續之前複製當前工作
概括 選用分支摘要 沒有任何 沒有任何

當您想將替代方案保留在一起時,請使用 /tree。當您需要單獨的會話文件時,請使用 /fork/clone

分支摘要

/tree 從一個分支切換到另一個分支時,pi 可以總結廢棄的分支並將該摘要附加到新位置。這可以保留您離開的路徑中的重要上下文,而無需重播整個分支。

出現提示時,選擇以下選項之一:

  1. 沒有總結
  2. 使用預設提示進行總結
  3. 使用自訂焦點說明進行總結

請參閱 Compaction 了解 branch summarization 內部構件和延長鉤。

會議形式

會話檔案為JSONL,包含訊息條目、模型變更、思維層級變更、標籤、壓縮、分支摘要及擴充條目。

有關解析器、擴充、SDK用法和完整的 SessionManager API,請參閱Session Format