Mario Zechner
52d16d5a31
fix(coding-agent): persist bash output on line truncation closes #2852
2026-04-05 23:28:49 +02:00
Mario Zechner
080af6fc06
fix(coding-agent): handle missing session cwd
2026-04-05 21:24:32 +02:00
Aliou Diallo
71e4436932
fix(coding-agent): handle git/npm extension paths in CLI resolution ( #2845 )
2026-04-05 18:42:14 +02:00
Mario Zechner
a7acef92a7
fix(coding-agent): resource collision precedence, user/project skills override package skills
...
Sort resolved resources by precedence rank (project settings > project auto >
user settings > user auto > package) so first-wins collision logic produces
correct results. Also reorder CLI paths to prepend instead of append.
fixes #2781
2026-04-04 21:28:38 +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
617f1870f8
fix(coding-agent): reuse initial resource loader on startup closes #2766
2026-04-02 11:06:08 +02:00
Mario Zechner
e2f29b0523
add(coding-agent): add defineTool helper closes #2746
2026-04-01 23:07:14 +02:00
Mario Zechner
a1e107897d
fix(tui): await async slash command completions closes #2719
2026-03-31 14:41:50 +02:00
Mario Zechner
d86122cbd3
refactor(coding-agent): add runtime host for session switching closes #2024
2026-03-31 13:49:57 +02:00
warren
84d2b51a2e
feat(coding-agent): add label timestamps to the session tree ( #2691 )
2026-03-30 15:56:37 +02:00
Mario Zechner
21863d4ec7
fix(coding-agent): wait for retried runs to settle
2026-03-30 15:51:59 +02:00
Mario Zechner
cbe1a8b732
fix(agent): simplify state API and update consumers fixes #2633
2026-03-30 12:43:34 +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
350d17d1f3
Merge branch 'main' of https://github.com/badlogic/pi-mono
2026-03-29 21:09:04 +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
b5f425ad15
feat(agent,coding-agent): add prepareArguments hook for pre-validation argument preparation
...
Add AgentTool.prepareArguments and ToolDefinition.prepareArguments hook
that runs before schema validation in the agent loop. This lets tools
silently accept legacy argument shapes from resumed old sessions without
polluting the public schema.
The built-in edit tool uses this to fold legacy top-level oldText/newText
into edits[] when resuming sessions that predate the edits-only schema.
- AgentTool/ToolDefinition: typed prepareArguments returning Static<TParameters>
- agent-loop: prepareToolCallArguments() runs before validateToolArguments()
- edit tool: prepareEditArguments folds legacy fields, validateEditInput is strict
- Documented in extensions.md with edit-tool example
2026-03-29 21:06:22 +02:00
Mario Zechner
7e1dd8880c
fix(coding-agent): restore extension input source semantics
2026-03-29 19:28:04 +02:00
Duncan Ogilvie
1ee0d28d7b
fix(coding-agent): properly queue extension messages ( #2674 )
2026-03-29 19:23:40 +02:00
Mario Zechner
0f9db44aff
fix(coding-agent): avoid full redraw on large edit results closes #2664
2026-03-29 13:00:46 +02:00
Mario Zechner
7d4faa080d
fix: expose abort signal to extensions closes #2660
2026-03-28 22:25:06 +01:00
Mario Zechner
e773527b3a
fix(coding-agent): simplify edit tool input closes #2639
2026-03-28 22:10:34 +01:00
Mario Zechner
7fe7081745
fix(coding-agent): document mutable tool_call input closes #2611
2026-03-27 04:01:20 +01:00
Mario Zechner
f456a7a4db
fix(coding-agent): restore compaction summary and dedupe edit errors
2026-03-27 04:00:21 +01:00
Mario Zechner
a0734bd162
fix(coding-agent): tighten skill discovery and edit diffs closes #2603
2026-03-27 03:48:28 +01:00
Mario Zechner
eeace79715
fix(coding-agent): preserve kept messages across repeated compaction closes #2608
2026-03-27 03:36:57 +01:00
Mario Zechner
161ad18287
fix(coding-agent): unify compaction UI events closes #2617
2026-03-27 03:14:24 +01:00
Mario Zechner
20a57e7599
feat(coding-agent): support multi-edit in edit tool
2026-03-27 02:21:09 +01:00
Mario Zechner
7a786d88aa
fix(coding-agent): resolve models.json auth per request closes #1835
2026-03-27 00:47:40 +01:00
Sam
2b1fc90cd7
feat(coding-agent): Add sessionDir support in settings.json ( #2598 )
...
Users can now set sessionDir in global or project settings.json instead
of passing --session-dir on every invocation. CLI flag takes precedence,
then settings.json, then extension hooks.
Closes #2429
Co-authored-by: Sam Collins <81678+smcllns@users.noreply.github.com >
Co-authored-by: Mario Zechner <badlogicgames@gmail.com >
2026-03-26 00:03:36 +01:00
Mario Zechner
d38ad0cd6b
fix(coding-agent): preserve file mutation queue ordering
2026-03-25 23:05:04 +01:00
Mario Zechner
648e96a611
chore(coding-agent): add startup phase timings
2026-03-25 23:05:03 +01:00
Mario Zechner
a949490f29
fix(coding-agent): respect export theme backgrounds closes #2565
2026-03-24 21:27:19 +01:00
Mario Zechner
13b771e591
fix(coding-agent): reduce git update fetch noise closes #2548
2026-03-24 03:23:00 +01:00
Mario Zechner
835296b1d7
fix(coding-agent): expose rpc context usage closes #2550
2026-03-24 03:08:51 +01:00
Mario Zechner
a8a58ff26b
fix(coding-agent): disambiguate duplicate slash commands, fixes #1061
2026-03-23 02:33:52 +01:00
Mario Zechner
4e5af01d73
fix(coding-agent): unify source provenance, closes #1734
2026-03-23 02:02:42 +01:00
Mario Zechner
d501b9ca26
fix(coding-agent): attach source info to resources and commands, fixes #1734
2026-03-23 00:52:55 +01:00
Mario Zechner
a78882d8b8
fix(coding-agent): enforce safe auto-resized image limits closes #2055
2026-03-22 21:48:34 +01:00
Mario Zechner
f1fe49a641
fix(coding-agent): reserve stdout in print and json mode closes #2482
2026-03-22 21:21:29 +01:00
Mario Zechner
74073e5227
fix(coding-agent): skip no-op git package reinstalls
...
closes #2503
2026-03-22 19:19:47 +01:00
Mario Zechner
235b247f1f
fix(coding-agent): built-in tools work like extension tools
...
Export readToolDefinition / createReadToolDefinition and the equivalent built-in ToolDefinition APIs from @mariozechner/pi-coding-agent.
2026-03-22 04:20:38 +01:00
Mario Zechner
eda1082d4b
fix(coding-agent): update project npm packages
...
closes #2459
2026-03-20 19:36:06 +01:00
Mario Zechner
47ea28b584
fix(coding-agent): export ToolCallEventResult closes #2458
2026-03-20 12:54:33 +01:00
Mario Zechner
6c8ac01947
fix(coding-agent): respect agentDir for sdk session paths closes #2457
2026-03-20 12:12:18 +01:00
简简简简
8705fbee54
fix(models): align minimax and zai defaults ( #2445 )
...
Update the coding-agent default model picks for ZAI, Cerebras,
and MiniMax so new sessions prefer the current model lineup.
Add the missing MiniMax-M2.1-highspeed direct provider entries
and normalize MiniMax Anthropic-compatible context limits so the
catalog matches the provider's supported model set.
2026-03-20 10:00:57 +01:00
Mario Zechner
e3fee7a511
fix(keybindings): migrate to namespaced ids closes #2391
2026-03-20 01:55:30 +01:00
Mario Zechner
74a46fc7ea
fix(coding-agent): queue file mutations across edit and write
...
closes #2327
2026-03-20 01:55:30 +01:00
Petr Baudis
8a0529ed9d
fix(coding-agent): resolve waitForRetry() race when auto-retry produces tool calls ( #2440 )
...
When auto-retry fires after a retryable error (e.g. overloaded_error) and the
retry response includes tool_use, session.prompt() returned prematurely because
_resolveRetry() was called on the first successful message_end — while the
agent loop was still executing tools via the fire-and-forget agent.continue().
This caused callers to observe isStreaming=true after prompt() returned, and
follow-up session.prompt() calls threw 'Agent is already processing'. The
tool execution results were silently lost.
Fix: move _resolveRetry() from the message_end handler to the agent_end
handler. The _retryAttempt counter reset stays on message_end (preventing
accumulation across LLM calls within a turn), but the promise that unblocks
waitForRetry() now only resolves when the full agent loop completes.
2026-03-20 00:33:17 +01:00
Dillon Mulroy
fe535333fe
feat(coding-agent): add resizable share sidebar ( #2435 )
2026-03-19 23:31:53 +01:00
Mario Zechner
e0f85a3b5e
fix(coding-agent): avoid blocking footer branch refresh and isolate invalid extension provider registrations closes #2418 closes #2431
2026-03-19 21:40:55 +01:00