Commit Graph

3359 Commits

Author SHA1 Message Date
Mario Zechner 7f04694c4d chore(tui): apply import ordering in terminal 2026-03-24 20:17:25 +01:00
Mario Zechner d08ab9b9c1 fix(coding-agent): recompute interactive bash preview width closes #2569 2026-03-24 20:09:43 +01:00
Mario Zechner 629341c18f Added openclaw labeler 2026-03-24 03:27:14 +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
Duncan Ogilvie 9a0be024a6 feat(tui): PI_TUI_WRITE_LOG now accepts a directory path (#2508)
Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
2026-03-24 00:22:24 +01:00
Mario Zechner 4c7df25d03 fix(tui): restore blockquote styling after inline links
The quoteInlineStyleContext used an empty stylePrefix, so after inline
elements (links, bold, code) closed their ANSI codes inside a blockquote,
the quote color was not re-applied. Text following a link rendered in
default foreground instead of the quote theme color.
2026-03-23 22:53:24 +01:00
Mario Zechner 05c17cfbfe Add [Unreleased] section for next cycle 2026-03-23 02:50:43 +01:00
Mario Zechner 29681bd532 Release v0.62.0 2026-03-23 02:49:53 +01:00
Mario Zechner abac5d6f29 docs: complete changelog entries for unreleased changes 2026-03-23 02:48:43 +01:00
Mario Zechner a8a58ff26b fix(coding-agent): disambiguate duplicate slash commands, fixes #1061 2026-03-23 02:33:52 +01:00
Mario Zechner bb8c9e1389 chore: gitignore plans/ directory 2026-03-23 02:04:15 +01:00
Mario Zechner 4e5af01d73 fix(coding-agent): unify source provenance, closes #1734 2026-03-23 02:02:42 +01:00
Mario Zechner 883862a354 test(coding-agent): add AgentSession test harness with faux provider
Adds a reusable test harness for AgentSession runtime testing:

- Faux stream function with declarative response sequencing (text,
  tool calls, thinking, errors, custom usage, delays)
- Token-level streaming with realistic delta events (3-5 char chunks)
- One-call session factory with real in-memory dependencies
- Event capture with type-filtered access
- 14 self-tests covering text, tool calls, errors, retry, streaming
  deltas, thinking, event ordering, persistence

ref #2023
2026-03-23 02:02:34 +01:00
Mario Zechner ab771a84b2 fix(tui): preserve heading styling after inline code spans
Headings applied styling (bold+cyan) as an outer wrapper around the
result of renderInlineTokens. When inline elements like codespan emitted
ANSI resets, the outer heading style was killed and only the default
text style was restored via stylePrefix.

Fix: pass a heading-specific InlineStyleContext into renderInlineTokens
so each text segment gets heading styling directly, and stylePrefix
restores heading style after inline elements.
2026-03-23 01:07:38 +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 0cf18f3cf2 docs: extend OSS weekend to 2026-03-30 2026-03-22 23:33:52 +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 d1613e3f53 fix(ai): handle explicit thinking off across providers closes #2490 2026-03-22 20:27:44 +01:00
Mario Zechner 6129971c04 fix(ai): explicitly disable Anthropic thinking when off closes #2022 2026-03-22 19:38:54 +01:00
Mario Zechner 74073e5227 fix(coding-agent): skip no-op git package reinstalls
closes #2503
2026-03-22 19:19:47 +01:00
wjonaskr 3bcbae490c feat(ai): add requestMetadata support to BedrockOptions for cost allocation tagging (#2511)
Add an optional requestMetadata field to BedrockOptions that forwards
key-value pairs to the Bedrock Converse API ConverseStreamCommand. Tags
appear in AWS Cost Explorer split cost allocation data, enabling callers
to attribute inference costs to specific applications or contexts.

Changes:
- Add requestMetadata?: Record<string, string> to BedrockOptions with
  JSDoc documenting AWS constraints (max 50 pairs, key 64 chars, value
  256 chars, no aws: prefix)
- Pass requestMetadata to commandInput via conditional spread to avoid
  sending undefined when omitted
- Export BedrockOptions from package root (consistent with other
  provider option types)
- Add E2E tests: metadata forwarded to SDK payload, and omitted when
  not provided

closes #2510
2026-03-22 19:05:55 +01:00
Mario Zechner b21b42d032 fix(ai): hash foreign responses tool item ids 2026-03-22 05:40:26 +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
Duncan Ogilvie 80f527ec22 feat(coding-agent): add startup profiling scripts for tui/rpc (#2497) 2026-03-21 20:46:00 +01:00
Mario Zechner f90647ea8e fix(coding-agent): disable cli-highlight auto-detection for languageless code blocks
cli-highlight's auto-detection misidentifies prose as AppleScript,
LiveCodeServer, etc., coloring random English words (if, but, and, the,
that, is) as keywords. This happens when code blocks have no language
specified: fenced blocks without a language tag, indented code blocks,
or unclosed fences during streaming.

Skip auto-detection entirely and apply plain mdCodeBlock styling instead.
2026-03-21 10:46:01 +01:00
Mario Zechner 77db2e4c18 fix(tui): stream truncateToWidth for large strings closes #2447 2026-03-21 10:06:29 +01:00
Mario Zechner 78833dfcbc chore(ai): format openai completions test 2026-03-21 09:16:49 +01:00
Mario Zechner 60358dc493 Merge remote-tracking branch 'origin/main' 2026-03-20 20:16:07 +01:00
Mario Zechner a84fd4e3cf Add [Unreleased] section for next cycle 2026-03-20 20:15:24 +01:00
Mario Zechner b63a4abed2 Release v0.61.1 2026-03-20 20:14:36 +01:00
Mario Zechner 3d5465001f chore: update unreleased changelog entries 2026-03-20 20:13:36 +01:00
Cheng-Zi-Qing 7e2689ac18 packages/ai: ignore null chunks in openai-completions streams (#2466) 2026-03-20 20:01:28 +01:00
Mario Zechner eda1082d4b fix(coding-agent): update project npm packages
closes #2459
2026-03-20 19:36:06 +01:00
Mario Zechner 16937947be fix(tui): skip Termux height redraws closes #2467 2026-03-20 19:35:50 +01:00
Mario Zechner 6b83bf4b59 docs: enable OSS weekend 2026-03-20 19:12:42 +01:00
Ziphyrien 7c92bb8151 fix(subagent): reuse current pi invocation for child agents closes #2464 (#2465) 2026-03-20 17:12:24 +01:00
Mario Zechner 47ea28b584 fix(coding-agent): export ToolCallEventResult closes #2458 2026-03-20 12:54:33 +01:00
Mario Zechner 6de8a2570b fix(tui): stop evicting unrelated default keybindings closes #2455 2026-03-20 12:54:20 +01:00
Mario Zechner 6c8ac01947 fix(coding-agent): respect agentDir for sdk session paths closes #2457 2026-03-20 12:12:18 +01:00
Mario Zechner 653b63a870 chore: add wrap-it prompt template 2026-03-20 11:56:15 +01:00
Mario Zechner 75fc6d088d fix(coding-agent): keep suspend resume alive on fg closes #2454 2026-03-20 11:56:15 +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 c2a42e3215 Add [Unreleased] section for next cycle 2026-03-20 02:09:43 +01:00
Mario Zechner 1cb697cff8 Release v0.61.0 2026-03-20 02:08:56 +01:00
Mario Zechner a2baeb9a9d docs(changelog): audit unreleased entries 2026-03-20 02:04:22 +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
Mario Zechner 527c2af5e7 chore(ai): normalize MiMo V2 Pro model name 2026-03-20 01:55:30 +01:00