← スキル一覧に戻る
name: scenario-generator
description: Generate automation scenarios from natural-language requests by drafting

scenario-generator
by ricardoadorno
⭐ 0🍴 0📅 2026年1月18日
SKILL.md
name: scenario-generator
description: Generate automation scenarios from natural-language requests by drafting scenarios/<name>/plan.json plus supporting files (behaviors, curl, SQL mocks). Use when a user asks to create or update a scenario or wants a plan built from requirements in plain Portuguese.
Scenario Generator
Crie planos de execucao (scenarios) a partir de pedidos em linguagem natural. Gere o plan.json e os arquivos de apoio (behaviors, curl, SQL mock) seguindo o padrao do repositorio.
Entrada minima a confirmar
- Nome da feature, ticket e ambiente (metadata).
- Quais evidencias sao esperadas (browser, api, sql, cli, specialist, logstream).
- Dependencias externas (endpoints, arquivos, credenciais) e se devem ser mockadas.
- Ordem do fluxo e regras de export/require entre steps.
Se faltar informacao critica, faca 1-2 perguntas objetivas e siga.
Onde pesquisar primeiro
Leia references/paths.md para a lista de arquivos do repo e padroes de busca.
- Reaproveitar padroes existentes:
scenarios/eexamples/para planos similaresdocs/howto/steps.mdedocs/howto/create-plans.mdpara formatodocs/howto/browser-behaviors.mdpara actions Playwrightdocs/howto/inputs-context.mdpara exports/requires
- Usar
rg --filespara localizarplan.json,behaviors.json,.curl,.sql,.csv.
Fluxo de trabalho recomendado
- Resumir o pedido do usuario em steps declarativos.
- Mapear cada step para o dominio correto:
browser,api,sqlEvidence,cli,specialist,logstream
- Definir estrutura de pasta:
scenarios/<slug>/plan.jsonscenarios/<slug>/behaviors.json(se houver browser)scenarios/<slug>/requests/*.curl(se houver api)scenarios/<slug>/sql/*.sqlescenarios/<slug>/sql/*.csv(se houver sqlEvidence)
- Escrever
plan.jsoncom metadata, steps e referencias de arquivos. - Aplicar exports/requires para encadear dados.
- Validar rapidamente com
npm start -- --plan <path> --out runs.
Modelo base de plan.json
{
"metadata": { "feature": "minha-feature", "ticket": "ABC-123", "env": "local" },
"behaviorsPath": "behaviors.json",
"curlPath": "requests/requests.curl",
"steps": [
{ "id": "login", "type": "browser", "behaviorId": "login" },
{
"id": "get-itens",
"type": "api",
"exports": {
"itemId": { "source": "responseData", "jsonPath": "items[0].id" }
}
},
{
"id": "sql-count",
"type": "sqlEvidence",
"config": {
"sql": {
"queryPath": "sql/count.sql",
"resultPath": "sql/count.csv",
"expectRows": 1
}
}
}
]
}
Behaviors (browser)
- Sempre nomear
behaviorIdconforme o objetivo do step. - Preferir actions declarativas (click, fill, waitForResponse, waitForRequest).
- Evitar waits arbitrarios; usar
waitForRequest/waitForResponsequando houver eventos de API.
Exemplo de trecho:
{
"behaviors": {
"login": {
"actions": [
{ "type": "goto", "url": "https://app.exemplo.com" },
{ "type": "fill", "selector": "#email", "text": "{{userEmail}}" },
{ "type": "click", "selector": "button[type=submit]" },
{ "type": "waitForResponse", "url": "/api/session", "status": 200 }
]
}
}
}
Variaveis e env
- Use sempre
{{chave}}(mustache) para interpolar contexto. - Se precisar de env, inclua
inputs.envPrefixe mencione.env. - Exemplo
.env:AUTO_TOKEN=abcvira{{TOKEN}}no contexto.
Erros e validacoes
- SQL pode falhar com
expectRowsou query invalida. - CLI falha com
exitCodeeerrorPatterns. - API so falha em erros de rede/timeout; se precisar falhar em 4xx/5xx, deixe isso explicito no plan (ex: validar com
exports+requires).
SQL evidence
- Use arquivos mock por padrao:
query.sqleresult.csv. - Configure
expectRowsquando o resultado precisa validar quantidade.
Curl (API)
- Centralize chamadas em
.curle usecurlPathno plan. - Use placeholders
{{variavel}}no curl e exports no stepapi.
Checklist de entrega
plan.jsoncom steps em ordem e metadata completa.- Arquivos auxiliares criados e referenciados corretamente.
exportserequirescoerentes.npm start -- --plan <path> --out runsexecuta sem erro de schema.
Regras e limites
- Nao adicionar credenciais reais no repo.
- Preferir mocks para SQL e API quando nao houver ambiente real.
- Manter comentarios minimos e arquivos em ASCII.
スコア
総合スコア
50/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です