Commit Graph

3979 Commits

Author SHA1 Message Date
Mario Zechner
af2b3ee243 Merge branch 'main' into bigrefactor
# Conflicts:
#	package-lock.json
#	packages/agent/package.json
2026-05-07 11:17:36 +02:00
Mario Zechner
6d4d2e9288 add tool stats script 2026-05-07 11:13:45 +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
Mario Zechner
ddb18640e3 feat(agent): return diagnostics from resource loaders 2026-05-06 21:59:48 +02:00
Mario Zechner
617d8b317d refactor(agent): tighten harness environment and resources 2026-05-06 19:41:17 +02:00
Aliou Diallo
88619669e2 fix(coding-agent): strip skill wrapper XML from HTML export user messages (#4234)
Skill slash commands store a structural <skill>...</skill> wrapper in raw
user messages. The TUI uses parseSkillBlock() to split this into separate
SkillInvocationMessageComponent and UserMessageComponent siblings, but the
HTML export renderer passed the full raw text through markdown, causing
broken/dangling XML tags to appear in exported HTML.

Add parseSkillBlock() to the export template and render skill-invocation
and user-message as separate sibling blocks:
- Sidebar tree shows skill name + user prompt separately
- Content area shows a clickable skill-invocation block (collapsed by
  default, markdown content on expand) followed by the user message
- Copy-link button preserved on the wrapper element
- Toggle tools (O key) expands/collapses skill invocations alongside
  compaction and tool output blocks
2026-05-06 18:06:37 +02:00
Mario Zechner
e1ca501da8 refactor(agent): expose concrete harness 2026-05-06 13:21:08 +02:00
Mario Zechner
530f14c018 refactor(agent): expose concrete harness session 2026-05-06 12:57:19 +02:00
Armin Ronacher
ace3fd7e30 fix(ai): normalize kimi k2p6 alias to kimi-for-coding closes #4218 2026-05-06 11:34:49 +02:00
Armin Ronacher
c9e87d2aa6 fix(tui): disable inline images in cmux
Treat CMUX_WORKSPACE_ID like tmux/screen for terminal capabilities and document the issue link.

fixes #4208
2026-05-06 11:09:55 +02:00
Mario Zechner
3029836894 fix(ai): stop Codex OAuth stderr writes
closes #4141
2026-05-06 00:14:40 +02:00
Mario Zechner
31f5c23271 fix(ai): handle OpenAI Responses reasoning text deltas 2026-05-06 00:08:26 +02:00
Mario Zechner
33fcfa18da Closes #4182 2026-05-05 17:10:35 +02:00
Mario Zechner
15aa313501 Closes #4184, codex needs a non-empty system prompt 2026-05-05 14:50:27 +02:00
Mario Zechner
060c10b8ff fix(coding-agent): skip X11-only native addon for /copy on Linux
The @mariozechner/clipboard native addon uses clipboard-rs, which is
X11-only and does not retain selection ownership after set_text resolves.
On Wayland-only compositors (Hyprland, Niri, ...) /copy reported success
without populating the clipboard. Skip the native addon on Linux and let
wl-copy/xclip/xsel handle text writes; they properly daemonize.

closes #4177
2026-05-05 14:47:51 +02:00
Mario Zechner
c806dea15e fix(tui): preserve OSC 8 hyperlink terminators 2026-05-05 13:48:15 +02:00
Mario Zechner
755da309dd fix(coding-agent): keep pending tool renders after thinking toggle
closes #4167
2026-05-05 13:18:04 +02:00
Armin Ronacher
b5755fd27d feat(oauth): support interactive login selection (#4190) 2026-05-05 13:16:56 +02:00
Julien Chaumond
bb25a3944c feat(coding-agent): allow comments and trailing commas in models.json (#4162)
* feat(coding-agent): allow comments and trailing commas in models.json

Run user-supplied models.json through a small `stripJsonComments` helper
before JSON.parse so users can annotate their config and leave trailing
commas without breaking the loader.

Co-Authored-By: julien-agent <Agents+cyolo@huggingface.co>

* fix(coding-agent): strip comments before trailing commas in models.json

The single-pass regex couldn't see a trailing comma when a `//` comment sat
between the comma and its closer. Split into two passes: strip comments
first, then strip trailing commas on the cleaned input.

Co-Authored-By: julien-agent <Agents+cyolo@huggingface.co>

---------

Co-authored-by: julien-agent <Agents+cyolo@huggingface.co>
2026-05-04 22:44:35 +02:00
Mario Zechner
bac2df36b9 fix(coding-agent): handle frontmatter prompts in print mode
closes #4163
2026-05-04 22:37:38 +02:00
Armin Ronacher
3c9c54d51b Add [Unreleased] section for next cycle 2026-05-04 20:33:08 +02:00
Armin Ronacher
dbcb473d6f Release v0.73.0 2026-05-04 20:32:03 +02:00
Armin Ronacher
299dc70abe docs(changelog): audit unreleased entries 2026-05-04 20:27:27 +02:00
Armin Ronacher
1bc640e53a fix(tui): prioritize exact fuzzy matches 2026-05-04 20:24:13 +02:00
Armin Ronacher
6b18cdbac1 fix(coding-agent): stream bash output incrementally (#4165)
fixes #4145
2026-05-04 19:06:07 +02:00
github-actions[bot]
3cd1554c8f chore: approve contributor npupko 2026-05-04 16:42:07 +00:00
Mario Zechner
0a032ae1b3 Merge branch 'main' into bigrefactor 2026-05-04 18:28:05 +02:00
Mario Zechner
51eedbcbc6 Update APPROVED_CONTRIBUTORS 2026-05-04 15:34:41 +02:00
Julien Chaumond
46885536dd chore: unset HF_TOKEN in pi-test.sh --no-env (#4161)
Co-authored-by: julien-agent <Agents+cyolo@huggingface.co>
2026-05-04 15:23:08 +02:00
Armin Ronacher
756b774935 fix(coding-agent): exit on lost terminal
Fixes #4144.
2026-05-04 12:07:16 +02:00
Armin Ronacher
e355696d8a fix(coding-agent): show compact read line ranges 2026-05-04 09:39:12 +02:00
Mario Zechner
d29e47c771 feat(agent): add harness factory helpers 2026-05-04 01:15:53 +02:00
Mario Zechner
c5340670bb Merge remote-tracking branch 'origin/main' into bigrefactor
# Conflicts:
#	packages/ai/src/providers/openai-codex-responses.ts
#	packages/coding-agent/src/core/agent-session.ts
#	packages/coding-agent/src/core/tools/read.ts
2026-05-04 00:56:51 +02:00
Armin Ronacher
78c3cbe0c3 fix(coding-agent): close codex websocket sessions
Fixes #4103
2026-05-04 00:54:46 +02:00
Armin Ronacher
ce377fc4a1 fix(ai): fall back from codex websocket to sse (#4133) 2026-05-04 00:54:46 +02:00
Mario Zechner
0959d8ec2b chore: label bigrefactor issue closures 2026-05-04 00:54:46 +02:00
Mario Zechner
0b5792ace0 chore: update temporary issue gate message 2026-05-04 00:54:46 +02:00
Jake Jia
b326bf1a3a feat(ai): switch xiaomi default to api billing, add per-region token plan providers (#4112)
Built-in `xiaomi` provider now targets the API billing endpoint (https://api.xiaomimimo.com/anthropic) — a single stable URL for keys issued at platform.xiaomimimo.com. The Token Plan endpoints are exposed as three sibling providers, each with its own env var:

- xiaomi-token-plan-cn: XIAOMI_TOKEN_PLAN_CN_API_KEY
- xiaomi-token-plan-ams: XIAOMI_TOKEN_PLAN_AMS_API_KEY
- xiaomi-token-plan-sgp: XIAOMI_TOKEN_PLAN_SGP_API_KEY

BREAKING CHANGE: users who previously set XIAOMI_API_KEY against the Token Plan AMS endpoint must move to xiaomi-token-plan-ams and set XIAOMI_TOKEN_PLAN_AMS_API_KEY. This also resolves the 401 reported by on #4005, where a platform.xiaomimimo.com key fails against the Token Plan endpoint.

closes #4082
2026-05-04 00:54:46 +02:00
myu003
924a1395bc test(ai,coding-agent): stabilize env-sensitive test cases (#4119) 2026-05-04 00:54:45 +02:00
Jakub Synowiec
05abdd8fde fix(ai): fix mismatch between models.dev and OpenCode Go (Qwen3.5/3.6, MiniMax M2.7) (#4110) 2026-05-04 00:54:45 +02:00
Armin Ronacher
e1433cf65b fix(ci): repair failing test expectations 2026-05-04 00:54:45 +02:00
Armin Ronacher
ee4a40c936 fix(ci): install sandbox runtime for root typecheck 2026-05-04 00:54:45 +02:00
Armin Ronacher
8940c02302 feat(read): compact resource read rendering 2026-05-04 00:54:45 +02:00
Mario Zechner
324aa1d647 fix(coding-agent): render compact read calls directly
Render compact read classifications in the call row and leave the collapsed result row empty. The previous implementation used shared renderer state to let renderResult hide renderCall, which leaked an internal ReadRenderState type through the tool definition and coupled two render phases unnecessarily. The call renderer has all context needed to choose the compact presentation itself.
2026-05-04 00:52:56 +02:00
Mario Zechner
23420012ab fix(coding-agent): decouple codex session cleanup 2026-05-04 00:45:56 +02:00
Mario Zechner
3d0f57187d refactor(agent): simplify harness session repo layout 2026-05-04 00:06:35 +02:00
Armin Ronacher
5fa277b320 fix(coding-agent): close codex websocket sessions
Fixes #4103
2026-05-03 23:25:56 +02:00
Armin Ronacher
370fdae6fa fix(ai): fall back from codex websocket to sse (#4133) 2026-05-03 22:51:42 +02:00
Mario Zechner
a646639af9 chore: label bigrefactor issue closures 2026-05-03 22:14:52 +02:00
Mario Zechner
21026cb799 chore: update temporary issue gate message 2026-05-03 22:04:19 +02:00