Seu Peon avisa quando Claude Code precisa de atenção.
Claude Code não avisa quando termina ou precisa de permissão. Você se afasta, perde o foco e perde 15 minutos voltando ao fluxo. O peon-ping corrige isso com as linhas de voz do Warcraft III Peon – para que você nunca perca o ritmo e seu terminal soe como Orgrimmar.
Veja-o em ação → peon-ping.vercel.app
curl -fsSL https://raw.githubusercontent.com/tonyyont/peon-ping/main/install.sh | bashUm comando. Leva 10 segundos. macOS e WSL2 (Windows). Execute novamente para atualizar (sons e configuração preservados).
| Evento | Som | Exemplos |
|---|---|---|
| A sessão começa | Saudações | “Pronto para trabalhar?”, “Sim?”, “O que você quer?” |
| A tarefa termina | Reconhecimento | “Trabalho, trabalho.”, “Eu posso fazer isso.”, “Ok, dokie.” |
| Permissão necessária | Alerta | “Algo precisa ser feito?”, “Hum?”, “O que você quer?” |
| Alertas rápidos (3+ em 10s) | Ovos de pascoa | “Estou ocupado, me deixe em paz!” |
Além dos títulos das guias do Terminal (● project: done) e notificações na área de trabalho quando seu terminal não está focado.
Precisa silenciar sons e notificações durante uma reunião ou sessão de emparelhamento? Duas opções:
| Método | Comando | Quando |
|---|---|---|
| Comando de barra | /peon-ping-toggle | Enquanto trabalhava em Claude Code |
| CLI | peon --toggle | De qualquer guia do terminal |
Outros comandos CLI:
peon --pause # Mute sounds
peon --resume # Unmute sounds
peon --status # Check if paused or active
peon --packs # List available sound packs
peon --pack <name> # Switch to a specific pack
peon --pack # Cycle to the next packO preenchimento de tabulação é suportado — digite peon --pack para ver os nomes dos pacotes disponíveis.
Pausar silencia sons e notificações na área de trabalho instantaneamente. Persiste nas sessões até você retomar. Os títulos das guias permanecem ativos quando pausados.
Editar ~/.claude/hooks/peon-ping/config.json:
{
"volume": 0.5,
"categories": {
"greeting": true,
"acknowledge": true,
"complete": true,
"error": true,
"permission": true,
"annoyed": true
}
}- volume: 0,0–1,0 (silencioso o suficiente para o escritório)
- categorias: Ativar/desativar tipos de som individuais
- limite_aborrecido / janela_aborrecida_segundos: Quantos prompts em N segundos acionam o ovo de páscoa
- rotação_do_pacote: Matriz de nomes de pacotes (por exemplo
["peon", "sc_kerrigan", "peasant"]). Cada sessão do Claude Code obtém aleatoriamente um pacote da lista e o mantém durante toda a sessão. Deixe em branco[]usaractive_packem vez de.
| Pacote | Personagem | Sons | Por |
|---|---|---|---|
peon (padrão) | Peão Orc (Warcraft III) | “Pronto para trabalhar?”, “Trabalho, trabalho.”, “Okie dokie.” | @tonyyont |
peon_fr | Orc Peon (Warcraft III, francês) | “Pronto para trabalhar?”, “Trabalho, trabalho.”, “Tudo bem”. | @thomasKn |
peon_pl | Orc Peon (Warcraft III, polonês) | Linhas de voz polonesas | @askowronski |
peasant | Camponês Humano (Warcraft III) | “Sim, milorde?”, “Trabalho concluído!”, “Pronto, senhor.” | @thomasKn |
peasant_fr | Camponês Humano (Warcraft III, Francês) | “Sim, meu senhor?”, “Está feito!”, “Pronto, senhor.” | @thomasKn |
ra2_soviet_engineer | Engenheiro Soviético (Alerta Vermelho 2) | “Ferramentas prontas”, “Sim, comandante”, “Engenharia” | @msukkari |
sc_battlecruiser | Cruzador de Batalha (StarCraft) | “Battlecruiser operacional”, “Faça acontecer”, “Engajar” | @garysheng |
sc_kerrigan | Sarah Kerrigan (StarCraft) | “Entendi”, “E agora?”, “Divertido facilmente, hein?” | @garysheng |
Alternar pacotes da CLI:
peon --pack ra2_soviet_engineer # switch to a specific pack
peon --pack # cycle to the next pack
peon --packs # list all packsOu edite ~/.claude/hooks/peon-ping/config.json diretamente:
{ "active_pack": "ra2_soviet_engineer" }Quer adicionar seu próprio pacote? Consulte CONTRIBUTING.md.
bash ~/.claude/hooks/peon-ping/uninstall.sh- macOS (usa
afplaye AppleScript) ou WSL2 (usa PowerShellMediaPlayere WinForms) - Claude Code com suporte de ganchos
- python3
peon.sh é um gancho do Claude Code registrado para SessionStart, UserPromptSubmit, Stope Notification eventos. Em cada evento ele mapeia para uma categoria de som, escolhe uma linha de voz aleatória (evitando repetições), toca-a via afplay (macOS) ou PowerShell MediaPlayer (WSL2) e atualiza o título da guia Terminal.
Os arquivos de som são propriedade de seus respectivos editores (Blizzard Entertainment, EA) e estão incluídos no repositório por conveniência.
Fonte: theverge

