u/North_Camel_3970

Starter AI Rules

Starter AI Rules

Uma coisa que fica evidente depois de algum tempo é que simplesmente entregar uma tarefa e esperar que a ferramenta entenda todo o contexto do projeto nem sempre funciona bem.

A IA pode criar uma solução que funciona, mas foge do padrão do projeto. Pode alterar arquivos que não precisava, esquecer testes, deixar a documentação desatualizada ou até tomar decisões questionáveis relacionadas à segurança.

Pensando nisso criei um projetinho simples chamado Starter AI Rules, open source, que propõe uma forma simples de estabelecer regras para ferramentas de programação assistida por IA.

O Objetivo é manter um conjunto de regras que acompanham o projeto e deixam claro como o desenvolvimento deve acontecer.

Por exemplo:

alterar somente o que foi solicitado
manter testes junto com as alterações
atualizar a documentação quando necessário
não expor credenciais ou informações sensíveis
validar entradas
respeitar a arquitetura e os padrões existentes
manter o contexto do projeto atualizado

O projeto organiza essas regras de forma modular e versionada, para que possam evoluir junto com o código. Também existe uma preocupação em manter as regras curtas e específicas, evitando arquivos enormes de instruções que acabam se tornando difíceis de manter.

Outro ponto interessante é que a proposta não está presa a uma única ferramenta. O projeto foi pensado para funcionar com Cursor, GitHub Copilot, Claude Code e ferramentas semelhantes, além de prever compatibilidade com formatos como .mdc e AGENTS.md.

No fundo, a ideia é tratar as instruções dadas às ferramentas de programação como parte do próprio projeto.

Assim como temos padrões de código, documentação, testes e decisões de arquitetura versionadas no Git, faz sentido que as regras usadas durante o desenvolvimento também estejam no repositório e possam ser discutidas e melhoradas pela equipe.

O projeto ainda está no começo e acredito que a contribuição da comunidade pode ajudar bastante a definir quais regras realmente fazem diferença no dia a dia.

Quem trabalha com Cursor, Copilot, Claude Code ou outras ferramentas desse tipo e já passou por problemas de contexto, alterações desnecessárias ou código fora dos padrões do projeto, fica o convite para conhecer, testar e contribuir.

Tanto as regras quanto a documentação estão disponíveis em português e inglês. Para as ferramentas isso não faz diferença prática, mas optei por manter os dois idiomas para facilitar a leitura, a personalização das regras e principalmente a contribuição de desenvolvedores de diferentes comunidades.

Sugestões, issues, pull requests e principalmente experiências reais de uso são muito bem-vindas.

https://github.com/eudameron/starter_ai_rules

u/North_Camel_3970 — 8 days ago

Os primeiros emitters do AI Parlance

Depois de definir a arquitetura do projeto, comecei a desenvolver os primeiros emitters do AI Parlance.

Para quem ainda não conhece a proposta, o AI Parlance é um projeto open source que busca criar uma linguagem intermediária padronizada para IA. A ideia é simples: o modelo gera apenas uma representação universal da lógica da aplicação, enquanto emitters especializados convertem essa representação para qualquer linguagem de programação.

Hoje, a lógica da aplicação e a sintaxe da linguagem de programação são geradas juntas. Como a mesma lógica precisa ser expressa de formas diferentes para cada linguagem, os LLMs acabam gastando muitos tokens produzindo sintaxe específica de cada linguagem, em vez de gerar uma representação compacta e independente de linguagem.

No AI Parlance, a responsabilidade é dividida:

  • A IA pensa utilizando uma linguagem única.
  • Os emitters ficam responsáveis por traduzir essa representação para JavaScript, TypeScript, Python, Go, PHP, Java, C#, Rust ou qualquer outra linguagem.

Os primeiros emitters já conseguem gerar código básico a partir da representação intermediária. Ainda há muito trabalho pela frente, principalmente em recursos mais avançados, mas a arquitetura já demonstra que a separação entre lógica e sintaxe é viável.

