Yichen Jiang
f8555b5561
feat(client): configure host-plane plugins from a settings section
...
The section knows no namespace: it declares `settings.plugin.item` and
renders whatever cards were registered into it, so a plugin that ships a
browser half owns its card and its controls. The three cards here cover the
host-plane sections this deployment exposes.
A field shows its effective value and, when the raw user layer carries it, an
override badge and a reset that clears it back to the composition layer.
Controls commit on blur and Enter rather than per keystroke, which would burn
namespace revisions and race its own reads. The search key is the one value
that never rides a response: the card reports only whether one is configured
and writes it through the credentials domain, addressed by the reference the
section names.
A card renders nothing while its namespace is unavailable — a deployment that
does not compose the owning plugin should show no trace of it rather than a
disabled card the user cannot act on.
2026-08-10 19:14:59 +08:00
creatixchu
b07844dd4c
Merge branch 'master' into feat/read-image-context
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
2026-08-10 19:01:47 +08:00
pku-xht
8de6df19d9
feat(workflow): show durable run records in Chat
2026-08-10 18:37:30 +08:00
Tianyi Cui
ef7195a00a
fix(skill): enforce manual invocation policy
2026-08-10 18:04:26 +08:00
Tianyi Cui
b4581c8b97
test(snapshot): refresh translation prompt fixture
2026-08-10 17:58:37 +08:00
_Kerman
80b7f929ea
feat(session-persistence): expose readRaw for per-session artifacts
...
The persistence contract gains a concrete readRaw default (undefined for
backends without a per-session artifact) and the JSONL backend overrides it
with the decode of its physical zstd frames, so a consumer can read the
stored artifact text verbatim — the session-log export depends on it.
2026-08-10 17:57:40 +08:00
Turtle
51b2fc35f3
docs: refresh translation prompt snapshot
2026-08-10 16:34:20 +08:00
Turtle
a27efdef36
docs: make technical prose concrete
2026-08-10 16:34:20 +08:00
Turtle
8dc91d2c00
fix(feedback): report shared anonymous user id
2026-08-10 16:23:05 +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
creatixchu
76c6e14c8b
Merge remote-tracking branch 'origin/master' into codex/pr-555-ci-fix
2026-08-10 15:26:23 +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
298ae62a17
docs(scripts): name the event-matrix collector's client-face blind spot
...
The generated matrix under-reports client-face listeners because the program
is seeded from the host aggregate alone, so `session/preset-changed` lists
`ui-command` without `ui-skill` — the same shape as the existing
`connection/reset` and `models/changed` rows. Record it where the collector
lives, with what closing it actually takes.
2026-08-10 15:16:53 +08:00
creatixchu
1861a3fc7c
feat(fs): add a minimal read_image tool over the attachment and fs seams
...
The model reads a PNG/JPEG/WebP/GIF file, the bytes commit through the
durable attachment lifecycle, and the tool result carries the real
ImageBlock so the image enters context from the next request onward.
FileSystem gains a bounded readBytes primitive (local + E2B providers);
registration is conditional on the attachment store, and a strict
execution gate refuses routes that do not declare image input, so a
text route's durable history stays free of image blocks. llm-replay
models may declare inputModalities, letting keyless ACP snapshots pin
both the sha256-referenced success and the verbatim refusal.
Supersedes the withdrawn route-scoped design of PR #598 ; the decision
record is .agents/notes/implemented/feature/2026-08-10-minimal-read-image-tool.md.
2026-08-10 15:09: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
Yichen Jiang
0a0a75730f
Merge remote-tracking branch 'origin/master' into worktree/web-background-tasks-display-258f7e
2026-08-10 13:22:51 +08:00
Turtle
a7fc81d745
docs: replace front door terminology
2026-08-10 13:07:46 +08:00
Huanqi Cao
c9285753de
Merge branch 'merge/1829-master' into merge/1990-1829
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
2026-08-10 12:35:32 +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
Huanqi Cao
2a6aba0f48
Merge remote-tracking branch 'origin/master' into merge/1829-master
...
# Conflicts:
# apps/cli/package.json
# pnpm-lock.yaml
2026-08-10 12:32:14 +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
Huanqi Cao
a3a91aa654
Merge branch 'merge/1829-master' into merge/1990-1829
...
# Conflicts:
# vitest.config.ts
2026-08-10 11:24:58 +08:00
Huanqi Cao
a7b973757b
Merge remote-tracking branch 'origin/master' into merge/1829-master
2026-08-10 11:23:08 +08:00
Huanqi Cao
ee38c2540b
Merge branch 'merge/1829-master' into merge/1990-1829
2026-08-10 11:12:52 +08:00
Huanqi Cao
2474b6e638
Merge remote-tracking branch 'origin/master' into merge/1829-master
...
# Conflicts:
# scripts/project-doc-site.spec.ts
2026-08-10 11:12:39 +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
Huanqi Cao
a29966b71f
Merge branch 'feat/windows-pwsh-default' into feat/windows-acl-sandbox
...
# Conflicts:
# .agents/notes/implemented/feature/2026-08-02-pwsh-tool-bash-parity.i18n.yaml
# .agents/notes/implemented/feature/2026-08-02-pwsh-tool-bash-parity.md
# .agents/notes/implemented/feature/2026-08-02-pwsh-tool-bash-parity.zh.md
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# packages/bash/tool-pwsh/README.i18n.yaml
# packages/bash/tool-pwsh/README.md
# packages/bash/tool-pwsh/README.zh.md
2026-08-09 23:19:14 +08:00
Tianyi Cui
99dce342b3
Merge branch 'worktree/schedule-explicit-at' into worktree/schedule-fixed-rate
2026-08-09 23:12:36 +08:00
Tianyi Cui
35d4b5bf7c
Merge branch 'worktree/schedule-conversational-after' into worktree/schedule-explicit-at
2026-08-09 23:12:26 +08:00
Tianyi Cui
71406c1969
Merge remote-tracking branch 'origin/master' into worktree/schedule-conversational-after
2026-08-09 23:12:14 +08:00
Tianyi Cui
0a7f1a3031
docs(schedule): document bounded fixed-rate reminders
2026-08-09 23:11:45 +08:00
Tianyi Cui
c221d0523b
Merge branch 'worktree/schedule-explicit-at' into worktree/schedule-fixed-rate
...
# Conflicts:
# docs/persistence-catalog.i18n.yaml
# docs/persistence-catalog.md
# docs/persistence-catalog.zh.md
2026-08-09 23:06:58 +08:00
Tianyi Cui
d9020dd9a1
docs(schedule): document explicit absolute time
2026-08-09 23:06:10 +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
Huanqi Cao
2720091429
Merge remote-tracking branch 'origin/master' into feat/windows-pwsh-default
...
# Conflicts:
# .agents/notes/proposed/feature/2026-08-01-windows-pwsh-default.i18n.yaml
# .agents/notes/proposed/feature/2026-08-01-windows-pwsh-default.md
# .agents/notes/proposed/feature/2026-08-01-windows-pwsh-default.zh.md
2026-08-09 22:59:34 +08:00
Yichen Jiang
877364f7a4
Merge branch 'stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
...
# Conflicts:
# packages/client/ui-conversation/tests/input-bar.spec.tsx
2026-08-09 22:57:23 +08:00
Yichen Jiang
4926b296c4
Merge branch 'stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
...
# Conflicts:
# docs/persistence-catalog.i18n.yaml
# docs/persistence-catalog.md
# docs/persistence-catalog.zh.md
2026-08-09 22:56:44 +08:00
Yichen Jiang
51ca900d4e
Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam
2026-08-09 22:54:57 +08:00
Tianyi Cui
89eba1539b
docs(schedule): add subsystem reference
2026-08-09 22:54:28 +08:00
Tianyi Cui
81206cd60c
Merge remote-tracking branch 'origin/worktree/ci-native-windows-coverage-20260808' into worktree/ci-native-windows-multicore-20260809
...
# Conflicts:
# .agents/notes/implemented/process/2026-08-08-native-windows-pull-request-ci.i18n.yaml
2026-08-09 22:50:48 +08:00
Yichen Jiang
0d7106d902
Merge branch 'stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
...
# Conflicts:
# apps/cli/tests/web-agent-presets.e2e.ts
# packages/host/apiproxy/tests/api-proxy-agent-preset.spec.ts
2026-08-09 22:48:47 +08:00
Tianyi Cui
2b9b20836e
Merge remote-tracking branch 'origin/worktree/ci-native-windows-20260808' into worktree/ci-native-windows-coverage-20260808
2026-08-09 22:44:50 +08:00
Tianyi Cui
7257ce3dc3
Merge remote-tracking branch 'origin/master' into worktree/ci-native-windows-20260808
2026-08-09 22:42:28 +08:00
Tianyi Cui
bef3fccbd8
Merge remote-tracking branch 'origin/master' into worktree/schedule-conversational-after
2026-08-09 22:39:09 +08:00
Yichen Jiang
4b628a8703
docs(skill): document the layered registry and record the Agent Note
...
The skills subsystem page and dsh-skill README describe the host+per-scope
layers, SkillViewOptions joins the type-equiv corpus and the cordis-catalog
type pages, generated catalogs pick up the shifted source refs, and the
architecture Agent Note records the decision, the nearest-layer-wins
precedence choice, and the rejected alternatives.
2026-08-09 22:29:53 +08:00
Tianyi Cui
e079304894
Merge branch 'worktree/ci-native-windows-coverage-20260808' into worktree/ci-native-windows-multicore-20260809
...
# Conflicts:
# .agents/notes/implemented/process/2026-08-08-native-windows-pull-request-ci.i18n.yaml
2026-08-09 21:56:52 +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