dsh-sidebar
提供网页端侧边栏的 Git 源码管理功能
AI 分析
适合需要在网页端直接进行暂存、提交和推送等 Git 操作的开发者。
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:auggie246/dsh-sidebar说明文档
阅读完整 README ↗Usage
Source Control
Use the Source Control card to work with the current repository:
- Select + or − beside a file or group to stage or unstage changes.
- Select discard twice to confirm that you want to throw away a file's changes. See Security for what discard removes.
- Enter a commit message and select Commit. Press ⌘/Ctrl + Enter to commit from the keyboard.
- If no files are staged, committing stages all changes first—similar to VS Code's Source Control view.
- Use the sync controls to fetch, pull, or push. Pull and push require an upstream branch.
The card refreshes while it is visible, so branch and working-tree state stay current.
Commit Graph
The Commit Graph card displays commits from every local and remote ref. Each row shows the subject, the author's colored initials, and the relative time; hover a row for the full author, date, and hash. Scroll to load older commits. Right-click a commit to copy its hash or message.
Explorer
The Explorer card is a view-only file explorer over the current session's workspace. Unlike the Git cards it is not git-bound: it renders in any workspace, git repository or not, and it hides nothing — dotfiles, .git, and gitignored entries all show.
- Select a folder to expand or collapse it. Each expansion lists that one folder, so large folders such as
node_modulescost nothing until you open them, and a folder with more than 1000 entries shows a "+N more" row. - Select a file to open a read-only preview Panel Tab. One tab opens per file, selecting the file again focuses its tab, and a
.mdor.markdownfile opens as a Markdown preview. Selecting a file also opens the Panel if it is closed. - The card refreshes while it is visible by re-listing only the workspace root and the folders you expanded.
- View-only means exactly that: the card renders the tree and opens previews. Creating, renaming, moving, and deleting files is out of scope.
Customize the sidebar
Select the gear icon in the sidebar header to show or hide cards. Your choice is saved in the browser, so it remains after reopening DSH Web.
Configuration and privacy
There is nothing to configure. The plugin uses your existing Git credentials and configuration on the DSH Web host. Card visibility and layout state (Sidebar open/closed and width, Panel open/closed and height) are stored only in this browser — globally, shared by every workspace — under dsh.rsidebar.cards.v1 and dsh.rsidebar.panel.v1.
Try it for one session
Want to try the sidebar without installing it permanently? The repository includes a dynamic plugin that an agent can load into the running DSH process. It disappears when DSH restarts. See dynamic/README.md for the one-session setup prompt.
Troubleshooting
- The sidebar is missing: confirm the composition entry is in the Web profile, restart
dsh web, then open the arrow on the far right edge. - “Not a git repository”: open a session whose workspace is inside a Git repository.
- Fetch, pull, or push fails: check that Git is installed and that the host has the required Git credentials. Pull and push also need an upstream branch. On hosts where DSH runs the session under its file sandbox, ssh can refuse its system config because the sandbox masks file ownership outside the workspace ("Bad owner or permissions on /etc/ssh/ssh_config.d/…"). The card retries on that error with your own
~/.ssh/config, then with a config-free ssh — so your host aliases, ports and identity settings still apply and no key name is hard-coded. The same push or pull in your own terminal is never affected. - A commit fails: make sure Git has a configured author identity and that your commit message is not empty.
- A prompt icon still shows as a box: the embedded icon set covers Powerlevel10k's default icons. If your prompt configures an icon outside that set, add its codepoint to
scripts/nerd-icon-glyphs.txtand runnpm run build:nerd-icons.
Configuration and privacy
There is nothing to configure. The plugin uses your existing Git credentials and configuration on the DSH Web host. Card visibility and layout state (Sidebar open/closed and width, Panel open/closed and height) are stored only in this browser — globally, shared by every workspace — under dsh.rsidebar.cards.v1 and dsh.rsidebar.panel.v1.