picsky/dsh-pocket-console ↗★ 0
dsh-pocket-console
支持通过飞书在手机端审批工具调用和回答问题 适合需要移动端远程审批AI工具调用或响应用户提问的场景
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:picsky/dsh-pocket-console说明文档
阅读完整 README ↗Configuration
Every value has a default, so the plugin works with no configuration. To tune it, override the row in your own profile layer — a patch replaces the row's entire config, so restate every key you want to keep:
$DSH_HOME/profiles/web/cordis.patch.yml
- id: pocket-console
config:
channel: dsh-pocket-console/providers/feishu.js
channelConfig:
domain: feishu # or lark
appName: Pocket console
# receiveId: 'ou_xxx' # optional: skip the scan and name a recipient
delaySeconds: 600 # desktop head start; 0 = both sides live at once
maxDetailChars: 1200
titlePrefix: DSH
resultNotify: idle # off (default) or idle
resultNotifyCooldownSeconds: 600
Three settings are the settings namespace, changeable at runtime from the Settings card without a restart: delaySeconds, titlePrefix, and resultNotify. The rest of the table is deployment-level: they exist so a deployment can retune the transport, and a person never has to read about them. The phone card follows the interface language through messages.js; locale is the fallback for a deployment that never opens the Web UI.
| Field | Default | Meaning |
|---|---|---|
channel | dsh-pocket-console/providers/feishu.js | Transport module |
channelConfig | {} | Transport-owned settings |
delaySeconds | 120 | How long the desktop GUI answers alone |
titlePrefix | DSH | Card title prefix |
resultNotify | off | idle sends each stopped session's result to the phone |
resultNotifyCooldownSeconds | 600 | Shortest gap between two result notices for one session |
mirrorTtlSeconds | 60 | How long a phone decision may still close the desktop composer |
locale | zh | Language of the cards sent to the phone (zh or en) |
Transport settings (channelConfig):
| Field | Default | Meaning |
|---|---|---|
appIdRef | DSH_FEISHU_APP_ID | Credential reference name |
appSecretRef | DSH_FEISHU_APP_SECRET | Credential reference name |
domain | feishu | feishu or lark |
receiveId | — | Name a recipient to skip the scan |
receiveIdType | open_id | open_id / chat_id / user_id / email |
appName / appDesc | see source | Prefilled app identity on the confirmation page |
createOnly | true | Keep the one-click flow to creating a new app; an existing one is bound with its own credentials |