Commit Graph

369 Commits

Author SHA1 Message Date
Mario Zechner
612be54c28 Release v0.70.0 2026-04-24 01:00:41 +02:00
Mario Zechner
f0cf8a59d2 fix(coding-agent): handle stale extension contexts
fixes #3606
2026-04-23 22:07:13 +02:00
Mario Zechner
cc76e73c05 fix(coding-agent): persist custom working message across loader recreation
Replace transient pendingWorkingMessage with a persistent workingMessage
field on InteractiveMode, matching the workingIndicatorOptions pattern.
New loaders now use this.workingMessage || this.defaultWorkingMessage
instead of always falling back to the default.

Also add working-message-test.ts extension example.

closes #3566
2026-04-22 22:24:32 +02:00
Mario Zechner
85a9ce3024 Release v0.69.0 2026-04-22 21:36:47 +02:00
Mario Zechner
3dacaa8ed9 fix(coding-agent,tui): drop typebox compiler shim and fix progress 2026-04-22 21:12:20 +02:00
Armin Ronacher
35ff2689ee fix(typebox): migrate to v1 with extension compat (#3474)
* fix(typebox): migrate to v1 with extension compat

Replace AJV-based validation with TypeBox-native validation, keep legacy extension imports working (including @sinclair/typebox/compiler), and restore coercion for serialized/plain JSON schemas.

This change closes #3112.

* fix(typebox): use canonical imports and harden coercion

Switch first-party code to canonical typebox imports while retaining legacy extension aliases in the loader.

Remove obsolete runtime codegen guards, expand serialized JSON-schema coercion coverage, and update related tests and fixtures.

Fixes #3112.

---------

Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
2026-04-22 19:59:33 +02:00
Mario Zechner
8234ebf9ee feat(coding-agent,tui): add stacked autocomplete providers closes #2983 2026-04-22 15:44:08 +02:00
Mario Zechner
0e5b6e54f0 docs(coding-agent): add terminating structured output example closes #3525 2026-04-22 14:27:03 +02:00
Mario Zechner
a2c183db0f Release v0.68.1 2026-04-22 02:14:13 +02:00
Aliou Diallo
01ec6e2e7f docs(coding-agent): fix promptGuidelines examples to name tools explicitly (#3489)
promptGuidelines bullets are appended flat to the Guidelines section
with no tool name prefix. Using 'Use this tool when...' is ambiguous
because the LLM cannot tell which tool 'this' refers to. Updated docs
and examples to use explicit tool names instead.
2026-04-21 13:07:42 +02:00
Mario Zechner
6f345b78d5 Release v0.68.0 2026-04-20 23:54:54 +02:00
Douglas Stephen
1891b9ac01 feat: Expose BuildSystemPromptOptions on before-agent-start event. (#3473)
Resolves: #3463
2026-04-20 23:06:47 +02:00
Mario Zechner
5a4e22ea44 fix(coding-agent): remove process-cwd tool singletons and use tool-name allowlists
- switch SDK/CLI tool selection to name-based allowlists
- apply allowlists across built-in, extension, and SDK tools
- remove ambient process.cwd defaults from core tooling and resource helpers
- update tests, examples, and TUI callers for explicit cwd plumbing
- add regression coverage for extension tool filtering

closes #3452
closes #2835
2026-04-20 22:05:28 +02:00
Mario Zechner
27c1544839 fix(coding-agent): use tool-name allowlists and remove cwd-bound singletons
- treat tools as a global allowlist across built-in, extension, and SDK tools
- remove process-cwd singleton tool usage from SDK and CLI paths
- add regression coverage for extension tool filtering

closes #3452
closes #2835
2026-04-20 22:05:28 +02:00
Mario Zechner
74139c3f66 feat(coding-agent): add configurable working indicator closes #3413 2026-04-20 16:28:39 +02:00
Mario Zechner
a1edb8a463 Release v0.67.68 2026-04-18 01:31:38 +02:00
Aliou Diallo
bfa11a50e4 feat(agent,coding-agent): per-tool executionMode override for sequential tool execution (#3345)
* feat(agent,coding-agent): add per-tool executionMode field to AgentTool and ToolDefinition

Add optional executionMode?: ToolExecutionMode to AgentTool and
ToolDefinition interfaces. Propagate through wrapToolDefinition and
createToolDefinitionFromAgentTool. No behavioral change yet — agent
loop will read this field in a follow-up.

* feat(agent): support per-tool executionMode override for sequential execution

When a tool defines executionMode='sequential', the agent loop
forces sequential execution of all tool calls in that batch,
even if the global config is parallel.

* feat(coding-agent): re-export ToolExecutionMode from @mariozechner/pi-agent-core

Makes the type available to extensions that want to set
executionMode on tool definitions.

* feat(coding-agent): add tic-tac-toe extension example with executionMode: sequential

Demonstrates per-tool executionMode: the agent plays via move/play
tool calls that share a cursor. Without sequential execution, play
can resolve before earlier moves finish, landing on the wrong cell.
2026-04-18 00:45:57 +02:00
Mario Zechner
1c0b628882 Release v0.67.67 2026-04-17 23:06:48 +02:00
Mario Zechner
2a356dca4d Release v0.67.6 2026-04-16 23:25:54 +02:00
Mario Zechner
7b45c52807 fix(coding-agent): restore verbose startup expansion
closes #3147
2026-04-16 21:42:57 +02:00
stembi
3b575e3ffb Restore full state when cycling through presets for none preset (#3272)
Added OriginalState interface to manage preset state and updated preset clearing logic to restore original state.
2026-04-16 20:38:31 +02:00
Mario Zechner
d131fcd4ba feat(coding-agent): add after_provider_response hook closes #3128 2026-04-16 20:28:08 +02:00
Armin Ronacher
23259e5f19 Release v0.67.5 2026-04-16 20:05:42 +02:00
Armin Ronacher
01949c1d4f Release v0.67.4 2026-04-16 17:32:50 +02:00
Mario Zechner
0299811c02 Release v0.67.3 2026-04-15 23:40:28 +02:00
Mario Zechner
f7cd613ee4 fix(coding-agent): stabilize edit diff previews closes #3134 2026-04-15 23:11:50 +02:00
Ramiz Wachtler
dee3d8c6a8 chore(coding-agent): replace exa with eza in plan-mode extension (#3240)
- replace the plan-mode safe-command allowlist entry from `exa` to `eza`
- closes #3160
2026-04-15 20:45:31 +02:00
Mario Zechner
5a3e702389 Release v0.67.2 2026-04-14 23:41:17 +02:00
nathyong
462b3d21e3 fix(coding-agent): do not inject bunfs script path into subagent prompts (#3002)
The presence of `process.argv[1]` in the current invocation does not
imply that the current `pi` process is being invoked as a script.
Specifically, in the case of a bun compiled binary, `process.argv[1]`
will be the virtual path `/$bunfs/root/pi`, which is not a real file on
the filesystem.  This causes the subagent extension to inject this path
into the child `pi` invocation, which is interpreted as part of the
prompt, which confuses the subagent.

This change uses the script only if it is not a bunfs virtual script

Co-authored-by: nathyong <nathyong@noreply.github.com>
2026-04-14 20:33:05 +02:00
Mario Zechner
5326452452 Release v0.67.1 2026-04-14 00:31:22 +02:00
Mario Zechner
023cd4afda Release v0.67.0 2026-04-14 00:22:27 +02:00
Aadish Verma
4f7fc9de7e fix: bump antigravity User-Agent header version (#2901)
resolves #2815

Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
2026-04-09 03:10:05 +02:00
Paul Harrison
82ecc1300f Update sandbox extension configuration instructions (#2915)
The current sandbox extension instructions state the glob configuration file must exist at `~/.pi/agent/sandbox.json` whereas it actually must exist at  `~/.pi/agent/extensions/sandbox.json` to be picked up.
2026-04-09 02:39:50 +02:00
Mario Zechner
f3780d7004 Release v0.66.1 2026-04-09 01:00:19 +02:00
Mario Zechner
918cc09dd6 Release v0.66.0 2026-04-08 18:56:20 +02:00
Mario Zechner
573eb91c78 Release v0.65.2 2026-04-06 02:04:58 +02:00
Mario Zechner
4171cf0dbb Release v0.65.1 2026-04-06 00:26:06 +02:00
Otto Jongerius
02c2a3e54b fix: quote $RESX and $RESY in doom build script (SC2086) (#2817) 2026-04-05 01:07:34 +02:00
Mario Zechner
8c1831bd5c Release v0.65.0 2026-04-03 20:31:19 +02:00
Mario Zechner
9f9277ccdd refactor(coding-agent): replace AgentSessionRuntimeHost with closure-based AgentSessionRuntime
- Replace AgentSessionRuntimeHost and bootstrap abstractions with AgentSessionRuntime
- Runtime creation is now closure-based via CreateAgentSessionRuntimeFactory
- Factory closes over process-global fixed inputs, recreates cwd-bound services per effective cwd
- Session config (model, thinking, tools, scoped models) re-resolved per target cwd
- CLI resource paths resolved once at startup as absolute paths
- Swap lifecycle: teardown old, create next, apply next (hard fail on creation error)
- Unified diagnostics model (info/warning/error) for args, services, session resolution, resources
- No logging or process exits inside creation/parsing logic
- Removed session_directory support
- Removed session_switch and session_fork extension events (use session_start with reason)
- Moved package/config CLI to package-manager-cli.ts
- Fixed theme init for --resume session picker
- Fixed flaky reftable footer test (content-based polling)
- Fixed silent drop of unknown single-dash CLI flags
- Added error diagnostics for missing explicit CLI resource paths
- Updated SDK docs, examples, plans, exports, tests, changelog

fixes #2753
2026-04-03 20:14:12 +02:00
Mario Zechner
e2f29b0523 add(coding-agent): add defineTool helper closes #2746 2026-04-01 23:07:14 +02:00
Mario Zechner
d86122cbd3 refactor(coding-agent): add runtime host for session switching closes #2024 2026-03-31 13:49:57 +02:00
Mario Zechner
d0404a4593 Release v0.64.0 2026-03-29 21:56:13 +02:00
Mario Zechner
de022ceba7 feat(coding-agent): add hidden thinking label api closes #2673 2026-03-29 21:33:15 +02:00
Mario Zechner
ef6af5ebbd feat(ai,coding-agent): add faux provider and ModelRegistry factories 2026-03-29 21:08:50 +02:00
Mario Zechner
41039e8de7 Release v0.63.2 2026-03-29 13:14:04 +02:00
warren
77d8700b21 docs(coding-agent): clarify sandbox example alternative to bash override (#2663) 2026-03-29 13:10:19 +02:00
Mario Zechner
d9727c4478 Release v0.63.1 2026-03-27 04:14:13 +01:00
Mario Zechner
161ad18287 fix(coding-agent): unify compaction UI events closes #2617 2026-03-27 03:14:24 +01:00
Mario Zechner
83c8682779 Release v0.63.0 2026-03-27 02:30:20 +01:00