Agent Skills › miantiao-me/giligili › giligili-device

giligili-device

GitHub

用于操控giligili硬件设备,支持BLE/TCP配网、密钥管理、控制台命令执行及语音/手势交互调试。适用于设备初始化、远程运维、故障排查及功能验证场景。

skills/giligili-device/SKILL.md miantiao-me/giligili

Trigger Scenarios

需要配置WiFi或API密钥 远程执行设备诊断命令 排查语音或相机故障 模拟手势或应用交互

Install

npx skills add miantiao-me/giligili --skill giligili-device -g -y
More Options

Use without installing

npx skills use miantiao-me/giligili@giligili-device

指定 Agent (Claude Code)

npx skills add miantiao-me/giligili --skill giligili-device -a claude-code -g -y

安装 repo 全部 skill

npx skills add miantiao-me/giligili --all -g -y

预览 repo 内 skill

npx skills add miantiao-me/giligili --list

SKILL.md

Frontmatter
{
    "name": "giligili-device",
    "description": "操控叽哩叽哩 (giligili) 设备——WiFi\/API 密钥配网(BLE\/TCP)、控制台命令、应用与手势、豆包 S2S 语音会话调试。当需要给设备写入凭证、远程执行命令、排查语音\/相机问题或解释交互时使用。"
}

giligili 设备操控

设备身份

  • BLE 名 Giligili,service 0x5A10,地址为 efuse MAC 派生的 固定随机静态地址(每次 boot 不变)。
  • TCP 控制台:设备同网段 nc <ip> 23,提示符 giligili> ,单客户端。
  • USB 串口监视:esp_idf_monitor / idf.py monitor。
  • 设备 IP:通过串口日志、路由器客户端列表或 BLE 0x5A12 状态特征读取。
  • 自动化冒烟: TCP 控制台命令即冒烟面 — health/capabilities/ cam on|off/tap/swipe/uistats/uimode/vtstats/uptime; 设备负载过高时 console 慢 >30s 属正常, 超时重试; 命令语义见 docs/系统交互与日志.md。

配网与密钥(BLE 0x5A13 或 TCP 同一套命令)

命令 说明
ssid\npassword(写 0x5A11) WiFi 配网,存 NVS
key doubao_key <key> 豆包 S2S X-Api-Key(新版控制台唯一鉴权因子,无 appid)
key ark_key <key> 方舟大模型 Bearer(识图)
key search_key <key> 融合信息搜索 API key(联网搜索)
keys 查询各密钥是否已写(不回显内容)
keydel <name> 擦除任意 NVS 键(清历史残留用,不受白名单限制)

密钥持久化在 NVS keys 命名空间,应用层不读取密钥明文——session JSON 里的 {{key_name}} 占位符由固件在发送前替换。

控制台命令全集

查询: status · capabilities · health · uptime · servo(回读角度/温度/动) · imu · mag · power · touch · environment · audio · nfc · s2s · keys · uistats(帧数/帧错误/耗时,JS 兼容字段为零) · uimode(当前界面) · logs [n](日志环) 操作: servo <yaw> <pitch> <ms>(0.1°) · torque 0|1 · led r g b · pixel i r g b · led clear · ir <addr> <cmd> · beep <freq> <ms> · vol <0-100> · bright <0-255> · cam on|off|freeze · tap <x> <y> / swipe <x0> <y0> <x1> <y1>(虚拟触摸注入, 测试用) · wifi <ssid> <pass> · key <名> <值> · keydel <名> · reboot 完整对照表见 docs/系统交互与日志.md。

交互手势