Essa abordagem traz algumas vantagens interessantes:

  • redução do consumo de tokens;
  • maior consistência entre diferentes linguagens;
  • facilidade para adicionar suporte a novas linguagens;
  • emitters independentes que podem evoluir separadamente;
  • possibilidade de otimizações específicas para cada linguagem sem alterar a forma como a IA "pensa".

Um dos objetivos futuros é permitir que a comunidade desenvolva seus próprios emitters, tornando o ecossistema extensível e desacoplado. Se surgir uma nova linguagem, basta implementar um novo emitter — não é necessário ensinar essa linguagem novamente ao modelo.

Ainda é um projeto em evolução, mas acredito que esse tipo de arquitetura pode ajudar a tornar a geração de código por IA mais eficiente, previsível e independente de linguagem.

Gostaria de ouvir a opinião da comunidade.

Faz sentido tratar linguagens de programação apenas como destinos de compilação, deixando que a IA trabalhe sempre sobre uma representação intermediária única?

https://aiparlance.org/pt/

u/North_Camel_3970 — 13 days ago

Eu sempre tive curiosidade sobre como os motores de busca realmente funcionam por trás. Aquela coisa de digitar algo e, em segundos, ter milhares de resultados organizados nunca deixou de me chamar atenção.

Há cerca de um ano, comecei um projeto pessoal sem muita pretensão, mais por aprendizado mesmo. A ideia era simples: criar uma ferramenta de análise de SEO sem depender dessas plataformas que cobram caro por algo que, no fundo, eu queria entender como construir.

Foi aí que nasceu o Pimgle.

No começo, era só um crawler bem básico. Eu deixava rodando nos momentos, na minha própria máquina, coletando dados, errando bastante, ajustando, quebrando e reconstruindo. Nessa época, eu ainda não estava usando IA como uso hoje, então foi muito na base de tentativa e erro mesmo.

Lembro de um momento específico que ficou marcado. Eu estava voltando de uma viagem, dentro do avião, sem muita distração. Resolvi abrir o notebook e comecei a montar a home e as páginas de resultado. Foi ali que o projeto começou a tomar uma forma mais real.

Depois de alguns meses com o crawler rodando, o banco já tinha milhões de registros. Parecia muito, e de certa forma era mesmo, mas quando você compara com o tamanho da internet, percebe que é só um grão de areia.

Ainda assim, já dava para sentir que estava crescendo além do que eu tinha imaginado no início.

Foi nesse ponto que percebi que precisava de algo mais robusto para busca. Acabei escolhendo o Meilisearch pela simplicidade e velocidade de implementação, e isso destravou bastante coisa.
Recentemente, coloquei o projeto no ar.

Além do buscador, o Pimgle tem um recurso chamado Webtrack, que faz uma análise básica de um site. Ele mostra dados como quantidade de links internos e externos, além dos domínios externos que o próprio Pimgle encontrou apontando para aquele domínio, entre outras informações úteis.

Está longe de ser um Google, e nem é essa a ideia. Tem várias limitações, principalmente de infraestrutura e processamento, mas ver algo que saiu praticamente do zero, rodando, indexando mais de 1 milhão de páginas e com mais de 10 milhões de links associados no banco, é uma sensação difícil de explicar.

Você vai perceber que nem todos os sites aparecem nas buscas ainda. Isso é esperado. É um projeto pessoal, com praticamente zero investimento e recursos bem limitados. O crawler está evoluindo aos poucos, aprendendo e expandindo o alcance. Então é questão de tempo até o pimglebot chegar em cada canto que ainda não foi explorado.
Ainda tem muito para evoluir, mas já é algo real e publicado e isso para mim é o mais satisfatório.

Se alguém quiser dar uma olhada:

Pimgle: https://pimgle.com/
Exemplo do webtrack: https://pimgle.com/webtrack/oliveiraweb.com.br

u/North_Camel_3970 — 4 months ago