Setup rfl laravel skills
Skill rfl-designer/rfl-laravel-skills/skills/setup/setup-rfl-laravel-skills
Bootstrap a Laravel project to use the rfl-laravel-skills plugin — verify prerequisites (gh CLI, Pest, Pint, laravel/boost), create docs/ tree (adr, prd, roadmap, runbooks), seed .claude/<config>.json files for each skill, and add an "Agent skills" block to CLAUDE.md/AGENTS.md. Run ONCE per repo before first use of /grill-with-docs, /to-prd, /to-issues, /open-pr, /organize-docs, or /update-roadmap.From its SKILL.md
npx -y skills add rfl-designer/rfl-laravel-skills --skill setup-rfl-laravel-skillsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
11.6 KB, ~3.4k tokens by cl100k_base, as published. Nobody here has run it
Setup rfl-laravel-skills
Configura um projeto Laravel para usar o plugin. Valida pré-requisitos, cria estrutura de docs/, semeia arquivos de configuração que cada skill espera, e adiciona um bloco ## Agent skills em CLAUDE.md ou AGENTS.md.
Roda uma vez por repo. Re-rodar é seguro — vai detectar o que já existe e perguntar antes de sobrescrever.
Esta skill é prompt-driven, não script. Explore, apresente, confirme com o usuário, escreva.
Processo
1. Detectar estado atual
Em paralelo, verificar:
| Item | Como detectar |
|---|---|
| Repo é Laravel? | composer.json tem "laravel/framework"? |
| Versão do Laravel | composer show laravel/framework |
| Boost instalado? | composer show laravel/boost (sem erro) |
| Pest instalado? | vendor/bin/pest --version ou composer show pestphp/pest |
| Pint instalado? | vendor/bin/pint --version ou composer show laravel/pint |
| Livewire versão | composer show livewire/livewire |
| Flux versão | composer show livewire/flux (Free) ou livewire/flux-pro |
gh autenticado? | gh auth status |
| Remote GitHub? | git remote -v |
AGENTS.md ou CLAUDE.md? | ls AGENTS.md CLAUDE.md |
CONTEXT.md? | ls CONTEXT.md |
docs/ tree? | ls docs/ |
.claude/ configs? | ls .claude/*.json |
Plugin instalado via /plugin install? | ls ~/.claude/plugins/ ou config do Claude Code |
Skills em .claude/skills/? | ls .claude/skills/ ~/.claude/skills/ |
Agents em .claude/agents/? | ls .claude/agents/ ~/.claude/agents/ |
Apresentar resumo no formato:
✅ Laravel 12.x detectado
✅ Boost 1.x instalado
✅ Pest 4.x instalado
✅ Pint 1.x instalado
⚠️ Livewire 3.x detectado — plugin assume Livewire 4. Confirmar?
✅ Flux Free 2.x instalado
✅ gh autenticado como rfl-designer
✅ Remote: github.com:rfl-designer/foo.git
❌ AGENTS.md ausente — boost não foi instalado completamente?
❌ CONTEXT.md ausente — vou propor criar
❌ docs/ ausente — vou propor criar tree completa
❌ .claude/ ausente — vou propor criar configs
2. Resolver pré-requisitos faltantes
Para cada ❌ ou ⚠️, perguntar ao usuário antes de continuar:
Pré-requisitos críticos (parar se ausentes):
ghnão autenticado → instruirgh auth logine parar- Não é repo Laravel → parar com mensagem
- Sem remote GitHub → instruir criar remote ou pular skills que dependem (
/open-pr,/to-issues,/to-prd,/update-roadmap,/organize-docs)
Pré-requisitos sugeridos (oferecer ação):
- Boost ausente → propor
composer require laravel/boost --dev && php artisan boost:install - Pest ausente → propor
composer require pestphp/pest --dev --with-all-dependencies - Pint ausente → propor
composer require laravel/pint --dev - AGENTS.md ausente mas boost instalado → propor rodar
php artisan boost:install
NÃO rodar nenhum comando composer/artisan automaticamente — só sugerir e aguardar o usuário rodar.
3. Confirmar configuração — uma seção de cada vez
Apresente cada bloco abaixo separadamente, espere resposta, então passe ao próximo. Não despeje tudo de uma vez.
Seção A — Domain (CONTEXT.md)
O
CONTEXT.mdé um glossário do domínio do seu projeto (não do framework). As skills/grill-with-docs,/tdd,/to-prd,/to-issuesleem ele para usar a terminologia do projeto em vez de nomes genéricos.
Se CONTEXT.md não existe, perguntar:
- Quer criar um esqueleto agora?
- Se sim, perguntar o nome do contexto (geralmente nome do produto/empresa) e 1 frase descrevendo o produto.
- Gerar esqueleto com seções
## Language,## Relationships,## Flagged ambiguitiesvazias para o usuário preencher conforme/grill-with-docsfor rodando.
Se já existe → marcar OK.
Seção B — Conventional Commits
A skill
/open-prderiva o título do PR a partir de Conventional Commits (feat:,fix:,refactor:, etc.). Se seu repo não segue esse padrão, ela vai abortar quando você tentar abrir um PR.
Verificar últimos 10 commits (git log -10 --pretty=%s). Quantos seguem padrão <type>(<scope>): <desc>?
- 100% → "Repo já usa Conventional Commits ✅"
- ≥50% → "Repo parcialmente usa.
/open-prvai assumir que daqui pra frente todos seguem." - <50% → "Repo não usa Conventional Commits. Quer adotar agora? Posso adicionar uma seção a
CLAUDE.mddocumentando o padrão."
Se aceitar adoção, escrever em CLAUDE.md:
## Convenções de commit
Este repo usa Conventional Commits (EN). Tipos válidos:
`feat`, `fix`, `refactor`, `docs`, `test`, `chore`, `style`, `perf`, `build`, `ci`.
Scope opcional, entre parênteses. Exemplo:
`feat(comments): add thread replies`
Seção C — docs/ tree
As skills
/to-prd,/organize-docs,/update-roadmapesperam uma árvoredocs/específica.
Mostrar o que existe vs o que falta. Layout esperado:
docs/
├── adr/ # decisões arquiteturais (criada por /grill-with-docs)
├── prd/
│ ├── active/ # PRDs em andamento
│ └── done/ # PRDs entregues, arquivados por ano
├── roadmap/ # gerado por /update-roadmap
└── runbooks/ # operacional (deploy, restore, oncall)
Perguntar: criar tree completa? Criar só algumas? Pular?
Criar diretórios escolhidos com .gitkeep em cada (para versionar pasta vazia).
Seção D — Configs .claude/<skill>.json
Cada skill aceita configuração opcional em
.claude/<skill>-config.json. Vou semear com defaults sensatos; você pode editar depois.
Apresentar os 3 configs lado a lado (ver templates em configs/):
.claude/open-pr-config.json— base_branch, draft_on_todos, auto_run_pint_fix.claude/organize-docs-config.json— window_days, paths, auto_archive_prds.claude/roadmap-config.json— title (perguntar), subtitle (perguntar), label, theme, wave_names
Para roadmap-config.json, perguntar título e subtítulo — o resto pode ficar default.
Seção E — Instalar o agent em .claude/agents/
O agent
laravel-simplifierprecisa estar em.claude/agents/(project) ou~/.claude/agents/(global) para o Claude Code reconhecer. A CLInpx skills addnão copia agents — esta seção resolve isso automaticamente.
Esta seção EXECUTA a instalação. Não só sugere comandos.
Passo 1 — Verificar se já está instalado
ls .claude/agents/laravel-simplifier.md ~/.claude/agents/laravel-simplifier.md 2>/dev/null
Se o agent já existe em qualquer um dos dois paths:
✅ Agent já está instalado em <path>. Pulando.
e ir para a Seção F.
Passo 2 — Localizar (ou criar) o clone do plugin
Procurar rfl-laravel-skills em locais conhecidos, em ordem:
.claude/plugin-source(se setup foi rodado antes — arquivo registra path)~/.local/share/rfl-laravel-skills~/plugins/rfl-laravel-skills~/Code/rfl-laravel-skillse variantesnpx skillscache (verificar~/.cache/skills/ou similar — não confiável)
Se não encontrar, clonar diretamente num path estável:
mkdir -p ~/.local/share
git clone --depth 1 https://github.com/rfl-designer/rfl-laravel-skills.git ~/.local/share/rfl-laravel-skills
Confirmar com o usuário antes de clonar:
Não encontrei o clone local do plugin. Posso clonar para
~/.local/share/rfl-laravel-skills agora? [s/n/path-customizado]
Passo 3 — Perguntar escopo
Uma única pergunta:
Onde instalar o agent?
[g] Global (~/.claude/agents/) — disponível em todos os projetos. Recomendado.
[p] Project (.claude/agents/) — só este projeto. Versionar no repo se equipe.
Passo 4 — Aplicar
Sem perguntar mais nada — usar symlink (atualizações via git pull no clone refletem automaticamente):
TARGET="${SCOPE_PATH}" # ~/.claude/agents ou .claude/agents
mkdir -p "$TARGET"
ln -sf "${PLUGIN_PATH}/agents/laravel-simplifier.md" "${TARGET}/laravel-simplifier.md"
Se o filesystem não suporta symlinks (raro em macOS/Linux, comum em alguns mounts), cair para cp automaticamente:
cp "${PLUGIN_PATH}/agents/laravel-simplifier.md" "${TARGET}/"
Passo 5 — Confirmar e persistir
test -f "$TARGET/laravel-simplifier.md"
Se o arquivo existe:
✅ Agent instalado em ~/.claude/agents/ (symlinkado de ~/.local/share/rfl-laravel-skills/agents/)
Para atualizar no futuro: cd ~/.local/share/rfl-laravel-skills && git pull
Salvar o path do plugin em .claude/plugin-source para a próxima execução do setup pular o passo 2:
mkdir -p .claude
echo "$PLUGIN_PATH" > .claude/plugin-source
Se o arquivo não foi criado, abortar com erro claro indicando o motivo.
Seção F — .gitignore
Verificar se .gitignore ignora .claude/ (configs locais) ou se a intenção é versionar (compartilhar com time). Perguntar:
- Ignorar
.claude/— cada dev configura o próprio. Default se você trabalha solo. - Versionar
.claude/— time inteiro usa os mesmos configs e agents. Default se equipe >1.
Se versionar, recomendar versionar .claude/agents/ e .claude/skills/ (se project-scope) mas ignorar caches/state como .claude/last-organize-docs, .claude/inferred-deps.json. Sugerir .gitignore:
# Versionar
!.claude/
!.claude/agents/
!.claude/skills/
!.claude/*-config.json
# Mas ignorar state local
.claude/last-organize-docs
.claude/inferred-deps.json
4. Atualizar AGENTS.md ou CLAUDE.md com bloco Agent skills
Arquivo a editar:
- Se
CLAUDE.mdexiste → editar ele. - Senão se
AGENTS.mdexiste → editar ele. - Se nenhum existe → perguntar qual criar (não escolher por conta própria).
Nunca criar AGENTS.md se CLAUDE.md existe (e vice-versa) — boost gerencia AGENTS.md; usuário gerencia CLAUDE.md. Se ambos existem, editar CLAUDE.md — boost regenera AGENTS.md e perderia edits.
Adicionar (ou atualizar in-place se já existir) um bloco ## Agent skills (rfl-laravel-skills). Template em agents-block.md.
5. Mostrar diff e gravar
Para cada arquivo a criar/editar, mostrar diff e pedir confirmação. Após aprovação:
- Criar diretórios
docs/*com.gitkeep - Escrever
.claude/*.json - Escrever
CONTEXT.mdesqueleto se aplicável - Atualizar
CLAUDE.mdouAGENTS.md - Atualizar
.gitignoreconforme escolha da Seção E
6. Mensagem final
✅ Setup completo!
Próximos passos:
1. Edite CONTEXT.md preenchendo os termos do seu domínio
(ou rode /grill-with-docs e deixe ele guiar)
2. Para sua primeira feature: /grill-with-docs → /to-prd → /to-issues
3. Para implementar: /tdd → /simplify → /open-pr → /review-pr
4. Periodicamente: /organize-docs e /update-roadmap
Configs criados em .claude/ — edite à vontade.
Re-rodar /setup-rfl-laravel-skills é seguro: detecta o que já existe.
Notas
- Não força nada. Cada decisão é confirmada. Skill termina sem mudanças se o usuário pular tudo.
- Idempotente. Re-rodar não duplica blocos nem sobrescreve configs sem perguntar.
- Não roda comandos com side effect (
composer require,php artisan boost:install,git commit) — só sugere. Usuário decide quando rodar.
What ships with it: 5 files
4.0 KB alongside SKILL.md
configs/
- agents-block.md2.3 KB