focal-dsh
针对DeepSeek Harness的任务隔离、隐私优先记忆
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Haoran2099/focal-dsh说明文档
阅读完整 README ↗FOCAL for DeepSeek Harness
FOCAL is an experimental, privacy-first memory plugin for DeepSeek Harness. It filters an agent session into task-isolated memories and injects only the active task's bounded context into later model requests.
This is the DSH adaptation of
FOCAL: Filtered On-device Continuous Activity Logging for Efficient Personal
Desktop Summarization. The paper reproduction
code remains in Haoran2099/focal.
Status
- Plugin version:
v0.1.1 - DSH compatibility:
0.1.0-rc.6 - Verified against official commit
47f943859bef60e4160492346772ded9b24f765a - Clean-install and Host-load tested with the official
0.1.0-rc.6CLI - Host plugin only; no Web UI extension yet
DeepSeek Harness is currently a developer preview and warns that compatibility- breaking changes will occur. This package pins the supported DSH interfaces intentionally.
Install
Install directly from the tagged GitHub source. The package is plain ESM and has no install-time build script.
dsh plugin --profile web add github:Haoran2099/focal-dsh#v0.1.1
dsh --profile web --dump-config
dsh --profile web
Use --profile headless instead to add FOCAL to one-shot CLI runs.
Remove it with:
dsh plugin --profile web remove focal-dsh
What it does
- Observes committed
session/eventrecords. - Routes direct user messages into task-isolated memories using a small, deterministic similarity filter.
- Selectively records tool name, success/failure, and path-like arguments.
- Never records assistant token streams, raw tool arguments, or raw tool-result content.
- Redacts common credentials and email addresses; direct user text is captured by default and can be replaced with a generic marker through configuration.
- Stores one bounded JSON document per session under
$DSH_HOME/focal-dsh/v1(normally~/.dsh/focal-dsh/v1). - Contributes an active-task runtime-context snapshot and an anti-injection policy section.
Commands and tools
Human command: