diff --git a/packages/coding-agent/CHANGELOG.md b/packages/coding-agent/CHANGELOG.md index fccae61f..242123f4 100644 --- a/packages/coding-agent/CHANGELOG.md +++ b/packages/coding-agent/CHANGELOG.md @@ -8,6 +8,7 @@ ### Fixed +- Fixed `/session`, Sessions docs, and CLI help to consistently document that session reuse supports both file paths and session IDs, and that `/session` shows the current session ID ([#3390](https://github.com/badlogic/pi-mono/issues/3390)) - Fixed Windows pnpm global install detection to recognize `\\.pnpm\\` store paths, so update notices now suggest `pnpm install -g @mariozechner/pi-coding-agent` instead of falling back to npm ([#3378](https://github.com/badlogic/pi-mono/issues/3378)) - Fixed missing `@sinclair/typebox` runtime dependency in `@mariozechner/pi-coding-agent`, so strict pnpm installs no longer fail with `ERR_MODULE_NOT_FOUND` when starting `pi` ([#3434](https://github.com/badlogic/pi-mono/issues/3434)) - Fixed xterm uppercase typing in the interactive editor by decoding printable `modifyOtherKeys` input and normalizing shifted letter matching, so `Shift+letter` no longer disappears in `pi` ([#3436](https://github.com/badlogic/pi-mono/issues/3436)) diff --git a/packages/coding-agent/README.md b/packages/coding-agent/README.md index 3c3fe05b..6c30f995 100644 --- a/packages/coding-agent/README.md +++ b/packages/coding-agent/README.md @@ -167,7 +167,7 @@ Type `/` in the editor to trigger commands. [Extensions](#extensions) can regist | `/resume` | Pick from previous sessions | | `/new` | Start a new session | | `/name ` | Set session display name | -| `/session` | Show session info (path, tokens, cost) | +| `/session` | Show session info (file, ID, messages, tokens, cost) | | `/tree` | Jump to any point in the session and continue from there | | `/fork` | Create a new session from a previous user message | | `/clone` | Duplicate the current active branch into a new session | @@ -225,10 +225,12 @@ Sessions auto-save to `~/.pi/agent/sessions/` organized by working directory. pi -c # Continue most recent session pi -r # Browse and select from past sessions pi --no-session # Ephemeral mode (don't save) -pi --session # Use specific session file or ID -pi --fork # Fork specific session file or ID into a new session +pi --session # Use specific session file or ID +pi --fork # Fork specific session file or ID into a new session ``` +Use `/session` in interactive mode to see the current session ID before reusing it with `--session ` or `--fork `. + ### Branching **`/tree`** - Navigate the session tree in-place. Select any previous point, continue from there, and switch between branches. All history preserved in a single file. @@ -508,8 +510,8 @@ cat README.md | pi -p "Summarize this text" |--------|-------------| | `-c`, `--continue` | Continue most recent session | | `-r`, `--resume` | Browse and select session | -| `--session ` | Use specific session file or partial UUID | -| `--fork ` | Fork specific session file or partial UUID into a new session | +| `--session ` | Use specific session file or partial UUID | +| `--fork ` | Fork specific session file or partial UUID into a new session | | `--session-dir ` | Custom session storage directory | | `--no-session` | Ephemeral mode (don't save) | diff --git a/packages/coding-agent/src/cli/args.ts b/packages/coding-agent/src/cli/args.ts index da2b8198..a77e4de3 100644 --- a/packages/coding-agent/src/cli/args.ts +++ b/packages/coding-agent/src/cli/args.ts @@ -225,8 +225,8 @@ ${chalk.bold("Options:")} --print, -p Non-interactive mode: process prompt and exit --continue, -c Continue previous session --resume, -r Select a session to resume - --session Use specific session file - --fork Fork specific session file or partial UUID into a new session + --session Use specific session file or partial UUID + --fork Fork specific session file or partial UUID into a new session --session-dir Directory for session storage and lookup --no-session Don't save session (ephemeral) --models Comma-separated model patterns for Ctrl+P cycling diff --git a/packages/coding-agent/src/modes/interactive/interactive-mode.ts b/packages/coding-agent/src/modes/interactive/interactive-mode.ts index f13c33bb..e6989999 100644 --- a/packages/coding-agent/src/modes/interactive/interactive-mode.ts +++ b/packages/coding-agent/src/modes/interactive/interactive-mode.ts @@ -1879,6 +1879,9 @@ export class InteractiveMode { this.pendingWorkingMessage = message; } }, + setWorkingIndicator: () => { + // Working indicator customization not implemented in interactive mode yet. + }, setHiddenThinkingLabel: (label) => this.setHiddenThinkingLabel(label), setWidget: (key, content, options) => this.setExtensionWidget(key, content, options), setFooter: (factory) => this.setExtensionFooter(factory), diff --git a/packages/coding-agent/src/modes/rpc/rpc-mode.ts b/packages/coding-agent/src/modes/rpc/rpc-mode.ts index 1b5b1e5d..02668927 100644 --- a/packages/coding-agent/src/modes/rpc/rpc-mode.ts +++ b/packages/coding-agent/src/modes/rpc/rpc-mode.ts @@ -172,6 +172,10 @@ export async function runRpcMode(runtimeHost: AgentSessionRuntime): Promise