Tianyi Cui
226dc7a249
docs: translate remaining READMEs
2026-07-26 05:06:39 +08:00
Turtle
2e84a1a194
Merge remote-tracking branch 'origin/master' into codex/trim-redundant-comments
...
# Conflicts:
# docs/config-catalog.md
# examples/acp-agent/tests/acp.e2e.ts
# packages/ui/acp/src/index.ts
# packages/ui/acp/tests/bridge.spec.ts
# packages/ui/acp/tests/config-options.spec.ts
# packages/ui/acp/tests/dispose.spec.ts
# packages/ui/acp/tests/properties.spec.ts
2026-07-25 13:36:21 +08:00
Turtle
fac6c35e9a
Trim redundant source comments
2026-07-25 13:02:37 +08:00
Tianyi Cui
e819a586b0
refactor(acp): reduce bridge to automation protocol
2026-07-24 01:40:25 +08:00
Tianyi Cui
4643e0de10
test(windows): make coverage fixtures portable
2026-07-22 13:10:48 +08:00
Tianyi Cui
53615c91e7
Merge master into worktree-windows-runtime
2026-07-21 23:39:14 +08:00
Tianyi Cui
071fe76755
Merge latest master into invariant service seam
2026-07-21 18:27:46 +08:00
Yichen Jiang
c0d7ef22ec
fix(subagent-acp): repair the composition fixture for the merged depth budget
...
Master landed the tool-subagent depth budget while this branch was in
flight: the numeric default maxDepth now fails the mount against the
ACP provider's depthLimit: false, so the composition fixture must state
maxDepth: 'provider-managed' — the documented opt-out for a provider
whose recursion budget lives in the child harness. The fixture also
moves off the retired stdio-demo REPL onto the current app-boot driver
pattern (runLoaderSmoke + one-shot cli), and the split isDirectory
statements gain the file-not-a-directory case the single-expression
form used to cover implicitly.
2026-07-21 17:14:10 +08:00
Yichen Jiang
822651a2c7
test(subagent-acp): cover inherited cwd through a Loader composition
...
The inheritance branch ran only under hand-mounted plugin tests, and
the with-key e2e always configures an explicit cwd. Add a test-only
cordis.yml (scripted delegating model + the scripted mock ACP child)
booting the stdio app through the real Loader with cwd omitted: the
child proves it ran in — and was announced — the parent session's
workspace, keylessly.
2026-07-21 16:53:26 +08:00
Yichen Jiang
04117b58bd
docs(subagent): align the parent contract with ACP cwd inheritance
...
SubagentStartRequest.parent, its core-data type-equiv mirror, and the
ACP backend Agent Note still said the out-of-process backend ignores
request.parent — no longer true: with cwd unconfigured it reads exactly
the session header's cwd, and a parent session without one now rejects
at start. State the one-field read at each owning contract, record the
workspace-resolution decision in the Agent Note, and align the README's
accessibility wording with the search-permission guard.
2026-07-21 16:51:49 +08:00
Yichen Jiang
fcbbd22af7
fix(subagent-acp): require search permission on the child cwd
...
statSync().isDirectory() is true for a mode-600 directory, but a
subprocess cwd needs X_OK — spawn would fail EACCES, deferring a
self-contained configuration error past the load/start boundary the
resolution owns. Probe accessSync(X_OK) alongside the type check so
"not an accessible directory" is literally what the guard verifies.
2026-07-21 16:51:32 +08:00
Tianyi Cui
78eb93f7e6
Merge branch 'master' into worktree-windows-runtime
2026-07-20 20:39:13 +08:00
Tianyi Cui
1145ee5fc3
fix(invariants): assert runtime relationships, not API shapes
2026-07-20 19:34:19 +08:00
Yichen Jiang
d919e1b813
Merge remote-tracking branch 'origin/master' into fix/acp-subagent-cwd
...
# Conflicts:
# packages/subagent/subagent-acp/README.md
2026-07-20 15:19:25 +08:00
Tianyi Cui
684fcf3357
Merge branch 'codex/invariant-package-registration-gate' into codex/package-invariant-checks
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-19-package-invariant-runtime-contracts.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-19-package-invariant-runtime-contracts.md
# .agents/notes/implemented/architecture/2026-07-19-package-invariant-runtime-contracts.zh.md
# .agents/notes/implemented/architecture/2026-07-19-package-owned-invariant-service.i18n.yaml
# docs/rfc/INDEX.md
# packages/AGENTS.md
2026-07-20 00:54:28 +08:00
Tianyi Cui
941b0411d8
feat(invariants): implement package runtime checks
2026-07-20 00:38:37 +08:00
Tianyi Cui
6520f71f94
Merge remote-tracking branch 'origin/codex/invariant-service-seam' into codex/invariant-package-registration-gate
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-19-package-owned-invariant-service.i18n.yaml
# docs/core-data-structures/session.md
# docs/module-graph.md
# package.json
# packages/sdk/scripts/tsconfig.json
2026-07-20 00:35:06 +08:00
Tianyi Cui
e8eddc7ef8
Rename RFCs to Agent Notes
2026-07-19 22:52:03 +08:00
Tianyi Cui
433670a754
feat(invariants): require package-owned companions
2026-07-19 22:13:50 +08:00
imccyu
6eabba8021
Merge branch 'master' into worktree-windows-runtime
2026-07-19 21:08:12 +08:00
Tianyi Cui
a278374e8f
docs: structure model experience fields
2026-07-19 18:08:42 +08:00
Tianyi Cui
bcc920369c
docs: document package KV cache effects
2026-07-19 17:39:50 +08:00
Yichen Jiang
b758a7496b
fix(subagent-acp): reject an empty config cwd at load
...
path.resolve('') is the process cwd, so an empty configured cwd would
silently reintroduce the launch-directory fallback the parent-session
cwd resolution removed. Fail at plugin load with an actionable message
instead.
2026-07-19 15:56:32 +08:00
Yichen Jiang
c432f85c07
fix(subagent-acp): resolve child cwd from the parent session
...
The ACP backend resolved an unset cwd to the harness process's launch
directory, so a delegated child ran — and announced its ACP session —
in the server's cwd instead of the delegating session's workspace.
Resolve the working directory explicitly: the config cwd override
(made absolute and validated at load), else the parent session
header's cwd (validated at start), failing loud before spawning when
neither exists.
2026-07-19 15:23:17 +08:00
Tianyi Cui
4625195968
fix(subagent): bound forced child termination
...
Observe signal errors and bound the final forced-exit edge with disposeGraceMs so a refused or ineffective SIGKILL cannot leave disposal pending forever.
Apply the confirmation bound on POSIX and Windows, remove listeners and timers on every outcome, and update the ACP consumer contract plus the generated config catalog.
Cover emitted signal errors, synchronous kill exceptions, refused termination, and accepted termination that never reports exit.
2026-07-19 12:19:33 +08:00
Tianyi Cui
39c1c3df4f
Merge remote-tracking branch 'origin/master' into codex/pr335-merge-master-20260719
...
# Conflicts:
# packages/support/acp-snapshot/README.md
# packages/support/acp-snapshot/src/harness.ts
# packages/support/acp-snapshot/src/suite.ts
# packages/support/acp-snapshot/tests/harness.spec.ts
# packages/support/acp-snapshot/tests/suite.spec.ts
2026-07-19 11:41:10 +08:00
imccyu
64f64724e5
fix(subprocess): honor Windows termination semantics
2026-07-18 16:25:51 +08:00
Tianyi Cui
c52e6f13af
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-18 14:27:59 +08:00
Tianyi Cui
0f85ae0a9d
fix(subagent): identify lifecycle runs explicitly
2026-07-18 14:26:14 +08:00
Tianyi Cui
a8150815ba
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# packages/subagent/subagent-acp/package.json
# packages/subagent/subagent-acp/tests/mock-acp-server.ts
# pnpm-lock.yaml
# website/zh-CN/api/harness/agents.md
2026-07-18 14:01:03 +08:00
imccyu
228f6e3867
test(windows): skip POSIX-only assertions
2026-07-18 12:40:13 +08:00
imccyu
5ed531acba
ci(examples): run examples / testing from built lib/js
2026-07-17 23:07:51 +08:00
Tianyi Cui
0da51d416e
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-15 17:06:48 +08:00
Tianyi Cui
5ef3dd979f
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# docs/config-catalog.md
# docs/cookbook/extension-cookbook.i18n.yaml
# docs/module-graph.md
# packages/examples/stdio-demo/README.md
# packages/examples/stdio-demo/src/index.ts
# pnpm-lock.yaml
2026-07-15 17:01:59 +08:00
imccyu
6f77da4c8c
refactor: relocate demo app bundles to packages/examples/*-demo
...
Move the agent-spine bundle and the stdio/ACP/JSON-RPC app packages out of
core/ and ui/ into a new packages/examples/ group, renamed with a -demo
suffix so the npm name marks them as non-product surface:
core/agent-core -> examples/agent-spine-demo (dsh-agent-spine-demo)
ui/stdio-agent -> examples/stdio-demo (dsh-stdio-demo)
ui/acp-agent -> examples/acp-demo (dsh-acp-demo)
ui/jsonrpc-agent -> examples/jsonrpc-demo (dsh-jsonrpc-demo)
Update every code/config/test reference and reference-only doc mentions, and
regenerate module-graph, config-catalog, and doc-graphs. The jsonrpc bin
(dsh-jsonrpc-agent) and single-file exe (dsh-jsonrpc-agent-pkg) keep their
names; the SDK runtime-startup surface is reconciled separately.
2026-07-15 16:46:05 +08:00
Tianyi Cui
3d4ed10d77
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-15 16:27:52 +08:00
Tianyi Cui
6d1870c8c1
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/bash/tool-bash/src/index.ts
# packages/ui/stdio-agent/README.md
# packages/ui/stdio-agent/src/index.ts
# packages/ui/stdio/src/index.ts
# packages/workflow/workflow-workerthread/tests/workflow-workerthread.spec.ts
# packages/workflow/workflow/package.json
# scripts/gen-doc-graphs.ts
2026-07-15 16:24:43 +08:00
imccyu
31f4441fd4
pkg: update vendor dep
2026-07-15 11:28:45 +08:00
Tianyi Cui
18abf87107
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
...
# Conflicts:
# docs/rfc/implemented/architecture/2026-07-05-prompt-variables-and-tool-guidance-ownership.md
# packages/subagent/subagent-subprocess/src/index.ts
# packages/subagent/tool-subagent/src/index.ts
2026-07-14 19:02:27 +08:00
Tianyi Cui
83271191d1
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/rfc/implemented/architecture/2026-06-18-agent-lifecycle-and-ownership-seams.md
# docs/rfc/implemented/architecture/2026-06-20-branded-ids.md
# docs/rfc/implemented/simplification/2026-06-20-remove-agent-boundary-mirror-events.md
# docs/rfc/proposed/feature/2026-07-07-claude-code-and-codex-subagent-backends.md
# docs/rfc/proposed/simplification/2026-06-20-unify-agent-and-session-id.md
# packages/bash/tool-bash/README.md
# packages/bash/tool-bash/src/index.ts
# packages/bash/tool-bash/tests/tools.spec.ts
# packages/core/agent-loop/README.md
# packages/core/agent-loop/tests/properties.spec.ts
# packages/core/agent/README.md
# packages/core/agent/src/index.ts
# packages/guard/repeat-tool-guard/src/index.ts
# packages/hooks/hooks-claude/tests/bridge.spec.ts
# packages/subagent/subagent-acp/tests/mock-acp-server.ts
# packages/ui/acp/tests/dispose.spec.ts
# packages/ui/stdio-agent/src/index.ts
# packages/ui/stdio-agent/src/stdio-chat.ts
# packages/ui/stdio-agent/tests/stdio-chat.spec.ts
# packages/util/brand/src/index.ts
2026-07-14 18:51:24 +08:00
Tianyi Cui
ab6faf78ba
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-14 15:41:34 +08:00
Tianyi Cui
440afff96e
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# packages/ui/stdio-agent/README.md
2026-07-14 15:27:32 +08:00
Tianyi Cui
8590ba00a4
Merge remote-tracking branch 'origin/master' into codex/trim-ai-prose
...
# Conflicts:
# docs/AGENTS.md
# docs/config-catalog.md
# packages/bash/bash-sandbox/src/index.ts
# packages/bash/bash/src/session-mode.ts
# packages/bash/tool-bash/README.md
# packages/code-runtime/code-runtime-worker/README.md
# packages/compact/compact/src/index.ts
# packages/core/agent-core/README.md
# packages/hooks/hooks-claude/src/config.ts
# packages/hooks/hooks-claude/src/index.ts
# packages/hooks/hooks-codex/src/config.ts
# packages/hooks/hooks-codex/src/index.ts
# packages/llm/llm/README.md
# packages/session-persistence/session-persistence-jsonl/README.md
# packages/session-persistence/session-persistence/README.md
# packages/skill/skill-local/README.md
# packages/support/acp-snapshot/README.md
# packages/support/invariants/src/index.ts
# packages/ui/acp/README.md
# packages/ui/jsonrpc-agent/README.md
# packages/ui/jsonrpc/README.md
# packages/ui/permission/README.md
# packages/ui/user-approval/README.md
# packages/ui/user-interaction/README.md
# packages/web/web-search-deepseek/README.md
2026-07-14 14:37:16 +08:00
Tianyi Cui
1ab64dba62
Merge remote-tracking branch 'origin/master' into codex/trim-ai-prose
...
# Conflicts:
# docs/config-catalog.md
# docs/development.i18n.yaml
# docs/development.zh.md
# docs/rfc/implemented/feature/2026-06-14-acp-agent-client-protocol.md
# docs/rfc/implemented/feature/2026-07-06-sandbox.md
# examples/AGENTS.md
# examples/README.md
# examples/acp-agent/README.md
# examples/acp-agent/cordis.yml
# examples/acp-agent/tests/acp.e2e.ts
# examples/acp-agent/tests/escalation.e2e.ts
# examples/sandbox-acp-agent/README.md
# examples/sandbox-acp-agent/cordis.snapshot.yml
# examples/sandbox-acp-agent/cordis.yml
# examples/sandbox-acp-agent/tests/acp.snapshot.ts
# packages/ui/acp-agent/src/bin.ts
# packages/ui/acp/README.md
# packages/ui/jsonrpc-agent/README.md
# packages/ui/jsonrpc-agent/src/bin.ts
# scripts/verify-translation-pairing.ts
2026-07-14 12:34:14 +08:00
Tianyi Cui
99db6e88ed
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-14 11:56:52 +08:00
Tianyi Cui
9272d2871b
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
2026-07-14 11:56:09 +08:00
Tianyi Cui
a50e8bc1f3
Merge remote-tracking branch 'origin/master' into codex/model-experience-readmes-20260712
...
# Conflicts:
# packages/bash/bash-sandbox/README.md
# packages/sandbox/sandbox-local/README.md
2026-07-14 11:28:08 +08:00
Tianyi Cui
48f2c17e13
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-14 07:43:10 +08:00
Tianyi Cui
a9c4fe2c4b
test: exclude validated ACP assertion
2026-07-14 07:43:01 +08:00
Tianyi Cui
b5d2209bfe
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-14 07:42:19 +08:00