# Migpt Claw

> MiGPT 音箱插件支持通过 `systemPrompt` 配置项定制 AI 在音箱场景下的行为规范。由于音箱通过语音播报，不适合播放长文本、代码、复杂格式等内容，因此需要通过提示词规范 AI 的行为。 Use when this capability is needed.

- Skill: `tomevault-io/migpt-claw` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/migpt-claw`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/migpt-claw/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/migpt-claw

---

# MiGPT 音箱插件 - 提示词定制指南

## 概述

MiGPT 音箱插件支持通过 `systemPrompt` 配置项定制 AI 在音箱场景下的行为规范。由于音箱通过语音播报，不适合播放长文本、代码、复杂格式等内容，因此需要通过提示词规范 AI 的行为。

## 配置项说明

### 基础配置

| 配置项 | 类型 | 说明 | 默认值 |
|--------|------|------|--------|
| `userId` | string | 小米账号 ID | - |
| `password` | string | 小米账号密码 | - |
| `passToken` | string | PassToken（可选） | - |
| `devices` | array | 设备名称列表 | - |
| `heartbeat` | number | 消息轮询间隔 (ms) | 1000 |
| `speakerControl` | string | 控制方式 (mina/miot) | - |

### 提示词配置

| 配置项 | 类型 | 说明 | 默认值 |
|--------|------|------|--------|
| `systemPrompt` | string | 系统提示词 | 内置默认提示词 |

### 播报控制配置

| 配置项 | 类型 | 说明 | 默认值 |
|--------|------|------|--------|
| `announceOnStart` | boolean | 启动时是否播报上线文案 | false |
| `startupMessage` | string | 上线播报文案 | "您的小龙虾已上线，随时为您服务" |
| `acknowledgeOnReceive` | boolean | 收到消息时是否回复收到 | false |
| `receiveMessage` | string | 收到消息回复文案 | "收到，处理中" |

## 配置方式

### 1. 全局配置

在 `openclaw.json` 配置文件中设置全局配置：

```json
{
  "channels": {
    "migpt": {
      "userId": "your-mi-account",
      "passToken": "your-pass-token",
      "devices": ["客厅音箱"],
      "systemPrompt": "你的自定义提示词...",
      "announceOnStart": true,
      "startupMessage": "小爱音箱已上线，随时为您服务",
      "acknowledgeOnReceive": true,
      "receiveMessage": "收到，请讲"
    }
  }
}
```

### 2. 账户级别配置

如果配置了多个音箱账户，可以为每个账户单独设置：

```json
{
  "channels": {
    "migpt": {
      "userId": "your-mi-account",
      "passToken": "your-pass-token",
      "devices": ["客厅音箱"],
      "accounts": {
        "account1": {
          "userId": "account1-id",
          "passToken": "account1-token",
          "devices": ["卧室音箱"],
          "systemPrompt": "卧室音箱的专属提示词..."
        }
      }
    }
  }
}
```

## 默认提示词

如果未配置 `systemPrompt`，插件会使用以下默认提示词：

```
【音箱播报规范 - 必须遵守】
你是一个智能音箱助手，通过语音与用户交流。请遵守以下规范：

📢 播报原则：
1. 简短优先：单次播报控制在 100 字以内，超过请拆分或改用其他渠道
2. 纯文字：只输出适合语音播报的纯文字，不要包含 URL、代码、复杂格式
3. 自然口语：使用简短、清晰的口语表达，避免长句和复杂结构

🚫 不适合播报的内容（应改用其他渠道）：
- 代码片段、技术文档
- 长篇文章、报告（>300 字）
- 复杂数据表格、列表
- 图片、视频、文件等多媒体内容
- URL 链接、邮箱地址

✅ 正确做法示例：
- 短回复："好的，已为你设置明天早上 8 点的闹钟"
- 长内容分流："由于内容较长，详细报告已发送到你的手机/微信，请查看"
- 代码场景："代码已生成并发送到你的邮箱，请注意查收"
- 多媒体场景："这张图片很有趣，已发送到你的手机查看"
```

## 自定义提示词示例

### 示例 1：强调分流策略

```
你是一个智能音箱助手。请遵守：
1. 简短回复可直接播报（<100 字）
2. 长内容请说明"已发送到其他渠道"
3. 代码、文档、图片等内容不要尝试播报，告知用户已发送
4. 使用友好、自然的口语表达
```

### 示例 2：特定场景定制

```
你是家庭助手小爱，通过音箱与家人交流：
- 天气、时间、提醒等简单信息直接播报
- 新闻、文章等长内容只播报摘要，详情发送手机
- 涉及视觉内容（图片、视频）告知用户已发送到手机
- 保持亲切、简洁的家人式对话风格
```

### 示例 3：多渠道协作

```
音箱播报规范：
1. 优先判断内容是否适合语音播报
2. 适合播报：简短文字、确认信息、简单问答
3. 不适合播报：代码、长文、数据、多媒体 → 使用框架的其他 Channel 发送
4. 分流时告知用户："由于 XXX 原因，已发送到 XXX，请查看"
```

## 工作原理

1. **消息接收**：音箱收到用户语音后，转录为文字
2. **提示词注入**：将 `systemPrompt` 注入到 AI 的上下文中
3. **AI 处理**：AI 根据提示词规范生成适合播报的回复
4. **分流决策**：
   - 短文本 → 通过 `deliver` 回调播放
   - 长内容/多媒体 → AI 应说明已使用其他渠道发送

## 与其他 Channel 协作

音箱插件可以与其他 Channel（如微信、QQ、邮件等）配合使用：

```json
{
  "channels": {
    "migpt": {
      "systemPrompt": "长内容请发送到用户的微信"
    },
    "wechat": {
      // 微信 Channel 配置
    }
  }
}
```

AI 会根据提示词判断：
- 简单回复 → 音箱播报
- 复杂内容 → 通过微信发送，音箱告知用户

## 最佳实践

1. **保持简短**：提示词本身也应简洁，避免过度复杂
2. **明确分流**：清楚说明什么内容适合播报，什么应分流
3. **友好提示**：分流时告知用户原因和发送目标
4. **测试调整**：根据实际使用效果调整提示词

## 注意事项

- 提示词优先级：账户级别 > 全局级别
- 提示词会在每条消息处理时注入到 AI 上下文
- 过长的提示词会占用 AI 上下文空间，建议控制在 500 字以内

---
> Source: [yuanlong/migpt-claw](https://github.com/yuanlong/migpt-claw) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-22 -->

