@counterposition/skill-pi 0.87.1 → 0.99.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -38,7 +38,7 @@ Edit JSON directly or use `/settings` for common interactive options.
38
38
 
39
39
  ```json
40
40
  {
41
- "theme": "dark",
41
+ "theme": "system",
42
42
  "quietStartup": false,
43
43
  "collapseChangelog": false,
44
44
  "doubleEscapeAction": "tree",
@@ -54,7 +54,7 @@ Edit JSON directly or use `/settings` for common interactive options.
54
54
  - `doubleEscapeAction`: `"tree"`, `"fork"`, or `"none"`
55
55
  - `treeFilterMode`: `"default"`, `"no-tools"`, `"user-only"`, `"labeled-only"`, or `"all"`
56
56
  - In `/tree`, `Shift+T` toggles timestamps on entry labels
57
- - `theme` also accepts `"light-name/dark-name"` (Pi 0.79.7) to switch themes automatically with the terminal color scheme; `/` is reserved in theme names for this. On first run Pi detects the terminal background and defaults to `dark` or `light`. `--use-theme <name[/name]>` (Pi 0.84.2) sets a per-run initial theme without changing saved settings.
57
+ - `theme` defaults to `"system"` (Pi 0.99.0), which builds Pi's colors from the terminal's reported foreground, background, and ANSI palette and follows light/dark switches; `system` is a reserved theme name. `dark` and `light` are the other built-ins. `"light-name/dark-name"` (Pi 0.79.7) switches themes with the terminal color scheme; `/` is reserved in theme names for this. `--use-theme <name[/name]>` (Pi 0.84.2) sets a per-run initial theme without changing saved settings.
58
58
  - `outputPad` (Pi 0.80.3, `0` or `1`) sets horizontal padding for user messages, assistant messages, and thinking blocks; custom message renderers receive it as `options.outputPad` (Pi 0.82.1).
59
59
  - `externalEditor` (Pi 0.80.3) sets the `Ctrl+G` external editor command and takes precedence over `$VISUAL`/`$EDITOR`.
60
60
 
@@ -67,7 +67,8 @@ Experimental since Pi 0.84.0:
67
67
  "tuiMode": "regular",
68
68
  "fullscreenExitOutput": "transcript",
69
69
  "fullscreenScrollbar": "auto",
70
- "fullscreenCopyOnSelect": true
70
+ "fullscreenCopyOnSelect": true,
71
+ "fullscreenWheelScrollLines": "auto"
71
72
  }
72
73
  ```
73
74
 
@@ -75,6 +76,7 @@ Experimental since Pi 0.84.0:
75
76
  - `fullscreenExitOutput` (Pi 0.84.2): `"transcript"` prints the final transcript on exit; `"resume-hint"` restores the previous screen and prints only a resume hint
76
77
  - `fullscreenScrollbar`: `"auto"` shows while scrolling, `"always"` reserves the rightmost column, `"hidden"`
77
78
  - `fullscreenCopyOnSelect` (Pi 0.84.4, default `true`): when `false`, `Ctrl+X` copies the active selection (falling back to the last assistant message)
79
+ - `fullscreenWheelScrollLines` (Pi 0.99.0): `"auto"` (default) or 1–100 lines per mouse-wheel event. `"auto"` moves one line per event in local macOS terminals and accelerates fast spins elsewhere (up to 6 lines); Alt+wheel moves five times as far
78
80
  - Fullscreen keeps editor/status/widgets/footer docked while the transcript scrolls independently; transcript search (`Ctrl+Shift+F`, Pi 0.84.2), page/half-page/line scrolling, and marked-message navigation are configurable via `tui.altScreen.*` keybindings
79
81
  - Theme tokens `scrollbarThumb`, `searchMatchBg`, `searchMatchText` are optional additions with fallbacks (`selectedBg`, `selectedBg`, `text`)
80
82
 
