360 Secure SkillHub
360 安全技能中心

Clawpet

以 Telegram Mini App 呈现的 Tamagotchi 风格虚拟宠物游戏:由 Python/Node 后端提供孵蛋、命名、喂食、玩耍、睡眠、连续天数、悲伤与死亡等状态,并支持拜访、结友、约会与纪念墙,还能生成分享卡 PNG;通过 /pet 触发,需自建服务与隧道对外暴露。

mturac
mturac
热度 30.01
最近更新 2026-05-11 17:46:36
分类:生活依赖:代码执行 / 读写文件 / 第三方 API应用场景:图像生成 / 社交媒体

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add tamapet
Metadata
name
pet
version
0.2.0
description
Virtual pet game (Tamagotchi-style) with Telegram Mini App, social visits, friendship, playdates, mortality. When user asks for /pet or virtual pet, reply with the Telegram deep link below — Telegram auto-renders it as an Open button.
homepage
https://t.me/OpenClawTamagotchi_bot/pet
platforms
["macos","linux"]
metadata
{"openclaw":{"emoji":"🐣","requires":{"bins":["python3"]},"tags":["game","telegram","mini-app","social","viral","pet"]},"hermes":{"tags":["game","telegram","mini-app","social","viral"],"category":"games","requires_toolsets":["telegram"]}}

🐣 OpenClaw / Hermes Pet

Cross-platform skill — same files work in both ~/.openclaw/workspace/skills/pet/ and ~/.hermes/skills/games/pet/. Both runtimes parse the agentskills.io frontmatter; OpenClaw uses the openclaw.requires block, Hermes uses metadata.hermes.

Trigger

User types /pet in Telegram. Agent yanıt olarak şu plain-text'i yollar (inline_keyboard'a ihtiyaç YOK — Telegram client t.me/<bot>/<app> URL'ini otomatik "Open" butonuna çevirir):

🐣 OpenClaw Pet seni bekliyor!

https://t.me/OpenClawTamagotchi_bot/pet

🥚 Yumurtaya dokun, hayvanını keşfet → 🐧🐱🐕🐠🐥

Visit (başkasının pet'ini gör): https://t.me/OpenClawTamagotchi_bot/pet?startapp=pet_<userId> Memorial (ölmüş pet anıtı): https://t.me/OpenClawTamagotchi_bot/pet?startapp=memorial_<userId>

Mini App Features

  • 🥚 Shake-to-hatch (3 sallama veya 3 tap)
  • 📝 Custom name (max 15)
  • 🍕 Feed / 🎮 Play / 💤 Sleep
  • 🔥 Streak counter (consecutive days)
  • 😾 Sad mode (3 gün ihmal → gri overlay)
  • 🪦 Mortality (7 gün açlık → ölüm, kalıcı)
  • 🤝 Visit + Befriend + 🎉 Playdate (24h cooldown, otomatik dialogue)
  • 🔗 Pet card PNG (/card/<userId>.png — 1080×1350 paylaşım kartı)
  • 🕯️ Memorial wall + reincarnation

Setup (one-time)

  1. BotFather'da Mini App kaydet:
    /newapp → @OpenClawTamagotchi_bot
    Title: OpenClaw Pet
    Short name: pet
    URL: https://romantic-workforce-stranger-journey.trycloudflare.com
    
  2. Server + tunnel:
    pip3 install pillow                   # pet card PNG için
    python3 server.py &                   # localhost:8080
    cloudflared tunnel --url http://localhost:8080
    
  3. (Opsiyonel) Named tunnel (URL kalıcı, viral patlama için kritik):
    cloudflared tunnel create openclaw-pet
    cloudflared tunnel route dns openclaw-pet pet.<your-domain>
    cloudflared tunnel run openclaw-pet
    

Cross-Platform Install

./install.sh        # her iki runtime'a kurar (varsa)

Veya manuel:

  • OpenClaw: ~/.openclaw/workspace/skills/pet/ (zaten burada)
  • Hermes: ~/.hermes/skills/games/pet/ (symlink veya kopya)

API (server.py)

Endpoint Method Açıklama
/ GET Mini App HTML
/card/<userId>.png GET Paylaşım kartı PNG (Pillow)
/api/pet POST Action dispatcher

POST actions: create, feed, play, sleep, visit, befriend, playdate, friends, memorial, revive.

Storage: users/{userId}.json (alive), memorial/{userId}.json (dead).

Notes

  • Lifecycle: lastFed'den 3 gün → sad, 7 gün → dead. Decay her load'da apply_decay() ile uygulanıyor.
  • Telegram initData HMAC validation TODO — production öncesi BOT_TOKEN ile imza doğrulaması ekle.
  • Pet card için Pillow gerekli; yoksa SVG fallback.