deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
A DeepSeek Harness plugin that shows the git status of the current workspace. It is read-only: it never creates, modifies, or deletes any file.
git_status model tool — callable through the normal tool pipeline.
Returns structured JSON with the branch, commits ahead/behind upstream,
grouped change counts, the file list, and the most recent commit. It accepts
an optional cwd; when omitted it inspects the current session workspace.Clean workspace — the chip shows the branch and a green "✓ clean" summary:

Workspace with changes — the change count is a clickable text that opens the grouped file list:

Workspace with changes, file list expanded — grouped by conflicted / staged / unstaged / untracked; each row shows the porcelain status code, the path, and the original path for renames:

0.1.2-alpha.4 (the plugin peer-depends on the same @deepseek-ai/* package
versions). For older Harness releases use plugin 0.3.0 (0.1.0-rc.7) or
0.4.0 (0.1.1-rc.1).
dsh plugin --profile <name> add dsh-plugin-git-status
If the CLI is not installed globally:
npx @deepseek-ai/dsh plugin --profile <name> add dsh-plugin-git-status
Replace <name> with your profile name (e.g. web). Restart the Harness
process after installing, then hard-refresh the browser page.
For a reproducible install, pin a commit (replace the example with the real commit SHA):
dsh plugin --profile <name> add github:<owner>/dsh-plugin-git-status#0123456789abcdef0123456789abcdef
The panel auto-refresh cadence is configurable at runtime from the browser:
open Settings → Plugins and edit the Git status card
(refreshIntervalMs), like the terminal plugin's command-timeout card. The
change is written to the Host settings document and takes effect live (the
panel re-reads it when the tab becomes visible again).
It can also be set through the plugin's Cordis row. Add a config block for
the dsh-plugin-git-status row in your profile's cordis.patch.yml:
- id: dsh-plugin-git-status
name: dsh-plugin-git-status
config:
refreshIntervalMs: 60000
refreshIntervalMs — milliseconds between automatic refreshes
(default 30000). Set it to 0 to disable auto-refresh entirely; the panel
then only updates on the manual refresh button or when the workspace
changes.Use the CLI's update and remove commands:
dsh plugin --profile <name> remove dsh-plugin-git-status
dsh plugin --profile <name> add dsh-plugin-git-status
The plugin stores nothing. Git status is computed on demand by running
read-only git status / git log commands in the inspected directory.
git status -z, so
they are preserved exactly.Notable changes per release are documented in CHANGELOG.md.
pnpm install
pnpm typecheck
pnpm test
pnpm build
pnpm build emits lib/index.js (Host), lib/typert.js (Remote descriptor),
and lib/client.js (browser bundle).
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。