dsh-hiboard-push
Push task-completion messages to the Huawei HarmonyOS negative-one-screen ("Today" / 智慧助手·今天) as service cards, from a DeepSeek Harness (dsh) agent. Wire-compatible with the OpenClaw today-task skill: the same HIBoard upload endpoint, the same payload contract, and the same card rendering rules — so the same authCode from 负一屏 works here too.
When a task finishes, the agent calls hiboard_push with the task name and
the Markdown result; the card appears on the phone's Today feed moments
later. No client UI, no extra runtime dependencies (HTTP uses the Node
built-in fetch).
Install
dsh plugin --profile web add github:Entity-Him/dsh-hiboard-push
Get the authCode
- On the phone: open 负一屏 (assistant-today).
- 我的 → 动态管理 → 关联账号 → Claw 智能体 → get the authorization code.
- Configure it (see below).
Configure the authCode
The authCode is resolved at push time from, in order:
- The
hiboard-pushsettings section — the dsh Settings panel (registered namespace, shown automatically once the plugin is mounted), backed bysettings.yaml. - Plugin entry config —
config.authCodein thehiboard-pushrow of the profile'sagent.cordis.yml. - Environment variable:
export DSH_HIBOARD_AUTH_CODE='your-auth-code'
Usage
The plugin registers two tools:
hiboard_push
| Parameter | Required | Description |
|---|---|---|
name |
✅ | Task name; card title, scheduleTaskName, and summary. |
content |
✅ | Markdown body (≤ 5000 chars), rendered verbatim on the card. |
result |
❌ | Result summary / status label. Default: 任务已完成. |
schedule_id |
❌ | Periodic-task ID; keep the same ID to group repeated cards. |
dry_run |
❌ | Build and validate the payload without sending (no authCode needed). |
The card style follows which fields are filled (same as today-task):
- Standard task card —
name+content+result. - Periodic task card — the same, with a
schedule_id. - Summary-only card —
name+resultwithoutcontent.
hiboard_verify
Sends a minimal real connection-test card to the phone, to confirm the authCode and network path end to end.
API contract (for reference)
- Endpoint:
POST https://hiboard-claw-drcn.ai.dbankcloud.cn/distribution/message/cloud/claw/msg/upload - Headers:
Content-Type: application/json; charset=utf-8,x-trace-id: task-push-<yyyyMMddHHmmss> - Body:
{
"data": {
"authCode": "<authCode>",
"msgContent": [
{
"msgId": "dsh_<epoch-sec>_<rand>",
"scheduleTaskId": "",
"scheduleTaskName": "任务名称",
"summary": "任务名称",
"result": "任务已完成",
"content": "# Markdown",
"source": "OpenClaw",
"taskFinishTime": 1710000000
}
]
}
}
- Success: HTTP 200 with
"code": "0000000000". "code": "0000900034"means the authCode is invalid.
Development
node --test test/core.test.mjs
License
MIT
No comments yet. Be the first to write one.