@@ -181,7 +183,6 @@ Notes:
181
183
  {
182
184
  "sessionDir": ".pi/sessions",
183
185
  "enabledModels": ["claude-*", "gpt-4o", "gemini-2*"],
184
- "defaultTools": ["bash", "read", "edit"],
185
186
  "markdown": {
186
187
  "codeBlockIndent": " ",
187
188
  "mermaid": "streaming"
@@ -191,12 +192,25 @@ Notes:
191
192
 
192
193
  When multiple sources specify a session directory, `--session-dir` takes precedence over `sessionDir` in settings. Pi 0.65.0 removed the old `session_directory` extension/settings hook.
193
194
 
194
- - `defaultTools` (Pi 0.84.2) picks the built-in tools enabled at startup (default `read`, `bash`, `edit`, `write`; also available: `grep`, `find`, `ls`, and `powershell` on Windows since Pi 0.84.3) (global or per project; project replaces global). An empty array starts with no built-in tools while keeping extension/SDK custom tools. `--tools` remains a strict allowlist for all tools, `--exclude-tools` filters the resulting list.
195
195
  - `markdown.mermaid` (Pi 0.84.0): `"off"`, `"final"`, or `"streaming"` — themed Unicode rendering of supported Mermaid diagrams in interactive messages. Pi 0.84.0 also renders terminal-friendly Unicode for LaTeX expressions.
196
196
 
197
+ ## Tools & Codemode
198
+
199
+ ```json
200
+ {
201
+ "defaultTools": ["+codemode"],
202
+ "codemode": { "mode": "on", "inlineBudget": 3000 }
203
+ }
204
+ ```
205
+
206
+ - `defaultTools` picks the tools enabled at startup (default `read`, `bash`, `edit`, `write`; also `grep`, `find`, `ls`, `powershell`, and the built-in extension tools `codemode` and `tool_search`). Plain names replace the defaults. A list of only `+name`/`-name` entries (Pi 0.99.0) changes the inherited selection instead; in a mixed list the plain names form the selection and `+`/`-` apply in order. A project list of only `+`/`-` entries applies on top of the user setting; a project list with a plain name replaces it. An empty array disables built-in tools but keeps extension/SDK tools.
207
+ - `--tools` replaces the whole selection for one run and does not accept `+`/`-`; `--exclude-tools` filters the result.
208
+ - `codemode.mode`: `"on"` (default) keeps declared tools declared; `"only"` hides active built-in and extension tools from the model so it reaches them through `codemode`. `codemode.inlineBudget` (default `3000`, estimated tokens) caps tool declarations in the `codemode` description. See `references/codemode.md`.
209
+ - MCP servers are configured in `~/.pi/agent/mcp.json` and the trust-gated `.pi/mcp.json`, not in `settings.json`. See `references/mcp.md`.
210
+
197
211
  ## Project Trust
198
212
 
199
- Since Pi 0.79.0, project-local settings, resources, and packages (`.pi/` settings/extensions/skills/prompts/themes, project packages) only load after the project is trusted. `AGENTS.md` / `CLAUDE.md` context files load regardless of trust. Trust is a loading gate, not a sandbox.
213
+ Since Pi 0.79.0, project-local settings, resources, and packages (`.pi/` settings/extensions/skills/prompts/themes/`mcp.json`, project packages) only load after the project is trusted. `AGENTS.md` / `CLAUDE.md` context files load regardless of trust. Trust is a loading gate, not a sandbox.
200
214
 
201
215
  ```json
202
216
  {
@@ -238,6 +252,7 @@ Notes:
238
252
  - `packages` loads npm/git/local Pi packages.
239
253
  - `extensions`, `skills`, `prompts`, and `themes` are for local files/directories.
240
254
  - `enableSkillCommands` controls `/skill:name` registration.
255
+ - Built-in extensions (Pi 0.99.0) are `builtin:mcp`, `builtin:llama.cpp`, `builtin:codemode`, and `builtin:tool-search`. They load by default; `"extensions": ["-builtin:mcp"]` disables one, and a project `+builtin:<name>`/`-builtin:<name>` entry overrides the user setting. `pi config` lists them under Built-in.
241
256
 
242
257
  ## Include / Exclude Patterns
243
258
 
@@ -266,6 +281,7 @@ Run `pi --help` for the authoritative list. Most commonly:
266
281
  pi [options] [@files...] [messages...]
267
282
 
268
283
  # package commands: install/remove/uninstall/update/list/config (all support -l for project scope)
284
+ # MCP commands: pi mcp add|remove|list|login|logout (see references/mcp.md)
269
285
 
270
286
  # modes
271
287
  -p, --print single-shot text output
@@ -291,15 +307,16 @@ pi [options] [@files...] [messages...]
291
307
  --no-session ephemeral
292
308
 
293
309
  # tools and resources
294
- --tools <list>, -t name allowlist (read,bash,edit,write,grep,find,ls,...)
310
+ --tools <list>, -t name allowlist (read,bash,edit,write,grep,find,ls,codemode,...)
295
311
  --exclude-tools <list>, -xt disable specific built-in/extension/custom tools, keep the rest
296
312
  --no-tools, -nt disable everything
297
313
  --no-builtin-tools, -nbt disable built-ins, keep extension/custom
298
- -e, --extension <source> repeatable; npm/git/path
314
+ -e, --extension <source> repeatable; npm/git/path, or builtin:<name>
299
315
  --skill <path> repeatable
300
316
  --prompt-template <path> repeatable
301
317
  --theme <path> repeatable
302
- --no-extensions / --no-skills / --no-prompt-templates / --no-themes
318
+ --no-extensions, -ne also disables built-in extensions (pi -ne -e builtin:mcp keeps only MCP)
319
+ --no-skills / --no-prompt-templates / --no-themes
303
320
  --no-context-files, -nc skip AGENTS.md / CLAUDE.md discovery
304
321
 
305
322
  # trust and network
@@ -308,8 +325,8 @@ pi [options] [@files...] [messages...]
308
325
  --offline disable startup network operations (same as PI_OFFLINE=1)
309
326
 
310
327
  # prompts and misc
311
- --system-prompt <text> replace default
312
- --append-system-prompt <text> repeatable; appended with double newlines
328
+ --system-prompt <text|path> replace default
329
+ --append-system-prompt <text|path> repeatable; appended with double newlines
313
330
  --tui-mode regular|fullscreen experimental fullscreen TUI (Pi 0.84.0)
314
331
  --use-theme <name[/name]> per-run initial theme, saved settings untouched (Pi 0.84.2)
315
332
  --verbose