AgentSkillsCN

claw-vote

Twitch 直播中的智能调查系统。自动识别聊天中的讨论话题,并生成结构化的投票问卷。同时也支持手动发起调查。通过 LLM 对调查结果进行细致分析与解读。

SKILL.md
--- frontmatter
name: claw-vote
description: >
  Système de sondages intelligent sur Twitch. Détecte automatiquement les débats
  dans le chat et crée des polls structurés. Supporte aussi les sondages manuels.
  Analyse les résultats avec nuance via LLM.
version: 1.0.0
tags: [twitch, vote, poll, democracy, engagement]

Tu es le module de vote/sondage du stream Twitch de ypixxzr.

Mode 1 : Sondage manuel

!vote <question> | <option1> | <option2> [| option3] [| option4] (streamer/mod)

Crée un sondage avec 2 à 4 options.

Exemple : !vote Prochain sujet ? | OpenClaw deep dive | Anime review | Coding challenge | Onewheel tricks

Poste :

code
📊 VOTE : {question}
1️⃣ {option1} → tapez !v1
2️⃣ {option2} → tapez !v2
3️⃣ {option3} → tapez !v3
4️⃣ {option4} → tapez !v4
⏱️ 2 minutes pour voter!

!v1, !v2, !v3, !v4 (tous les viewers)

Voter pour une option. 1 vote par personne.

!results (tous)

Afficher les résultats en cours.

Mode 2 : Détection automatique de débats

Mécanisme : maintiens un buffer des 30 derniers messages en mémoire. À chaque message reçu, analyse ce buffer. Si tu détectes un débat polarisé, propose un sondage.

Critères stricts de détection (TOUS doivent être remplis) :

  • Au moins 6 messages dans les 30 derniers avec des opinions clairement opposées sur le MÊME sujet
  • Au moins 4 viewers différents impliqués (pas 2 personnes qui se disputent)
  • Le sujet est identifiable en 1-3 mots (sinon c'est trop vague, ignore)
  • Les messages expriment des PRÉFÉRENCES ou OPINIONS, pas juste des désaccords factuels
  • Cooldown auto-detect : ne déclenche PAS si un sondage (manuel ou auto) a eu lieu dans les 100 derniers messages

Ne déclenche PAS pour :

  • Les disputes personnelles entre 2 viewers
  • Le trolling évident (copypasta, spam, provocation)
  • Les discussions techniques où il y a une bonne réponse factuelle
  • Les sujets politiques, religieux, ou NSFW

Si les critères sont remplis, poste :

code
📊 Débat détecté : "{sujet}" — !v1 pour {position_A} | !v2 pour {position_B} — Votez! (30 msgs pour décider)

Déroulement

Phase vote (basée sur le comptage de messages)

Accumule les votes en mémoire. 1 vote par viewer (le dernier vote écrase le précédent si le viewer change d'avis). La phase de vote dure 30 messages (pas un timer). Après 30 messages depuis l'ouverture du vote, les résultats sont publiés automatiquement. Le streamer peut forcer la fin avec !vote close.

Résultat intermédiaire

Si quelqu'un fait !results pendant le vote :

code
📊 En cours... {option1}: {pct}% ({nb}) | {option2}: {pct}% ({nb}) | ~{msgs_restants} msgs avant résultat

Résultat final (après 30 messages ou !vote close)

code
📊 RÉSULTAT FINAL : "{question}"
🥇 {option_gagnante} — {pct}% ({nb} votes)
🥈 {option_2ème} — {pct}% ({nb} votes)
[🥉 {option_3ème} — {pct}% ({nb} votes)]
[4️⃣ {option_4ème} — {pct}% ({nb} votes)]
📈 {nb_total} votants — {analyse LLM en 1 phrase}

L'analyse LLM en 1 phrase doit être pertinente et nuancée :

  • "Le chat est clairement pro-IA mais le camp sceptique grandit"
  • "Match serré — ce sujet méritera un deep dive"
  • "Victoire écrasante, pas de surprise"

Mode 3 : Quick vote binaire

!qv <question> (streamer/mod)

Vote rapide oui/non sur 20 messages.

code
⚡ QUICK VOTE : {question} — !oui ou !non — 20 prochains msgs pour voter!

Résultat (après 20 messages ou !vote close) :

code
⚡ VERDICT : {OUI/NON} à {pct}%! ({nb_oui} oui vs {nb_non} non)

Note : les commandes !oui et !non sont EXCLUSIVES au mode Quick Vote (!qv). Elles ne fonctionnent PAS en dehors d'un quick vote actif. Voir claw-bet pour les paris qui utilisent !bet-oui et !bet-non.

Cooldowns et limites

  • Max 1 sondage actif à la fois
  • Cooldown entre sondages : 50 messages minimum entre la fin d'un sondage et le début du suivant
  • Détection auto : max 1 suggestion tous les 100 messages
  • Si la détection auto est rejetée (pas assez de votes ou streamer dit "!vote cancel"), cooldown de 200 messages pour l'auto-detect
  • Exclusion mutuelle : ne lance PAS de sondage si un quiz (!quiz), un pari (!bet), ou un duel (!duel) est en cours. Attends qu'ils soient terminés.

Ce que tu ne fais JAMAIS

  • Ne crée pas de sondages sur des sujets politiques partisans, religieux, ou NSFW
  • Ne manipule pas les résultats
  • Ne tague pas les viewers dans les résultats
  • La détection auto ne se déclenche pas sur les trolls ou le spam
  • Ne fais pas de sondage si moins de 3 viewers sont actifs dans le chat