AI Agent Hub
Back to plugins
🖥️

dsh-git-status

Client Updated 2026.08.14

Run the following command in DeepSeek Harness:

dsh plugin install weiyuou-chowbus/dsh-git-status

Paste the following prompt into your AI chat to install this plugin:

Install it by running dsh plugin install weiyuou-chowbus/dsh-git-status in the DeepSeek Harness terminal; the source code is at https://github.com/weiyuou-chowbus/dsh-git-status.

About this plugin

You are buried in a DSH conversation, the code in front of you is mid-refactor, and all you need is a quick glance at the current branch plus a one-click switch to keep going. The old ritual—alt-tab to a terminal, type git branch, git checkout, re-focus back into chat—costs you the thread of thought you were following. dsh-git-status dissolves that ritual: a live branch chip sits right in the composer tool row, showing the branch name and a clean-or-dirty dot, refreshed every three seconds. One click opens a filterable list of local branches, and a confirmed click performs the checkout, all without the chat ever leaving your screen.

The chip is workspace-aware. DSH sessions each carry their own working directory, and the plugin reads it from the active session, so the moment you flip between workspaces the chip flips with it. The branch list is sorted by most recent committer and annotated with upstream tracking info, making it easy to spot feature branches, hotfix lines, and main. Safety is built in: if the working tree has uncommitted changes the checkout is simply blocked, and you must explicitly choose Stash and switch, which runs git stash push including untracked files, performs the switch, and automatically restores the stash if anything goes wrong. Under the hood every git call goes through child_process.execFile with an argument array, the working directory is realpath-resolved and checked against the registered workspace list, and the target branch is validated against the output of git for-each-ref refs/heads before it is ever passed to a command—no shell string interpolation, no arbitrary path traversal, no branch-name injection.

This plugin is for developers who live inside DSH for their day-to-day coding, who bounce between branches several times an hour, and who would rather see the branch at a glance and click to switch than break focus to open a terminal. It needs no build step, no extra configuration beyond an optional repoPath fallback, and the chip simply appears in the tool row after a restart and a page refresh.

Use Cases

  • Glance at the current branch name and dirty state without opening a terminal
  • Browse local branches and switch without leaving the chat interface
  • Branch indicator auto-follows the active session directory across workspaces

Best For

  • Developers who code heavily in DSH and switch Git branches several times an hour
  • Users who want to preserve conversational flow and cut down terminal context-switching
  • DSH users juggling multiple workspaces and needing constant branch-state awareness