README.md
September 7, 2026 · View on GitHub
xiaotaozi-dsh
Xiaotaozi DSH: the xtz CLI as the user product, plus a shared DeepSeek Harness plugin layer.
English · 中文 · Conventions · Workflow · DeepSeek Harness
Xiaotaozi DSH is a product bundle on DeepSeek Harness: the xtz command in apps/cli/ is what users install, and plugins/ is the capability layer it seeds. Something broken, or a plugin missing? Open an issue.
Quick start
Requires Node.js ^22.19.0 || >=24.0.0 on PATH:
npm install -g xiaotaozi-dsh-cli
xtz start
The first xtz start prepares the official web profile and seeds every first-party plugin under plugins/, then serves the UI in your browser. Prefer one command? The install script (curl -fsSL https://raw.githubusercontent.com/kedoupi/xiaotaozi-dsh/main/apps/cli/scripts/install.sh | sh) and bun add -g xiaotaozi-dsh-cli install the same CLI; xtz still runs on Node.
Open commands: help/version, start/web, stop, restart, open, status, config path, doctor. Disabled by design: init, plugin, run/ask, config dump/defaults, update. xtz only manages a process it started and never steals port 3080. Full command and safety contract: apps/cli/README.md. The CLI pins DeepSeek Harness @deepseek-ai/dsh@0.1.1-rc.2; other DSH versions are not treated as compatible.
Plugin Center
Open Plugin Center below New Session. It occupies the conversation area; the sidebar and right workbench remain available. Installed is the default, with Xiaotaozi, Side workbench, Models and IM bots as built-in capabilities. Discover plugins uses the curated catalog. External top-level plugins appear under Installed and can be removed after confirmation. Removing a package does not promise to delete its credentials, sessions or saved data.
Runtime controls live under Settings → Advanced. The technical Loader
inventory is not a user settings page; use xtz doctor for diagnosis.
What you get
- Models — official subscription login and API keys on one page; chat lists only the models you checked.
- IM bots — nine chat channels (Feishu, WeChat, Slack, and more) plus an experimental AI Office connector, embedded in Plugin Center.
- WeCom office — calendar, docs, meetings, contacts, sheets, todos, and disk through the official
wecom-cli. - Xiaotaozi chrome — brand UI and the welcome notice stay on; switches cover archive, task board, git graph, and announce-to-agent.
- Side workbench — files, editor, Git, and terminal in a right-hand panel.
- Plugin Center — built-in configuration, installed plugins, and curated discovery with one-click install.
See Xiaotaozi DSH
Pre-center examples: these screenshots predate Plugin Center and do not show its new navigation or layout. Replacement captures are pending rendered acceptance.
The welcome overlay greets users the first time the web app opens.

Xiaotaozi keeps brand chrome and the welcome notice on; switches cover archive, task board, git graph, and announce-to-agent.

The task board uses a responsive five-column workbench with a truthful empty state and keyboard-accessible actions.

The Git graph identifies the current commit, branch references, and merge lanes without replacing the Host Git workflow.

The right-hand Sidebar workbench keeps files, editors, source control, diffs, and terminals beside the conversation.

Models shows connected vendors, optional smart routing (off by default), and the models chat will offer.

Add provider lists every vendor a user can still sign in to or key in.

Nine chat channels sit in the top tab strip; the shown Telegram empty state leads straight into manual token setup.

Telegram manual setup asks for a Bot Token; credentials stay in the Host credential store, not the client bundle.

The pre-center catalog lists curated third-party plugins with search and tabs.

The plugin detail page shows version, source, and the exact install specification.

Plugins
One installable package per job; every first-party plugin is seeded on the first xtz start. Each plugin also builds standalone from its github:kedoupi/xiaotaozi-dsh#path:plugins/<slug> Git path.
| Package | Occupies | What it does | Git path install |
|---|---|---|---|
dsh-providers | Plugin Center → Installed → Models | Vendor sign-in, API keys, model selection, and optional smart routing (no online learning, reasoning-effort routing, or durable router audit). EN · 中文 | github:kedoupi/xiaotaozi-dsh#path:plugins/providers |
dsh-im | Plugin Center → Installed → IM bots | Nine chat channels plus an experimental AI Office connector. EN · 中文 | github:kedoupi/xiaotaozi-dsh#path:plugins/im |
dsh-wecom-office | Plugin Center → Installed → IM bots → WeCom robot card | WeCom calendar, docs, meetings, contacts, sheets, todos, and disk via wecom-cli. EN · 中文 | github:kedoupi/xiaotaozi-dsh#path:plugins/wecom-office |
dsh-xtz-ui | Plugin Center → Installed → Xiaotaozi; Settings → Advanced | Brand chrome, archive, task board, git graph, and feature toggles. EN · 中文 | github:kedoupi/xiaotaozi-dsh#path:plugins/xtz-ui |
dsh-sidebar | Plugin Center → Installed → Side workbench | Right-hand files / editor / Git / terminal panel. EN · 中文 | github:kedoupi/xiaotaozi-dsh#path:plugins/sidebar |
dsh-market | Plugin Center | Installed capabilities and Discover plugins; click Install to add a third-party plugin. EN · 中文 | github:kedoupi/xiaotaozi-dsh#path:plugins/market |
Third-party Market
Plugin Center → Discover plugins installs third-party plugins from their upstream Git/npm sources; this repo only keeps the catalog rows in plugins/market (MARKET_PLUGINS) and never vendors those repos. Current entries: Agent Teams, Session Context, and OpenContext.
Official vs sandbox
Two Harness homes, never mixed:
| Official (users) | Sandbox (plugin development) | |
|---|---|---|
| Home | ~/.dsh | <repo>/.dsh-home (gitignored) |
| Command | xtz start | pnpm dev |
| Port | 3080 | 3081 |
| Plugins | Seeded by first xtz start; extras via dsh plugin --profile web add | link: from this workspace |
xtz and official installs never touch the sandbox; sandbox tooling never touches ~/.dsh.
Learn more
- Contributor entry: CONTRIBUTING.md; hard rules for agents: AGENTS.md
- Spec: docs/conventions.md; procedures: docs/workflow.md; doc map: docs/README.md
- Product snapshots: CHANGELOG.md; pinned versions: versions.json
- CLI contract and source:
apps/cli/





