Commit graph

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 Brailovsky
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