Yichen Jiang
fee12f1af0
refactor(llm-deepseek)!: rename the provider route to deepseek-official
...
The native adapter's route was named deepseek, colliding with pi-ai's
catalog provider of the same name, so the two DeepSeek paths could never
be mounted side by side. The web settings page needs both configurable at
once. Compositions, fixtures, goldens, scaffolding defaults, and docs all
move together (pre-release, no shim); TUI/session-query-spill/
missing-credential goldens re-recorded through their keyless refresh
modes because provider-name length shifts box padding and spill
truncation points.
2026-07-29 16:36:07 +08:00
Tianyi Cui
c3d9f132e8
test(snapshot): canonicalize generated cwd tokens
2026-07-28 23:46:01 +08:00
Tianyi Cui
84d0d92cfb
test(snapshot): normalize temporary workspace paths
2026-07-28 21:32:49 +08:00
_Kerman
fbf87e660c
refactor: identify and freeze messages at creation
2026-07-28 13:55:59 +08:00
NI0317
1ef285d038
Restore Cordis mount and unmount names
...
Keep temporary lifecycle descriptions and UI labels explicit.
2026-07-27 21:20:06 +08:00
NI0317
b4a1304489
Rename Cordis tools for temporary plugins
...
Clarify process-local lifecycle semantics and refresh generated documentation, demos, and snapshots.
2026-07-27 16:57:26 +08:00
imccyu
9d63d75a6f
Merge remote-tracking branch 'origin/master' into web2-todo
...
# Conflicts:
# packages/client/connection/src/client/fixture.ts
# packages/client/runtime/README.i18n.yaml
# packages/client/runtime/README.md
# packages/client/runtime/README.zh.md
# packages/client/runtime/src/client/index.ts
# packages/client/runtime/src/client/sessions/session.ts
# packages/client/ui-conversation/src/client/apply.ts
# packages/client/ui-conversation/src/client/skeleton/ConversationRoot.tsx
# packages/client/ui-conversation/tests/chat-stats-bash-sample.spec.tsx
# packages/client/ui-conversation/tests/chat-toolview-slot.spec.tsx
# packages/client/ui-conversation/tests/chat-view.spec.tsx
# packages/client/ui-conversation/tests/gate-branch-tails.spec.tsx
# packages/client/ui-conversation/tests/skeleton.spec.tsx
# packages/client/ui-trajectory/tests/views.spec.tsx
2026-07-27 10:07:51 +08:00
Tianyi Cui
fc2d65fa20
test(snapshots): refresh code/both-mode fixtures against the replay model pins
...
The re-records for the SDK-prompt change had harvested live v4-pro
headers while every replay overlay pins v4-flash, so keyless replay
diverged on provenance; keyless refresh reconciles the affected
scenarios (dispatch-start pairs preserved).
2026-07-26 11:51:32 +08:00
Tianyi Cui
abfc7b7ed1
test(snapshots): reconcile scripted run_code fixtures with the required description
...
The scripted (non-recorded) fixtures' run_code calls predate the required
description parameter, so replay rejected them at validation before any
dispatch: patch the scripted programs' args (tool/call, message blocks,
and chunk deltas together) and refresh goldens keylessly. Also picks up
the v4-pro re-records of the code-mode scenario pair whose live model
drifted from the overlay pin, and drops tmp-path churn.
2026-07-26 08:58:04 +08:00
Chinesezjc
012b712820
Merge remote-tracking branch 'origin/master' into web2-todo
...
# Conflicts:
# .agents/notes/implemented/feature/2026-06-29-todo-write-tool.i18n.yaml
# .agents/notes/implemented/feature/2026-06-29-todo-write-tool.md
# .agents/notes/implemented/feature/2026-06-29-todo-write-tool.zh.md
# apps/web/tests/smoke-fixture.e2e.ts
# examples/acp-agent/tests/snapshots/model-switching/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/permission-switching/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/plan-mode/tool-schemas.expected.json
# packages/client/runtime/README.md
# packages/client/runtime/src/client/index.ts
# packages/client/runtime/src/client/sessions/conversation.ts
# packages/client/ui-conversation/src/client/skeleton/ConversationRoot.tsx
# packages/client/ui-conversation/tests/chat-stats-bash-sample.spec.tsx
# packages/client/ui-conversation/tests/chat-toolview-slot.spec.tsx
# packages/client/ui-conversation/tests/chat-view.spec.tsx
# packages/client/ui-conversation/tests/gate-branch-tails.spec.tsx
# packages/client/ui-conversation/tests/skeleton-branches.spec.tsx
# packages/client/ui-conversation/tests/skeleton.spec.tsx
# packages/todo/tool-todo/README.md
2026-07-26 03:33:57 +08:00
Chinesezjc
34eef10f04
test(snapshot): re-record tool schemas for the todo item key tightening
...
additionalProperties: false on the todo_write item schema is model-visible
(tool schemas ride the request header and the code-mode prompt types), so
the pinned ACP/headless expected outputs re-record. Keyless refresh; the
two locally-failing scenarios are this machine's known environment issues
(HOME-symlink cwd normalization, SQLite ExperimentalWarning), not the diff.
2026-07-25 00:00:50 +08:00
Tianyi Cui
e819a586b0
refactor(acp): reduce bridge to automation protocol
2026-07-24 01:40:25 +08:00
fz
a7b0e69797
test(snapshot): update plan command metadata
2026-07-23 21:22:36 +08:00
Tianyi Cui
3f547a83d1
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-20-canonical-tool-output-contract.i18n.yaml
2026-07-23 00:03:56 +08:00
Tianyi Cui
8dbea80294
Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
2026-07-22 23:55:07 +08:00
Tianyi Cui
8d42d3c979
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
...
# Conflicts:
# docs/config-catalog.md
# docs/persistence-catalog.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/agent-loop/tests/contract-regressions.spec.ts
# packages/ui/acp/src/index.ts
# packages/ui/tui/src/index.ts
2026-07-22 23:50:41 +08:00
Tianyi Cui
065d20c249
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
...
# Conflicts:
# scripts/type-equiv.manifest.json
2026-07-22 23:34:17 +08:00
Tianyi Cui
e51b2fd834
Merge refreshed typed Code Mode results into result card fix
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-20-canonical-tool-output-contract.i18n.yaml
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.i18n.yaml
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/session.jsonl
# examples/tui-agent/tests/snapshots/code-mode/terminal.expected.txt
2026-07-22 22:17:05 +08:00
Tianyi Cui
ce970bd31c
Merge refreshed canonical outputs into typed Code Mode results
...
# Conflicts:
# docs/module-graph.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/system-prompt.expected.md
# packages/core/tools/src/ts-types.ts
2026-07-22 21:49:35 +08:00
Tianyi Cui
54bc084e5d
Merge refreshed schema DSL into canonical tool output
...
# Conflicts:
# docs/config-catalog.md
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.jsonl
# packages/context/workspace-context/tests/workspace-context.spec.ts
# packages/core/tools/tests/tools.spec.ts
# packages/ui/tui/src/index.ts
# packages/ui/tui/tests/tui.snapshot.ts
2026-07-22 21:31:16 +08:00
Tianyi Cui
6613f43178
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/capability-seams.md
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# examples/acp-agent/tests/goal-snapshots/goal-session/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/advanced-toolchain/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/bash-spill/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/config-options/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/escalation-approved/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/escalation-rejected/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-edit/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-escalation-approved/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-policy-reject/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read-window/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-terminal-card/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write-overwrite/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/goal-command-status/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/handshake/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-deny/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-pretool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/lsp-definition/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/model-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/multi-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/parallel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/permission-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/repeat-tool-guard/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/skill-load/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-fork/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-spawn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/text-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/todo-plan/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/tool-call-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workflow-run/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-edit/stdout.expected.jsonl
# packages/ui/acp/acp-feature-support.md
# packages/ui/acp/src/index.ts
# packages/ui/acp/tests/harness.ts
# packages/ui/tui/README.md
# scripts/type-equiv.manifest.json
2026-07-22 21:06:50 +08:00
Tianyi Cui
c8389ccecf
Merge latest master into tool JSON schema DSL
...
# Conflicts:
# examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/system-prompt.expected.md
2026-07-22 20:58:17 +08:00
Yichen Jiang
da8c0ab092
fix(session-reference): bind snapshots to prompts
2026-07-22 17:34:31 +08:00
Tianyi Cui
1d28743b12
feat(mode): submit optional slash-command message
2026-07-22 15:51:02 +08:00
Tianyi Cui
a8a18f309a
feat(mode): register one slash command per mode
...
Replace /mode [name] with same-named no-argument commands such as /plan. Update the TUI and ACP snapshots, and validate mode names against command syntax.
2026-07-22 14:32:35 +08:00
kingwl
5d04213445
Merge remote-tracking branch 'origin/master' into feat/plan-mode
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/module-graph.md
# examples/acp-agent/tests/goal-snapshots/goal-session/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/advanced-toolchain/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/bash-spill/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-edit/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-policy-reject/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read-window/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-terminal-card/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write-overwrite/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-deny/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-pretool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/lsp-definition/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/model-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/multi-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/parallel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/repeat-tool-guard/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/skill-load/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-fork/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-spawn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/text-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/todo-plan/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/tool-call-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workflow-run/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-edit/stdout.expected.jsonl
2026-07-22 02:28:47 +08:00
Tianyi Cui
5c783f3677
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
...
# Conflicts:
# examples/acp-agent/tests/snapshots/advanced-toolchain/session.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/session.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/stream-json.expected.jsonl
# examples/tui-agent/tests/snapshots/code-mode/terminal.expected.txt
2026-07-22 00:36:06 +08:00
Tianyi Cui
ec8e3065ce
Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
...
# Conflicts:
# examples/acp-agent/tests/snapshots/both-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/session.jsonl
2026-07-22 00:29:00 +08:00
Tianyi Cui
0dfd9545a6
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/persistence-catalog.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# examples/acp-agent/tests/snapshots/fs-escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/fs-write/session.jsonl
# packages/ui/tui/src/index.ts
# scripts/type-equiv.manifest.json
2026-07-22 00:23:00 +08:00
Tianyi Cui
4072673c03
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
...
# Conflicts:
# packages/cordis/tool-cordis/src/api-catalog.ts
2026-07-22 00:05:23 +08:00
Tianyi Cui
449e3cf298
fix(tools): make code result cards authoritative
2026-07-21 18:38:22 +08:00
Tianyi Cui
9e01fb060e
Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/system-prompt.expected.md
# packages/core/tools/README.md
2026-07-21 18:08:56 +08:00
Tianyi Cui
8f3aca4128
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
2026-07-21 17:45:00 +08:00
Tianyi Cui
4574340d7a
fix(tools): harden unified JSON value boundaries
2026-07-21 17:44:46 +08:00
Tianyi Cui
06e4932984
Merge latest #239 into #447
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-07-plan-mode.md
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# packages/mode/README.md
# packages/mode/mode/README.md
# packages/mode/mode/src/index.ts
# packages/mode/mode/tests/mode.spec.ts
2026-07-21 11:43:54 +08:00
kingwl
a00d1e0496
refactor(mode): move exit-tool visibility onto the registry restriction layer; register /mode; drop unconsumed surfaces
...
The master merge brought the tool registry's per-scope restriction layer
(tools.restrict), which makes dsh-mode's prepend assemble filter a duplicate
enforcement shape: it re-implemented the registry's SDK-section rendering
(renderToolsSdk + the RUN_CODE_NAME exclusion) and hid the exit tool from
prompts only — dispatch stayed open and the execute-time re-check was the
real gate. The service now reconciles a per-agent deny restriction on
agent.ctx at agent/created and at every boundary flush, so wire schemas, the
Code Mode tools:sdk section, AND dispatch resolve exit_plan_mode through the
one registry view (a default-mode call answers UNKNOWN_TOOL, byte-identical
to a no-dsh-mode deployment). The execute-time folded-mode re-check stays as
defense in depth for a direct foreign mode/set append no boundary has
reconciled yet.
Two zero-consumer surfaces removed per the pre-release stance:
- AgentOptions.mode creation seeding (declaration merge + agent/created
listener); a caller selects through set() before the first turn, and the
deferred subagent inheritance returns together with its consumer.
- The dropped-definition boundary notice (droppedNoticed + narration):
custom mode definitions have no production consumer, so nothing can be
dropped; fold-to-default degradation is unchanged.
The stdio removal had left plan mode ACP-only while docs still claimed a
/mode command. dsh-mode now registers /mode on the plugin-owned command
registry through an optional ctx.inject(['commands']) child (type-only peer
edge on dsh-commands), so the TUI and the ACP slash-command surface both
gain it; examples/tui-agent composes dsh-mode. ACP/TUI expected outputs
refreshed keyless for the available_commands_update delta.
Docs updated in place (mode READMEs, the plan-mode Agent Note's realization
sections); catalogs and graphs regenerated.
2026-07-21 11:11:35 +08:00
Tianyi Cui
c1d7b0df81
feat: return typed values from Code Mode
2026-07-21 04:37:09 +08:00
Tianyi Cui
66c36e7325
feat: add canonical typed tool outputs
2026-07-21 03:22:14 +08:00
Tianyi Cui
bb7db52941
Merge remote-tracking branch 'origin/master' into codex/session-title
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/bash-spill/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-edit/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-policy-reject/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read-window/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-terminal-card/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write-overwrite/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-deny/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-pretool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/model-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/multi-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/parallel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/repeat-tool-guard/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/skill-load/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-fork/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-spawn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/text-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/todo-plan/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/tool-call-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workflow-run/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-edit/stdout.expected.jsonl
# examples/headless-agent/tests/headless.snapshot.ts
# packages/examples/README.md
# packages/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/package.json
# packages/ui/README.md
# packages/ui/acp/README.md
2026-07-21 02:13:10 +08:00
Tianyi Cui
f71f96d292
feat(session-title): integrate queries ACP and TUI
2026-07-21 01:53:37 +08:00
Tianyi Cui
4466d582c4
Merge remote-tracking branch 'origin/feat/plan-mode' into codex/pr239-plan-mode-review-fixes
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-07-plan-mode.md
# .agents/notes/implemented/simplification/2026-07-04-fold-stdio-ui-helper.md
# docs/capability-seams.md
# docs/config-catalog.md
# docs/event-producer-consumer.md
# examples/acp-agent/tests/plan-mode.e2e.ts
# examples/acp-agent/tests/snapshots/plan-mode/tool-schemas.expected.json
# examples/plan-acp-agent/README.md
# examples/plan-acp-agent/cordis.yml
# examples/plan-acp-agent/tests/acp.snapshot.ts
# scripts/gen-doc-graphs.ts
2026-07-21 01:21:33 +08:00
Tianyi Cui
8500974fd4
feat: unify JSON value schema DSL
2026-07-21 01:11:55 +08:00
Tianyi Cui
3947312432
Merge remote-tracking branch 'origin/master' into codex/pr239-parent-retarget-publish
...
# Conflicts:
# packages/core/tools/tests/gen-tool-catalog.spec.ts
2026-07-21 00:58:16 +08:00
Tianyi Cui
8c6ba1736f
Merge remote-tracking branch 'origin/master' into codex/pr239-parent-retarget-publish
...
# Conflicts:
# docs/cookbook/extension-cookbook.i18n.yaml
# examples/acp-agent/tests/acp.snapshot.ts
# examples/acp-agent/tests/snapshots/advanced-toolchain/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/bash-spill/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/config-options/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/escalation-approved/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/escalation-rejected/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-edit/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-escalation-approved/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-policy-reject/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read-window/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-terminal-card/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write-overwrite/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/handshake/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-deny/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-pretool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/model-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/multi-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/parallel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/permission-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/repeat-tool-guard/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/skill-load/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-fork/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-spawn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/text-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/todo-plan/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/tool-call-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workflow-run/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-edit/stdout.expected.jsonl
2026-07-21 00:54:51 +08:00
Tianyi Cui
962c43aa9e
Merge remote-tracking branch 'origin/master' into codex/pr239-parent-retarget-publish
...
# Conflicts:
# docs/capability-seams.md
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/bash-spill/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/both-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cancel/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/config-options/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/error-finish/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/escalation-approved/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/escalation-rejected/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-edit/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-escalation-approved/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-policy-reject/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read-window/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-read/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-terminal-card/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write-overwrite/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/fs-write/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/handshake/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-deny/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-posttool-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-pretool-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-block/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-promptsubmit-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/hook-codex-stop-continue/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/model-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/multi-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/parallel-tool-calls/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/permission-switching/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/repeat-tool-guard/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/skill-load/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-depth-two-rejection/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-fork/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-mixed/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-multi/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/subagent-spawn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/text-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/todo-plan/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/tool-call-turn/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workflow-run/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/stdout.expected.jsonl
# examples/acp-agent/tests/snapshots/workspace-edit/stdout.expected.jsonl
# packages/core/tools/tests/gen-tool-catalog.spec.ts
# packages/ui/acp/acp-feature-support.md
# packages/ui/acp/src/index.ts
# scripts/gen-doc-graphs.ts
2026-07-21 00:50:00 +08:00
Tianyi Cui
c3f4332b8d
refactor(examples): fold plan mode into ACP demo
2026-07-21 00:40:15 +08:00
Tianyi Cui
30d2ec4a95
Merge branch 'codex/goal-commands' into codex/ralph-tool
...
# Conflicts:
# examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/both-mode-turn/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/model-switching/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/permission-switching/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/skill-load/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/text-turn/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/workspace-edit/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/workspace-edit/tool-schemas.expected.json
# scripts/gen-tool-catalog.ts
2026-07-20 21:05:05 +08:00
Tianyi Cui
d121f87def
Merge branch 'codex/commands' into codex/goal-commands
...
# Conflicts:
# .agents/notes/implemented/feature/2026-06-30-interception-seams.md
# docs/core-data-structures/core.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/both-mode-turn/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/model-switching/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/permission-switching/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/skill-load/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/text-turn/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/workspace-edit/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/workspace-edit/tool-schemas.expected.json
2026-07-20 20:55:50 +08:00
Tianyi Cui
dfc401a66a
Merge branch 'codex/goal-session' into codex/commands
...
# Conflicts:
# docs/event-producer-consumer.md
# website/.vitepress/config/api-sidebar.json
# website/zh-CN/api/harness/events.md
2026-07-20 20:43:02 +08:00
Tianyi Cui
94a6a95c8e
Merge PR #415 into Ralph tool stack
2026-07-20 18:10:21 +08:00