moving-target
IdentifiedDSH plugin: cold-start context — distills your first prompts into one goal paragraph injected into every new session
moving-target
A DeepSeek Harness (DSH) plugin that gives every new agent session a one-paragraph project goal — distilled from your own session history, frozen until you choose to update it.
What it does
Project context lives between two extremes:
- No memory — the agent re-deduces the project's purpose from the code every session. Cheap to maintain, slow to start.
- Everything documented — specs and history files in the repo. Fast to start, but they go stale, and every stale idea contaminates every future session's context.
moving-target is the lightweight middle ground: a single ~10,000-foot overview of what the project is about, written once, injected into every new session, and updated only when you say so.
moving-target-bootstrap— run once per project. It extracts the first prompt you sent to every past session in the workspace (a deterministic scan of the DSH session store — no LLM in the extraction itself) and has the agent distill them into one goal paragraph, saved to.moving-target/summary.mdin the repo.- From then on, every new session starts with that paragraph already injected — before your first prompt. Resumed sessions and un-bootstrapped projects are untouched.
moving-target-update— refreshes the summary from the current session only. The goal moves as a project evolves; you decide when the frozen overview follows it. The current summary is injected into the update prompt; the agent never edits the file behind your back.
Not bootstrapped? Nothing happens — zero overhead.
Why it exists
AGENTS.md-style goal statements rot because the goal is a moving target, and nothing marks the moment it moved. The truest record of what a project is about is the first thing you said about it, every time you started a session. moving-target turns that record into context that stays fresh on your terms.
Install
Plugins install per-profile. From this repo:
npm pack
dsh plugin --profile <your-profile> add file:/path/to/moving-target-0.1.0.tgz
Mount it by adding an insert row to the profile's cordis.patch.yml:
- insert:
- id: moving-target
name: moving-target
Quick start
/moving-target-bootstrap # once per project; re-runnable, overwrites
Then do nothing — new sessions pick up the summary automatically. When a session changes or expands the project's frontier:
/moving-target-update # refresh the summary from this session
The standalone extractor also works without the plugin:
npx moving-target-extract /path/to/workspace
# 2026-08-22 20:19 /myproject Here, in this folder, I want to implement…
.gitignore guidance
.moving-target/ is personal context distilled from your session history — ignore it
by default:
.moving-target/
Commit it deliberately only if the team agrees the summary should be shared (and re-bootstrapped collectively).
Requirements
- Node ≥ 22.6 (type-stripping) and the
zstdbinary on PATH. - Sessions are read-only to moving-target; it never writes to the DSH store.
Caveats
- The summary is a snapshot; refresh it deliberately (
bootstraporupdate). - Subagent sessions are excluded; only sessions whose first message came from a human count.
- The injected summary is model-facing context — visible in transcripts, not a substitute for a real prompt.
License
MIT — see LICENSE.
Comments
Loading…
Similar plugins
by weibaohui
DeepSeek Harness plugin: cron-driven scheduled items with a full-page management UI. Each item carries a title, a prompt, and a croner expression; executions spawn a fresh agent session in a bound wor
★ 0
JavaScript
Aug 19, 2026
dsh plugin --profile web add dsh-plugin-scheduled-itemsby chuxindd
Persistent task state and context-aware compaction for DeepSeek Harness coding sessions.
★ 0
MIT
TypeScript
Sep 20, 2026
dsh plugin --profile web add dsh-context-enhancementby QQQW114
DeepSeek Harness (DSH) plugin - inject context when user input or model output hits configured keywords, with toggleable/configurable rules and model-editable memory.
★ 0
MIT
JavaScript
Aug 17, 2026
dsh plugin --profile web add dsh-keyword-contextby Momojie-S
DSH plugin: hold busy-parent subagent notices, deliver as fresh turns when idle (hold-and-release)
★ 0
MIT
TypeScript
Sep 12, 2026
dsh plugin --profile web add @momojie-s/dsh-subagent-idle-deliveryby mikulo
DeepSeek Harness (DSH) plugin: pick a local .md prompt template with / when starting a new conversation; it binds the whole conversation with AGENTS.md-level authority.
★ 0
MIT
JavaScript
Sep 24, 2026
dsh plugin --profile web add @mikulo/dsh-prompt-switcherby ya8D
A customized natural-language compaction plugin. It gives you the ability to precisely trim context — sometimes even to fix a malfunctioning context.
★ 0
MIT
TypeScript
Aug 16, 2026
dsh plugin --profile web add @ya8d/dsh-directive-compact