wize-dev-kit 0.12.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/README.es.md +3 -1
- package/README.md +3 -1
- package/README.pt-BR.md +3 -1
- package/package.json +1 -1
- package/src/core-skills/module.yaml +3 -0
- package/src/core-skills/wize-pre-pr-check/skill.md +134 -0
- package/tools/installer/wize-cli.js +6 -3
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,22 @@ Format inspired by [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
|
9
9
|
|
|
10
10
|
## [Unreleased]
|
|
11
11
|
|
|
12
|
+
## [0.13.0] — 2026-08-28
|
|
13
|
+
|
|
14
|
+
**`install --yes` now installs everything.** The quick install (`npx wize-dev-kit install --yes`) previously defaulted to the core profile and the Claude Code + generic harnesses only. It now enables **all 4 profiles** (core + web-overlay + app-overlay + security-overlay) and **all 9 harnesses** (claude-code, cursor, windsurf, codex, continue, kimi-code, opencode, antigravity, generic) — a true one-shot full install. Explicit `--profiles` / `--targets` flags still narrow the selection.
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- **`install --yes` defaults** — `defaultProfiles()` and `defaultTargets()` now return the full set instead of core-only / claude-code+generic. One command boots every harness and every overlay.
|
|
19
|
+
|
|
20
|
+
## [0.12.1] — 2026-08-08
|
|
21
|
+
|
|
22
|
+
**Pre-PR Check — gate local antes de abrir PR.** Nova skill core para rodar lint, format, build e testes unitários localmente antes de submeter código, evitando ciclagem cara de CI no Actions. Agnóstica de tecnologia (detecta stack via `package.json`, `composer.json`, `Cargo.toml`, etc.). Registrada em todos os 9 harness adapters.
|
|
23
|
+
|
|
24
|
+
### Added
|
|
25
|
+
|
|
26
|
+
- **`wize-pre-pr-check`** (core skill) — gate local que detecta a stack do projeto e roda checks rápidos (lint, format, type-check, build, unit tests) antes de `git push` ou abertura de PR. Pare no primeiro erro. Complementa o CI; não substitui testes de integração/E2E. Description: *"Quando for abrir um Pull Request ou PR leia."*
|
|
27
|
+
|
|
12
28
|
## [0.12.0] — 2026-08-08
|
|
13
29
|
|
|
14
30
|
**Intent-first UX overhaul (Epic 09).** The kit now routes by user intent, not just by lifecycle phase. 10 stories across 3 sprints: block-scalar parser fix, intent descriptions on all 68 skills, 56-entry intent routing table, `/wize` primary alias, onboarding one-liner, research dispatcher, `--sign-scope`, non-interactive install + honest uninstall, release/changelog skills, CI on push/PR. Suite green (532 tests, validate 78 files).
|
package/README.es.md
CHANGED
|
@@ -155,6 +155,8 @@ Transversales:
|
|
|
155
155
|
/wize-grill Entrevista-hasta-entendimiento antes de cualquier
|
|
156
156
|
paso de autoría.
|
|
157
157
|
/wize-quick-dev Shuri toma un arreglo pequeño sin el ciclo completo.
|
|
158
|
+
/wize-pre-pr-check Corre lint/format/build/tests unitarios localmente
|
|
159
|
+
antes de abrir un PR — falla rápido, cero costo de runner.
|
|
158
160
|
/wize-correct-course Re-planifica cuando un gate falla o el loop se
|
|
159
161
|
estanca (auto-disparado por la guarda de max-cycles;
|
|
160
162
|
también manual).
|
|
@@ -250,7 +252,7 @@ npx wize-dev-kit version # imprime la versión instalada del kit
|
|
|
250
252
|
|
|
251
253
|
## Estado
|
|
252
254
|
|
|
253
|
-
**v0.
|
|
255
|
+
**v0.12.1 — beta.** El método nunca produce estimaciones de desarrollo — ni horas, ni puntos, ni tallas de camiseta; una story se dimensiona solo por si cabe en un único PR. El ciclo completo (análisis → plan → solución → implementación) está montado con 10 agentes y una biblioteca estructurada de skills. Los releases recientes suman **contratos de misión** (`/wize-help mission`), **`wize-grill`** (entrevista-hasta-entendimiento antes de cualquier paso de autoría), **`wize-pre-pr-check`** (gate local de lint/format/build/tests unitarios antes de abrir un PR — cero costo de runner de CI) y **loop verification** en `wize-dev-story` (un loop de implementación auto-verificable con guarda de max-cycles que escala a `wize-correct-course`). El `security-overlay` (Pentester de IA) entrega un pipeline de pentest completo, un informe ejecutivo (puntuación de riesgo + briefing + plan de acción por IA) y planificación de remediación post-scan — validado de principio a fin contra una aplicación Laravel/PHP real. Los adapters de IDE para Claude Code, Cursor, Windsurf, Codex, Continue, Kimi Code, OpenCode y Antigravity se regeneran automáticamente — [OpenCode](docs/harnesses/opencode.md) recibe wiring nativo de `mode`/`agent`/`subtask`, la integración más profunda de las 9.
|
|
254
256
|
|
|
255
257
|
---
|
|
256
258
|
|
package/README.md
CHANGED
|
@@ -152,6 +152,8 @@ Cross-cutting:
|
|
|
152
152
|
mission contract for the executing persona).
|
|
153
153
|
/wize-grill Interview-to-understanding before any authoring step.
|
|
154
154
|
/wize-quick-dev Shuri takes a small fix without the full ride.
|
|
155
|
+
/wize-pre-pr-check Run lint/format/build/unit tests locally before
|
|
156
|
+
opening a PR — fail fast, zero CI runner cost.
|
|
155
157
|
/wize-correct-course Re-plan when a gate fails or a loop stalls (auto-
|
|
156
158
|
triggered by the max-cycles guard; also manual).
|
|
157
159
|
/wize-code-review Adversarial peer review before Hawkeye's TEA gate.
|
|
@@ -245,7 +247,7 @@ npx wize-dev-kit version # print the installed kit version
|
|
|
245
247
|
|
|
246
248
|
## Status
|
|
247
249
|
|
|
248
|
-
**v0.
|
|
250
|
+
**v0.12.1 — beta.** The method never produces development estimates — no hours, points, or t-shirt sizes; a story is sized only by whether it fits a single PR. The full lifecycle (analysis → plan → solution → implementation) is wired with 10 agents and a structured skill library. Recent releases add **mission contracts** (`/wize-help mission`), **`wize-grill`** (interview-to-shared-understanding before any authoring step), **`wize-pre-pr-check`** (local lint/format/build/unit-test gate before opening a PR — zero CI runner cost), and **loop verification** in `wize-dev-story` (a self-checking implementation loop with a max-cycles guard that escalates to `wize-correct-course`). The `security-overlay` (AI Pentester) ships a complete pentest pipeline, a stakeholder report (risk score + briefing + AI action plan), and post-scan remediation planning — validated end-to-end against a real Laravel/PHP app. IDE adapters for Claude Code, Cursor, Windsurf, Codex, Continue, Kimi Code, OpenCode, and Antigravity are regenerated automatically — [OpenCode](docs/harnesses/opencode.md) gets native `mode`/`agent`/`subtask` wiring, the deepest integration of the 9.
|
|
249
251
|
|
|
250
252
|
---
|
|
251
253
|
|
package/README.pt-BR.md
CHANGED
|
@@ -154,6 +154,8 @@ Transversais:
|
|
|
154
154
|
/wize-grill Entrevista-até-entendimento antes de qualquer passo
|
|
155
155
|
de autoria.
|
|
156
156
|
/wize-quick-dev Shuri pega uma correção pequena sem o ciclo completo.
|
|
157
|
+
/wize-pre-pr-check Roda lint/format/build/testes unitários localmente
|
|
158
|
+
antes de abrir um PR — falha cedo, zero custo de runner.
|
|
157
159
|
/wize-correct-course Re-planeja quando um gate falha ou o loop trava
|
|
158
160
|
(auto-disparado pela guarda de max-cycles; também
|
|
159
161
|
manual).
|
|
@@ -248,7 +250,7 @@ npx wize-dev-kit version # imprime a versão instalada do kit
|
|
|
248
250
|
|
|
249
251
|
## Status
|
|
250
252
|
|
|
251
|
-
**v0.
|
|
253
|
+
**v0.12.1 — beta.** O método nunca produz estimativas de desenvolvimento — nada de horas, pontos ou tamanhos de camiseta; uma story é dimensionada apenas por caber (ou não) em um único PR. O ciclo completo (análise → plano → solução → implementação) está montado com 10 agentes e uma biblioteca estruturada de skills. Releases recentes adicionam **contratos de missão** (`/wize-help mission`), **`wize-grill`** (entrevista-até-entendimento antes de qualquer passo de autoria), **`wize-pre-pr-check`** (gate local de lint/format/build/testes unitários antes de abrir um PR — zero custo de runner de CI) e **loop verification** no `wize-dev-story` (loop de implementação auto-verificável com guarda de max-cycles que escala para `wize-correct-course`). O `security-overlay` (Pentester de IA) entrega um pipeline de pentest completo, um relatório executivo (score de risco + briefing + plano de ação por IA) e planejamento de correção pós-scan — validado de ponta a ponta contra uma aplicação Laravel/PHP real. Os adapters de IDE para Claude Code, Cursor, Windsurf, Codex, Continue, Kimi Code, OpenCode e Antigravity são regenerados automaticamente — o [OpenCode](docs/harnesses/opencode.pt-BR.md) tem a integração mais profunda das 9, com `mode`/`agent`/`subtask` nativos.
|
|
252
254
|
|
|
253
255
|
---
|
|
254
256
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "wize-dev-kit",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.13.0",
|
|
5
5
|
"description": "Full-lifecycle AI-assisted development kit with Test Architect and Whiteport Design Studio embedded. Inspired by BMAD Method and WDS.",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"ai",
|
|
@@ -28,4 +28,7 @@ skills:
|
|
|
28
28
|
- code: wize-spec
|
|
29
29
|
name: "Spec"
|
|
30
30
|
description: "Distills any intent input into a canonical five-field spec kernel + companions."
|
|
31
|
+
- code: wize-pre-pr-check
|
|
32
|
+
name: "Pre-PR Check"
|
|
33
|
+
description: "Quando for abrir um Pull Request ou PR leia — gate local para lint, format, build e testes rápidos antes de submeter código."
|
|
31
34
|
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
---
|
|
2
|
+
code: wize-pre-pr-check
|
|
3
|
+
name: wize-pre-pr-check
|
|
4
|
+
module: core
|
|
5
|
+
description: "Quando for abrir um Pull Request ou PR leia"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Pre-PR Check
|
|
9
|
+
|
|
10
|
+
**Goal.** Rodar os checks obrigatórios localmente antes de abrir um PR, falhando cedo e rápido. Evita ciclagem cara de CI no Actions — principalmente lint, format, build e testes rápidos. O objetivo é ser um portão (gate) antes de submeter código.
|
|
11
|
+
|
|
12
|
+
**Agnóstica de tecnologia.** Não prescreve ferramentas específicas; lê os comandos disponíveis no repositório e executa o que for aplicável.
|
|
13
|
+
|
|
14
|
+
## When to run
|
|
15
|
+
|
|
16
|
+
- Imediatamente antes de `git push` para uma branch de PR.
|
|
17
|
+
- Antes de abrir o PR no GitHub/GitLab.
|
|
18
|
+
- Após `git commit` na branch de feature, como sanity check.
|
|
19
|
+
- A qualquer momento durante o desenvolvimento — fail fast.
|
|
20
|
+
|
|
21
|
+
## When NOT to run
|
|
22
|
+
|
|
23
|
+
- Quando o CI já está verde e o PR está em revisão (o gate já passou).
|
|
24
|
+
- Quando o repositório não tem scripts/ferramentas de lint/test configurados.
|
|
25
|
+
|
|
26
|
+
## Operating contract
|
|
27
|
+
|
|
28
|
+
- **Leia o projeto antes de rodar.** Procura por `package.json`, `composer.json`, `Makefile`, `justfile`, `pyproject.toml`, `Cargo.toml`, etc. para descobrir os comandos de check existentes.
|
|
29
|
+
- **Só execute o que existir.** Se não houver `eslint`, pule o passo de lint. Se não houver `phpstan`, pule o passo de análise estática. Nunca exija uma ferramenta que não esteja configurada no repo.
|
|
30
|
+
- **Pare no primeiro erro.** A menos que o usuário peça `--continue`, um check que falha interrompe a cadeia — corrija antes de continuar.
|
|
31
|
+
- **Não seja um substituto completo do CI.** O CI continua sendo a fonte da verdade para testes de integração, e2e, banco de dados, Docker, etc. Este gate é para checks rápidos e baratos.
|
|
32
|
+
- **Custo zero no Actions.** Tudo roda localmente.
|
|
33
|
+
|
|
34
|
+
## Inputs
|
|
35
|
+
|
|
36
|
+
- Estado atual do working tree (staged + unstaged).
|
|
37
|
+
- Arquivos de config do projeto para descobrir comandos.
|
|
38
|
+
|
|
39
|
+
## Outputs
|
|
40
|
+
|
|
41
|
+
- Relatório compacto de quais checks passaram/falharam.
|
|
42
|
+
- Se falhou: mensagem de erro + arquivo(s) sugerido(s) para corrigir.
|
|
43
|
+
- Se passou: confirmação pronta para PR.
|
|
44
|
+
|
|
45
|
+
## Steps
|
|
46
|
+
|
|
47
|
+
### 1. Detectar stack
|
|
48
|
+
|
|
49
|
+
Procurar nos arquivos de config do projeto quais ferramentas estão disponíveis:
|
|
50
|
+
|
|
51
|
+
| Fonte | O que extrair |
|
|
52
|
+
|-------|---------------|
|
|
53
|
+
| `package.json` → `scripts` | `lint`, `format`, `format:check`, `type-check`, `build`, `test`, `test:unit` |
|
|
54
|
+
| `composer.json` → `scripts` | `test`, `phpstan`, `pint`, `phpcs` |
|
|
55
|
+
| `Makefile` / `justfile` | targets `lint`, `format`, `check`, `test` |
|
|
56
|
+
| `pyproject.toml` / `setup.cfg` | `flake8`, `black`, `mypy`, `pytest` |
|
|
57
|
+
| `Cargo.toml` | `cargo check`, `cargo test`, `cargo clippy`, `cargo fmt` |
|
|
58
|
+
| `.github/workflows/*.yml` | steps de `lint`, `format`, `build`, `test` (como referência, não para rodar) |
|
|
59
|
+
|
|
60
|
+
Heurística de prioridade: scripts do gerenciador de pacote local (`npm run`, `composer run`) > binários diretos (`vendor/bin/pint`) > comandos genéricos (`cargo clippy`).
|
|
61
|
+
|
|
62
|
+
### 2. Selecionar checks por velocidade
|
|
63
|
+
|
|
64
|
+
Separar em **rápido** (executa em segundos) e **lento** (minutos):
|
|
65
|
+
|
|
66
|
+
**Rápido (executar sempre):**
|
|
67
|
+
- Lint (ESLint, PHPStan, Clippy, Ruff, etc.)
|
|
68
|
+
- Format check (Prettier, Pint, Black, rustfmt)
|
|
69
|
+
- Type check (tsc, mypy)
|
|
70
|
+
- Análise estática (PHPStan, Psalm)
|
|
71
|
+
|
|
72
|
+
**Lento (executar quando houver mudanças relevantes):**
|
|
73
|
+
- Build (Vite, Webpack, Cargo build)
|
|
74
|
+
- Testes unitários (Vitest, Jest, Pest, pytest, `cargo test`)
|
|
75
|
+
- Guard-rails custom (scripts próprios do projeto, ex: `check:orphans`)
|
|
76
|
+
|
|
77
|
+
**Muito lento (opcional / em dia de merge):**
|
|
78
|
+
- Testes de integração
|
|
79
|
+
- E2E (Playwright, Cypress)
|
|
80
|
+
- Build de Docker
|
|
81
|
+
|
|
82
|
+
### 3. Rodar o gate
|
|
83
|
+
|
|
84
|
+
Na ordem: format → lint → type-check → build → testes unitários → guard-rails.
|
|
85
|
+
|
|
86
|
+
Comandos típicos por stack (detectados em tempo real, não hardcoded):
|
|
87
|
+
|
|
88
|
+
| Stack | Comandos comuns |
|
|
89
|
+
|-------|-----------------|
|
|
90
|
+
| Node/JS/TS | `npm run format:check`, `npm run lint`, `npm run check:type` (ou `tsc --noEmit`), `npm run build`, `npm run test` |
|
|
91
|
+
| PHP/Laravel | `vendor/bin/pint --test`, `vendor/bin/phpstan analyse`, `php artisan test` |
|
|
92
|
+
| Python | `black --check`, `ruff check`, `mypy`, `pytest` |
|
|
93
|
+
| Rust | `cargo fmt -- --check`, `cargo clippy`, `cargo check`, `cargo test` |
|
|
94
|
+
| Go | `gofmt -l`, `golangci-lint run`, `go test ./...` |
|
|
95
|
+
|
|
96
|
+
Se um check falhar, pare e reporte. Não prossiga para o próximo.
|
|
97
|
+
|
|
98
|
+
### 4. Reportar
|
|
99
|
+
|
|
100
|
+
Formato compacto, uma linha por check:
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
✓ format:check (npm run format:check) — 0.8s
|
|
104
|
+
✓ lint (vendor/bin/pint --test) — 2.1s
|
|
105
|
+
✗ phpstan (vendor/bin/phpstan) — 4.5s → FAIL
|
|
106
|
+
app/Http/Controllers/LegalController.php:11 — FQCN não importado
|
|
107
|
+
→ Corrija antes de abrir o PR.
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
Se tudo passar:
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
✓ format:check — PASS (0.8s)
|
|
114
|
+
✓ lint — PASS (2.1s)
|
|
115
|
+
✓ phpstan — PASS (4.5s)
|
|
116
|
+
✓ build — PASS (32s)
|
|
117
|
+
✓ test:unit — PASS (30s)
|
|
118
|
+
─────────────────────────────
|
|
119
|
+
Gate limpo. Pode abrir o PR.
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
## Anti-patterns
|
|
123
|
+
|
|
124
|
+
- **Rodar checks que não existem no repo.** Se não há `composer.json`, não tente `vendor/bin/pint`.
|
|
125
|
+
- **Ignorar falhas de lint.** Lint fail = PR fail. Corrija antes.
|
|
126
|
+
- **Executar E2E localmente toda vez.** E2E é caro; deixe para o CI ou rode antes de merge.
|
|
127
|
+
- **Substituir o CI.** Este gate é complementar, não substituto.
|
|
128
|
+
|
|
129
|
+
## Hand-off
|
|
130
|
+
|
|
131
|
+
> Gate `wize-pre-pr-check` concluído. `{passados}/{total}` checks passaram. `{tempo_total}s`. Pronto para PR.
|
|
132
|
+
|
|
133
|
+
Se houve falha:
|
|
134
|
+
> Gate `wize-pre-pr-check` interrompido em `{check_falho}`. Corrija e re-execute antes de abrir o PR.
|
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
* wize-dev-kit — CLI entry point
|
|
4
4
|
* Subcommands: install, update, uninstall, list, sync, agent, workflow, help
|
|
5
5
|
*
|
|
6
|
-
* v0.
|
|
6
|
+
* v0.13.0 — Full-lifecycle CLI with install, update, uninstall, list, sync,
|
|
7
7
|
* agent, workflow, validate, doctor, and document-project commands. Adapters
|
|
8
8
|
* render for 9 IDE targets. Security overlay ships with 8 tools.
|
|
9
|
+
* `install --yes` now enables all harnesses + all overlays by default.
|
|
9
10
|
*/
|
|
10
11
|
'use strict';
|
|
11
12
|
|
|
@@ -492,12 +493,14 @@ function resolveName(flags) {
|
|
|
492
493
|
return null;
|
|
493
494
|
}
|
|
494
495
|
|
|
496
|
+
// --yes quick install: everything on. All harnesses + all overlays, so
|
|
497
|
+
// `npx wize-dev-kit install --yes` is a true one-shot full install.
|
|
495
498
|
function defaultProfiles() {
|
|
496
|
-
return PROFILES.
|
|
499
|
+
return PROFILES.slice();
|
|
497
500
|
}
|
|
498
501
|
|
|
499
502
|
function defaultTargets() {
|
|
500
|
-
return TARGETS.
|
|
503
|
+
return TARGETS.slice();
|
|
501
504
|
}
|
|
502
505
|
|
|
503
506
|
async function cmdInstall(args) {
|