Skip to content

kalkehcoisa/kikotron

Repository files navigation

🤖 KikoTron — O poder da chatice

Kiko com plano maligno

Um bot que amola golpistas no Telegram usando personagens brasileiros clássicos e IA.


Como funciona

O KikoTron roda na sua conta pessoal do Telegram (não é um bot oficial) e responde automaticamente a mensagens privadas de golpistas, se passando por personagens confusos, chatos e enrolados. A ideia é desperdiçar o máximo de tempo do golpista possível.

Cada resposta simula comportamento humano:

  • Delay aleatório de 15–60 segundos antes de responder
  • Indicador de "digitando..." por alguns segundos
  • Memória da conversa para manter o contexto

Instalação

Requisitos: Python 3.11+ e Poetry

git clone git@github.com:kalkehcoisa/kikotron.git
cd kikotron
poetry install

Configuração

1. Credenciais do Telegram

Acesse my.telegram.org, faça login e crie um app para obter seu api_id e api_hash.

2. Chave do Groq

Crie uma conta em console.groq.com e gere uma API key gratuita.

3. Arquivo .env (opcional, para fallback)

TELEGRAM_API_ID=seu_api_id
TELEGRAM_API_HASH=seu_api_hash
GROQ_API_KEY=sua_chave_groq

4. Arquivo accounts.json

Copie o exemplo e edite:

cp accounts.json.example accounts.json
{
  "defaults": {
    "telegram_api_id": "TELEGRAM_API_ID",
    "telegram_api_hash": "TELEGRAM_API_HASH",
    "groq_api_key": "GROQ_API_KEY",
    "default_personality": "tonho-chato"
  },
  "accounts": [
    {
      "session": "accounts/conta1",
      "default_personality": "chaves"
    },
    {
      "session": "accounts/conta2",
      "default_personality": "kiko"
    }
  ]
}

Os valores em defaults podem ser o valor direto ou o nome de uma variável de ambiente — o KikoTron resolve automaticamente.

Atenção: adicione accounts.json ao .gitignore. Ele não contém senhas, mas é configuração local.


Rodando

poetry run python main.py

Na primeira execução, o Telethon vai pedir autenticação para cada conta:

Please enter your phone (or bot token): +5511999999999
Please enter the code you received: 12345

Após autenticar, os arquivos .session são salvos na pasta accounts/ e não é necessário autenticar novamente.


Múltiplas contas

Cada entrada em accounts roda em paralelo. Você pode ter quantas contas quiser, cada uma com sua personalidade padrão e, opcionalmente, credenciais próprias:

{
  "session": "accounts/conta3",
  "telegram_api_id": "API_ID_PROPRIO",
  "telegram_api_hash": "API_HASH_PROPRIO",
  "groq_api_key": "CHAVE_GROQ_PROPRIA",
  "default_personality": "ze-desconfiado"
}

Personalidades

Slug Personagem Descrição
tonho-chato Antônio 78 anos, confunde PIX com CPF, precisa falar com o contador
chaves Chaves Inocente total, desvia tudo pro sanduíche de presunto
kiko Kiko Mimado, chora fácil, ameaça chamar a Dona Florinda
maria-curiosa Maria Faz mil perguntas, precisa do Seu João aprovar tudo
ze-desconfiado José Ex-INSS, exige documentação, cita portarias inventadas
claudinho-terraplanista Claudinho Traz teoria da terra plana em qualquer assunto
rafa-good-vibes Rafa Coach sem substância, tudo é mindset e energia
erinaldo-politizado Erinaldo TUDO É ESQUEMA DOS GLOBALISTAS 🇧🇷

Criando uma nova personalidade

Crie um arquivo .json na pasta personalities/:

{
  "name": "Nome do Personagem",
  "description": "Descrição curta",
  "model": "llama-3.3-70b-versatile",
  "temperature": 0.9,
  "max_tokens": 120,
  "system_prompt": "Você é..."
}

O nome do arquivo (sem .json) será o slug usado no accounts.json.

Trocando a personalidade de uma conversa específica

No main.py, use o utilitário:

set_personality_for_chat("123456789", "ze-desconfiado")

O chat_id é o ID numérico do contato no Telegram.


Como usar

  1. Rode o main.py e deixe em segundo plano
  2. Cutuce o golpista para ele te mandar mensagem
  3. O KikoTron responde automaticamente
  4. Sente e aprecia 🍿

Importante: não responda manualmente na mesma conta enquanto o bot estiver rodando — isso quebra o personagem.


Estrutura do projeto

kikotron/
├── main.py                  # entrada, inicializa as contas
├── bot.py                   # handlers do Telegram
├── ai.py                    # geração de resposta via Groq
├── memory.py                # memória persistente por conversa
├── accounts.json            # configuração das contas (não commitar)
├── accounts.json.example    # exemplo de configuração
├── memory.json              # histórico salvo (gerado automaticamente)
└── personalities/
    ├── __init__.py
    ├── tonho-chato.json
    ├── chaves.json
    └── ...

Aviso

Este projeto usa sua conta pessoal do Telegram para automação. O Telegram pode suspender contas que apresentem comportamento automatizado excessivo. Use com bom senso.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages