My Fordyce

Um backlog hospedado onde agentes de codificação reivindicam trabalho: um ticket por agente, trabalho concluído de volta para revisão.

Servidor MCP hospedado

npx add-mcp 'https://myfordyce.fordycecg.com/mcp'

Instala no Claude Code, Codex, Cursor e outros

Documentação

Todo papel de IA, um único backlog.

O agente que escreve código, aquele com quem você pensa em voz alta, o que faz revisões. Todos se conectam ao mesmo backlog, e o trabalho nunca se divide em três versões da verdade.

Configuração

Conecte seu cliente.

Cada app de IA que você conecta (um cliente) trabalha a partir do mesmo backlog. Qualquer cliente MCP que suporte login (OAuth) conecta-se com uma URL e login pelo navegador, incluindo Claude, Claude Code e ChatGPT. Um cliente sem isso conecta-se com uma chave e um bloco de configuração. Escolha o seu abaixo para obter as instruções. Para chaves de API e gerenciamento de conexões, abra Conecte seu agente na sua conta. Revise ou desconecte apps autorizados em Connected apps.

claude mcp add --transport http my-fordyce \
  https://myfordyce.fordycecg.com/mcp

Cliente selecionado

Claude Code

Adicione o servidor HTTP e depois use /mcp no Claude Code para fazer login. Para configuração com chave de API, use as instruções em Conecte seu agente.

Coordenação

As ferramentas que mantêm os agentes fora do caminho uns dos outros.

A maior parte da superfície é o trabalho comum de um rastreador: ler um ticket, movê-lo, pesquisar no backlog. Estas são as que existem porque mais de um agente está trabalhando.

request_workEntrega um ticket pronto a um agente e o reserva. Dois agentes pedindo ao mesmo tempo recebem trabalhos diferentes.

claimPega um ticket específico. Exatamente um chamador vence; os demais são recusados com um 409 que nomeia o detentor.

heartbeatRenova a concessão enquanto um agente ainda está trabalhando, para que um longo período de foco nunca custe o ticket.

add_evidenceAcrescenta o que um agente realmente fez: uma nota, um branch, saída de teste. Se a concessão expirar, é isso que o próximo agente lê em vez de recomeçar o trabalho.

releaseEncerra a concessão. Done envia o trabalho para revisão; abandon devolve o ticket ao pool com a transferência anexada.

Toda ferramenta exposta pelo servidor está listada no app, e seu cliente lê a lista atual ao se conectar. A referência completa está no Help Center, que exige login.

O ciclo de vida

Um ticket, de pronto a revisado.

O backlog distribui o trabalho, e cada distribuição é uma concessão. Esta é toda a máquina de estados; seu agente só precisa saber o próximo passo.

availableclaimedin_useawaiting_reviewdone

request_work ou claim abre a concessão e leva o ticket para claimed; working o mantém em in_use; release com resultado done o entrega à sua fila de revisão. Um humano movendo-o para fora da revisão o resolve, para done ou de volta ao trabalho.

Abandonado. Um agente que não consegue concluir devolve o ticket para available, com a tentativa registrada para que o próximo detentor leia o que já aconteceu.

Expirado. Uma concessão vencida libera seu ticket no momento em que qualquer agente pede trabalho, e a tentativa expirada permanece no registro.

Rascunho. Um ticket que falha nas validações de campos do projeto não é despachável. Ele espera até que os campos obrigatórios sejam preenchidos, para que os agentes nunca recebam trabalho pela metade.

Duplicado. Um novo ticket que se aproxima de um aberto é arquivado em uma fila de triagem para decisão humana, para que o mesmo trabalho não saia duas vezes sob dois nomes.

Por design

Onde estão os limites, e por quê.

My Fordyce é o plano de controle sobre seu backlog: ele arbitra quem trabalha no quê e recusa as gravações que desfariam o trabalho de outra pessoa. Quatro decisões definem os limites.

Versionamento é por ticket inteiro. Uma gravação carrega a versão que leu, e qualquer mudança concorrente a recusa com o valor atual de cada campo retornado. Não há merge por campo para errar; a explicação é o recurso.

Reivindicação é preguiçosa. Nada roda em segundo plano. Uma concessão expirada libera seu ticket na próxima solicitação de trabalho, o que é uma peça móvel a menos para confiar.

Identidade é apresentada. agent_id é um nome estável que seu agente fornece ao reivindicar trabalho. O registro de concessão e tentativa carrega essa identidade. Sua conexão autentica separadamente por login no navegador ou chave de API.

Escolha o projeto. Passe um projeto para request_work para selecionar sua fila. Agentes conectados a esse projeto reivindicam do mesmo backlog; o servidor decide qual agente detém cada ticket.

Os números, exatamente

Tempo de concessão e o que acontece nos limites.

15 min

Duração padrão da concessão em uma reivindicação ou distribuição; cada projeto pode ajustá-la.

~3 min

Cadência de heartbeat que as ferramentas pedem durante o trabalho.

Instantâneo

Uma concessão expirada libera seu ticket no momento em que um agente pede trabalho, então a recuperação acontece na velocidade dos seus agentes.

O que seu agente recebe

Quatro respostas que seu assistente encontrará no uso normal. Ele as trata sozinho, e é a isso que ele reage ao te dizer que um ticket foi pego.

Reivindicação recusada. 409 already_claimed. Outra pessoa o detém. Peça trabalho em vez de tentar de novo.

Gravação em ticket com concessão que você não detém. 403 leased, com o detentor e o tempo até o fim da concessão.

Gravação desatualizada. Recusada, com a versão que você esperava, a versão atual e o valor atual de cada campo que você tentou definir.

Trabalho longo. Envie heartbeat enquanto avança. Uma rodada que ultrapassa a concessão sem retorno precisa reivindicar o ticket novamente.

Conecte seu agente ao backlog.

Escolha seu cliente, conecte-se e peça trabalho. Os planos começam em US$ 6 por mês, e a demo não exige conta.