Turtle
d4ccfbd80f
refactor(cli)!: complete app-owned profile startup
2026-08-10 23:45:04 +08:00
Yichen Jiang
a4e679853f
Merge remote-tracking branch 'origin/master' into worktree/fix-minimal-preset-prompt
2026-08-10 22:15:30 +08:00
Turtle
993550e6c8
refactor: remove repository plugin path
2026-08-10 21:32:13 +08:00
Yichen Jiang
7175ba3d5e
Merge remote-tracking branch 'origin/master' into worktree/fix-minimal-preset-prompt
2026-08-10 21:06:25 +08:00
Yichen Jiang
388ce89823
Merge remote-tracking branch 'origin/master' into worktree/fix-minimal-preset-prompt
...
# Conflicts:
# apps/cli/config/agent-presets/minimal/preset.yml
2026-08-10 21:05:29 +08:00
Yichen Jiang
43f3324a7b
fix(tools): restrict what a scope inherits, not just the global layer
...
A restriction was compiled against the global tool layer alone: only
global-layer tools were tested against `admits()`, and every chain-layer
tool was overlaid unfiltered afterward. That read the exempt set as "the
global layer" when what it means is "what this scope registers itself" —
two descriptions of the same set only while every model-facing tool sat in
the host composition.
Moving those rows onto the agent plane separated them. A preset's tools are
an ANCESTOR contribution to a joined agent, so a subagent's `toolFilter`
stopped constraining anything it was given; and with the global layer empty
`restrict()` rejected every name it received as unknown, failing the child
outright. With the same tools in the global layer the filter still admits
and applies normally, which is what makes this a regression of the move
rather than a standing limitation.
`view()` now filters everything a scope inherits — the global layer and
every ancestor layer on its chain — and exempts only the layer the scope
owns. That exemption is load-bearing rather than incidental: the delegation
runtime registers a child's `report` and structured-output tools into the
child's own layer, and a filter naming the capabilities the child may use
must not strip the machinery it answers through. Tool order, and with it
prefix-cache reuse, is unchanged: inherited names keep their global-then-
ancestor position and own-layer names still come last.
The diagnostic said "unknown global tool" while listing what is really the
inherited surface; it now names the surface it checks and says why an
own-layer name is not restrictable.
Fixes #2185
2026-08-10 20:34:45 +08:00
Yichen Jiang
6301320a63
Merge remote-tracking branch 'origin/master' into worktree/subagent-missing-tools-fb2359
2026-08-10 20:32:58 +08:00
Ziya
5cdebcf5f3
Merge branch 'master' into fs-overwrite-diff-bound-v2
2026-08-10 05:10:30 -07:00
Yichen Jiang
dc524c2c93
Merge remote-tracking branch 'origin/master' into worktree/fix-minimal-preset-prompt
2026-08-10 19:30:51 +08:00
Yichen Jiang
20139a3fb7
docs(sdk): add minimal Python example
2026-08-10 19:30:46 +08:00
Yichen Jiang
2f481fa352
fix(apiproxy): echo the preset a created session runs, not its header
...
`session.create` also adopts an already-live session, and the preceding
commit newly allows adopting one under the preset it switched to while
blank. Its response still echoed `header.agentPreset`, so that adoption
answered with the preset the session had just left — contradicting the
request it had accepted and the row `session.list` serves for the same
session from `resolveSessionPreset()`. The echo now resolves the same way.
The `assertPresetUnchanged` parameter doc said `existing` was the preset
the session was created under; both callers now pass what it runs.
`composeFrom()` was documented as "infallible" and "cannot fail" beside two
`@throws`. It has no composition failure mode — no roster read, no mount, no
file — but it does reject a caller error, and the wording now says which.
The package-level "switched preset" test re-linked to the same preset id,
so it could not tell reading the parent's live scope chain from reading its
creation header. A second fixture preset makes the switch real.
The Web browser lane's subagent goldens gain the preset badge a child now
shows, which is the visible consequence of recording its composition. That
lane runs only under DSH_EXAMPLE_MODE=lib and was missed before.
The Agent Note records two limits found in review: a cold-resumed
continuable child joins its parent's current composition rather than the one
its header names, and `toolFilter` does not constrain a joined child. The
latter is a regression from the agent-plane move rather than anything this
change introduces — with the same tools in the global layer the filter
applies normally — and is tracked in #2185 .
Refs #2185
2026-08-10 19:28:40 +08:00
Yichen Jiang
86d5dd4384
fix(preset): align minimal agent with RL composition
2026-08-10 18:02:11 +08:00
Yichen Jiang
e53f448650
fix(subagent): compose children from their parent's preset
...
Tool and prompt-section visibility is inherited along dsh-scope's parent
chain, and an agent's scope key is minted with no parent. Per-session agent
presets moved every model-facing row onto the agent plane and made
AgentPresets.mount() the one thing that binds that link, from the api-proxy's
session create, resume, and fork paths. The two in-process subagent drivers
installed only the per-child persona and tool filter, so a child's scope chain
had length one and its registry view resolved the global layer alone — which
is empty wherever a preset roster is composed. One-shot children reached the
model with no tools, continuable ones with only the host-plane `report`, and
neither carried its parent's persona, workspace context, or skill catalog.
AgentPresets.composeFrom() joins one agent to the standing composition another
already runs on. It is a bind, not a mount: the child gets its parent's exact
generation, so a composition edited since the parent started cannot fork it
onto another one, and it is synchronous, which is what lets a child creation
window use it. applyChildComposition() now takes the parent and performs the
join first, making a child composed without it unrepresentable at the call
sites. childSessionMeta() records the joined id so a cold read rebuilds the
composition the child actually ran under.
The audit that followed found two api-proxy readers on the wrong authority:
presenterScopeFor() and the live-agent branch of assertPresetUnchanged() both
read header.agentPreset, which goes stale the moment a blank session switches
preset. A switched session's cold transcript resolved presenters in the older
composition's layer and silently degraded to generic cards, and the gateway
refused to adopt a live session under the preset it actually runs while
accepting the one it left. Both now resolve through resolveSessionPreset(),
matching the resume branch fifteen lines above. The owning architecture Agent
Note carried the stale claim that the header records what a session runs; it
is corrected to name the header/log pair and its three readers.
Fixes #2165
2026-08-10 17:46:34 +08:00
ZiyaZhang
191c7625a4
Merge master and repair CI for bounded diff basis
2026-08-10 01:18:38 -07:00
Yichen Jiang
6458910342
Merge remote-tracking branch 'origin/master' into worktree/web-theme-settings-integration-fde706
2026-08-10 16:03:33 +08:00
Yichen Jiang
ac9c39c4c7
Merge remote-tracking branch 'origin/master' into worktree/web-theme-settings-integration-fde706
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# packages/client/ui-conversation/package.json
# pnpm-lock.yaml
2026-08-10 15:58:52 +08:00
creatixchu
73527c47bd
Merge remote-tracking branch 'origin/master' into worktree/drop-create-by-name
2026-08-10 15:49:49 +08:00
creatixchu
a832fc2fa5
Merge remote-tracking branch 'origin/master' into worktree/drop-create-by-name
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-25-session-list-browsing-and-manual-order.i18n.yaml
# .agents/notes/implemented/feature/2026-07-25-workspace-ui-product-flow.i18n.yaml
# .agents/notes/implemented/feature/2026-07-25-workspace-ui-product-flow.zh.md
# .agents/notes/implemented/simplification/2026-07-31-one-route-to-add-a-workspace.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-31-one-route-to-add-a-workspace.md
# .agents/notes/implemented/simplification/2026-07-31-one-route-to-add-a-workspace.zh.md
# apps/cli/reference/README.i18n.yaml
# docs/config-catalog.md
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.md
# packages/host/apiproxy/README.zh.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/host/apiproxy/src/index.ts
# packages/host/apiproxy/tests/api-proxy-approval.spec.ts
# packages/host/apiproxy/tests/api-proxy-blank.spec.ts
# packages/host/apiproxy/tests/api-proxy-cold.spec.ts
# packages/host/apiproxy/tests/api-proxy-commands.spec.ts
# packages/host/apiproxy/tests/api-proxy-config.spec.ts
# packages/host/apiproxy/tests/api-proxy-models.spec.ts
# packages/host/apiproxy/tests/api-proxy-projections.spec.ts
# packages/host/apiproxy/tests/api-proxy-question.spec.ts
# packages/host/apiproxy/tests/api-proxy-rename.spec.ts
# packages/host/apiproxy/tests/api-proxy-search.spec.ts
# packages/host/apiproxy/tests/api-proxy-subagents.spec.ts
# packages/host/apiproxy/tests/api-proxy-view.spec.ts
# packages/host/apiproxy/tests/api-proxy-workspace.spec.ts
# packages/todo/tool-todo/tests/projection.spec.ts
# scripts/hero-composer-dom-continuity.mjs
2026-08-10 15:49:34 +08:00
Yichen Jiang
658a8b1cac
Merge remote-tracking branch 'origin/master' into worktree/web-theme-settings-integration-fde706
...
# Conflicts:
# docs/event-producer-consumer.i18n.yaml
# docs/event-producer-consumer.md
# docs/event-producer-consumer.zh.md
2026-08-10 15:34:01 +08:00
creatixchu
76c6e14c8b
Merge remote-tracking branch 'origin/master' into codex/pr-555-ci-fix
2026-08-10 15:26:23 +08:00
Yichen Jiang
8bbc74127e
Merge remote-tracking branch 'origin/master' into worktree/web-theme-settings-integration-fde706
...
# Conflicts:
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.md
# packages/client/ui-conversation/README.zh.md
2026-08-10 15:21:45 +08:00
creatixchu
2fea703d67
Merge remote-tracking branch 'origin/master' into codex/pr-555-ci-fix
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# packages/client/ui-conversation/src/client/input/hub.ts
# packages/client/ui-conversation/tests/input-bar.spec.tsx
# packages/client/ui-conversation/tests/service-orchestration.spec.ts
2026-08-10 15:19:32 +08:00
Yichen Jiang
0be9bf312a
fix(web): fold the preset frame into the session row for every client
...
The frame carried `agentPreset` for surfaces that label the session, but
nothing consumed it: `noteAgentPreset` ran only in the switching tab's RPC
callback, so a second connected client refetched its catalogs while its
session row — the header label's source, and the hero chip's no-op input —
kept the composition the session had replaced.
`SessionManager.handleHostEnvelope` now folds the frame like the other
session frames. Re-applying the switching tab's own frame is a no-op: the
merge lowers `blank` only and keeps the row's `updatedAt`.
2026-08-10 15:12:07 +08:00
Yichen Jiang
f895ee22d0
Merge remote-tracking branch 'origin/master' into fix/web-slash-catalog-follows-preset
...
# Conflicts:
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.md
# packages/host/apiproxy/README.zh.md
2026-08-10 14:38:17 +08:00
Yichen Jiang
259d998455
fix(web): follow a blank session's preset switch in the slash catalog
...
Presets own the rows that decide what a session's `/` menu contains, but
both browser catalogs cache per session and had no invalidation edge for a
recompose: `commands/changed` is registry-wide and recomposing registers
nothing, so the menu kept serving the composition the session no longer ran.
The host stream now frames the logged `agent-preset/selected` commit as
`host/session-preset-changed`; the runtime bridges it to the typed
`session/preset-changed` event, `ui-command` soft-refreshes that session's
directory key and `ui-skill` invalidates its catalog entry.
Reaching the host on a second switch was a separate defect: the list-row
identity guard compared every summary field except `agentPreset`, and the
merge keeps the row's `updatedAt`, so a switched row looked unchanged and
served its cached instance forever. The hero chip compares the pick against
that row, so switching back to the creation-time preset sent no RPC at all.
2026-08-10 14:35:13 +08:00
Turtle
a7fc81d745
docs: replace front door terminology
2026-08-10 13:07:46 +08:00
Yichen Jiang
a2bd3059ac
Merge remote-tracking branch 'origin/master' into worktree/web-theme-settings-integration-fde706
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-30-client-locale-full-rollout.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-30-client-locale-full-rollout.zh.md
# .agents/notes/implemented/feature/2026-07-30-web-queue-steer-action.i18n.yaml
# .agents/notes/implemented/feature/2026-07-30-web-queue-steer-action.zh.md
# .agents/notes/implemented/feature/2026-07-31-browser-derived-initial-locale.i18n.yaml
# .agents/notes/implemented/feature/2026-07-31-browser-derived-initial-locale.zh.md
# .agents/notes/implemented/testing/2026-07-24-web-gui-browser-e2e-lane.i18n.yaml
# apps/web/tests/scaffold.ts
# docs/module-graph.md
# packages/client/runtime/README.i18n.yaml
# packages/client/runtime/package.json
# packages/client/test-runtime/README.i18n.yaml
# packages/client/test-runtime/README.zh.md
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.zh.md
# packages/client/ui-conversation/package.json
# packages/client/ui-conversation/src/client/apply.ts
# packages/client/ui-theme/README.i18n.yaml
# packages/client/ui-theme/README.md
# packages/client/ui-theme/README.zh.md
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.zh.md
# pnpm-lock.yaml
2026-08-10 12:50:43 +08:00
creatixchu
3764ce62a5
Merge remote-tracking branch 'origin/master' into codex/pr-555-ci-fix
...
# Conflicts:
# docs/config-catalog.i18n.yaml
# docs/config-catalog.md
# docs/config-catalog.zh.md
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/client/connection/src/client/fixture.ts
# packages/host/apiproxy/src/api-proxy.ts
2026-08-10 12:33:36 +08:00
Yichen Jiang
b87e2240bf
Merge pull request #1543 from deepseek-harness/stack/agent-profiles-8-authoring
...
feat(web): author agent presets from a settings page
2026-08-10 11:55:58 +08:00
creatixchu
52df428a10
Merge remote-tracking branch 'origin/master' into codex/pr-555-ci-fix
2026-08-10 11:28:25 +08:00
Yichen Jiang
c06f9041fc
Merge remote-tracking branch 'origin/master' into worktree/web-multimodal-image-input
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-05-reconstructable-requests.i18n.yaml
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.md
# docs/core-data-structures/core.zh.md
# docs/core-data-structures/llm-streaming.i18n.yaml
# docs/core-data-structures/llm-streaming.md
# docs/core-data-structures/llm-streaming.zh.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/subsystems/attachment.i18n.yaml
# docs/subsystems/attachment.md
# docs/subsystems/attachment.zh.md
# docs/subsystems/core.i18n.yaml
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/README.i18n.yaml
# packages/README.md
# packages/README.zh.md
# packages/client/runtime/package.json
# packages/client/ui-conversation/package.json
# packages/client/ui-conversation/src/client/chat/AssistantMarkdown.tsx
# packages/client/ui-conversation/src/client/chat/ChatView.tsx
# packages/client/ui-conversation/src/client/chat/MessageItem.tsx
# packages/client/ui-conversation/src/client/index.ts
# packages/client/ui-conversation/tests/input-bar.spec.tsx
# packages/compact/compact-basic/README.i18n.yaml
# packages/compact/compact-basic/README.md
# packages/compact/compact-basic/README.zh.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/host/apiproxy/src/api/index.ts
# packages/host/apiproxy/src/api/sessions.ts
# packages/host/apiproxy/src/index.ts
# packages/host/apiproxy/tests/api-proxy-models.spec.ts
# packages/self-modification/tool-cordis/src/api-catalog.ts
# pnpm-lock.yaml
# scripts/type-equiv.manifest.json
2026-08-09 23:33:35 +08:00
Yichen Jiang
7dcefeda50
Merge branch 'stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# apps/cli/tests/web-agent-presets.e2e.ts
# packages/client/connection/README.i18n.yaml
# packages/client/connection/README.md
# packages/client/connection/README.zh.md
# packages/client/ui-conversation/src/client/contract/slots.ts
# packages/client/ui-primitives/tests/icons.spec.tsx
# packages/client/ui-settings/src/client/contract/slots.ts
# packages/host/apiproxy/tests/api-proxy-agent-preset.spec.ts
2026-08-09 23:02:37 +08:00
Tianyi Cui
525ea43f0b
Merge branch 'worktree/ci-native-windows-20260808' into worktree/ci-native-windows-coverage-20260808
...
# Conflicts:
# packages/subagent/subagent-codex/README.i18n.yaml
# packages/subagent/subagent-codex/README.md
# packages/subagent/subagent-codex/README.zh.md
2026-08-09 21:52:02 +08:00
Tianyi Cui
4619f183ff
fix(cli): drain native handles on normal exit
2026-08-09 21:44:57 +08:00
Yichen Jiang
7ea8bad7ee
Merge branch 'stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# docs/subsystems/tools.i18n.yaml
# docs/subsystems/tools.md
# docs/subsystems/tools.zh.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
2026-08-09 21:38:26 +08:00
Tianyi Cui
4eecc58940
docs: harmonize rebase compositions — hardening phrasing, 停放约定 vocabulary, zh arm/this renderings
2026-08-09 21:11:00 +08:00
Tianyi Cui
25dcd7293c
docs: purge chain-of-thought leakage from prose
...
Delete design-session citations (decision/audit/plan ordinals, stack
positions), change narration, review choreography, and reviewer-addressed
justification from comments, JSDoc, docs, READMEs, Agent Notes, tests, and
generator templates; restate every affected fact as current-state contract
prose. Fix generated docs at their sources and regenerate the catalogs and
cordis-surface regions; re-paste type-equiv blocks; update every bilingual
counterpart and re-record the pairs. Record the citation rule in the
committed-artifact-citations Agent Note.
2026-08-09 21:10:59 +08:00
imccyu
f4c817648d
docs fix compact checkpoint type example
2026-08-09 20:53:06 +08:00
Yichen Jiang
8612f39759
Merge remote-tracking branch 'origin/stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# packages/client/connection/README.i18n.yaml
# packages/client/connection/README.md
# packages/client/connection/README.zh.md
2026-08-09 20:41:55 +08:00
imccyu
522acc7432
test: update conversation assembly coverage and docs
2026-08-09 18:16:44 +08:00
Tianyi Cui
7132b9730e
fix(fs): harden guarded-create publication
2026-08-09 17:44:34 +08:00
Tianyi Cui
ceba53edd7
fix(fs): observe absence before guarded recreation
2026-08-09 17:43:53 +08:00
Turtle
dda02250f5
docs: reserve seam for complete capabilities
2026-08-09 17:26:57 +08:00
Turtle
93f519b8b8
Merge remote-tracking branch 'origin/master' into codex/concrete-provenance-prose
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-29-terminal-llm-stream-failures.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-29-terminal-llm-stream-failures.zh.md
# .agents/notes/implemented/feature/2026-07-27-trajectory-inspection-ledger.i18n.yaml
# .agents/notes/implemented/feature/2026-07-27-trajectory-inspection-ledger.zh.md
# .agents/notes/implemented/process/2026-08-08-browser-gif-evidence-chain.i18n.yaml
# .agents/notes/implemented/process/2026-08-08-browser-gif-evidence-chain.zh.md
# docs/architecture.i18n.yaml
# docs/architecture.zh.md
# packages/boot/app-boot/README.i18n.yaml
# packages/boot/app-boot/README.zh.md
2026-08-09 16:39:34 +08:00
Turtle
9704749b01
docs: replace vague provenance prose with recorded facts
2026-08-09 15:35:02 +08:00
ZiyaZhang
4bfa127eb7
Merge remote-tracking branch 'origin/master' into fs-overwrite-diff-bound-v2
2026-08-09 00:34:29 -07:00
xjt
c12bcc6f4b
fix(docs): close remaining typography review gaps
2026-08-09 14:33:57 +08:00
xjt
6607775604
fix(docs): close final translation review gaps
2026-08-09 13:46:14 +08:00
Yichen Jiang
da23756dea
Merge remote-tracking branch 'origin/stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# packages/client/connection/README.i18n.yaml
# packages/client/connection/README.zh.md
# packages/core/tools/README.i18n.yaml
# packages/core/tools/README.zh.md
2026-08-09 13:22:10 +08:00
xjt
30e3e5a50c
Merge remote-tracking branch 'origin/master' into xjt/generated-docs-zh-translation-apply
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-12-agent-scope-runtime-design.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-12-agent-scope-runtime-design.zh.md
# .agents/notes/implemented/architecture/2026-07-19-gui-layering-and-rpc-protocol.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-19-gui-layering-and-rpc-protocol.zh.md
# .agents/notes/implemented/architecture/2026-07-19-gui-web-client-architecture.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-19-gui-web-client-architecture.zh.md
# .agents/notes/implemented/architecture/2026-07-27-compiler-independent-typert-model.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-27-compiler-independent-typert-model.zh.md
# .agents/notes/implemented/architecture/2026-07-28-directory-picker-capability-seam.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-28-directory-picker-capability-seam.zh.md
# .agents/notes/implemented/architecture/2026-07-30-static-repository-plugin-format.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-30-static-repository-plugin-format.zh.md
# .agents/notes/implemented/architecture/2026-07-31-claimed-pre-step-inbox-lifecycle.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-31-claimed-pre-step-inbox-lifecycle.zh.md
# .agents/notes/implemented/architecture/2026-07-31-code-runtime-portable-identifier-seam.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-31-code-runtime-portable-identifier-seam.zh.md
# .agents/notes/implemented/architecture/2026-08-01-packaged-ripgrep-search.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-01-packaged-ripgrep-search.zh.md
# .agents/notes/implemented/architecture/2026-08-04-websocket-downlink-carrier.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-04-websocket-downlink-carrier.zh.md
# .agents/notes/implemented/architecture/2026-08-05-large-session-jsonl-restore-pipeline.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-05-large-session-jsonl-restore-pipeline.zh.md
# .agents/notes/implemented/architecture/2026-08-06-agent-event-payload-objects.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-06-agent-event-payload-objects.zh.md
# .agents/notes/implemented/architecture/2026-08-06-subagent-list-identity-projection.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-06-subagent-list-identity-projection.zh.md
# .agents/notes/implemented/architecture/2026-08-06-web-markdown-incremental-ast-renderer.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-06-web-markdown-incremental-ast-renderer.zh.md
# .agents/notes/implemented/architecture/2026-08-08-client-tool-presentation-ownership.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-08-client-tool-presentation-ownership.zh.md
# .agents/notes/implemented/bug-fix/2026-07-27-glob-sampling.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-27-glob-sampling.zh.md
# .agents/notes/implemented/bug-fix/2026-07-28-themed-scrollbars-and-reserved-gutter.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-28-themed-scrollbars-and-reserved-gutter.zh.md
# .agents/notes/implemented/bug-fix/2026-07-28-web-gui-feedback-loop.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-28-web-gui-feedback-loop.zh.md
# .agents/notes/implemented/bug-fix/2026-07-29-human-transcript-append-origin.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-29-human-transcript-append-origin.zh.md
# .agents/notes/implemented/bug-fix/2026-07-29-web-details-session-lifecycle.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-29-web-details-session-lifecycle.zh.md
# .agents/notes/implemented/bug-fix/2026-07-30-web-transcript-log-ordered-projection.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-30-web-transcript-log-ordered-projection.zh.md
# .agents/notes/implemented/bug-fix/2026-07-31-fork-anchor-floors-to-event-seq.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-31-fork-anchor-floors-to-event-seq.zh.md
# .agents/notes/implemented/bug-fix/2026-07-31-web-stop-preserves-queue.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-31-web-stop-preserves-queue.zh.md
# .agents/notes/implemented/bug-fix/2026-08-02-goal-round-wrapup-message.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-08-02-goal-round-wrapup-message.zh.md
# .agents/notes/implemented/bug-fix/2026-08-03-hmr-initial-scan-boot-deadlock.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-08-03-hmr-initial-scan-boot-deadlock.zh.md
# .agents/notes/implemented/bug-fix/2026-08-06-onboarding-step-owned-takeover-chrome.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-08-06-onboarding-step-owned-takeover-chrome.zh.md
# .agents/notes/implemented/bug-fix/2026-08-06-provider-credential-lifecycle.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-08-06-provider-credential-lifecycle.zh.md
# .agents/notes/implemented/bug-fix/2026-08-06-token-surface-unpriced-replace-compatibility.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-08-06-token-surface-unpriced-replace-compatibility.zh.md
# .agents/notes/implemented/feature/2026-07-05-skill-system.i18n.yaml
# .agents/notes/implemented/feature/2026-07-05-skill-system.zh.md
# .agents/notes/implemented/feature/2026-07-08-background-subagent-tasks.i18n.yaml
# .agents/notes/implemented/feature/2026-07-08-background-subagent-tasks.zh.md
# .agents/notes/implemented/feature/2026-07-20-dsh-cli-personal-config.i18n.yaml
# .agents/notes/implemented/feature/2026-07-20-dsh-cli-personal-config.zh.md
# .agents/notes/implemented/feature/2026-07-21-continuable-background-subagents.i18n.yaml
# .agents/notes/implemented/feature/2026-07-21-continuable-background-subagents.zh.md
# .agents/notes/implemented/feature/2026-07-22-durable-subagent-catalog-and-list-agents.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-durable-subagent-catalog-and-list-agents.zh.md
# .agents/notes/implemented/feature/2026-07-23-web-assistant-markdown.i18n.yaml
# .agents/notes/implemented/feature/2026-07-23-web-assistant-markdown.zh.md
# .agents/notes/implemented/feature/2026-07-23-web-permission-and-approval.i18n.yaml
# .agents/notes/implemented/feature/2026-07-23-web-permission-and-approval.zh.md
# .agents/notes/implemented/feature/2026-07-25-session-list-browsing-and-manual-order.i18n.yaml
# .agents/notes/implemented/feature/2026-07-25-session-list-browsing-and-manual-order.zh.md
# .agents/notes/implemented/feature/2026-07-27-skill-catalog-hot-refresh.i18n.yaml
# .agents/notes/implemented/feature/2026-07-27-skill-catalog-hot-refresh.zh.md
# .agents/notes/implemented/feature/2026-07-27-web-session-fork-actions.i18n.yaml
# .agents/notes/implemented/feature/2026-07-27-web-session-fork-actions.zh.md
# .agents/notes/implemented/feature/2026-07-27-web-session-search.i18n.yaml
# .agents/notes/implemented/feature/2026-07-27-web-session-search.zh.md
# .agents/notes/implemented/feature/2026-07-27-web-subagent-conversations.i18n.yaml
# .agents/notes/implemented/feature/2026-07-27-web-subagent-conversations.zh.md
# .agents/notes/implemented/feature/2026-07-28-continuable-subagent-conversations.i18n.yaml
# .agents/notes/implemented/feature/2026-07-28-continuable-subagent-conversations.zh.md
# .agents/notes/implemented/feature/2026-07-28-skill-invocation-policy.i18n.yaml
# .agents/notes/implemented/feature/2026-07-28-skill-invocation-policy.zh.md
# .agents/notes/implemented/feature/2026-07-28-web-terminal-card.i18n.yaml
# .agents/notes/implemented/feature/2026-07-28-web-terminal-card.zh.md
# .agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.i18n.yaml
# .agents/notes/implemented/feature/2026-07-30-deepseek-onboarding-credential-setup.zh.md
# .agents/notes/implemented/feature/2026-07-30-search-render-card.i18n.yaml
# .agents/notes/implemented/feature/2026-07-30-search-render-card.zh.md
# .agents/notes/implemented/feature/2026-07-30-web-diff-card.i18n.yaml
# .agents/notes/implemented/feature/2026-07-30-web-diff-card.zh.md
# .agents/notes/implemented/feature/2026-07-30-web-read-card.i18n.yaml
# .agents/notes/implemented/feature/2026-07-30-web-read-card.zh.md
# .agents/notes/implemented/feature/2026-07-30-web-result-card-frontend.i18n.yaml
# .agents/notes/implemented/feature/2026-07-30-web-result-card-frontend.zh.md
# .agents/notes/implemented/feature/2026-07-30-web-result-card.i18n.yaml
# .agents/notes/implemented/feature/2026-07-30-web-result-card.zh.md
# .agents/notes/implemented/feature/2026-07-31-code-mode-language-dispatch.i18n.yaml
# .agents/notes/implemented/feature/2026-07-31-code-mode-language-dispatch.zh.md
# .agents/notes/implemented/feature/2026-07-31-telemetry-anonymous-user-id.i18n.yaml
# .agents/notes/implemented/feature/2026-07-31-telemetry-anonymous-user-id.zh.md
# .agents/notes/implemented/feature/2026-07-31-web-workspace-file-links.i18n.yaml
# .agents/notes/implemented/feature/2026-07-31-web-workspace-file-links.zh.md
# .agents/notes/implemented/feature/2026-08-01-pwsh-tool-and-executor.i18n.yaml
# .agents/notes/implemented/feature/2026-08-01-pwsh-tool-and-executor.zh.md
# .agents/notes/implemented/feature/2026-08-02-pwsh-tool-bash-parity.i18n.yaml
# .agents/notes/implemented/feature/2026-08-02-pwsh-tool-bash-parity.zh.md
# .agents/notes/implemented/feature/2026-08-02-web-thinking-tail-scroll.i18n.yaml
# .agents/notes/implemented/feature/2026-08-02-web-thinking-tail-scroll.zh.md
# .agents/notes/implemented/feature/2026-08-05-pwsh-ui-bash-parity.i18n.yaml
# .agents/notes/implemented/feature/2026-08-05-pwsh-ui-bash-parity.zh.md
# .agents/notes/implemented/feature/2026-08-06-resolved-theme-color-metadata.i18n.yaml
# .agents/notes/implemented/feature/2026-08-06-resolved-theme-color-metadata.zh.md
# .agents/notes/implemented/feature/2026-08-06-web-skill-tool-row.i18n.yaml
# .agents/notes/implemented/feature/2026-08-06-web-skill-tool-row.zh.md
# .agents/notes/implemented/process/2026-06-17-ts-build-config.i18n.yaml
# .agents/notes/implemented/process/2026-06-17-ts-build-config.zh.md
# .agents/notes/implemented/process/2026-07-22-tsconfig-solution-root-two-aggregates.i18n.yaml
# .agents/notes/implemented/process/2026-07-22-tsconfig-solution-root-two-aggregates.zh.md
# .agents/notes/implemented/process/2026-07-31-installer-adopts-existing-checkout.i18n.yaml
# .agents/notes/implemented/process/2026-07-31-installer-adopts-existing-checkout.zh.md
# .agents/notes/implemented/process/2026-08-08-api-remotes-generated-contract-build.i18n.yaml
# .agents/notes/implemented/process/2026-08-08-api-remotes-generated-contract-build.zh.md
# .agents/notes/implemented/simplification/2026-07-20-remove-stdio-and-echo-agents.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-20-remove-stdio-and-echo-agents.zh.md
# .agents/notes/implemented/simplification/2026-07-26-merge-subagent-control-service.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-26-merge-subagent-control-service.zh.md
# .agents/notes/implemented/simplification/2026-07-31-one-route-to-add-a-workspace.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-31-one-route-to-add-a-workspace.zh.md
# .agents/notes/implemented/testing/2026-07-24-web-gui-browser-e2e-lane.i18n.yaml
# .agents/notes/implemented/testing/2026-07-24-web-gui-browser-e2e-lane.zh.md
# .agents/notes/proposed/architecture/2026-07-29-durable-last-activity-index.i18n.yaml
# .agents/notes/proposed/architecture/2026-07-29-durable-last-activity-index.zh.md
# .agents/notes/proposed/architecture/2026-08-08-semantic-composer-chain-phases.i18n.yaml
# .agents/notes/proposed/architecture/2026-08-08-semantic-composer-chain-phases.zh.md
# .agents/notes/proposed/feature/2026-07-17-sdk-follow-up-capabilities.i18n.yaml
# .agents/notes/proposed/feature/2026-07-17-sdk-follow-up-capabilities.zh.md
# apps/cli/reference/README.i18n.yaml
# apps/cli/reference/README.zh.md
# docs/api-gateway.i18n.yaml
# docs/api-gateway.zh.md
# docs/cookbook/adding-a-package.i18n.yaml
# docs/cookbook/adding-a-package.zh.md
# docs/cookbook/adding-a-tool.i18n.yaml
# docs/cookbook/adding-a-tool.zh.md
# docs/development.i18n.yaml
# docs/development.zh.md
# docs/i18n/README.i18n.yaml
# docs/i18n/README.zh.md
# docs/i18n/style-samples.md
# docs/i18n/terminology.md
# docs/testing.i18n.yaml
# docs/testing.zh.md
# examples/web-cordis/README.i18n.yaml
# examples/web-cordis/README.zh.md
# packages/api/gateway/README.i18n.yaml
# packages/api/gateway/README.zh.md
# packages/bash/bash-env/README.i18n.yaml
# packages/bash/bash-env/README.zh.md
# packages/bash/tool-bash/README.i18n.yaml
# packages/bash/tool-bash/README.zh.md
# packages/bash/tool-pwsh/README.i18n.yaml
# packages/bash/tool-pwsh/README.zh.md
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.zh.md
# packages/client/ui-tool/README.i18n.yaml
# packages/client/ui-tool/README.zh.md
# packages/feedback/command-feedback/README.i18n.yaml
# packages/feedback/command-feedback/README.zh.md
# packages/host/webserver/README.i18n.yaml
# packages/host/webserver/README.zh.md
# packages/pty/tool-bash-persistent/README.i18n.yaml
# packages/pty/tool-bash-persistent/README.zh.md
# packages/subagent/subagent-claude-code/README.i18n.yaml
# packages/subagent/subagent-claude-code/README.zh.md
# packages/subagent/subagent-codex/README.i18n.yaml
# packages/subagent/subagent-codex/README.zh.md
# packages/typert/type-meta/README.i18n.yaml
# packages/typert/type-meta/README.zh.md
# packages/util/atomic-write/README.i18n.yaml
# packages/util/atomic-write/README.zh.md
# scripts/snapshots/translation-prompt-v4/request-response.expected.json
2026-08-09 13:15:27 +08:00