缘区 = 四边条带(上 y<48 / 下 y>184 / 左 x<52 / 右 x>268), 位移 >35px 且主轴占优。 会话/相机/扫码内禁用左右缘(防误杀), 只保留下缘上滑退出 + 上缘下滑控制中心(会话中整屏大幅上滑亦可退出)。

  • 上缘下滑:控制中心(四宫格: 左列音量+/−, 右列亮度+/−, 格内显示当前值; 点格外关闭; 覆盖层不切 mode, 会话中可调)。
  • 下缘上滑:回主屏——会话/相机/扫码=退出, 设置/屏保=回主屏。
  • 左缘右滑:进屏保(主屏/设置/自检/NFC 屏生效)。
  • 右缘左滑:进设置(主屏/屏保生效; 设置内右滑=回主屏, 自检/NFC 内=回设置)。
  • 桌面横滑 = 应用分页(指示点跟随), 点按图标 = 进入应用。
  • 相机应用内点按 = 拍照识图; 其他屏左下角有返回按钮(左缘竖条底部)。
  • 屏保:点按 = 回主屏; 进屏保 1 分钟后隐藏日期, 时间全屏漂移。
  • 设置里"运行自检" → 自检页: capabilities() 能力位 + 网络/key 状态, "动一动" 实体测试 + "舵机归零"(当前位置存 NVS 零位); 返回按钮回设置。
  • 摸头手势 (Si12T 三段): 轻拍→开心表情+beep; 前后抚摸→开心+点头/摇头。
  • NFC 刷卡: NTAG 卡写 giligili:<appid> 文本记录 → 直接进应用; 设置页"NFC 写卡"可自己烧卡。
  • WiFi 二维码配网:桌面没联网时显示离线页 → 点"扫码连 WiFi"进相机扫码 (quirc 片上解码 WIFI:S:ssid;P:psk;; 标准格式)→ 写 NVS 重连。 原生接口见 native/src/dev.rs 的扫码与配网函数;下缘上滑退出扫码。

应用与豆包 S2S

  • 全部 9 个应用 = 各自一条 S2S WSS 会话(Seeduplex 全双工,纯 JSON 文本帧)。
  • 进应用才连 WSS;退出 session.close + 断连,上下文不保留。
  • 会话配置在 native/src/agent.rs 的 build_session():{session, extension} 同级字段; {{search_key}} 占位符固件替换,只在 dev::has_key("search_key") 时才开搜索。
  • 每应用独立音色 APPS[].voice;dialect 走 extension.tts.extra.explicit_dialect (仅 vivi/小何/云舟/小天四音色支持方言);music → dialog.extra.enable_music。
  • FC schema 在 native/src/apps.rs::tool_def,执行在 native/src/tools.rs::run:express 复合表达(表情+动作+灯+声, 情绪表演优先) / dance / take_photo→Ark 识图 / nod / shake_head / look(方向枚举) / look_at(归一化坐标) / tilt_head / servo / light / led_pixel / beep / battery / power / environment / volume / brightness / emote / blink / close_mouth / ir_send / head_status(舵机回读);应用按人设挂子集 (APPS[].tools)。
  • 音频:上行 16kHz PCM(板载 24k 重采样),下行 24kHz PCM 直通 AW88298。
  • 进应用 ready 后 ai.speak(greet) 打招呼(speech_text_buffer.commit,不经模型); ai.say 注入用户文本;表情见 native/src/face.rs(移植自 puterjam/muspi 表情系统)。

排障速查

  • caps 里 a=音频 c=相机;keys 查密钥;health 查内存(internal 需 >16K 连续)。
  • S2S 连不上:先 keys 确认 doubao_key;串口看 s2s: 日志(ws closed/error 都有 logid)。
  • 相机:cam on 报 open /dev/video2 = GC0308 未探测(排线/电源)。
  • 上行音频节奏由 board_audio_mic16k 阻塞驱动 = 天然 20ms 节拍,不要另加定时器。

Version History

  • c767c4e Current 2026-11-02 08:43

Same Skill Collection

skills/giligili-develop/SKILL.md

Metadata

Files
0
Version
c767c4e
Hash
7d22ad59
Indexed
2026-11-02 08:43

홈 - 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-11-03 02:48
浙ICP备14020137号-1