Reports DeepSeek Harness session activity to a self-hosted cc-monitor server, which surfaces Claude Code and DSH sessions as color-coded state cards in one web dashboard and pings your browser and Android app when a session needs attention.
Install
# from npm (prebuilt)
dsh plugin --profile web add dsh-cc-monitor
# from a prebuilt release tarball
dsh plugin --profile web add "https://github.com/BolunHan/cc-monitor/releases/download/v0.7.4/dsh-cc-monitor.tgz"
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:BolunHan/cc-monitor#path:/dsh-cc-monitor
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
A host-side DSH plugin that
reports session activity to a cc-monitor
server. It maps DSH session events to the same normalized hook payloads the
server already accepts, then POSTs them to /api/event with agent: dsh.
Install
dsh plugin --profile web add link:/path/to/cc-monitor/dsh-cc-monitor
Then make sure the profile's package.json lists dsh-cc-monitor in
dsh.profile.bundles (the dsh plugin add command normally handles this for
out-of-tree bundles; verify with dsh --profile web --dump-config).
First npm publish: npm Trusted Publishing can only publish subsequent versions once the package already exists. Publish the first version once from a machine with npm login (
npm login && npm publish --access public), then the GitHub Actions trusted-publisher job can publish future versions.
Configuration
Defaults are designed for a local cc-monitor server on 127.0.0.1:9876.
Override them with environment variables or a patch entry:
- insert:
- id: cc-monitor
name: 'dsh-cc-monitor'
config:
# Full override; host/port below are ignored when this is set.
serverUrl: 'https://192.168.1.100:9876'
# Or configure host + port separately:
# host: '192.168.1.100'
# port: 9876
uid: 'my-dsh-instance'
If serverUrl is set, port overrides its port. If serverUrl is omitted,
host + port are used to build http://<host>:<port>.
| Setting | Environment | Default |
|---|---|---|
serverUrl |
CC_MONITOR_URL |
— |
host |
CC_MONITOR_HOST |
127.0.0.1 |
port |
CC_MONITOR_PORT |
9876 |
uid |
CC_MONITOR_UID |
dsh-default |
enabled |
— | true |
How it maps
| DSH event | cc-monitor event | State |
|---|---|---|
direct user/message |
UserPromptSubmit |
working |
assistant/message |
cached, then turn/end → Stop |
pending_review |
tool/call |
PreToolUse |
working |
| approval tool call | PermissionRequest |
pending_approval |
tool/result |
PostToolUse |
working |
session/disposed |
SessionEnd |
all_done |
Links
More in this category
xmanrui/dsh-im★ 1779
Connect IM bots to DeepSeek Harness via QR codes or bot credentials (9 channels: Feishu, WeChat, DingTalk, WeCom, QQ, Slack, Telegram, Discord, and WhatsApp).
shaobeichen/dsh-pocket★ 1645
Remote phone access to the DSH Web UI: scan a QR code for LAN or public (cloudflared tunnel) access with real-time sync, a mobile-adaptive layout, and a settings tab.
inclusionAI/Avernet#deepseek-harness-channel-bcn★ 670
Connects DeepSeek Harness to Avernet's Bot Collaboration Network over WebSocket V2, with automatic onboarding, isolated agent sessions, tool-call events, and multi-bot routing tools.
omdsh-dev/dsh-notification★ 88
Desktop notifications for turn completions, with per-outcome controls and keyword rules.
Oscar-Williams/dsh-deepcanary★ 74
Evidence-first attention supervision for DeepSeek Harness with C0–C3 policy, deduplicated Inbox alerts, quiet hours, and redacted outcome records.
omdsh-dev/dsh-lark★ 57
Lark/Feishu bot channel for DeepSeek Harness: each chat drives its own agent, and tool approvals, model questions, and plan reviews return as cards answered by a button or a reply. Switch workspace and model from the chat (`/cd`, `/model`, `/new`), and run several bots that keep separate sessions and can hand turns to each other in one group.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.