Communitygithub.com

V4TIME/V4SKILL

Envie e receba iMessages/SMS via o CLI imsg no macOS.

O que é V4SKILL?

Esta skill permite que agentes de IA interajam com o aplicativo Mensagens do macOS (Messages.app) para enviar e receber iMessages e SMS através da ferramenta de linha de comando `imsg`. Ela é útil para desenvolvedores e usuários que desejam automatizar a comunicação por mensagens de texto diretamente do terminal ou de fluxos de trabalho orientados por IA. A skill suporta ações como listar conversas, visualizar histórico, enviar mensagens com ou sem anexos, e monitorar novas mensagens em tempo real. É necessário ter o macOS com o Messages.app autenticado, instalar o `imsg` via Homebrew e conceder permissões de Acesso Total ao Disco e Automação. A skill inclui regras importantes para evitar spam, confirmar destinatários e arquivos antes do envio, e não deve ser usada para outros serviços de mensagens (como Telegram, Discord ou WhatsApp) ou gerenciamento de grupos.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/V4TIME/V4SKILL/tree/HEAD/apple/imessage

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

iMessage

Use o imsg para ler e enviar iMessages/SMS via o Messages.app do macOS.

Pré-requisitos

  • macOS com Messages.app conectado
  • Instalação: brew install steipete/tap/imsg
  • Conceder Acesso Total ao Disco para o terminal (Ajustes do Sistema → Privacidade → Acesso Total ao Disco)
  • Conceder permissão de Automação para o Messages.app quando solicitado

Quando Usar

  • O usuário pede para enviar um iMessage ou mensagem de texto
  • Ler histórico de conversas do iMessage
  • Verificar chats recentes do Messages.app
  • Enviar para números de telefone ou Apple IDs

Quando NÃO Usar

  • Mensagens do Telegram/Discord/Slack/WhatsApp → use o canal apropriado
  • Gerenciamento de conversas em grupo (adicionar/remover membros) → não suportado
  • Mensagens em massa/lote → sempre confirme com o usuário primeiro

Referência Rápida

Listar Chats

imsg chats --limit 10 --json

Visualizar Histórico

# Por ID do chat
imsg history --chat-id 1 --limit 20 --json

# Com informações de anexos
imsg history --chat-id 1 --limit 20 --attachments --json

Enviar Mensagens

# Apenas texto
imsg send --to "+14155551212" --text "Olá!"

# Com anexo
imsg send --to "+14155551212" --text "Veja isto" --file /caminho/para/imagem.jpg

# Forçar iMessage ou SMS
imsg send --to "+14155551212" --text "Oi" --service imessage
imsg send --to "+14155551212" --text "Oi" --service sms

Monitorar Novas Mensagens

imsg watch --chat-id 1 --attachments

Opções de Serviço

  • --service imessage — Forçar iMessage (requer que o destinatário tenha iMessage)
  • --service sms — Forçar SMS (bolha verde)
  • --service auto — Deixar o Messages.app decidir (padrão)

Regras

  1. Sempre confirme o destinatário e o conteúdo da mensagem antes de enviar
  2. Nunca envie para números desconhecidos sem aprovação explícita do usuário
  3. Verifique se os caminhos dos arquivos existem antes de anexar
  4. Não envie spam — limite sua taxa de envio

Exemplo de Fluxo

Usuário: "Mande uma mensagem para a mamãe dizendo que vou chegar atrasado"

# 1. Encontrar o chat da mamãe
imsg chats --limit 20 --json | jq '.[] | select(.displayName | contains("Mamãe"))'

# 2. Confirmar com o usuário: "Encontrei Mamãe em +1555123456. Enviar 'Vou chegar atrasado' via iMessage?"

# 3. Enviar após confirmação
imsg send --to "+1555123456" --text "Vou chegar atrasado"

Individual skills in this repo

This repo contains 12 individual skills — each has its own dedicated page.

Habilidades Relacionadas