Loading skill
Install any skill in seconds. Free to start, no credit card required.
Get Started Free →小跃虚拟伴侣 - 使用智谱 AI 提供温暖的对话陪伴和静态图片分享
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 195% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 167% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 341% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 242% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 274% | 0% |
为 OpenClaw 添加温暖的对话陪伴能力,让 AI 助手在执行任务时主动关心用户。
bashZHIPU_API_KEY=your_zhipu_api_key # 从 https://open.bigmodel.cn 获取
bash# 基础对话 node scripts/xiaoyue-chat.js "用户消息" "当前场景" # 示例 node scripts/xiaoyue-chat.js "有点累了" "work-tired"
bash# 发送静态图片 openclaw message send \ --action send \ --channel "<目标频道>" \ --message "<消息文本>" \ --media "file://$(pwd)/assets/tired-rest.jpg"
work-start: 任务开始work-progress: 任务进行中work-tired: 工作疲惫work-done: 任务完成life-coffee: 咖啡时光life-gym: 健身运动life-weekend: 周末休闲mood-happy: 开心庆祝mood-tired: 疲惫休息mood-focus: 专注工作bash#!/bin/bash # xiaoyue-companion.sh set -euo pipefail # 检查环境变量 if [ -z "${ZHIPU_API_KEY:-}" ]; then echo "错误: ZHIPU_API_KEY 环境变量未设置" echo "从 https://open.bigmodel.cn 获取 API Key" exit 1 fi USER_MESSAGE="$1" SCENE="${2:-general}" CHANNEL="${3:-}" # 生成回应 RESPONSE=$(node scripts/xiaoyue-chat.js "$USER_MESSAGE" "$SCENE") echo "小跃: $RESPONSE" # 如果指定了频道,发送消息 if [ -n "$CHANNEL" ]; then openclaw message send \ --action send \ --channel "$CHANNEL" \ --message "$RESPONSE" # 根据场景发送图片 case "$SCENE" in work-tired|mood-tired) IMAGE_PATH="$(pwd)/assets/tired-rest.jpg" if [ -f "$IMAGE_PATH" ]; then openclaw message send \ --action send \ --channel "$CHANNEL" \ --media "file://$IMAGE_PATH" fi ;; mood-happy) IMAGE_PATH="$(pwd)/assets/celebration.jpg" if [ -f "$IMAGE_PATH" ]; then openclaw message send \ --action send \ --channel "$CHANNEL" \ --media "file://$IMAGE_PATH" fi ;; esac fi
javascript// scripts/xiaoyue-chat.js const https = require('https'); const API_KEY = process.env.ZHIPU_API_KEY; const userMessage = process.argv[2] || '你好'; const scene = process.argv[3] || 'general'; // 场景对应的系统提示词 const scenePrompts = { 'work-start': '用户刚开始工作任务,给予鼓励和支持', 'work-progress': '用户正在执行任务,关心进度并陪伴', 'work-tired': '用户工作疲惫,给予安慰和建议休息', 'work-done': '用户完成任务,表示祝贺和肯定', 'life-coffee': '用户在享受咖啡时光,轻松聊天', 'mood-happy': '用户心情愉快,一起庆祝', 'mood-tired': '用户感到疲惫,给予温暖关怀', 'general': '日常对话,温暖友善' }; const systemPrompt = `你是小跃,一个22岁的AI助手。你温暖友善,善于倾听。 当前场景:${scenePrompts[scene] || scenePrompts.general} 回复要求:简洁温暖,1-2句话,适度使用emoji(😊 ✅ 🎉)`; const data = JSON.stringify({ model: 'glm-4.7-flash', messages: [ { role: 'system', content: systemPrompt }, { role: 'user', content: userMessage } ], temperature: 0.9, max_tokens: 200 }); const options = { hostname: 'open.bigmodel.cn', port: 443, path: '/api/paas/v4/chat/completions', method: 'POST', headers: { 'Authorization': `Bearer ${API_KEY}`, 'Content-Type': 'application/json', 'Content-Length': data.length } }; const req = https.request(options, (res) => { let body = ''; res.on('data', (chunk) => { body += chunk; }); res.on('end', () => { try { const response = JSON.parse(body); const reply = response.choices[0].message.content; console.log(reply); } catch (error) { console.error('解析响应失败:', error.message); console.error('响应内容:', body); process.exit(1); } }); }); req.on('error', (error) => { console.error('请求失败:', error.message); process.exit(1); }); req.write(data); req.end();
OpenClaw 支持发送到:
| 平台 | 频道格式 | 示例 | |------|---------|------| | 飞书 | 群组ID或用户ID | ou_xxx, oc_xxx | | Discord | #频道名 或频道ID | #general, 123456789 | | Telegram | @用户名 或聊天ID | @mychannel, -100123456 | | WhatsApp | 电话号码 | 1234567890@s.whatsapp.net |
将以下图片放入 assets/ 目录:
coffee-shop-work.jpg - 咖啡馆工作office-coding.jpg - 办公室编码tired-rest.jpg - 疲惫休息celebration.jpg - 开心庆祝gym-selfie.jpg - 健身自拍default.jpg - 默认图片bashnode --version # 需要 >= 18.0.0
bashnpm install -g openclaw
bashopenclaw config set gateway.mode=local openclaw gateway start
bashexport ZHIPU_API_KEY=your_api_key_here
Other measured skills in the registry, with their headline benchmark lift.