@thiagoeti/skills — 297 AI Agent Skills
Biblioteca de 297 skills especializadas para Claude Code, GitHub Actions, Antigravity, OpenCode e outros agentes de IA. Instale apenas o que precisa, onde precisa.
🚀 Instalação Rápida
npx @thiagoeti/skills
Gerenciador de pacotes
Funciona igual nos quatro — use o que você já tem:
| Comando |
Uso |
npx @thiagoeti/skills |
executa sem instalar |
bunx @thiagoeti/skills |
idem, via Bun |
npm i -g @thiagoeti/skills |
instala o binário thiagoeti-skills |
bun add -g @thiagoeti/skills |
idem, via Bun |
Também funciona com pnpm dlx (e yarn dlx no Yarn 2+).
Instalar uma skill só
npx @thiagoeti/skills bun-ts-elysiajs # uma
npx @thiagoeti/skills bun-ts-elysiajs db-postgresql # várias
npx @thiagoeti/skills --category ts # a categoria inteira
npx @thiagoeti/skills --list # ver as 297 disponíveis
O que acontece automaticamente:
- ✅ Detecta seu ambiente (
.claude/, .github/, .agents/)
- ✅ Instala nos ecossistemas presentes
- ✅ Seus agentes de IA acessam imediatamente
- ✅ Versionamento inteligente (não reinstala se a versão for igual ou menor)
📦 Estrutura de Cada Skill
Uma skill é um arquivo. As instruções vivem num único SKILL.md; poucas skills trazem também um script.
skill-name/
└── SKILL.md # Metadados (YAML) + Instruções (Markdown)
Metadados: name, description (quando a skill dispara), version e license. O corpo traz as instruções diretas — regras, exemplos e referência técnica do tema.
🎯 7 Modos de Instalação
1. Auto-detectado (recomendado)
npx @thiagoeti/skills
Instala nos ecossistemas detectados no seu projeto (.claude/, .github/, .agents/).
2. Instalar para tudo
npx @thiagoeti/skills --all
Força instalação nos 3 ecossistemas (ignora detecção).
3. Skills específicas
npx @thiagoeti/skills arch-ddd bun-ts-elysiajs-arch-mvc web-seo
Instala apenas as skills solicitadas nos ecossistemas detectados.
4. Por categoria
npx @thiagoeti/skills --category arch
Instala todas as skills de uma categoria.
Categorias: o prefixo antes do primeiro - é a categoria (bun-ts-elysiajs-env → bun, pattern-adapter → pattern). Skill de conceito único (circuit-breaker, saga-pattern) vira categoria de 1 skill. --help e --list mostram cada categoria com a contagem real.
npx @thiagoeti/skills --interactive
Menu para navegação e seleção de skills.
6. Listar disponíveis
npx @thiagoeti/skills --list
Mostra as 297 skills organizadas por categoria.
7. Teste seco (dry-run)
npx @thiagoeti/skills --dry-run
npx @thiagoeti/skills arch-ddd --dry-run
Simula a instalação sem escrever arquivos (funciona com todos os modos).
📖 Outros Comandos
npx @thiagoeti/skills --help # ajuda completa
npx @thiagoeti/skills --force # força reinstalação mesmo com versão igual
npx @thiagoeti/skills --version # versão do pacote
🎯 297 Skills Disponíveis
🟦 TypeScript (32)
| Skill |
Descrição |
bun-runtime |
Bun como runtime: TypeScript sem build, bun install, APIs nativas (Bun.serve, Bun.file, Bun.sql, bun:sqlite), migração de Node e limite com addons N-API |
bun-ts-elysiajs |
Elysia.js: framework TypeScript para Bun |
bun-ts-elysiajs-backend |
Backend TypeScript com Elysia: tsconfig estrito, tipos, camadas, onError central e clean code |
bun-ts-elysiajs-eden-openapi |
Cliente tipado Eden Treaty e documentação @elysia/openapi gerada do schema |
bun-ts-elysiajs-env |
Variáveis de ambiente validadas na inicialização com t.Object ou Zod e .env nativo do Bun |
bun-ts-elysiajs-http-server |
Elysia: roteamento declarativo, validação com t.Object, group, onError central e múltiplos processos via fetch |
bun-ts-elysiajs-public |
Servidor Elysia mínimo em app/index.ts: expõe dist e public como estáticos públicos com @elysia/static e CORS por CORS_ORIGIN |
bun-ts-elysiajs-s3 |
Bun.s3 nativo: download em streaming pela rota e URL pré-assinada |
bun-ts-elysiajs-sse |
Streaming com async function* no handler, SSE, cancelamento por request.signal e streaming de LLM |
bun-ts-elysiajs-upload |
t.File e t.Files com limite de tamanho e tipo, gravação com Bun.write ou envio direto ao Bun.s3 |
bun-ts-elysiajs-webhook |
Webhook em Elysia: assinatura sobre corpo cru com parse none, replay, idempotência e envio |
bun-ts-elysiajs-websocket |
Rota .ws() do Elysia sobre o pub/sub nativo do Bun: tópicos, autenticação no upgrade e backpressure |
bun-ts-elysiajs-worker-threads |
Worker threads do Bun dentro do serviço: pool para CPU pesado, structured clone e transferable, sem bloquear o event loop |
persistent-data-structure |
Estrutura de dados persistente: imutabilidade com structural sharing, path copying e múltiplas versões endereçáveis |
ts-ai |
AI SDK: streaming, saída estruturada com Zod, tool calling, useChat |
ts-codequality |
Qualidade medida: complexidade cognitiva, duplicação, código morto, cobertura de tipo, fronteira |
ts-content |
Conteúdo MDX tipado com Velite, e leitura de repositório via Octokit |
ts-email |
E-mail transacional: SPF/DKIM/DMARC, React Email, bounce e supressão |
ts-eslint |
ESLint flat config, regras com type-checking, Prettier e Biome |
ts-nest |
NestJS: framework enterprise com DI e decorators |
ts-next-better-auth |
Better Auth: sessão em cookie, OAuth, proteção de rota e Server Action |
ts-next-env |
Env validado no boot, servidor vs cliente e o risco do NEXT_PUBLIC |
ts-next-i18n |
i18n com next-intl: rotas por locale, RSC, ICU, Intl e hreflang |
ts-oxlint |
oxlint: categorias, plugins, regras com tipo (oxlint-tsgolint), .oxlintrc.json, –fix em níveis de risco, CI e convivência com ESLint |
ts-queue |
Filas e jobs com BullMQ: idempotência, retry com backoff, DLQ, concorrência, limiter e Job Scheduler |
ts-refactor |
Codemod: ast-grep, ts-morph, jscodeshift, putout e o protocolo que evita destruir o repo |
ts-taxonomy |
Taxonomia TS: Google TypeScript Style Guide como base sem divergência, prefixo do assunto (geral → específico), exceção de import e naming-convention no ESLint |
ts-typecheck |
Validação de tipo e sintaxe: tsc –noEmit, TypeScript 7 nativo, project references, incremental e CI — e o typescript-eslint que ainda exige TS < 6.1 |
ts-uuid |
UUID em JS/TS: v7 como padrão, v5 com namespace para migrar ids legados |
ts-workers |
Web Workers e worker_threads: structured clone, transferable, pool |
ts-zod |
Zod 4: validação na borda, tipo derivado, transform, refine e union |
typescript-strict |
TypeScript em modo strict sem any: unknown com narrowing, discriminated union, satisfies, readonly e tipagem de dinheiro em centavos |
🗄️ Banco de Dados (24)
| Skill |
Descrição |
ansi-sql |
SQL padrão ANSI/ISO: lógica de três valores e NULL, semântica de JOIN, GROUP BY, CTE recursiva, window function e portabilidade |
bun-ts-elysiajs-drizzle |
Drizzle com o driver de Bun.sql, migração e plugin de banco no Elysia |
bun-ts-elysiajs-postgres |
Bun.sql nativo como plugin Elysia: query parametrizada, transação com sql.begin e pool |
bun-ts-elysiajs-redis |
Bun.redis nativo como plugin: cache de resposta, pub/sub e sessão |
caching-strategies |
Cache-Aside, Write-Through, Write-Behind e Read-Through: TTL, cache stampede e invalidação por chave, tag ou evento |
db-drizzle |
Drizzle ORM: schema em TS, migrações (drizzle-kit), queries tipadas, relations |
db-mariadb |
MariaDB: divergências frente ao MySQL, engines, JSON e tipos próprios |
db-migrations |
Migrações sem downtime: expand-migrate-contract, backfill, locks |
db-mongodb |
MongoDB: documentos, aggregation e sharding |
db-mysql |
MySQL: configuração, schema e otimização |
db-postgresql |
PostgreSQL: JSONB, CTEs e extensões avançadas |
db-sql |
Fundamentos SQL, queries, índices e tuning |
db-sqlite |
SQLite: banco embarcado, leve e portável |
index-elasticsearch |
Elasticsearch: mapping estrito, text vs keyword, analyzer e autocomplete, Query DSL, aggs, Bulk API, search_after com PIT, ILM e kNN |
index-qdrant |
Qdrant: coleções, índice de payload, Query API híbrida, multitenancy |
index-redis |
Redis: cache, filas e estruturas in-memory |
mariadb-schema-design |
MariaDB: convenções de schema financeiro, replicação primary/replica, binlog/CDC, particionamento e DECIMAL vs NUMERIC |
pg-pool-manager |
PostgreSQL: pool de conexões com pg.Pool, transação ACID, retry em deadlock e lock pessimista FOR UPDATE |
php-hyperf-database |
hyperf/database: pool por corrotina, transação, migração, model-cache e o risco de conexão compartilhada |
php-hyperf-redis-cache |
hyperf/redis com pool e hyperf/cache por anotação (#[Cacheable], #[CacheEvict]): TTL e invalidação |
postgres-schema-design |
PostgreSQL: convenções de schema financeiro — UUID, NUMERIC, TIMESTAMPTZ, JSONB com GIN e upsert com ON CONFLICT |
redis-data-structures |
Redis: escolha de estrutura (String, Hash, Sorted Set, Stream, Set), atomicidade, TTL, eviction e RDB vs AOF |
sql-mcp-introspection |
Introspecção de banco via MCP: ler DDL real, validar com EXPLAIN e derivar tipagem fiel ao schema |
sql-tuning |
Otimização de query por medição: EXPLAIN ANALYZE, cardinalidade, boas práticas de JOIN e filtro sargável, organização da query, índice composto e covering, N+1 e OFFSET profundo |
🎨 Frontend (10)
| Skill |
Descrição |
front-animation |
Animação: Tailwind e tw-animate-css, Motion para gesto, GSAP com ScrollTrigger |
front-cdn |
Biblioteca front por CDN público — versão fixa, SRI com crossorigin, fallback e quando não usar |
front-tailwind |
Tailwind CSS v4: utility-first, responsivo e design system |
ts-astro |
Astro: sites estáticos e multi-framework |
ts-astro-landing-page |
Landing page one-page em Astro: componentes isolados, HTML estático, JS só onde há interação |
ts-next |
Next.js: React fullstack com SSR e SSG |
ts-react |
React: componentes, hooks e gerenciamento de estado |
ts-react-ai-elements |
AI Elements da Vercel — registry shadcn de UI para chat de IA, composição com useChat |
ts-react-shadcn |
shadcn: skills oficiais e servidor MCP — instalar por client, registries e diagnóstico |
ts-vue |
Vue.js: framework progressivo com Composition API |
🏗️ Arquitetura (24)
| Skill |
Descrição |
anti-corruption-layer |
Anti-Corruption Layer: camada de tradução bidirecional que isola o domínio de modelos externos poluídos, como legado ou mainframe |
arch-adr |
Registro de decisão: formato, imutabilidade e supersessão, ADR × RFC |
arch-coupling |
Acoplamento medido: conascência, força × distância × volatilidade, co-mudança |
arch-ddd |
DDD estratégico e tático: linguagem ubíqua, bounded context, context map, Value Object, Entity, Aggregate, Domain Event, Repository e Domain Service |
arch-decomposition |
Decompor monólito: inventário, limiar por porte, ordem de extração e critério de parada |
arch-event-driven |
Event-Driven: mensageria, eventos e CQRS |
arch-event-sourcing |
Event Sourcing: eventos imutáveis, fold puro, snapshot, projeção e event store append-only com concorrência otimista por versão |
arch-microservices |
Microserviços: serviços independentes e comunicação |
bun-ts-elysiajs-arch-clean |
Clean Architecture: domínio sem framework, controller como plugin Elysia que chama o caso de uso |
bun-ts-elysiajs-arch-ddd-feature |
DDD com Feature Folders: feature autocontida, camada de apresentação como plugin Elysia |
bun-ts-elysiajs-arch-hexagonal |
Hexagonal: ports & adapters, adapter primário HTTP como plugin Elysia e testabilidade |
bun-ts-elysiajs-arch-mvc |
MVC em Elysia: controller como instância Elysia, view HTML, service e onError |
bun-ts-elysiajs-bff |
Backend for Frontend em Elysia: chamadas em paralelo com timeout e payload projetado por canal |
bun-ts-elysiajs-vertical-slice-architecture |
Vertical slice em Elysia: cada feature é um plugin com rota, schema e handler na mesma fatia |
clean-onion-architecture |
Clean Architecture e Onion Architecture: camadas concêntricas, regra de dependência sempre para dentro, domínio isolado de framework |
cqrs-pattern |
CQRS: separa modelos de escrita e leitura em estruturas e bancos distintos, projeção e eventual consistency |
data-access-styles |
Active Record versus Data Mapper: como o objeto de domínio se liga à persistência, domínio acoplado ou ignorante de SQL |
data-mesh |
Data Mesh: propriedade de dados descentralizada por domínio, data product com contrato estável, governança federada |
financial-domain-modeling |
Modelagem canônica do domínio financeiro: interfaces TS para Account, Transfer, Payment, PIX, TED e Boleto |
hexagonal-architecture |
Ports & Adapters: núcleo isolado por ports, adapters de infraestrutura e regra de dependência sempre para dentro |
microkernel-plugin |
Microkernel: núcleo mínimo e estável que delega processamento a plugins registrados por chave |
modular-monolith |
Monólito modular: módulos com fronteira explícita, API pública via index.ts, eventos e composition root |
pattern-catalog |
Índice mestre dos padrões do repositório com árvore de decisão por resiliência, dados, consistência, mensageria e arquitetura |
transaction-script |
Lógica de operação como procedimento único por caso de uso, alternativa ao modelo de domínio rico quando este é excesso |
🧩 Padrões de Projeto (19)
| Skill |
Descrição |
pattern-adapter |
Adapter: envolve SDK ou sistema legado numa interface limpa por composição, convertendo tipo, campo, data e status |
pattern-bridge |
Bridge: desacopla abstração de implementação por composição, evitando explosão combinatória de subclasses |
pattern-builder |
Builder: constrói objeto complexo passo a passo por API fluente, validando regras só no build final |
pattern-chain-of-responsibility |
Chain of Responsibility: encadeia handlers independentes que decidem processar ou repassar ao próximo |
pattern-command |
Command: operação encapsulada em objeto com execute() e undo(), fila de comandos, rollback e histórico auditável |
pattern-composite |
Composite: trata objeto individual e composição em árvore de forma uniforme por interface comum, hierarquia parte-todo |
pattern-decorator |
Decorator: adiciona comportamento a objeto em runtime sem herança, wrappers empilháveis para log, cache e validação |
pattern-dependency-injection |
Dependency Injection: inversão de controle na criação de dependências, constructor injection, container IoC, ciclo de vida |
pattern-facade |
Facade: interface única que esconde a complexidade de vários subsistemas, reduzindo o acoplamento do cliente |
pattern-factory |
Factory Method e Registration Pattern: encapsula criação de objetos, desacoplando o cliente da classe concreta |
pattern-mediator |
Mediator: objeto central coordena comunicação entre componentes desacoplados, evitando referências cruzadas |
pattern-observer |
Observer: publish-subscribe em memória, Subject notifica Observers via subscribe, unsubscribe e notify |
pattern-query-object |
Query Object: builder fluente para SQL parametrizado e composível, com whitelist de colunas e paginação por cursor |
pattern-singleton |
Singleton: instância única com inicialização lazy para pool de conexões, cache, logger e recurso compartilhado |
pattern-special-case |
Special Case / Null Object: objeto com comportamento padrão seguro no lugar de null ou exceção |
pattern-specification |
Specification: regra de negócio como objeto combinável por and, or e not, sem duplicar condicional |
pattern-state |
Comportamento por estado interno: cada estado é uma classe com suas transições válidas, sem switch de status espalhado |
pattern-strategy |
Família de algoritmos intercambiáveis atrás de interface comum, trocados em runtime, eliminando cadeias de if/else e switch |
pattern-template-method |
Esqueleto fixo de algoritmo na classe base, com hooks variáveis implementados pelas subclasses, sem alterar a ordem dos passos |
📨 Mensageria & EIP (41)
| Skill |
Descrição |
aggregator |
Aggregator (EIP): combina mensagens relacionadas pelo mesmo correlationId numa mensagem consolidada, por contagem ou timeout |
amqp-message-handler |
RabbitMQ/AMQP: acknowledgment explícito (ack, nack, reject), prefetch, durabilidade de fila e consumo idempotente |
amqp-patterns |
RabbitMQ/AMQP avançado: tipos de exchange, bindings, Dead Letter Exchange, filas com prioridade e RPC via replyTo |
bun-ts-elysiajs-async-request-reply |
Async Request-Reply em Elysia: POST com 202 e Location, GET de status, polling, callback ou reply-to |
bun-ts-elysiajs-cron |
Bun.cron e @elysia/cron no processo, com trava contra execução duplicada entre instâncias |
bun-ts-elysiajs-worker |
Serviço worker em Bun: entrypoint separado da API, Elysia mínimo só para /health e /metrics, desligamento limpo, idempotência, escala horizontal e reprocesso de DLQ |
bun-ts-elysiajs-worker-bullmq |
Worker BullMQ sobre Redis em Bun: API Elysia enfileira, concurrency, retry com backoff, falha para DLQ, worker.close() no SIGTERM |
bun-ts-elysiajs-worker-kafka |
Consumer group Kafka em Bun: commit manual de offset, rebalance e DLQ — validar antes a compatibilidade do cliente (KafkaJS ou @confluentinc/kafka-javascript) com Bun |
bun-ts-elysiajs-worker-nats |
Pull consumer do NATS JetStream em Bun: ack explícito, max deliver, backoff e consumer durável |
bun-ts-elysiajs-worker-postgres |
Fila em PostgreSQL com Bun.sql: SELECT FOR UPDATE SKIP LOCKED, LISTEN/NOTIFY para acordar o worker, sem broker |
bun-ts-elysiajs-worker-rabbitmq |
Consumer amqplib em Bun: prefetch, ack/nack explícito, DLX, retry com fila de atraso e reconexão |
bun-ts-elysiajs-worker-sqs |
Worker AWS SQS em Bun: long polling, visibility timeout, batch delete, DLQ por redrive policy |
bun-ts-elysiajs-worker-zeromq |
Worker ZeroMQ em Bun sem broker: PUSH/PULL para distribuir tarefas, ROUTER/DEALER para resposta, HWM e desligamento limpo — validar antes o addon nativo do pacote zeromq no Bun |
claim-check |
Claim Check: payload grande armazenado em storage externo, mensagem carrega só a referência (bucket, chave, tamanho) para buscá-lo depois |
content-enricher |
Content Enricher: completa mensagem com dados incompletos consultando fonte externa antes de repassá-la no pipeline |
content-filter |
Content Filter: remove campos sensíveis da mensagem antes de repassar, minimização de dados e conformidade com LGPD |
control-bus |
Control Bus: canal de mensageria dedicado a administrar o pipeline — pausar consumer, mudar log level, consultar métrica |
dead-letter-queue |
Dead-Letter Queue: estacionamento de mensagens que falharam, DLX no RabbitMQ, poison pill e reprocessamento manual |
event-driven-messaging |
Taxonomia de eventos: notification event, event-carried state transfer, collaboration event, envelope CloudEvents, ordenação e schema evolution |
kafka-consumer |
KafkaJS consumer group: commit manual de offset at-least-once, seek para replay e DLQ por producer separado |
message-history |
Message History: histórico cumulativo de processamento embutido no envelope da mensagem, sem tracing externo |
messaging-bridge |
Messaging Bridge: serviço tradutor que conecta dois brokers assíncronos distintos sem acoplamento entre eles |
nats-messaging |
NATS: pub/sub leve, subject hierárquico, wildcard, queue group e persistência durável com JetStream |
normalizer-pattern |
Normalizer: converte mensagens de múltiplas fontes heterogêneas para um formato canônico único |
php-hyperf-amqp |
RabbitMQ com hyperf/amqp: producer, #[Consumer] com nums, ack/nack/requeue, DLX e desligamento limpo |
php-hyperf-async-queue |
Fila Redis nativa (hyperf/async-queue 3.2): job, retry, timeout, fila de falhas, processos consumidores e idempotência |
php-hyperf-crontab |
hyperf/crontab: tarefa agendada por anotação, onOneServer e singleton contra execução duplicada |
php-hyperf-kafka |
Consumer group com hyperf/kafka: commit de offset, rebalance, DLQ e paralelismo por partição |
php-hyperf-nats |
hyperf/nats: publish/subscribe, queue group e request/reply entre serviços |
php-hyperf-process |
Processo customizado (hyperf/process) como worker de longa duração, hyperf/signal e desligamento limpo |
pipes-and-filters |
Pipes and Filters: cadeia de filtros pequenos e reusáveis ligados por pipes, com ordem configurável |
resequencer |
Resequencer: reordena mensagens fora de ordem com buffer por número de sequência até preencher a lacuna |
routing-slip |
Routing Slip: itinerário de processamento embutido na mensagem, sem orquestrador central decidindo o próximo passo |
scatter-gather |
Scatter-Gather: envia requisição em paralelo a múltiplos destinatários e agrega respostas por quorum ou timeout |
sequential-convoy |
Sequential Convoy: garante ordem de mensagens da mesma chave roteando o comboio para a mesma partição |
splitter |
Splitter: decompõe mensagem composta em várias mensagens rastreáveis por correlationId, sequence e total |
sqs-sns-patterns |
AWS SQS e SNS: filas Standard e FIFO, deduplicação, Dead Letter Queue, fan-out, filter policy e visibility timeout |
transactional-queue |
Fila confiável em PostgreSQL com SELECT FOR UPDATE SKIP LOCKED, sem broker externo, base do Outbox e Inbox Pattern |
webhook-delivery |
Entrega confiável de evento HTTP com assinatura HMAC, retry com backoff exponencial, idempotency key e dead letter |
wire-tap |
Espelhamento de mensagem para canal de observação via fanout exchange, sem alterar ou atrasar o fluxo principal |
zeromq-messaging |
Sockets brokerless com ZeroMQ: PUB/SUB, PUSH/PULL e REQ/REP para topologias descentralizadas sem broker central |
🧯 Resiliência & Distribuídos (35)
| Skill |
Descrição |
actor-model |
Actor Model: mailbox por ator processada sequencialmente, isolamento de estado sem lock, base do Akka, Erlang/OTP e Orleans |
auto-scaling |
Auto-scaling reativo: janela deslizante de métrica, scale-out e scale-in com cooldown, limites mínimo e máximo de instâncias |
batch-processing |
Batch processing com checkpoint: fechamento EOD, janela de corte e reprocessamento idempotente sem duplicar efeito |
bulkhead-isolation |
Bulkhead: isola recursos em pools separados por criticidade para que a saturação de um workload não derrube o outro |
bun-ts-elysiajs-api-gateway |
API Gateway em Elysia: rate limit, autenticação e proxy por prefixo com timeout num ponto de entrada único |
bun-ts-elysiajs-correlation-tracing |
Correlation ID em Elysia: derive gera ou propaga x-correlation-id para resposta, log e fetch de saída |
bun-ts-elysiajs-distributed-tracing |
Tracing distribuído em Elysia: span filho do traceparent recebido, record e propagation.inject no fetch do Bun |
bun-ts-elysiajs-health-check-pattern |
Health check em Elysia: /live, /ready e /health com timeout por check e 200, 207 ou 503 |
bun-ts-elysiajs-idempotency-layer |
Idempotency-Key em Elysia: replay da primeira resposta, 409 em concorrência e 422 em payload diferente |
bun-ts-elysiajs-rate-limiter |
Rate limiting em Elysia com Redis: janela deslizante atômica em Lua, chave por usuário e IP, dupla chave no login, 429 com Retry-After |
cell-based-architecture |
Cell-based Architecture: replica a stack em células isoladas por região ou tenant, limitando o blast radius de falhas |
chaos-engineering |
Chaos Engineering: injeção controlada de falhas, hipótese de steady-state, blast radius e exercício GameDay |
circuit-breaker |
Circuit Breaker: máquina de estados CLOSED/OPEN/HALF_OPEN que protege sistemas distribuídos contra cascata de falhas |
eventual-consistency |
Consistência eventual: BASE vs ACID, last-write-wins, vector clock, CRDT, anti-entropy e read repair entre réplicas |
exponential-backoff |
Backoff exponencial: fórmula base×2^tentativa, full/equal/decorrelated jitter e teto de delay contra thundering herd |
fallback-pattern |
Fallback: hierarquia de alternativas quando a operação primária falha — cache local, stub response, degradação graciosa |
geode |
Geode: regiões ativa-ativa com roteamento por latência estimada e failover automático para o nó mais próximo |
graceful-degradation |
Degradação graciosa: tiers de capacidade (completo/parcial/mínimo) e enriquecimento de resposta pelos serviços disponíveis |
leader-election |
Eleição de líder com lease no Redis, fencing token e heartbeat para execução única sem split-brain |
load-balancing |
Load balancing client-side: round-robin, least connections, weighted e IP hash, com health check ativo e passivo |
offline-locking |
Offline Locking: lock otimista por coluna de versão ou pessimista com reserva e TTL contra edição concorrente |
outbox-pattern |
Transactional Outbox: publicação de evento atômica com a transação de negócio, relay e consumo idempotente |
php-hyperf-resilience |
hyperf/rate-limit, circuit-breaker e retry por anotação: limites, fallback e orçamento de retry |
process-orchestrator |
Process Orchestrator: componente central coordena fluxo multi-etapa com state machine e compensação de saga |
queue-load-leveling |
Queue-Based Load Leveling: fila como buffer entre produtor e consumidor para absorver picos sem rejeitar requisições |
resilience-kit |
Resiliência: compõe circuit breaker, retry, timeout, bulkhead e fallback em pipeline de proteção em camadas |
retry-pattern |
Retry: classificação de erro retryable, teto de tentativas, idempotência no destino e integração com circuit breaker |
saga-pattern |
Saga: transação distribuída sem 2PC via etapas locais e compensação, em orquestração ou coreografia |
scheduler-agent-supervisor |
Scheduler Agent Supervisor: coordena job longo com heartbeat durável e reinício apenas da etapa travada |
service-discovery |
Service Discovery: registro de instâncias em catálogo central com heartbeat, TTL e resolução client ou server-side |
sharding-partitioning |
Sharding: particionamento horizontal por hash, range ou directory, shard key, rebalanceamento e prevenção de hot shard |
strangler-fig |
Migração incremental de monólito ou legado via proxy que divide tráfego entre sistema antigo e novo, sem big bang |
throttling |
Auto-limitação de chamadas de saída com token bucket do cliente para respeitar rate limit de provedor terceiro |
timeout-pattern |
Cancelamento de operação lenta com AbortController e Promise.race, distinguindo connection timeout, read timeout e deadline propagado |
two-phase-commit |
Atomicidade distribuída via prepare/commit em duas fases entre bancos, com PREPARE TRANSACTION nativo do PostgreSQL |
🎯 Web/UX (12)
| Skill |
Descrição |
bun-ts-elysiajs-web-security |
Segurança web em Elysia: headers com nonce de CSP, HTTPS, CSRF, cookie de sessão e rate limit no login |
web-accessibility |
Web accessibility: WCAG compliance e usabilidade |
web-html-semantic |
HTML semântico: estrutura, acessibilidade e SEO técnico |
web-landing-page |
Landing pages de alta conversão: copy, CRO, HTML semântico + Tailwind e A/B testing |
web-llms-txt |
/llms.txt: índice em Markdown para LLM — H1, blockquote, seções H2 com links anotados e a seção Optional |
web-metadata |
<head> completo: charset, viewport, lang, canonical, meta robots por ambiente, favicon, manifest, theme-color e quem gera o head por framework |
web-performance |
Performance web: Core Web Vitals (LCP, INP, CLS) no campo e no laboratório, imagem, fonte, bundle, JS/CSS crítico, cache e sinais de ranking |
web-quality |
Web quality audit: análise completa de qualidade |
web-robots-txt |
/robots.txt: gramática, precedência pelo comprimento da regra, curinga, crawler de IA e limites de tamanho e status |
web-seo |
SEO: on-page, técnico e estrutura de conteúdo |
web-sitemap-xml |
/sitemap.xml: schema 0.9, lastmod confiável, limite de 50.000 URLs e 50 MB, sitemap index e qual URL entra |
web-social-share |
Prévia de link: Open Graph, card do X, imagem por plataforma, acesso do scraper, cache, imagem OG gerada e Web Share API |
🧪 Testes (8)
| Skill |
Descrição |
bun-ts-elysiajs-contract |
Pact com provedor Elysia: consumidor gera o pacto, provedor verifica em listen(0), matcher, broker e can-i-deploy |
php-hyperf-testing |
hyperf/testing: PHPUnit em corrotina (co-phpunit), cliente HTTP de teste e mock de dependência no container |
test |
Índice de teste: nível por verificação, troféu × pirâmide, orçamento por camada e metas de cobertura, E2E e mutação |
test-e2e |
E2E com Playwright: escopo, locator por papel, asserção web-first, storageState, shard, trace e orçamento de instabilidade |
test-integration |
Integração contra dependência real: Testcontainers, migração do zero, isolamento por transação ou worker, prontidão e reuso |
test-mutation |
Mutação: mutante morto e sobrevivente, score, threshold e modo incremental |
test-property |
Propriedade: invariante, gerador, shrinking, replay por seed e modelo de estado |
test-unit |
Unitário: fronteira da unidade, AAA, escada de dublês, determinismo, tabela de casos e teste instável |
🤖 IA/LLM (11)
| Skill |
Descrição |
ai-agents |
Agentes autônomos: frameworks, tools e multi-agent |
ai-embeddings |
Embeddings: geração, armazenamento e busca semântica |
ai-fine-tuning |
Fine-tuning: ajuste fino de modelos LLM |
ai-langfuse |
Langfuse: trace, generation, prompt versionado, score e dataset no SDK JS sobre OpenTelemetry |
ai-mcp |
MCP: Model Context Protocol para integração de ferramentas |
ai-prompt-engineering |
Prompt engineering: chain-of-thought, few-shot e técnicas avançadas |
ai-rag |
RAG: chunking, embeddings, busca híbrida com reranking, citação e avaliação, em Python e TypeScript (AI SDK) |
ai-rag-faiss |
RAG com FAISS: vector search local de alta performance |
ai-rag-qdrant |
RAG com Qdrant: vector database managed e escalável |
bun-ts-elysiajs-mcp-server |
Servidor MCP sobre Elysia: createMcpHandler do SDK v2 em POST /mcp, tools com inputSchema TypeBox, HTTP stateless |
ts-ai-agent |
Agente com AI SDK 7: ToolLoopAgent, WorkflowAgent, stopWhen, prepareStep, aprovação, subagentes, MCP e rota Elysia — aponta a doc oficial |
🚀 DevOps (21)
| Skill |
Descrição |
bun-ts-elysiajs-otel |
OpenTelemetry em Elysia: NodeSDK pré-carregado, @elysiajs/opentelemetry, record, métricas, amostragem e correlação trace-log |
bun-ts-elysiajs-production |
Vários processos com reusePort, desligamento limpo (SIGTERM → app.stop()), bun build –compile e imagem oven/bun |
cd-webhook |
Deploy automatizado em VPS: webhook, painéis e scripts |
ci-github |
GitHub Actions: workflows de CI/CD |
cloud-aws |
AWS: serviços cloud, IAM, deploy e infraestrutura |
deployment-strategies |
Deploy sem downtime: Blue-Green e Canary, rollback automático por threshold de erro, smoke test antes do corte |
devops-cdn |
CDN e edge: cache, invalidação e edge functions |
devops-docker |
Docker: Dockerfile multi-stage, layer caching e BuildKit, imagem pequena e segura (non-root, secret, CVE), Compose com healthcheck e ambiente local |
devops-kubernetes |
Kubernetes: orquestração de containers e clusters |
devops-nginx |
Nginx: web server, proxy reverso e load balancer |
devops-terraform |
Terraform: infraestrutura como código, state e módulos |
feature-flags |
Feature flags agnósticas: tipos e ciclo de vida, rollout por hash estável, kill switch, onde a flag mora (banco, Redis, arquivo, env, provedor) e remoção |
infra-proxy |
Sidecar, Ambassador e Service Mesh: proxy transparente para TLS, retry e observabilidade sem tocar no código da aplicação |
metrics-sli-slo-sla |
Confiabilidade: SLI, SLO, SLA, error budget, burn rate, contadores Prometheus e latência p99 |
php-feature-flag |
Feature flag em PHP: onde mora, provider OpenFeature, Laravel Pennant, Hyperf com cache por worker e fallback |
php-hyperf-config-center |
hyperf/config-center: configuração dinâmica em Nacos, Apollo ou etcd, recarga sem restart |
php-hyperf-observability |
hyperf/tracer (Zipkin/Jaeger), hyperf/metric (Prometheus) e log estruturado com correlação por corrotina |
php-hyperf-production |
Swoole em produção: worker_num, max_request, reload gracioso, Docker, watcher só em desenvolvimento |
signoz |
SigNoz self-hosted: traces, métricas e logs sobre ClickHouse, instrumentação OTLP e correlação log-trace |
ts-feature-flag |
Feature flag em TypeScript: provider OpenFeature por armazenamento com cache e fallback, hooks, teste e Flags SDK no Next.js |
ts-structured-logging |
Log em JSON com campos padronizados, correlationId entre serviços e mascaramento de PII, pipeline com Fluent Bit e Loki |
🛡️ Segurança (18)
| Skill |
Descrição |
audit-trail |
Trilha de auditoria imutável: hash encadeado, padrão WORM, compliance (BACEN, LGPD, PCI-DSS) e verificação de integridade |
bun-ts-elysiajs-api-key-management |
API key em Elysia: geração de alta entropia, hash SHA-256, escopo por rota via macro, 401 e 403, rotação |
bun-ts-elysiajs-auth |
Better Auth montado no Elysia (.mount): sessão por cookie e macro de proteção de rota |
bun-ts-elysiajs-gatekeeper |
Gatekeeper em Elysia: valida e sanitiza na DMZ com t.Object e repassa ao core com segredo |
bun-ts-elysiajs-sec-api-security |
Segurança de API em Elysia: JWT e API key em macro, BOLA, BFLA, mass assignment, limite de corpo e CORS |
bun-ts-elysiajs-token-auth |
JWT dual-token em Elysia: /login, /refresh com rotação, /logout com blacklist no Redis e comparação em tempo constante |
bun-ts-elysiajs-zero-trust |
Zero trust em Elysia: token de serviço verificado com jose, política deny-by-default por recurso e mTLS |
e2e-encryption |
End-to-End Encryption: payload cifrado na origem com AES-256-GCM envelopado por RSA-OAEP, intermediário não lê o conteúdo |
sec-agentic-ai |
OWASP Top 10 para aplicações de IA agêntica |
sec-cloud-security |
Segurança cloud: AWS, GCP e Azure |
sec-penetesting |
Pen testing: metodologia e técnicas web |
sec-prompt-injection |
Prompt injection e segurança em LLMs |
sec-threat-model |
Modelagem de ameaça: fronteira de confiança, caminho de abuso, não-capacidades do atacante |
secrets-management |
Gerenciamento de segredos: KV versionado, ACL por caminho, credencial dinâmica com TTL, lease e auditoria imutável |
ts-federated-identity |
Identidade federada: SSO/OIDC entre organizações, authorization code flow, consentimento explícito e modelo Open Finance |
ts-sec-owasp-top10 |
OWASP Top 10: vulnerabilidades críticas web |
ts-sec-secure-coding |
Secure coding: práticas de código seguro |
ts-valet-key |
Acesso direto e temporário a recurso externo via URL pré-assinada, com expiração aplicada pelo próprio storage |
🕷️ Scraping (7)
| Skill |
Descrição |
html-scraping |
scrape-it em TS/Bun: schema declarativo de seletores, listItem, conversão de moeda e data, armadilhas de parsing silencioso |
python-beautifulsoup |
BeautifulSoup: parsing HTML/XML em Python |
scraping-legal-ethics |
Ética e legalidade no web scraping |
scraping-playwright |
Playwright para extração: interceptar a API da página, context isolado, storageState |
scraping-selenium |
Selenium: automação cross-browser |
scraping-web-scraping |
Web scraping: fundamentos, estratégias e boas práticas |
ts-puppeteer |
Puppeteer: automação de browser em Node.js |
🖌️ Design/UX (5)
| Skill |
Descrição |
design-diagram |
Diagramar: escolha do tipo, C4 e quando parar, armadilhas do Mermaid |
design-extractor |
Extração de design system a partir de interfaces existentes |
design-frontend |
Frontend design: distinctive UI com aesthetic direction |
design-ux-laws |
Leis de UX: princípios de psicologia e usabilidade |
design-web |
Design web: fundamentos visuais e componentes |
🐘 PHP (16)
| Skill |
Descrição |
php-backend |
PHP puro: scripts, APIs e lógica de servidor |
php-codequality |
Qualidade medida em PHP com teto por métrica: complexidade (PHPMD), duplicação (jscpd), código morto, cobertura de tipo e fronteira (Deptrac) — espelho da ts-codequality |
php-codesniffer |
PHP_CodeSniffer 4.0: padrões PSR1 e PSR12, phpcbf, ruleset próprio para os nomes da php-taxonomy |
php-cs-fixer |
PHP-CS-Fixer 3.95 com @PER-CS: .php-cs-fixer.dist.php, regras risky, cache e –dry-run –diff no CI |
php-deptrac |
Deptrac 4.7: camadas e fronteiras de dependência, ciclos proibidos e violações travadas no CI |
php-hyperf |
Hyperf: microframework PHP assíncrono (Swoole) |
php-hyperf-rpc |
JSON-RPC e gRPC entre serviços (hyperf/json-rpc, grpc-server) com service-governance em Consul ou Nacos |
php-hyperf-swagger |
hyperf/swagger: OpenAPI gerado por anotação, schema de request e response |
php-hyperf-websocket |
hyperf/websocket-server e socketio-server: handshake com autenticação, broadcast entre workers e fd por usuário |
php-laravel |
Laravel 13: install:api, Eloquent, Form Requests, Resources, Sanctum e filas |
php-parallel-lint |
Validação de sintaxe em paralelo (php -l em todo o projeto) antes de qualquer outra ferramenta, por versão de PHP |
php-phpmd |
PHPMD 2.15: rulesets cleancode, codesize, design, naming e unusedcode, ruleset XML próprio e baseline — última versão de 2023-12, validar no PHP 8.4 |
php-phpstan |
PHPStan 2.2: level até max, baseline para legado, generics e array shapes em PHPDoc, extensões e bloqueio no CI |
php-rector |
Rector 2.6: upgrade automático de versão do PHP e de framework por sets, regra customizada, –dry-run no CI e o protocolo contra refatoração destrutiva |
php-taxonomy |
Taxonomia PHP: PSR-1, PSR-4 e PER (sucessor da PSR-12) como base, papel e assunto na frente (geral → específico), Interface/Abstract/Trait na frente, exceção de use, regras do Hyperf e sniff RoleFirst no PHPCS |
php-uuid |
UUID em PHP puro para Laravel e Hyperf: v7 padrão com ramsey/uuid ou symfony/uid, v5 com namespace para migrar ids legados, BINARY(16) via PDO |
🐍 Python (2)
| Skill |
Descrição |
python-backend |
Python puro: scripts, automações e serviços |
python-fastapi |
FastAPI: APIs modernas com Python e type hints |
🔌 API (3)
| Skill |
Descrição |
api-rest |
Design de APIs RESTful: recursos, status codes, versionamento |
bun-ts-elysiajs-api-versioning-strategy |
Versionamento de API em Elysia: group /v1 e /v2, Deprecation, Sunset e Link, 410 após o sunset |
graphql-federation |
GraphQL Federation: subgraphs unidos por gateway, diretiva @key, __resolveReference e Apollo Router para query distribuída |
| Skill |
Descrição |
define |
Separação entre README.md público e CLAUDE.md do agente: análise, criação e ajuste dos arquivos raiz do projeto |
deploy |
Deploy e versionamento via git.sh: commit, push, branches beta e main, publicação em produção |
mcp-context7 |
MCP da Upstash: injeta documentação atualizada de biblioteca no contexto via resolve-library-id e query-docs |
profile |
Comportamento de resposta: escopo fechado, saída direta, pergunta única na ambiguidade |
project-pattern |
Checklist de qualidade para projetos didáticos do repositório: função, nomenclatura, interfaces e domínio financeiro |
prompt |
Transforma pedido vago em prompt preciso: seletor de framework, blocos, checklist CLEAR e refino |
skill-builder |
Criação de Agent Skills: SKILL.md, corpo, description e arquivos de referência — criar, revisar, enxugar e auditar |
skill-command |
Comandos de barra: frontmatter, namespace, argumentos e a fronteira entre comando e skill invocada |
skill-creator |
Criação e otimização de skills: eval, benchmark de triggering e ajuste de description para disparo |
🎯 Ecossistemas Suportados
| Agente |
Caminho |
| Claude Code |
.claude/skills/ |
| GitHub Actions / CI |
.github/skills/ |
| Antigravity |
.agents/skills/ |
| OpenCode e outros |
.agents/skills/ |
Antigravity e OpenCode compartilham .agents/skills/ — uma instalação atende os dois.
🛠️ Como Usar Uma Skill
- Instale:
npx @thiagoeti/skills arch-ddd
- Localize:
.claude/skills/arch-ddd/SKILL.md (ou .github/skills/, .agents/skills/)
- Use: seu agente de IA detecta a skill e a aplica quando o pedido for do tema dela.
🤝 Contribuindo
- Fork este repositório
- Crie uma branch:
git checkout -b feat/nova-skill
- Escreva a skill como um único
SKILL.md, com os 4 campos obrigatórios (name igual ao nome da pasta, description de 20 a 512 caracteres dizendo quando a skill dispara, version em coluna zero, license: Unlicense)
- Teste:
npx @thiagoeti/skills nome-da-skill --dry-run
- Abra o PR para o branch
beta
Alterou uma skill existente? Suba a version (semver) no mesmo commit.
📄 Licença
Domínio público — Unlicense. Copie, modifique e distribua livremente.
🔗 Links
🎓 Exemplos de Uso
Instalar uma skill específica
npx @thiagoeti/skills arch-ddd
# Instala a skill de Domain-Driven Design em .claude/skills/
Instalar por categoria
npx @thiagoeti/skills --category ts
# Instala todas as skills de prefixo ts-
npx @thiagoeti/skills --interactive
# Navegação guiada para selecionar skills
Testar sem instalar
npx @thiagoeti/skills web-seo web-accessibility --dry-run
# Mostra o que seria instalado sem escrever nada