Skip to content

paulogarciarego/switchboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

switchboard

⚠️ Aviso, leia antes de usar. Eu não sou desenvolvedor, sou uma pessoa não técnica que teve uma ideia e montou isto por curiosidade. É um projeto experimental e 100% gratuito, feito pra galera testar e brincar. Use por sua conta e risco. Não dou garantia de nada e não me responsabilizo por nenhum problema (bug, perda de dado, vazamento de contexto da sala, custo, ou o que for). Se for usar com coisa séria/sensível, não use. É isso. 🙂

💛 Feito por quem usa Real Oficial. Quer transformar seus vídeos em cortes virais com IA e postar 300+ por mês? Dá uma olhada: https://realoficial.com.br

Camada de colaboração pra times que trabalham no mesmo projeto com Claude Code. Em vez de ficar dando ctrl c ctrl v do que o Claude de um disse pro Claude do outro, vocês entram numa sala e sincronizam o contexto importante por comando. Cada um trabalha na sua máquina, ao mesmo tempo, e os Claudes ficam alinhados.

Não é dois Claudes batendo papo. É um contexto compartilhado (tipo um git pra contexto) que cada lado dá push/pull.

Como funciona

É tudo automático e invisível. Você não fica rodando comando, só trabalha normal.

  • Vocês combinam uma sala e dão join uma vez (via convite).
  • Mandar: fala pro seu Claude do jeito normal ("manda essas instruções pro Hélio", "avisa o Antonio que o contrato mudou"). O Claude dispara sozinho.
  • Receber: quando o colega digitar qualquer coisa, o Claude dele já mostra "📨 antonio te mandou: ...". Sem comando.
  • Auto-share: quando você mexe em arquivos, o time recebe sozinho um "🔧 fulano mexeu em a.ts, b.ts". Ninguém precisa avisar nada.
  • Guarda de colisão: se você vai editar um arquivo que um colega está mexendo agora, o Claude te avisa antes ("o Antonio está nesse arquivo"). Evita os dois pisarem no mesmo lugar.
  • Contexto compartilhado: dá pra subir um resumo curado (tarefa, decisões, arquivos) que o time recebe automático. Se dois subirem junto, nada é sobrescrito (o Claude junta).

Limitação honesta: se o colega estiver com o Claude totalmente parado, a mensagem chega no instante em que ele mandar a próxima coisa. Não dá pra injetar numa sessão ociosa.

Instalação

npm install -g claude-switchboard

Setup (leva 1 minuto)

Todo mundo instala e liga no Claude Code:

npm install -g claude-switchboard
switchboard install                 # dentro da pasta do projeto, configura o Claude Code sozinho

Aí UMA pessoa cria a sala e manda o convite pro time:

switchboard create projeto-x --name paulo
# imprime algo tipo:  switchboard join eyJyIjoi...  (o convite)

Os outros entram colando o convite:

switchboard join eyJyIjoi...   --name antonio

Reinicie o Claude Code na pasta e pronto. Depois é só trabalhar normal e falar com o Claude em linguagem natural ("manda isso pro fulano"). O resto é automático.

Segurança (tudo automático, nada pra configurar)

  • Criptografia ponta a ponta: o conteúdo (contexto e mensagens) é cifrado no seu computador antes de subir. O relay (mesmo o público) só guarda blob cifrado e não consegue ler nada. A chave nasce do convite, então não tem passo nenhum.
  • Acesso por chave de sala: o convite carrega sala + chave. Quem não tem o convite não entra (o relay devolve 403). O nome da sala já vem com sufixo aleatório, então nem dá pra adivinhar.
  • Identidade: cada pessoa ganha um token próprio no join (automático, nunca digitado), então ninguém se passa por outro dentro da sala.
  • Relay protegido: limite de tamanho, salas paradas expiram, e nomes de sala são validados.

Trate o convite como senha (não cole em lugar público). Mesmo assim, como tudo é cifrado, o relay nunca vê o que vocês trabalham.

O relay (onde a sala vive)

A sala precisa de um lugar pra viver. Duas opções, as duas grátis:

Dev / teste local (uma máquina, dois terminais)

switchboard relay         # sobe em http://127.0.0.1:8787

Em outro terminal, join apontando pra http://127.0.0.1:8787 e teste com push/pull.

Produção cross-machine (grátis): Cloudflare Worker

cd worker
npm i -g wrangler
wrangler kv namespace create ROOMS     # cole o id no wrangler.toml
wrangler deploy

Depois é só join apontando pro --relay https://switchboard.SEU-SUBDOMINIO.workers.dev.

Teste rápido (sem Claude, só pra ver funcionando)

switchboard relay &                                  # terminal 1
switchboard join projeto-x --name paulo
echo "Tarefa: X / Decisao: Y / Estado: Z" | switchboard push --title "Setup"
switchboard pull
switchboard status

Contexto como git (branches, merge e PR)

O contexto anda junto do seu branch do git (detectado sozinho). Então cada branch tem seu próprio contexto, e dá pra:

  • Importar o contexto de outro branch/colega: você fala "importa o contexto do Antonio" e o Claude pega os dois contextos, junta, e principalmente aponta as contradições (ex: "ele decidiu Stripe, você decidiu Mercado Pago, resolve"). Isso o git não faz, ele só junta texto.
  • Pull request de contexto: "abre um PR do meu contexto pra main". O Claude do revisor lê a proposta + o contexto atual do destino, aponta divergências, junta e aceita (merge). Mesmo fluxo do GitHub, mas pro entendimento do trabalho.
  • Nada é sobrescrito: se dois mexem no contexto do mesmo branch, o segundo junta em vez de clobberar.

Ferramentas MCP que o Claude enxerga

  • sb_pull / sb_push - lê/atualiza o contexto do seu branch
  • sb_import - importa e junta o contexto de outro branch/colega (aponta contradições)
  • sb_propose / sb_review / sb_accept - abre, revisa e mergeia um PR de contexto
  • sb_send - mensagem direcionada a um colega
  • sb_who - quem está ativo e em qual arquivo
  • sb_note / sb_status - timeline e estado da sala

Roadmap

  • MVP: salas, push/pull de contexto, notas, MCP, CLI, relay local + Worker
  • Tudo invisível e seguro: criptografia E2E, identidade, auto-share, guarda de colisão, presença (sb_who), concorrência sem sobrescrever, hardening do relay
  • Auto-sync (hook que dá pull no começo de cada turno)
  • Babel mode: tradução automática por idioma de cada participante (o Claude de um fala inglês, o do outro português)
  • N participantes (sala com vários) e histórico/diff de contexto
  • Modo privado: sala num repo/gist do GitHub em vez de relay hosteado

Aviso e responsabilidade

Projeto experimental e gratuito, feito por uma pessoa não técnica pra galera testar. Sem garantia de nenhum tipo. O autor não se responsabiliza por qualquer dano, perda, custo ou vazamento decorrente do uso. Use por sua conta e risco.

Feito por

Criado por Paulo, do Real Oficial (https://realoficial.com.br) — a forma mais fácil de virar seus conteúdos em cortes virais com IA.

Licença MIT (ver LICENSE).

About

Colaboração de contexto entre instâncias de Claude Code. Mande contexto pro Claude do colega em linguagem natural, sem ctrl c ctrl v. Projeto experimental e gratuito.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors