Vários agentes de IA num só quadro: guia prático
Como pôr o Claude Code, o Codex e o ChatGPT no mesmo quadro sem trabalho duplicado: contratos de tarefa, assunção atómica, leases e uma só fila de revisão.
O Weft é o gestor de tarefas com IA para fundadores a solo e pequenas equipas.
Por Andrei Finogeev ·
Sim, dois ou três clientes de IA podem partilhar um quadro, desde que seja o quadro a decidir quem é dono de cada tarefa. No Weft, o Claude Code, o Codex e o ChatGPT ligam-se todos ao mesmo endpoint MCP. Cada um assume uma tarefa com start_task, mantém-na viva com sinais de vida e devolve um comprovativo. Se dois clientes tentarem pegar no mesmo cartão, o segundo recebe already_claimed, e ninguém faz o trabalho duas vezes.
Nós fazemos o Weft. Os factos sobre outros produtos vêm das respetivas páginas oficiais, verificadas a 27 de outubro de 2026.
Este guia é para um fundador a solo ou uma pequena equipa com dois ou três clientes de IA que estão sempre a pisar-se uns aos outros.
Quando é que um segundo agente ajuda mesmo?
Mais agentes não tornam o trabalho mais rápido por si só. Ajudam quando o trabalho se divide em partes que não se tocam, e atrapalham quando partilham ficheiros, uma base de dados de testes ou uma decisão que ninguém tomou ainda.
| Situação | Um agente ou vários? | Porquê |
|---|---|---|
| Uma funcionalidade num repositório, terminada de uma assentada | Um agente (com os seus próprios subagentes, se os tiver) | Um só contexto guarda tudo; um quadro acrescenta sobrecarga |
| Duas correções independentes em zonas diferentes do código | Dois agentes, em branches ou worktrees separados | Sem ficheiros partilhados, o único risco é pegarem no mesmo cartão |
| Planeamento e triagem no ChatGPT, programação num agente de terminal | Dois clientes, trabalhos diferentes | O ChatGPT escreve e ordena as tarefas; o agente de programação assume-as |
| Vários agentes à espera da mesma decisão de produto | Um agente, depois de decidir | Agentes em paralelo vão adivinhar cada um à sua maneira |
Se não entregaria dois trabalhos a duas pessoas sem falar primeiro, não os entregue a dois agentes.
O que deve dizer uma tarefa antes de um agente poder pegar nela?
Os agentes levam uma tarefa à letra e raramente perguntam. Antes de um cartão sair do Backlog, dê-lhe:
- Um resultado que possa verificar. Não "melhorar o onboarding", mas "adicionar um estado vazio à página de projetos com um botão de criar".
- Âmbito. Que ficheiros, páginas ou sistemas pode tocar, e o que está fora dos limites.
- Um teste de conclusão. O teste, a build ou o URL que mostra que funcionou.
- As provas que quer receber. Uma ligação para o pull request, um hash de commit, um URL publicado.
- Onde para. Qualquer coisa irreversível (publicação, produção, dinheiro) deve acabar numa pergunta para si, não numa ação.
As colunas por omissão do Weft são Backlog, Todo, Doing e Done. Uma convenção simples funciona bem: só os cartões em Todo estão prontos a ser assumidos. Os projetos mantêm um repositório ou um cliente separado do resto.
O que acontece quando dois agentes chamam start_task para o mesmo cartão?
Mover um cartão para Doing não é um bloqueio: dois agentes podem ler o mesmo cartão em Todo e começar ambos. Por isso, no Weft, é o próprio ato de assumir que bloqueia.
Uma chamada a start_task é uma única inserção na base de dados, protegida por um índice único, por isso é a base de dados que decide quem ganha. O vencedor recebe um runId e um leaseToken, e o cartão passa para Doing. O que perde recebe already_claimed com o id da tarefa, o título e uma indicação para não duplicar o trabalho. Não importa que um cliente seja um agente de terminal e o outro uma app de chat.
Para um agente, already_claimed é uma resposta normal, não um erro. O certo é chamar de novo get_my_work e pegar no cartão seguinte. Descrevemos o ciclo completo em o ciclo de assumir, dar sinal de vida e entregar comprovativo.
Como funcionam os sinais de vida e o lease de 20 minutos?
Assumir uma tarefa é um lease, não uma atribuição permanente. start_task dá um lease de 20 minutos e diz ao agente para o renovar a cada 300 segundos. O agente renova-o chamando report_progress com o seu runId e leaseToken. Se entretanto o agente tiver perdido o lease, a chamada devolve lease_lost, e o agente deve parar em vez de continuar a editar.
Quando uma sessão morre, não resta ninguém para o dizer. O silêncio é o único sinal que o quadro recebe, por isso o Weft trata o silêncio como o sinal:
- Ao fim de 20 minutos sem sinal de vida, a execução é marcada como inativa, o token é apagado e a tarefa volta a ficar sem responsável.
- Uma varredura corre a cada 10 minutos, e uma tarefa inativa também é libertada de imediato quando outro cliente a tenta assumir.
- Enquanto um agente espera pela resposta a uma pergunta que lhe fez, mantém a tarefa durante 60 minutos. Depois disso o lease cai, mas a pergunta continua aberta.
Os sinais de vida são chamadas de ferramentas. Uma tarefa de 40 minutos com um sinal de vida a cada 5 minutos gasta cerca de 8 chamadas com eles, e o Grátis tem 200 chamadas por mês, por isso três agentes diários vão ultrapassá-lo. O Pro não tem limite de chamadas.
Como sabe o quadro que agente fez o quê?
Cada cliente OAuth que inicia sessão no Weft é um ator próprio. O Claude Code, o Codex e o ChatGPT registam-se cada um separadamente, e o quadro mostra o nome com que cada cliente se registou. Cada evento do histórico regista que cliente o fez.
Os clientes sem OAuth podem usar um token de acesso pessoal; cada token também é um ator próprio, mas os tokens não têm âmbitos (tokens de acesso). Os direitos definem-se por ligação OAuth:
- total (por omissão): as 32 ferramentas.
- escrita: tudo exceto as três ferramentas destrutivas (enviar para a reciclagem, arquivar, concluir sprint).
- leitura: só as 11 ferramentas só de leitura.
Uma divisão sensata: agentes de programação com escrita, tudo o que for experimental com leitura. Desligar um cliente revoga os tokens dele sem mexer nos outros. O Weft emite refresh tokens, por isso um cliente ligado renova a sessão sozinho.
Identidade no quadro não é isolamento no disco. Dois agentes com nomes diferentes podem continuar a sobrepor-se num mesmo checkout. Dê a cada agente de programação o seu próprio branch ou worktree.
Para onde vai o trabalho terminado, e quanto pode ficar à sua espera?
Por omissão, uma tarefa concluída vai diretamente para Done. Em vez disso, para na sua Caixa de entrada quando a tarefa precisa de revisão ou quando uma verificação falha. Aí escolhe Aceitar, Retrabalhar, Depois ou Descartar. Retrabalhar pede uma nota. As perguntas de request_input chegam à mesma Caixa de entrada e ao telemóvel como notificação push, por isso tem um só sítio para ver, seja qual for o agente que perguntou.
O comprovativo de complete_task traz um resultado, artefactos que pode verificar, o que não foi feito, os desconhecidos e um nextStep. O nextStep aparece por cima do botão Aceitar, por isso aceitar aprova exatamente esse passo. Mais em o que fez o meu agente de IA.
A Caixa de entrada tem um limite, e com vários agentes vai chegar a ele. Leva 5 itens num workspace de uma pessoa e 10 numa equipa, ou 45 minutos de revisão estimada, o que chegar primeiro. As perguntas contam. Quando está cheia, start_task recusa com attention_queue_full e diz ao agente o que ainda pode fazer, como reportar o progresso ou ler o quadro. Três agentes conseguem produzir trabalho mais depressa do que uma pessoa o consegue rever; o limite impede-os de acumular resultados que nunca vai ler.
O que se avaria, e como recuperar?
| Falha | O que vê | O que o Weft faz | O que fazer |
|---|---|---|---|
| Dois clientes começam a mesma tarefa | Um cartão em Doing, um cliente recebe already_claimed | A base de dados deixa ganhar uma única tentativa; a outra é recusada | Nada, se o agente que perdeu seguir em frente. Se continuou a trabalhar mesmo assim, aperte as instruções dele |
| Uma sessão falha ou o portátil entra em suspensão | Um cartão em Doing sem progresso | Ao fim de 20 minutos sem sinal de vida, a execução fica inativa e a tarefa volta a ficar sem responsável | Verifique se há trabalho parcial no branch antes de outro agente pegar nela |
| Um agente termina mas nunca chama complete_task | Trabalho integrado, cartão ainda em Doing | O lease expira; a tarefa é libertada, não fechada | Feche-a à mão ou peça a um agente que a conclua com as provas |
| Um agente precisa de uma decisão que só o utilizador pode tomar | Uma pergunta na Caixa de entrada, talvez uma notificação push | A tarefa fica assumida durante 60 minutos; a resposta chega ao agente no próximo start_task ou get_my_work | Responda com uma das opções que ele deu |
| Há demasiado à sua espera | Uma Caixa de entrada cheia | start_task recusa com attention_queue_full | Reveja ou descarte itens; os agentes podem voltar a começar à medida que a fila esvazia |
| Dois agentes editam o mesmo checkout | Alterações sem relação misturadas num só diff | Nada; o Weft não vê os seus ficheiros | Separe worktrees ou branches antes de pôr agentes a correr em paralelo |
Como configurar dois ou três clientes?
Os três ligam-se ao mesmo endpoint e iniciam sessão no navegador, sem nenhuma chave para copiar.
# Claude Code
claude mcp add --transport http weft https://letsweft.com/api/mcp
# Codex: add to ~/.codex/config.toml, then sign in
[mcp_servers.weft]
url = "https://letsweft.com/api/mcp"
codex mcp login weftO ChatGPT liga-se através da app do Weft no seu diretório, em todos os planos, incluindo o Free. Páginas passo a passo: Claude Code, Codex, ChatGPT, Cursor (instalação com um clique). O início de sessão segue a especificação de autorização do MCP.
O ChatGPT funciona por turnos: age enquanto está na conversa. Serve para planear, escrever tarefas e responder a perguntas. As execuções longas de programação encaixam melhor num agente de terminal, porque um sinal de vida a cada poucos minutos precisa de uma sessão que continue a correr.
Como é um teste de uma semana?
- Dia 1: ligue dois clientes. O Claude Code e o Codex, ou um agente de programação mais o ChatGPT. Dê direitos de escrita aos agentes de programação.
- Dias 1–2: escreva cinco a dez tarefas segundo o contrato acima. Um resultado, âmbito, teste de conclusão, provas. Deixe-as em Todo. Se já tem tarefas no Linear, Jira, Notion ou Trello, importe-as primeiro; a importação é gratuita em todos os planos.
- Dias 2–5: ponha os dois agentes na mesma fila de Todo, cada um no seu worktree, ambos instruídos a assumir com start_task e a terminar com complete_task e artefactos.
- Dia 5: teste falhas de propósito. Aponte os dois agentes ao mesmo cartão e veja um deles receber already_claimed. Mate uma sessão a meio de uma tarefa e confirme que o cartão volta a ficar livre ao fim de 20 minutos.
- Dia 7: faça a auditoria só a partir do quadro. Alguma tarefa correu duas vezes ou ficou em Doing depois de terminar? Conseguiu verificar cada resultado a partir dos artefactos? Corrija o modelo de tarefa antes de juntar um terceiro agente.
Como se compara com a abordagem do Hypertask?
O modelo de leases do Hypertask é sólido: assumir, dar sinal de vida, libertar, com expiração. A diferença está no sítio onde esse modelo vive. A documentação do Hypertask lista os leases de tarefas, as provas e a escalada como endpoints só REST, por design, e a referência das ferramentas tem 21 ferramentas MCP sem nenhuma ferramenta de lease (visão geral do MCP). No Weft, assumir, dar sinal de vida, perguntar e entregar o comprovativo são ferramentas MCP, por isso qualquer cliente MCP as usa sem código extra.
| Weft | Hypertask | |
|---|---|---|
| Assumir e lease | Dentro do MCP: start_task, report_progress (lease de 20 minutos) | Só endpoints REST, por design (documentação) |
| Ferramentas MCP | 32 | 21 (documentação) |
| Início de sessão | OAuth no navegador, com refresh tokens; tokens de acesso pessoais opcionais | A configuração documentada é uma chave de API copiada que expira ao fim de 30 dias; uma ligação aprovada no navegador dura 90 dias sem renovação (documentação) |
| Identidade dos agentes | Cada cliente OAuth ou token é um ator próprio | Agentes como contas de serviço com identidade própria |
| Via ChatGPT | App publicada no diretório do ChatGPT, em todos os planos, incluindo o Free | GPT personalizado com OpenAPI Actions, ou um conector personalizado no modo de programador, segundo o Hypertask (documentação) |
| CLI e API REST | Nenhuma | CLI em npm e uma API REST (documentação) |
| Apps móveis | iOS e Android | Sem app nativa para iOS (app web no ecrã principal); sem presença no Google Play (documentação) |
| Idiomas | 27 | Só inglês |
| Preço por lugar | Grátis: 50 tarefas, 200 chamadas de IA por mês. Pro: 8,00 € por mês ou 67,65 € por ano | Gratuito: 3 quadros por pessoa. BYOK $8 no anual / $10 no mensal. Pro $16 no anual / $20 no mensal (preços) |
| Créditos de IA | Não são precisos: o raciocínio acontece no seu próprio cliente de IA | IA incorporada; o plano BYOK usa as suas próprias chaves de modelos |
O Hypertask é a melhor escolha se os seus agentes correm a partir de scripts ou de CI e quer uma CLI e uma API REST, se quer agentes como contas de serviço geridas como utilizadores, ou se quer IA incorporada (escrita de tarefas, etiquetas inteligentes, triagem), rapidez pelo teclado e registo de tempo. O Weft não tem CLI, nem API REST, nem webhooks, nem integração com GitHub ou Slack. O Weft encaixa quando os seus agentes são clientes MCP que já usa, o ChatGPT entre eles, e quer responder-lhes a partir do telemóvel.
Para uma comparação mais ampla, veja gestores de tarefas MCP comparados e uma alternativa ao Hypertask.
- Os meus agentes precisam de falar uns com os outros?
- Não. Coordenam-se através do quadro: tarefas assumidas, comprovativos e perguntas. O Weft nunca chama um agente; cada um vai buscar a tarefa seguinte com get_my_work.
- Um agente que falhou vai deixar uma tarefa presa em Doing para sempre?
- Não. Ao fim de 20 minutos sem sinal de vida, a execução é marcada como inativa e a tarefa volta a ficar sem responsável, para que outro cliente a possa assumir. Verifique primeiro se há trabalho parcial no branch.
- Três agentes não me vão afogar em revisões?
- A Caixa de entrada tem um limite de 5 itens para uma pessoa (10 para uma equipa) ou 45 minutos de revisão; quando está cheia, os agentes não conseguem começar tarefas novas. A maioria das tarefas terminadas vai diretamente para Done.
- Pôr vários agentes a correr custa mais?
- O Weft cobra por lugar, não por agente: o Pro custa 8,00 € por mês ou 67,65 € por ano por pessoa. O plano Grátis limita as chamadas de IA a 200 por mês, que os sinais de vida de vários agentes gastam depressa. Veja os preços.