um jovem de 20 anos com 45 apps, um deles faturando $30k/mês. um universitário fazendo seis dígitos em 70 dias. seu feed está cheio dessas histórias — o meu também.
aqui está o que nenhum desses posts te entrega: o sistema chato que leva um app da "ideia" ao "vivo na App Store", repetidamente, sem você ter que supervisionar cada passo.
eu construí esse sistema este ano. agentes de IA rodam ele — Claude Code e Codex, trabalhando em turnos. 10 apps iOS e uma dúzia de ferramentas open source passaram por ele: submissões, rejeições, reenvios, deploys em produção, campanhas de anúncio e os funerais dos que não mereciam viver.
hoje ele se torna open source. gratuito, MIT, sem curso, sem newsletter, sem "me chama no DM que eu passo a receita":
→ github.com/davidmosiah/agents-that-ship
o código nunca foi a parte difícil
a IA já escreve o código. essa parte está resolvida. o que ainda mata apps em 2026:
- começar cinco coisas e não terminar nenhuma
- um agente tentando o mesmo conserto falho doze vezes às 2 da manhã
- um "pronto!" numa UI que ninguém nunca abriu no modo escuro num iPad
- uma semana de trabalho parada, sem push, num laptop
- "lançado!" quando a verdade é "parado numa branch local"
- o cron job de um projeto morto ainda postando (e gastando) dias depois do funeral
- nada disso é um problema de código. é um problema de operação. e nenhum arquivo CLAUDE.md ou AGENTS.md que eu já vi cobre isso — todos descrevem a base de código e param exatamente onde o trabalho que gera dinheiro começa.
- então eu escrevi a outra metade.
- eu auditei 7.500 dos meus próprios prompts para construir isso
- em algum momento, eu revisitei cada prompt que já tinha enviado para meus dois agentes. cerca de 7.500 deles. descoberta brutal: a maioria era eu reensinando as mesmas cinco lições. faça push do seu trabalho. pare de tentar aquele conserto de novo. não me dê cinco opções. verifique o iPad. você realmente executou?
- então eu transformei cada correção repetida em uma regra escrita. depois disso, meu prompt mais comum passou a ser "sim, por favor."
- esse é o truque todo. agentes não precisam de mais autonomia. eles precisam de decisões pré-definidas tão bem que seu trabalho se resume a dizer sim.
- os 9 playbooks
- cada um é escrito PARA o agente — em segunda pessoa, com barreiras que ele não consegue contornar:
- 01 kickoff → leia o estado, proponha UMA coisa. sem menus.
- 02 spec → fases com barreiras executáveis. "polido" não é uma barreira.
- 03 build → diff mínimo, execute de verdade, faça push antes de comemorar.
- 04 desencalhar → duas correções falhas = pare de editar, mude a estratégia.
- 05 polimento → percorra cada tela. claro+escuro, celular+tablet, cada idioma. prints ou não aconteceu.
- 06 olhos novos → um modelo diferente rederiva cada afirmação a partir do repositório. auto-revisão é revisar sua própria desculpa.
- 07 lançar → commitado ≠ feito push ≠ submetido ≠ aprovado ≠ no ar. nomeie o estado real.
- 08 métricas → cada número com sua variação, cada experimento nasce com uma data de término.
- 09 encerrar → enterre projetos mortos direito: varra TODOS os schedulers, pare os gastos, escreva o veredito.
- as regras que imprimem tempo
- duas tentativas. a mesma falha duas vezes significa que o modelo do agente sobre o problema está errado. pare de editar. reproduza do zero, escreva hipóteses que sejam realmente diferentes, instrumente, então corrija. renomear uma variável e tentar de novo é a segunda tentativa, não uma segunda ideia. essa única regra economiza mais tokens do que qualquer truque de prompt que eu conheço.
- o autor não é o validador. antes de "pronto" em algo arriscado, um segundo agente — modelo diferente, contexto limpo — rederiva as afirmações a partir do repositório real. dois modelos diferentes fazendo revisão cruzada pega o que a auto-revisão estruturalmente não consegue.
- trabalho não enviado não existe. "você fez push?" costumava ser minha pergunta mais repetida. agora commit+push fecha cada bloco, sem ser perguntado. uma frase matou uma categoria inteira de ansiedade.
- enterre direito. uma vez eu matei um projeto e seu fantasma continuou postando um resumo diário por mais dois dias — um timer esquecido sobreviveu ao funeral. o playbook de encerramento varre todos os schedulers em todas as máquinas, com a saída como prova.
- dois agentes, uma máquina
- o multiplicador: meus agentes se revezam. quem tem cota implementa; o outro valida. as entregas são especificações com barreiras, não intuições. e um script de bloqueio de ~150 linhas impede que eles colidam no mesmo repositório — código de saída 3 significa "o outro agente está aqui, escolha outra frente."
- rodar dois modelos diferentes como um pipeline é o upgrade de qualidade mais barato em IA agora. o repositório tem o contrato completo.
- por que é gratuito
- porque é markdown. nove arquivos. sem SDK, sem framework, nada que apodrece quando o próximo modelo for lançado. funciona como skills do Claude Code, seções de AGENTS.md ou regras do Cursor — adaptadores inclusos.
- e mais uma regra lá dentro, a que eu defenderia acima de todas: NADA se torna público em seu nome sem um "sim" fresco. sem repositórios, sem posts, sem pacotes. o entusiasmo de um agente nunca deve poder gastar sua reputação.
- (este artigo foi redigido por um agente. um humano aprovou. é o sistema funcionando.)
- roube ele:
- → github.com/davidmosiah/agents-that-ship
- fork ele, destrua ele, discorde da metade. a única regra que eu manteria a qualquer custo: o contrato existe POR ESCRITO. toda regra que vive só na sua cabeça é uma que seu agente vai quebrar de novo amanhã.





