DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Mihome — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
M

dsh-mihome

Mihome

Mi Home (米家) control for DeepSeek Harness agents — list homes/devices, read props, and control devices behind a human approval gate.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:SiriusWJ/dsh-mihome#e52349e75bba915db860ccbd849aa4cca2dcf446
READMECompatibilityVersions

Compatibility and provenance

Mihome is published as dsh-mihome and currently resolves to version 0.1.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
8/30/2026

Versions

0.1.0stable
8/30/2026
Latest
0.1.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 3
Weekly downloads
0
Last push
9/4/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

README

dsh-mihome

Mi Home (米家) control for DeepSeek Harness agents.
List homes/devices · read props · control devices — every state-changing call stops behind a human approval gate.

中文 · ·

Features

  • mi_health — connection check (account, region, home/device counts)
  • mi_list_homes — homes and rooms
  • mi_list_devices — devices with category/online status, filterable
  • mi_get_state — one device's common props (power, brightness, temperature, humidity, …)
  • mi_turn — set_power on/off (approval-gated)
  • mi_control — any miIO/raw_command (set_bright, set_properties/MIoT, …) (approval-gated)
  • mi_wait_for_state — poll a property until it reaches/leaves a state
  • mi_dashboard — full-home snapshot rendered as a live dashboard card in the Web UI (grouped by category, rooms, recent changes)

All state-changing calls go through the harness approval seam (requireApproval defaults to true) plus an optional category allowlist (allowedCategories). When the category cannot be resolved, the call is denied (least privilege).

Install

Requires dsh ≥ 0.1.0-rc.7 (verified against 0.1.1-rc.2).

dsh plugin --profile web add dsh-mihome     # from npm (recommended)
# or: dsh plugin --profile web add github:<owner>/dsh-mihome

Restart dsh --profile web afterwards. Manage it in Settings → Plugins.

No Xiaomi account? Demo mode

git clone https://github.com/<owner>/dsh-mihome
cd dsh-mihome && pnpm install && pnpm demo:mi    # fake Mi Home Cloud on http://127.0.0.1:8125
- id: mihome
  config:
    mode: demo
    baseUrl: http://127.0.0.1:8125

Then in DSH: "check Mi Home and list all devices", "turn the bedroom light to 60 brightness" (an approval popup appears; after approving, mi_get_state confirms brightness: 60). Open docs/demo.html to see the full UI without starting dsh at all — simulation chat, approval dialog and a live console connected to the emulator.

Paste-ready configs (demo / real cloud / no approval) are in examples/cordis.patch.yml.

Real Mi Home (cloud)

MIHOME_USERNAME=<mi-account> MIHOME_PASSWORD=<mi-password> dsh --profile web
- id: mihome
  config:
    mode: cloud
    region: cn               # cn / de / ru / us / tw / sg / in …
    usernameEnv: MIHOME_USERNAME
    passwordEnv: MIHOME_PASSWORD
    requireApproval: true
    allowedCategories: [light, outlet, climate]   # optional allowlist

Credentials resolve through the harness credentials seam on every request (process env → .env fallback), so rotating them takes effect on the next call.

How it connects

The cloud adapter implements the community-documented Xiaomi Mi Home app API:

  1. Login via account.xiaomi.com/pass/serviceLogin → serviceLoginAuth2 (sid=xiaomiio, md5(password) uppercased) → STS redirect sets serviceToken / ssecurity.
  2. Calls to https://api.io.mi.com/app/<method> with nonce/signed-nonce (sha256(ssecurity + nonce)), RC4-encrypted params + sha1 signature for v2/*, and hmac-sha256 signature for miIO/raw_command.

This is a non-official protocol (see Xiaomi-cloud-tokens-extractor / python-miio for the community-proven flow) and may change if Xiaomi updates the app. Accounts requiring captcha/2FA at login are reported with a clear error instead of an obscure failure.

Development

pnpm install
pnpm typecheck && pnpm build && pnpm test   # signatures/crypto + demo-server e2e

Zero runtime dependencies on the host side: Node built-in crypto/fetch only.

License

MIT