131 Commits
Author SHA1 Message Date
Armin Ronacher d5475a3ccd chore: merge main into codemode 2026-09-22 15:43:38 +02:00
Armin Ronacher 60740991c0 feat(coding-agent): cache compiled Node CLI modules 2026-09-20 12:06:14 +02:00
Alexey Zaytsev b73412a378 feat(ai,coding-agent): add Meta provider with Muse subscription OAuth (#9096)
Device authorization flow against auth.meta.com mints a Model API key via the Muse Code key-mint endpoint. Identity token stored as refresh, minted key as access; daily re-mint via the standard OAuth scheduler. Identity is non-renewable (no refresh grant), so mint 401/403 directs to /login meta. Models sourced from models.dev; default muse-spark-1.3.
2026-09-20 11:13:43 +02:00
Mario Zechner 0801601621 feat(durable): move Pico into dedicated package 2026-09-18 13:39:09 +02:00
Armin Ronacher 85abcaac10 feat(codemode): add sandboxed JavaScript runtime 2026-09-15 15:08:28 +02:00
Armin Ronacher 4a6ed01945 fix(coding-agent): update runtime dependencies (#9341) 2026-09-08 16:04:35 +02:00
Armin Ronacher caf6dfe731 feat(tui): Simplify clipboard handling (#9163)
Replace the external clipboard dependency with small macOS, Windows,
and X11 helpers and integrate them into coding-agent.

Run native clipboard operations on worker threads and make command
fallbacks asynchronous. Preserve incremental X11 transfers, legacy text
encodings, native image formats, and existing Wayland and platform tools.

Include native prebuilds with ARM64 page alignment, packaging updates,
and regression coverage.
2026-09-05 23:52:32 +02:00
Armin Ronacher 1382777ed8 fix(coding-agent): keep remote harness dependencies development-only
Separate stable and development entrypoints, exclude remote harness code from distributions, and verify isolated consumer installs before release. Fixes #9132.
2026-09-05 12:45:04 +02:00
Mario Zechner d14d6b2232 fix(agent): finalize bounded shell output integration 2026-09-01 18:16:25 +02:00
Armin Ronacher 6f6fa205ca fix(coding-agent): allow Chord delta bundle import 2026-08-31 15:12:57 +02:00
Armin Ronacher 429f4e756c feat: add package-based facet plugins
Bundle declarative plugin packages with Chord and load fresh generations. Scope client selections to persisted Session and TUI branches, and replace stale local server generations after protocol changes.
2026-08-30 22:05:12 +02:00
Armin Ronacher 0252dff886 feat: add bundled facet distribution and reload
Bundle content-addressed Chord facet entries, distribute server-selected presentation artifacts during the handshake, and reload Session and TUI generations through /reload.
2026-08-30 12:52:58 +02:00
Armin Ronacher 28b49a6b3b feat: add Chord runtime foundation 2026-08-29 14:54:19 +02:00
Cristina Poncela Cubeiro 758a0ee9b7 Merge branch 'main' into dev
# Conflicts:
#	packages/agent/CHANGELOG.md
#	packages/ai/scripts/generate-models.ts
#	packages/ai/src/providers/cloudflare-ai-gateway.ts
#	packages/ai/test/zai-coding-plan-models.test.ts
#	packages/coding-agent/src/modes/interactive/interactive-mode.ts
#	packages/tui/src/tui-alt-screen.ts
2026-08-28 13:19:43 +02:00
Ramiz Wachtler 1defa151e0 fix(coding-agent): expose https-proxy-agent named export (#8723)
- closes #8610
2026-08-27 15:51:29 +02:00
Mario Zechner 5507d76ee8 feat(agent,ai): add narrow subpath exports so clients skip the barrel
A barrel forces Node to evaluate its whole graph: importing reduceLaneSnapshot
(1 file, 6 KB) through pi-agent-core's index evaluated 106 files, and mini's
server loaded 112 files to enumerate JSONL headers. Types are free, so this only
ever affected value imports.

pi-ai gains ./utils/* alongside the existing ./providers/* and ./api/*
wildcards. pi-agent-core gains ./harness/context, ./harness/env/nodejs,
./harness/runtime/reducer and ./harness/session, and ./session/testing becomes
./harness/session/testing so every export mirrors its source path. The barrel
and ./node keep their batteries-included semantics.

The session layer takes uuidv7 from @earendil-works/pi-ai/utils/uuid rather than
the pi-ai barrel, which is what let ./harness/session drop from 42 files to 19.
Two imports there were written `import { type Usage } from` - not a type-only
statement, so it emitted a runtime import of the barrel.

scripts/check-entry-graphs.mjs walks each declared entry's value-import graph and
enforces per-entry budgets and forbidden paths, so a stray `export *` cannot
silently undo this. It caught the two `import { type ... }` regressions above.

Measured with mini: server 112 files and 98 MB to 28 files and 69 MB, presentation
204 files and 125 MB to 99 files and 110 MB. The worker still loads the provider
graph, correctly.
2026-08-26 22:02:31 +02:00
Armin Ronacher a789067a0d fix(coding-agent): support bundled experimental processes 2026-08-24 14:17:17 +02:00
David Brailovsky 8798b7996d Merge remote-tracking branch 'origin/main' into dev 2026-08-24 07:50:17 +00:00
Armin Ronacher 4af9d21d3b feat(coding-agent): update managed installations in place 2026-08-24 09:34:34 +02:00
Armin Ronacher c1279a65b3 feat(coding-agent): defer jiti until extension loading 2026-08-23 10:36:34 +02:00
Armin Ronacher 309b524f4f fix(coding-agent): avoid duplicate clipboard binaries 2026-08-23 09:28:36 +02:00
Armin Ronacher faecac2ca8 feat(coding-agent): reduce bundled startup work 2026-08-23 00:03:19 +02:00
Armin Ronacher 39d869f02a fix: publish installer artifacts 2026-08-22 21:21:37 +02:00
Armin Ronacher 7d4c0e05dd feat(coding-agent): bundle Node runtime (#8474) 2026-08-22 21:19:38 +02:00
Armin Ronacher 5cd93f688a feat(coding-agent): add development pi wrapper 2026-08-20 15:59:38 +02:00
Armin Ronacher 2c897da815 feat(agent): remove pi prefixes from client and server APIs 2026-08-20 10:51:04 +02:00
Mario Zechner 5aeb06bb11 feat(agent): establish durable harness type contracts 2026-08-11 17:43:26 +02:00
Mario Zechner f8746767bc fix: handle npm 12 pack --json object output in local release script
npm 12 returns an object keyed by package name instead of an array,
which broke packPackage with a TypeError.
2026-08-08 12:06:59 +02:00
Armin Ronacher 7d046bcf21 fix(coding-agent): announce only verified npm releases 2026-08-06 22:39:09 +02:00
Armin Ronacher 9b17fd5bb3 fix: verify npm package registration before release 2026-08-06 18:21:35 +02:00
Ilya beeca6ab74 fix(coding-agent): disable bunfig autoload in compiled binaries (#7685)
Bun standalone binaries load cwd bunfig.toml preload before pi starts,
so project preloads can crash even pi --version. Compile with
--no-compile-autoload-bunfig.

fixes #7684
2026-08-06 17:16:12 +02:00
Armin Ronacher 8199aca40c fix: publish server package 2026-08-06 12:59:45 +02:00
Armin Ronacher 95a6aa7bd0 fix: isolate cross-platform native dependency install 2026-08-06 12:38:51 +02:00
Armin Ronacher d6442dd486 fix: avoid registry resolution during version bumps 2026-08-06 12:31:40 +02:00
Mario Zechner 6b461b75b3 feat: extract telemetry package 2026-08-05 23:23:12 +02:00
Cristina Poncela Cubeiro a80008b96c chore: rename storage package to session-backends 2026-08-05 09:28:44 +02:00
Mario Zechner 44289550aa feat(agent): promote durable harness API 2026-08-04 17:01:43 +02:00
David BrailovskyandMario Zechner 816237c101 fix(coding-agent): target baseline x64 CPUs (#7390)
Fixes #7149

Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
2026-08-03 13:57:51 +02:00
Christian Klotz f07af611d3 feat(agent): compose session storage through repositories 2026-08-02 12:35:02 +03:00
Christian Klotz cbc893b0d4 feat(agent): prepare session storage foundation for harness v2 2026-08-02 12:35:02 +03:00
Christian Klotz 11679808c7 Merge remote-tracking branch 'origin/main' into refactor/session-store-file-names
* origin/main: (25 commits)
  fix(tui): prevent phantom alt-screen selections
  feat(tui): add draggable transient scrollbars
  fix(coding-agent): avoid auth read lock contention
  fix(ai): route Fireworks Kimi K3 through OpenAI compatibility
  docs(client): document Bun Unix transport support
  feat(client): add Unix socket transport
  fix: forward autocompleteMaxVisible to custom editors (#7369)
  fix(ai): scope Codex sockets to accounts
  docs(client): note promise helper removal
  refactor(client): retain ES2022 compatibility
  refactor(client): simplify lifecycle architecture
  refactor(client): tighten lifecycle state modeling
  feat(client): add runtime-neutral session client
  fix(coding-agent): decouple auth lock error tests
  fix: custom-compaction through provider via new model runtime complete (#7325)
  fix(ai): preserve Anthropic initial stream block content (#7358)
  fix(coding-agent): update vulnerable brace-expansion
  fix(ai): keep signed empty text/thinking blocks in google history (#7362)
  feat(tui): add stacked alt-screen flashes (#7361)
  fix(coding-agent): reload credentials before reads
  ...
2026-07-31 16:20:00 +03:00
Christian Klotz 2132f8f75f fix(agent): clarify session persistence ownership 2026-07-31 16:16:42 +03:00
Christian Klotz 33bc0a7b83 feat(client): add runtime-neutral session client
Split harness shutdown initiation from settlement so callbacks can request shutdown without deadlocking active work.
2026-07-31 12:19:19 +03:00
Christian Klotz a1bb7e4483 fix(agent): expose session stores through factories 2026-07-31 10:28:59 +03:00
Christian Klotz 2700511e45 fix(agent): refine session repository API 2026-07-31 09:48:24 +03:00
Christian Klotz 9b50b046d3 Merge pull request #7163 from cristinaponcela/feat/search
feat: search index sqlite
2026-07-31 09:15:12 +03:00
Cristina Poncela Cubeiro fb0f0f7cd5 rename: vars 2026-07-31 05:19:23 +02:00
Christian Klotz 56eb685b69 feat(protocol): add remote session wire protocol 2026-07-30 21:45:58 +03:00
Cristina Poncela Cubeiro 5e48d41ecd refactor: repo facade 2026-07-30 14:07:58 +02:00
Cristina Poncela Cubeiro 6a9591ae78 refactor: repo owns session and storage separately 2026-07-29 16:33:20 +02:00