Turtle
2a5dfb7d35
feat(tui): session resume — /resume command, exit hint, and dsh --resume <id>
...
Squashes feat/tui-resume-command, fix/tui-resume-desc, and
feat/tui-resume-flag.
2026-07-22 14:29:52 +08:00
Turtle
87899ae161
feat(workspace-context): load all instruction candidates, dedup by trimmed content, follow symlinks
...
Squashes feat/instruction-load-all-dedup and feat/allow-instruction-symlink.
2026-07-22 14:29:52 +08:00
Turtle
dd55b2cc62
feat(tui): verbose turn-phase status line with elapsed timing and cache hit rate
...
Squashes feat/tui-cache-hit-rate and feat/tui-verbose-status: the footer
shows cache hit rate and the running status line reports turn phase with
elapsed timing.
2026-07-22 14:29:28 +08:00
Turtle
ea93166e57
feat(tui): auto-title the terminal pane from the first user message
2026-07-22 14:29:28 +08:00
Turtle
9c8994f65a
feat(tui): experimental dev-only /reload command for loader configs
...
Squashes feat/tui-reload-command and fix/reload-idle-only: /reload requires
an idle agent.
2026-07-22 14:29:28 +08:00
Turtle
19f9a509aa
feat(cli): tell the agent where its own source lives and invite it to extend dsh
...
Squashes feat/dsh-system-prompt-source-path and feat/dsh-source-extend-hint.
2026-07-22 14:29:28 +08:00
Turtle
0e06d0691d
feat(examples): default agent configs to DeepSeek Pro Max Thinking
2026-07-22 14:29:28 +08:00
Turtle
7dbe99f008
feat(tui): badge queued steering count on the running status line
2026-07-22 14:29:28 +08:00
Turtle
c8cc087e05
feat(workspace-context): load .local. instruction overlays by default
...
Load a per-directory local overlay in addition to the base instruction
file, matching the Claude Code AGENTS.local.md / CLAUDE.local.md
convention for git-ignored personal guidance.
- New config `localInstructionFileCandidates`, default
`['AGENTS.local.md', 'CLAUDE.local.md']`; empty disables the overlay.
The default lives in the plugin Config schema, so every front door
(TUI/ACP/headless) reads .local. files consistently.
- Per project directory the plugin loads the first-existing base
candidate, then additively the first-existing local candidate,
rendered after the base so it takes precedence within the byte budget.
- Base and local tiers get distinct scope keys via a NUL sentinel
(scopeKey/decodeScopeKey) so they never collide in the baseline map,
pending window, or version cache.
- The fixed user-global $DSH_HOME/AGENTS.md stays base-only.
Docs: README (config, lifecycle, Known Limitations), regenerated
config-catalog, and a new bilingual Agent Note cross-linked to the
owning workspace-context note. 100% per-file coverage retained.
2026-07-22 14:29:28 +08:00
Turtle
45868b940f
feat(tui): startup banner iterations — slogans, sweep reveal, then no banner
...
Squashes three linearized steps (feat/tui-startup, feat/banner-reveal,
feat/remove-banner): the banner experiment converged on removing the
startup banner entirely; later commits restore it borderless and add the
brand gradient.
2026-07-22 14:29:28 +08:00
Turtle
6baa030594
feat(cli): dsh CLI with personal config overlays from ~/.config/dsh
2026-07-22 14:29:28 +08:00
Turtle
a2f17d71ed
fix(vendor/include): config hot-reload keeps the last good tree and its patches
2026-07-22 14:29:28 +08:00
Turtle
a409f8b4ba
feat(tui): detect terminal color scheme and apply light-optimised palette
...
Squash of the linearized fix/tui-color-scheme-v2 merge and the follow-up
catalog regeneration. Renders error cause chains at every diagnostic seam
(origin/fetch-failed-diagnostics) and adds color scheme detection with a
light-terminal palette.
2026-07-22 14:29:27 +08:00
Turtle
0c9a4d7c28
Retire the readline front door and the repl-agent example
...
Delete packages/ui/stdio and examples/repl-agent; rename stdio-demo to
@deepseek-ai/dsh-tui-demo (TUI-only, refuses pipes before Loader boot).
tui-agent owns the coding composition inline; echo-agent and the CI demo
smoke move to the one-shot cli-demo bin, which gains -p/--prompt. The
UI-independent with-key e2es move verbatim to tui-agent. SDK wizard's
'stdio' interface becomes 'tui'. PTY testing stays confined to TUI
surfaces; all other subprocess tests ride pipes.
See .agents/notes/implemented/simplification/2026-07-20-retire-readline-front-door.md
2026-07-22 14:29:27 +08:00
Tianyi Cui
4267076407
Merge pull request #493 from deepseek-harness/worktree/disable-deepseek-web-search-e2e
...
test(ci): stabilize real-API and Windows coverage gates
2026-07-22 13:55:35 +08:00
Tianyi Cui
450e1fff6a
test(windows): exclude deferred coverage paths
2026-07-22 13:47:24 +08:00
Tianyi Cui
6f16715299
test(windows): skip process-group disposal race
2026-07-22 13:37:44 +08:00
Tianyi Cui
cfdc6fcdfb
test(windows): skip remaining unstable coverage cases
2026-07-22 13:28:52 +08:00
Tianyi Cui
1ac85eefee
Merge remote-tracking branch 'origin/master' into worktree/disable-deepseek-web-search-e2e
2026-07-22 13:11:00 +08:00
Tianyi Cui
4643e0de10
test(windows): make coverage fixtures portable
2026-07-22 13:10:48 +08:00
Tianyi Cui
86f115a07c
Merge pull request #263 from deepseek-harness/scoped-layers-store
...
refactor(scope): shared scoped-layer storage
2026-07-22 13:04:16 +08:00
Tianyi Cui
d1236963bf
docs(config): refresh catalog after Windows merge
2026-07-22 12:37:51 +08:00
Tianyi Cui
48395a937c
test(web): disable unreliable DeepSeek search smoke
2026-07-22 12:37:42 +08:00
Tianyi Cui
8d6a677a07
Merge remote-tracking branch 'origin/master' into scoped-layers-store
...
# Conflicts:
# docs/architecture.md
2026-07-22 12:34:27 +08:00
Tianyi Cui
0180cdecd0
fix(scope): detach drained entry generations
2026-07-22 12:06:42 +08:00
Tianyi Cui
6646ef04ac
Merge pull request #335 from deepseek-harness/worktree-windows-runtime
...
feat(windows): extend runtime and test portability
2026-07-22 10:30:32 +08:00
Tianyi Cui
c92c24667d
Merge pull request #431 from deepseek-harness/fix/tui-color-scheme-v2
...
fix(tui): detect terminal color scheme; harden the flaky sandbox probe-timeout test
2026-07-22 10:29:35 +08:00
Tianyi Cui
f8008b571d
fix(tui): preserve footer truncation after merge
2026-07-21 23:47:14 +08:00
Tianyi Cui
53615c91e7
Merge master into worktree-windows-runtime
2026-07-21 23:39:14 +08:00
Tianyi Cui
f90b64ac26
Merge pull request #479 from deepseek-harness/worktree/scoped-layers-implementation
2026-07-21 23:34:15 +08:00
Tianyi Cui
562a7f9da2
Merge pull request #451 from deepseek-harness/codex/session-title
...
feat: add log-backed asynchronous session titles
2026-07-21 23:30:31 +08:00
Tianyi Cui
d710259263
Merge master into fix/tui-color-scheme-v2
2026-07-21 23:21:44 +08:00
Tianyi Cui
2c36792b6c
docs(architecture): synchronize Chinese pair
2026-07-21 23:10:47 +08:00
Tianyi Cui
3176d232b8
Merge master into codex/session-title
2026-07-21 22:59:41 +08:00
Tianyi Cui
0cd8424d46
Merge pull request #462 from deepseek-harness/feat/xdg-single-root-home
...
refactor(paths): collapse harness home resolution into one resolver
2026-07-21 22:42:17 +08:00
Tianyi Cui
04d7b435d2
docs(scope): record shared scoped-layer decision
2026-07-21 22:24:45 +08:00
Tianyi Cui
e56bcb4d5c
refactor(commands): use shared scoped layers
2026-07-21 22:16:06 +08:00
Tianyi Cui
1d209932d6
refactor(scope): migrate tool and prompt layers
2026-07-21 22:14:49 +08:00
Tianyi Cui
57cd9ce2bf
Merge master into feat/xdg-single-root-home
2026-07-21 22:14:45 +08:00
Tianyi Cui
8351cdbe65
feat(scope): add scoped-layer storage
2026-07-21 22:09:19 +08:00
Tianyi Cui
d80dc21387
docs(agent-note): refresh shared scoped-layer proposal
2026-07-21 21:54:37 +08:00
Tianyi Cui
e4c5d4d6d8
Merge remote-tracking branch 'origin/master' into scoped-layers-store
...
# Conflicts:
# .agents/notes/proposed/architecture/2026-07-12-scoped-layers-store.i18n.yaml
# .agents/notes/proposed/architecture/2026-07-12-scoped-layers-store.md
# .agents/notes/proposed/architecture/2026-07-12-scoped-layers-store.zh.md
# docs/rfc/INDEX.md
2026-07-21 21:42:32 +08:00
Tianyi Cui
26b3717419
Merge pull request #399 from deepseek-harness/codex/enforce-tool-cancellation
...
fix(tools): enforce cooperative cancellation
2026-07-21 21:25:53 +08:00
Tianyi Cui
af1e40e7c6
Merge master into feat/xdg-single-root-home
2026-07-21 21:20:43 +08:00
Tianyi Cui
3a895ce815
Merge master into codex/session-title
2026-07-21 21:11:32 +08:00
Tianyi Cui
2c6c565647
Merge remote-tracking branch 'origin/master' into codex/enforce-tool-cancellation
2026-07-21 20:40:52 +08:00
Tianyi Cui
717fa47535
Merge pull request #455 from deepseek-harness/chore/doc-sync-single-pass
...
chore(gates): route doc-sync through the run-gates scheduler
2026-07-21 20:37:37 +08:00
Tianyi Cui
5acd0c6305
Merge commit 'refs/codex/unblock/master-current' into HEAD
...
# Conflicts:
# package.json
2026-07-21 20:31:42 +08:00
Tianyi Cui
5d2f6da843
Merge remote-tracking branch 'origin/codex/enforce-tool-cancellation' into codex/enforce-tool-cancellation
...
# Conflicts:
# packages/core/scope/tests/invariant.spec.ts
# packages/ui/tui/tests/harness.ts
2026-07-21 20:27:58 +08:00
Tianyi Cui
70e50cd9be
Merge commit 'refs/codex/unblock/master-current' into HEAD
...
# Conflicts:
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/bash-spill/session.jsonl
# examples/acp-agent/tests/snapshots/escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/escalation-rejected/session.jsonl
# examples/acp-agent/tests/snapshots/fs-escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/session.jsonl
# packages/context/workspace-context/tests/workspace-context.spec.ts
# packages/core/agent/src/index.ts
# packages/support/invariants/tests/invariants.spec.ts
# packages/ui/acp/src/index.ts
# packages/ui/tui/tests/harness.ts
# packages/ui/tui/tests/tui.spec.ts
2026-07-21 20:20:53 +08:00