103 Commits
Author SHA1 Message Date
Armin Ronacher d5475a3ccd chore: merge main into codemode 2026-09-22 15:43:38 +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
Armin Ronacher 28b49a6b3b feat: add Chord runtime foundation 2026-08-29 14:54:19 +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 a1f955e9f4 fix(coding-agent): remove redundant development dependencies 2026-08-23 00:24:15 +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
Christian Klotz 05bf9df651 feat: remove legacy server implementation (#7614) 2026-08-04 20:03:37 +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 56eb685b69 feat(protocol): add remote session wire protocol 2026-07-30 21:45:58 +03:00
Christian Klotz eafe11fb94 feat(coding-agent): add vitest eval harness (#7085) 2026-07-25 08:22:32 +02:00
Armin Ronacher ec1a87e856 fix(coding-agent): require protobufjs 7.6.5, closes #7005 2026-07-23 23:16:07 +02:00
Cristina Poncela Cubeiro 8495f9d0d6 chore: rename orchestrator to server (#6898) 2026-07-21 13:32:42 +02:00
Cristina Poncela Cubeiro 9e7582aa03 feat: sqlite session storage (#6594)
This PR:

- Adds retainedTail to compaction entries in the new agent harness so we don't have to walk up the tree for the 2000 tokens before compaction,
- Changes getPathToRoot to getPathToRootOrCompaction to only load until last compaction, as unnecessary to access all nodes where it is called,
- Adds a SQLite storage backend, in a separate packages/session-backend-sqlite, with a migration system and schemas as per on-site discussions: sessions to match session header messages (except for metadata, which I couldn't understand what it's used for or where it gets written, so I omitted it), session_entries for shared entry types as columns plus payload as a json for what remains, session_sequences to represent the append-only, serialized nature of the jsonl files, branch_entries to attribute nodes to branches (relationship one-to-many), and session_materialized with the session info (see /session in TUI) to act as a "cache" or quick-access for costs, message count, token info, labels, session name, and model-thinking-level config (e.g. for fast resume).
- This is compatible with the new agent harness Session abstraction.
2026-07-21 11:36:31 +02:00
Armin Ronacher c8c3cd499f fix(ai): validate generated model data before builds 2026-07-20 22:29:06 +02:00
David Brailovsky ce48d9b4ef fix(ai): preserve GitHub Copilot long-context pricing tiers, closes #6668 2026-07-17 12:38:12 +02:00
Alexey Zaytsev 056c8cbb80 feat(ai): make model generation explicit (#6742) 2026-07-17 09:01:42 +02:00
Armin Ronacher 2be9efa19c feat(ai): publish generated model catalogs to R2 (#6720) 2026-07-16 11:43:47 +02:00
Armin Ronacher 622eca7608 feat(coding-agent): add installer lock generation 2026-06-26 14:45:15 +02:00
Cristina Poncela Cubeiro be64062f97 Merge branch 'main' into feat/pi-orchestrator 2026-06-25 09:53:29 +02:00
Armin Ronacher ea65a51a15 fix: update vulnerable dependencies 2026-06-19 00:43:44 +02:00
Cristina Poncela Cubeiro 7ece19b0e8 chore: package structure 2026-06-18 12:16:55 +02:00
Armin Ronacher 20b78eafb4 fix(coding-agent): fix changelog links
Fixes #5516
2026-06-08 20:31:20 +02:00
Vegard Stikbakke 86314bf38d docs: add containerization guide and Gondolin example (#5356) 2026-06-03 15:53:16 +02:00
Armin Ronacher ae50dec121 chore(release): publish packages from CI 2026-05-28 17:43:05 +02:00
Mario Zechner aa4adac766 chore: run pi-test through tsx 2026-05-20 15:55:31 +02:00
Mario Zechner 715c82ce04 chore: shrinkwrap coding agent release deps 2026-05-20 14:19:40 +02:00
Mario Zechner ea4eab15cf chore: add local release and dependency guards 2026-05-20 13:06:28 +02:00
Mario Zechner 2e02c74dcb chore: pin dependencies and use native TypeScript 2026-05-20 12:46:17 +02:00
Mario Zechner b141e1fa24 chore: remove web-ui workspace 2026-05-20 02:26:09 +02:00
Armin Ronacher 8a6775bbe6 chore: remove redundant erasable type check 2026-05-20 00:06:37 +02:00
Mario Zechner 06c6c324d7 chore: enforce erasable TypeScript syntax 2026-05-19 23:15:39 +02:00
Mario Zechner c9e7049212 fix(coding-agent): remove global fetch override closes #4619 2026-05-17 20:52:06 +02:00
Armin Ronacher 64882c6a51 chore(deps): remove unused dependencies (#4453) 2026-05-12 23:35:41 +02:00
Mario Zechner 3e5ad67e0f chore: migrate pi packages to earendil works scope 2026-05-07 15:59:42 +02:00
Pooya Parsa 50993d743d chore(coding-agent): switch back from fork to upstream jiti 2.7 (#4244) 2026-05-07 01:04:51 +02:00
Armin Ronacher cd5bfd04d7 fix(ci): install sandbox runtime for root typecheck 2026-05-02 23:46:37 +02:00
Mario Zechner 8db0d28389 chore(coding-agent): remove Qwen CLI extension example 2026-05-01 01:01:54 +02:00
Mario Zechner 23fce57ec6 fix(ci): install sandbox extension dependency 2026-04-30 23:10:08 +02:00
Mario Zechner 0ed0d43439 remove mom and pods packages
People should check out pi-chat (earendil-works/pi-chat on GitHub), or use an older commit for mom and fork.
2026-04-30 23:01:19 +02:00
Mario Zechner 6828603a6b chore: fix npm audit vulnerabilities 2026-04-13 23:28:38 +02:00
Duncan Ogilvie 80f527ec22 feat(coding-agent): add startup profiling scripts for tui/rpc (#2497) 2026-03-21 20:46:00 +01:00
badlogic a80bbc2227 fix(check): make browser smoke check cross-platform on windows 2026-03-14 04:48:52 +01:00
Mario Zechner e0754fdbb3 fix(ai,coding-agent): make pi-ai browser-safe and move OAuth runtime exports
- add browser smoke bundling check to root check + pre-commit

- lazy-load Bedrock provider registration to avoid browser graph traversal

- remove top-level OAuth runtime exports from @mariozechner/pi-ai

- add @mariozechner/pi-ai/oauth subpath export and update coding-agent imports

- move proxy dispatcher init to coding-agent CLI (Node-only)

- document Bedrock/OAuth browser limitations

closes #1814
2026-03-04 20:21:25 +01:00
Mario Zechner 76a191c264 fix(scripts): make npm scripts cross-platform with shx (closes #1771) 2026-03-03 14:26:01 +01:00