Commit Graph
6490 Commits
Author SHA1 Message Date
Armin Ronacher e4c75a7322 fix(coding-agent): replace the system prompt when a handler forces it
Add SystemMessage.replace: replaying a system message with the flag discards the
accumulated prompt content, sections, and tools before applying it, and providers
collapse the transcript into one leading system message whenever a later message
replaces it.

A forced prompt from before_agent_start is opaque, so it is persisted as a replace
message holding the text in content with no sections (the agent loop fills in the
full tool set). Leaving force mode persists another replace message with the
structured sections. Previously the forced prompt became a preamble section patch,
so models with native mid-conversation system messages kept the original prompt
as their leading system prompt and received the forced one as a later update.
2026-09-16 23:35:01 +02:00
Christian Klotz 509ee2bd0b fix(coding-agent): fail closed on user bash hook errors (#9662)
* fix(coding-agent): fail closed on user bash hook errors

Prevent failed execution-routing hooks from falling back to the local shell.

Fixes #9068

* fix(coding-agent): validate user bash hook results

* docs(coding-agent): clarify user bash result semantics

* docs(coding-agent): streamline user bash semantics

* fix(coding-agent): strengthen user bash regressions

* docs(coding-agent): clarify user bash breaking change
2026-09-16 17:21:17 +01:00
Mario Zechner fde6d778f8 fix(coding-agent): toggle summary entries on click 2026-09-16 18:08:06 +02:00
Armin Ronacher bdee230f1e feat(ai): refresh generated image model catalog 2026-09-16 18:00:42 +02:00
Mario Zechner 01528e2094 Merge remote-tracking branch 'origin/main' into pico 2026-09-16 17:58:54 +02:00
David Brailovsky aa50fe778a fix(ai): derive Google thinking levels from models.dev
Extract Google catalog processing and apply models.dev reasoning effort
metadata directly for Google, Vertex, and OpenCode models. Keep the
provider-specific Gemma 4 toggle mapping.
2026-09-16 17:49:44 +02:00
Armin Ronacher 1247476e6d fix(coding-agent): update eval prompt section markers 2026-09-16 17:47:13 +02:00
Armin Ronacher 9e05370b29 Mid conversation system messages (#9548)
This change makes system prompt text and tool changes part of the transcript rather than silently rewriting its starting conditions. This lets Pi record when instructions changed or tools became available, restore that state after resuming or navigating branches, and preserve cached prompt prefixes where the upstream supports it.
2026-09-16 15:54:07 +02:00
David Brailovsky 6671c60476 fix(ai): send Baseten session affinity headers
Enable session affinity for cataloged Baseten models so related requests reach the same replica and benefit from prompt caching.

Closes #9629
2026-09-16 12:11:16 +02:00
metaist 9b791a4cc1 fix(coding-agent): avoid transcript scans for exact session IDs (#9601)
Fixes #9440
2026-09-16 11:15:16 +02:00
David Brailovsky b03a367a4f feat(coding-agent): allow configuring Anthropic fallback models
Allow models.json overrides to replace or disable server-side fallback metadata.

Fixes #9294
2026-09-16 10:50:24 +02:00
Armin Ronacher 60e7e76bd7 fix(coding-agent): surface clipboard backend failures
closes #9618
2026-09-16 01:29:52 +02:00
Armin Ronacher 3349e1db18 fix(coding-agent): reject unverified local clipboard writes
fixes #9618
2026-09-16 00:08:02 +02:00
Christian Klotz 4c2d91339a fix(coding-agent): export extension event hook types (#9642)
* fix(coding-agent): export extension event hook types

Fixes #9511

* fix(ai): stabilize Bedrock cache cost regression

* fix(ai): honor Bedrock profile pricing in cache test
2026-09-15 22:47:59 +01:00
Mario Zechner b02eef4186 docs(agent): specify Pico5 harness API 2026-09-15 19:27:23 +02:00
Christian Klotz d7296c063b feat(coding-agent): isolate documentation lift evals (#9635) 2026-09-15 17:54:18 +01:00
Mario Zechner c8e4a5a552 docs(agent): finalize Pico5 architecture and presentation 2026-09-15 17:36:13 +02:00
Mario Zechner ea7f84678c Merge remote-tracking branch 'origin/main' into pico 2026-09-15 17:17:35 +02:00
Vegard Stikbakke 8a7b0c03df fix(ai): price Bedrock one-hour cache writes
closes #9457
2026-09-15 14:18:15 +02:00
Mario Zechner 56cd5989ea docs(agent): replace obsolete Pico prototypes with Pico5 design 2026-09-15 11:27:53 +02:00
Armin Ronacher f9bcd351dc docs(ai): document Codex WebSocket cleanup 2026-09-14 23:58:15 +02:00
github-actions[bot] 53816d7dcc chore: approve contributors from issue #9440 2026-09-14 15:05:33 +00:00
Mario Zechner 850f83794d Merge remote-tracking branch 'origin/main' into pico 2026-09-14 11:17:49 +02:00
Mario Zechner 46b66c59af feat(agent): add hardened pico3 kernel 2026-09-14 11:17:04 +02:00
Vegard Stikbakke ceea48f5d5 Revert "fix(ci): Fix a broken test"
This reverts commit 71dca871bc.
2026-09-14 10:28:54 +02:00
Vegard Stikbakke 0c7bb7c5c7 fix(ai): identify Responses error providers
closes #9298
2026-09-14 10:14:48 +02:00
Mario Zechner 9b2aff2c5b docs(agent): pico3: forbid AsyncLocalStorage; nested-line detection via Chord context key 2026-09-13 23:02:38 +02:00
Mario Zechner 09b031600d docs(agent): pico3 review decisions: revision, visibility, memos, waiting, reload
- Envelope carries a contiguous per-watch revision; storage Seq stays internal;
  Chord bridge publishes off the line through a bounded ordered adapter
- Namespaces reach the view only through a declared view projection; memos and
  slot working state are never in the view
- memoOnce uses property presence; memos are coordination/evidence, not
  exactly-once; idempotency key before the effect
- Hooks bound to their namespace token; BeforeToolApi.waiting(ctx) is async;
  memo keys are (task, namespace, name)
- Reload: quiescent hold/reload/release, otherwise suspend/reopen; no handler
  withdrawal machinery in v1; Namespace.unregister
- pi.* entry names reject except pi.notice; config reset is an operation;
  generation failures run the final boundary and start successors
2026-09-13 22:49:14 +02:00
Mario Zechner fd3b009d9f docs(agent): add pico3 view/events, plugins and hardening handoff
Canonical pico3 material under packages/agent/docs/pico/v3/:
- hardening-handoff.md: V3 hardening handoff with supersession table
- view-and-events.md: single view document, ops by path, named events,
  commit-by-commit mapping, Codex mapping, watchers and late joiners
- plugins.md: harness registration surface, durable primitives, extension
  points with examples, reload contract, Chord facet layer
- harness-v3.zip: baseline sketch backup (sha256 1c69c5c5...fbe7)
2026-09-13 22:38:07 +02:00
Mario Zechner a9930d2857 docs(agent): correct pico v2 foundation contracts 2026-09-13 04:01:44 +02:00
Mario Zechner 51f3090790 feat(agent): align pico foundation with v2 contract 2026-09-13 04:00:27 +02:00
Mario Zechner 99a3948c4c docs(agent): define pico v2 kernel contract 2026-09-13 02:20:26 +02:00
Mario Zechner df484f2775 feat(agent): add pico memory storage foundation 2026-09-12 22:31:41 +02:00
Mario Zechner 1915b35a9b feat(agent): refine pico core task capabilities 2026-09-12 22:31:16 +02:00
Mario Zechner d11c4b7281 docs(agent): simplify pico scheduling and core task model 2026-09-12 22:31:03 +02:00
Mario Zechner 7a2647f32a docs(agent): define pico state tasks and tool boundaries 2026-09-12 01:20:49 +02:00
Mario Zechner f467cf7068 feat(agent): add pico compile-time foundation 2026-09-12 00:02:58 +02:00
Mario Zechner 4819cc877e docs(agent): add approved pico implementation handoff 2026-09-11 21:49:53 +02:00
Armin Ronacher 71dca871bc fix(ci): Fix a broken test 2026-09-11 19:42:45 +02:00
Christian Klotz b215884021 feat(coding-agent): add customization documentation evals (#9491)
* fix(coding-agent): isolate extension eval documentation treatment

* feat(coding-agent): add custom provider documentation eval

* feat(coding-agent): add customization documentation evals

* feat(coding-agent): add repeatable eval reports
2026-09-11 17:29:34 +02:00
Vegard Stikbakke 713bdf38d5 Revert "fix(ai): update stale DeepSeek Flash test model IDs"
This reverts commit e8413008cd.
2026-09-11 15:08:41 +02:00
Mario Zechner f3c672245d docs(agent): require typed status payloads for pico task writes 2026-09-11 12:57:47 +02:00
Mario Zechner 7b4cfd6eb0 docs(agent): define pico system sections and mutable registries 2026-09-11 11:49:58 +02:00
Mario Zechner e8413008cd fix(ai): update stale DeepSeek Flash test model IDs 2026-09-11 11:49:52 +02:00
badlogic 62129190d8 docs(agent): status lives in task state 2026-09-11 07:59:38 +00:00
badlogic d12cd92e45 docs(agent): guide notes for appending entries 2026-09-10 23:13:57 +00:00
badlogic 66b72dd783 docs(agent): turn tasks gate model-visible appends 2026-09-10 23:13:36 +00:00
badlogic 2176b9dd8f docs(agent): runtime schema bundle as a work item 2026-09-10 21:28:48 +00:00
badlogic c7eee01950 docs(agent): scope out permissions, migration and the wire schema 2026-09-10 21:21:05 +00:00
badlogic 66f3b138fe docs(agent): note foreground dependencies on background work 2026-09-10 21:18:34 +00:00