@brunosps00/dev-workflow 1.0.4 → 1.0.6
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/README.md +71 -23
- package/bin/dev-workflow.js +29 -3
- package/lib/agents.js +410 -0
- package/lib/constants.js +16 -2
- package/lib/doctor.js +213 -0
- package/lib/init.js +96 -8
- package/lib/install-state.js +57 -0
- package/lib/list-installed.js +27 -0
- package/lib/migrate-skills.js +26 -2
- package/lib/profiles.js +44 -0
- package/lib/skill-registry.js +109 -0
- package/lib/subtasks.js +264 -0
- package/lib/uninstall.js +21 -12
- package/lib/utils.js +42 -1
- package/lib/wrappers.js +2 -1
- package/package.json +1 -1
- package/scaffold/agent-registry.json +272 -0
- package/scaffold/agents/core/dw-build-fixer.md +21 -0
- package/scaffold/agents/core/dw-code-explorer.md +32 -0
- package/scaffold/agents/core/dw-code-reviewer.md +28 -0
- package/scaffold/agents/core/dw-planner.md +23 -0
- package/scaffold/agents/core/dw-test-author.md +21 -0
- package/scaffold/agents/csharp/dw-csharp-reviewer.md +15 -0
- package/scaffold/agents/csharp/dw-dotnet-build-fixer.md +15 -0
- package/scaffold/agents/frontend/dw-qa-runner.md +21 -0
- package/scaffold/agents/python/dw-python-build-fixer.md +15 -0
- package/scaffold/agents/python/dw-python-reviewer.md +15 -0
- package/scaffold/agents/rust/dw-rust-build-fixer.md +15 -0
- package/scaffold/agents/rust/dw-rust-reviewer.md +15 -0
- package/scaffold/agents/security/dw-security-reviewer.md +24 -0
- package/scaffold/agents/security/dw-silent-failure-hunter.md +22 -0
- package/scaffold/agents/typescript/dw-typescript-build-fixer.md +15 -0
- package/scaffold/agents/typescript/dw-typescript-reviewer.md +15 -0
- package/scaffold/en/agent-instructions.md +51 -6
- package/scaffold/en/commands/dw-autopilot.md +156 -275
- package/scaffold/en/commands/dw-bugfix.md +12 -2
- package/scaffold/en/commands/dw-context-budget.md +28 -0
- package/scaffold/en/commands/dw-goal.md +136 -0
- package/scaffold/en/commands/dw-harness-audit.md +31 -0
- package/scaffold/en/commands/dw-help.md +22 -10
- package/scaffold/en/commands/dw-intel.md +6 -0
- package/scaffold/en/commands/dw-plan.md +20 -3
- package/scaffold/en/commands/dw-review.md +12 -0
- package/scaffold/en/commands/dw-skill-health.md +29 -0
- package/scaffold/en/commands/dw-subtask-complete.md +40 -0
- package/scaffold/en/commands/dw-subtask-resume.md +21 -0
- package/scaffold/en/commands/dw-subtask-start.md +22 -0
- package/scaffold/pt-br/agent-instructions.md +51 -6
- package/scaffold/pt-br/commands/dw-autopilot.md +159 -278
- package/scaffold/pt-br/commands/dw-bugfix.md +12 -2
- package/scaffold/pt-br/commands/dw-context-budget.md +28 -0
- package/scaffold/pt-br/commands/dw-goal.md +136 -0
- package/scaffold/pt-br/commands/dw-harness-audit.md +31 -0
- package/scaffold/pt-br/commands/dw-help.md +22 -10
- package/scaffold/pt-br/commands/dw-intel.md +6 -0
- package/scaffold/pt-br/commands/dw-plan.md +20 -3
- package/scaffold/pt-br/commands/dw-review.md +12 -0
- package/scaffold/pt-br/commands/dw-skill-health.md +29 -0
- package/scaffold/pt-br/commands/dw-subtask-complete.md +40 -0
- package/scaffold/pt-br/commands/dw-subtask-resume.md +21 -0
- package/scaffold/pt-br/commands/dw-subtask-start.md +22 -0
- package/scaffold/skill-registry.json +258 -0
- package/scaffold/skills/dw-codebase-intel/SKILL.md +12 -5
- package/scaffold/skills/dw-context-budget/SKILL.md +45 -0
- package/scaffold/skills/dw-search-first/SKILL.md +31 -0
- package/scaffold/skills/dw-silent-failure/SKILL.md +33 -0
- package/scaffold/skills/dw-verify/SKILL.md +2 -29
- package/scaffold/skills/dw-verify/references/verification-discovery-and-attribution.md +32 -0
- package/scaffold/skills/humanizer/SKILL.md +7 -412
- package/scaffold/skills/humanizer/references/ai-writing-patterns.md +418 -0
package/README.md
CHANGED
|
@@ -10,11 +10,11 @@ npx @brunosps00/dev-workflow init
|
|
|
10
10
|
|
|
11
11
|
This will:
|
|
12
12
|
1. Ask you to select a language (English or Portuguese)
|
|
13
|
-
2. Create `.dw/commands/` with
|
|
13
|
+
2. Create `.dw/commands/` with workflow commands
|
|
14
14
|
3. Create `.dw/templates/` with document templates (PRD, TechSpec, Tasks, ADR, etc.)
|
|
15
15
|
4. Create `.dw/rules/` (populated by `/dw-analyze-project`)
|
|
16
16
|
5. Install bundled skills (`dw-verify`, `dw-memory`, `dw-review-rigor`, `dw-ui-discipline`, `dw-testing-discipline`, `security-review`, etc.) to `.agents/skills/`
|
|
17
|
-
6. Generate skill wrappers for Claude Code, Codex, Copilot, and OpenCode
|
|
17
|
+
6. Generate skill wrappers and project agents for Claude Code, Codex, Copilot, and OpenCode
|
|
18
18
|
7. Configure MCP servers (Context7 + Playwright)
|
|
19
19
|
|
|
20
20
|
> **Compozy-inspired disciplines.** Since 0.5.0, dev-workflow bundles three primitives — `dw-verify`, `dw-memory`, `dw-review-rigor` — adapted from the [Compozy](https://github.com/compozy/compozy) project and invoked internally by existing commands. See [docs/compozy-integration.md](docs/compozy-integration.md) for what was ported and what was not.
|
|
@@ -26,13 +26,13 @@ npx @brunosps00/dev-workflow install-deps
|
|
|
26
26
|
|
|
27
27
|
## Commands
|
|
28
28
|
|
|
29
|
-
dev-workflow v1.0.
|
|
29
|
+
dev-workflow v1.0.6 ships **31 commands** organized into four tiers. Most users only invoke Tier 1 + Tier 2.
|
|
30
30
|
|
|
31
31
|
### Tier 1 — Gateway (3)
|
|
32
32
|
|
|
33
33
|
| Command | When |
|
|
34
34
|
|---------|------|
|
|
35
|
-
| **`/dw-autopilot "wish"`** | Default entry point.
|
|
35
|
+
| **`/dw-autopilot "wish"`** | Default entry point in two invocations. First run completes PRD → TechSpec → Tasks and stops. Second run resumes from state, executes `/dw-goal --from-autopilot <slug>` for Run → Review → QA/Fix → Review, then Commit → PR. |
|
|
36
36
|
| **`/dw-bugfix "description"`** | A bug report or pasted error. Triages bug-vs-feature-vs-scope, surgical fix or routes to a PRD. |
|
|
37
37
|
| **`/dw-help [keyword]`** | Discover commands. Pass a keyword for shortcuts; `--advanced` reveals internal commands. |
|
|
38
38
|
|
|
@@ -52,19 +52,22 @@ Use these when you want step-by-step control instead of `/dw-autopilot`.
|
|
|
52
52
|
| **`/dw-commit`** | Atomic Conventional Commits for pending changes. Applies `dw-git-discipline` (one intent per commit, lint+tests+build green before). |
|
|
53
53
|
| **`/dw-generate-pr [target]`** | Push the branch, draft a PR body with summary + test plan, open the browser. Hard gates: dw-verify PASS + secure-audit. |
|
|
54
54
|
|
|
55
|
-
### Tier 3 — Specialty (
|
|
55
|
+
### Tier 3 — Specialty (8)
|
|
56
56
|
|
|
57
57
|
| Command | What |
|
|
58
58
|
|---------|------|
|
|
59
59
|
| **`/dw-analyze-project`** | Scans the repo, writes `.dw/rules/` (per-module conventions, anti-patterns, naming). Step 8 offers to generate `.dw/constitution.md` (declarative principles the team commits to). Step 9 generates `.dw/rules/concerns.md` (risk map: hot spots, fragile integrations, hostile code, bug history). Run once per project; refresh after major refactors. |
|
|
60
60
|
| **`/dw-redesign-ui "target"`** | Audits a frontend page, runs the `dw-ui-discipline` 4-question grounding, proposes 2-3 design directions, ships the redesign. WCAG 2.2 AA accessibility floor is non-negotiable. |
|
|
61
61
|
| **`/dw-functional-doc`** | Maps screens + user flows into a functional doc, validated end-to-end with Playwright. |
|
|
62
|
+
| **`/dw-context-budget`** | Audits context overhead from commands, skills, agents, instruction files, and MCPs. |
|
|
63
|
+
| **`/dw-harness-audit`** | Deterministic health scorecard for the dev-workflow install, agents, wrappers, MCPs, and gates. |
|
|
64
|
+
| **`/dw-skill-health`** | Audits installed skills and agents for bloat, duplication, and missing references. |
|
|
62
65
|
| **`/dw-new-project`** | Bootstrap a new project from empty directory. Stack interview, wraps official `create-*` tools, composes docker-compose for dev, seeds `.env`, scripts, CI, `.dw/rules/`. |
|
|
63
66
|
| **`/dw-dockerize`** | Reads existing project, detects stack + runtime deps, proposes Dockerfile + docker-compose for dev/prod with explicit trade-offs (Conservative/Balanced/Bold). |
|
|
64
67
|
| **`/dw-install-azure-skills`** | **Opt-in.** Clones curated Azure skills from [`MicrosoftDocs/Agent-Skills`](https://github.com/MicrosoftDocs/Agent-Skills) (CC-BY-4.0) into `.agents/skills/azure/` and registers the [Microsoft Learn MCP Server](https://learn.microsoft.com/en-us/training/support/mcp-get-started) (HTTP, no-auth). Interactive category selection (Compute / Data & Storage / AI & ML / Networking / Identity & Security / DevOps / Observability / Integration / Architecture / All). Re-run to refresh from upstream. Also available as CLI: `npx @brunosps00/dev-workflow install-azure-skills`. |
|
|
65
68
|
| **`/dw-install-aws-skills`** | **Opt-in.** Clones curated AWS skills from [`aws/agent-toolkit-for-aws`](https://github.com/aws/agent-toolkit-for-aws) (Apache 2.0) into `.agents/skills/aws/` and registers the unified [AWS MCP Server](https://docs.aws.amazon.com/aws-mcp/) (stdio via `uvx mcp-proxy-for-aws@latest`). **Requires `uv`, `aws cli ≥ 2.32.0`, and AWS credentials.** Interactive category selection (Core / Analytics / Database / EC2 / Migration / Networking / Operations / Security / Serverless / Storage / All). The agent gains `aws___call_aws` (executes 15,000+ AWS APIs) and `aws___run_script` (Python sandboxed) — review `.dw/references/aws-mcp-instructions.md` for the destructive-operations protocol. Also available as CLI: `npx @brunosps00/dev-workflow install-aws-skills [--region=<aws-region>]`. |
|
|
66
69
|
|
|
67
|
-
### Tier 4 — Hidden/Internal (
|
|
70
|
+
### Tier 4 — Hidden/Internal (9)
|
|
68
71
|
|
|
69
72
|
These are auto-invoked by Tier 1-3 commands. Available standalone via `/dw-help --advanced`.
|
|
70
73
|
|
|
@@ -73,26 +76,29 @@ These are auto-invoked by Tier 1-3 commands. Available standalone via `/dw-help
|
|
|
73
76
|
| **`/dw-adr "decision"`** | Records an Architecture Decision Record at `.dw/spec/<prd>/adrs/`. | `/dw-plan techspec --council`; deviations from constitution |
|
|
74
77
|
| **`/dw-intel "question"`** | Query codebase intelligence (`.dw/intel/`). `--build` (re)creates the index. | `/dw-plan`, `/dw-review`, `/dw-bugfix` |
|
|
75
78
|
| **`/dw-secure-audit`** | Unified security: OWASP + Trivy SCA/secret/IaC + lockfile + supply-chain check. Hard gate. Flags: `--scan-only`, `--plan`, `--execute`. | `/dw-review`, `/dw-generate-pr` (for TS/Python/C#/Rust) |
|
|
79
|
+
| **`/dw-goal "<objective>"`** | Durable objective contract. Uses Codex native `/goal` when available and `.dw/goals/` everywhere for Codex, Copilot, Claude Code, and OpenCode. | `/dw-autopilot` after planning |
|
|
76
80
|
| **`/dw-find-skills "query"`** | Searches `npx skills` ecosystem, vets, installs. | manual when extending the bundle |
|
|
77
81
|
| **`/dw-update`** | Updates dev-workflow to latest npm release with rollback snapshot. | manual maintenance |
|
|
82
|
+
| **`/dw-subtask-start`** | Creates a minimal input packet for a subagent without injecting the parent transcript. | parent agent before delegation |
|
|
83
|
+
| **`/dw-subtask-complete`** | Records a structured child-session handoff. | subagent / child session |
|
|
84
|
+
| **`/dw-subtask-resume`** | Consumes and archives pending handoffs for parent synthesis. | parent agent after delegation |
|
|
78
85
|
|
|
79
86
|
## Workflow
|
|
80
87
|
|
|
81
88
|
```
|
|
82
|
-
/dw-autopilot "wish" ------>
|
|
83
|
-
|
|
89
|
+
/dw-autopilot "wish" ------> First invocation: PRD → TechSpec → Tasks → STOP
|
|
90
|
+
/dw-autopilot ------> Second invocation: /dw-goal → Commit → PR
|
|
84
91
|
--- OR step-by-step ---
|
|
85
92
|
|
|
86
93
|
/dw-brainstorm --> /dw-plan --> .dw/spec/prd-{name}/{prd,techspec,tasks}.md
|
|
87
94
|
|
|
|
88
|
-
/dw-
|
|
89
|
-
|
|
|
90
|
-
/dw-qa --> .dw/spec/prd-{name}/QA/ (UI / API / --ai)
|
|
91
|
-
|
|
|
92
|
-
/dw-review --> L2 PRD coverage + L3 code quality
|
|
95
|
+
/dw-goal --> /dw-run → /dw-review → /dw-qa → /dw-review
|
|
93
96
|
|
|
|
94
97
|
/dw-commit + /dw-generate-pr
|
|
95
98
|
|
|
99
|
+
Manual alternative after /dw-plan:
|
|
100
|
+
/dw-run → /dw-review → /dw-qa → /dw-review → /dw-commit → /dw-generate-pr
|
|
101
|
+
|
|
96
102
|
Shortcuts:
|
|
97
103
|
/dw-intel "question" Query codebase intelligence
|
|
98
104
|
/dw-redesign-ui "target" Visual redesign of a page or component
|
|
@@ -129,7 +135,7 @@ Customize templates locally without losing dev-workflow updates. Drop a file at
|
|
|
129
135
|
|
|
130
136
|
**What's inside:**
|
|
131
137
|
|
|
132
|
-
- **Trigger Map** —
|
|
138
|
+
- **Trigger Map** — mappings from user intent ("Implement X", "Bug in Y", "Review my PR", "resume autopilot", ...) to the `dw-*` command the agent should run. `/dw-autopilot` is the safest default for non-trivial feature requests; `/dw-goal` is the durable execution contract after planning.
|
|
133
139
|
- **Hard Gates** — reminders that constitution violations (high/critical), missing `dw-verify` PASS, and security failures block downstream commands.
|
|
134
140
|
- **Escape Hatches** — explicit cases where the agent should NOT auto-trigger (typos, exploration, aesthetic edits, user opt-out).
|
|
135
141
|
|
|
@@ -157,39 +163,81 @@ npx @brunosps00/dev-workflow update
|
|
|
157
163
|
|----------|-----------------|--------|
|
|
158
164
|
| Claude Code | `.claude/skills/` | Full support |
|
|
159
165
|
| Codex CLI | `.agents/skills/` | Full support |
|
|
160
|
-
| Copilot | `.agents/skills/` | Full support |
|
|
166
|
+
| Copilot | `.agents/skills/` + `.github/agents/` | Full support |
|
|
161
167
|
| OpenCode | `.opencode/commands/` | Full support |
|
|
162
168
|
|
|
163
169
|
All wrappers point to `.dw/commands/` as the single source of truth.
|
|
164
170
|
|
|
171
|
+
### Durable Goals
|
|
172
|
+
|
|
173
|
+
`/dw-goal` gives every supported agent a portable version of Codex's durable goal workflow. In Codex, it may bridge to the native experimental `/goal` command when `features.goals` is enabled. In every platform, the canonical state is still stored under `.dw/goals/<slug>/` so Copilot, Claude Code, OpenCode, and Codex all follow the same objective, checkpoints, progress log, and stopping condition.
|
|
174
|
+
|
|
165
175
|
## Project Structure (after init)
|
|
166
176
|
|
|
167
177
|
```
|
|
168
178
|
your-project/
|
|
169
179
|
├── .dw/
|
|
170
|
-
│ ├── commands/ #
|
|
180
|
+
│ ├── commands/ # workflow command files
|
|
171
181
|
│ ├── templates/ # Document templates (PRD, TechSpec, state, concerns, bugfix-summary, etc.)
|
|
172
182
|
│ │ └── overrides/ # Project-local template customizations (override > core)
|
|
173
183
|
│ ├── rules/ # Project-specific rules (run /dw-analyze-project)
|
|
174
184
|
│ │ └── concerns.md # Risk map: hot spots, fragile integrations, bug history (Step 9 of /dw-analyze-project)
|
|
175
185
|
│ ├── constitution.md # Declarative principles (auto-installed when missing)
|
|
186
|
+
│ ├── skill-registry.json # Local skill taxonomy, triggers, owners, load policy, and context limits
|
|
176
187
|
│ ├── references/ # Reference documentation
|
|
177
188
|
│ ├── scripts/ # Utility scripts
|
|
178
189
|
│ ├── spec/ # PRD directories — each contains tasks-validation.md
|
|
179
190
|
│ ├── bugfixes/ # Persistent bugfix records: NNN-<slug>/{TASK.md, SUMMARY.md, fix-report.md} + review/, QA/
|
|
191
|
+
│ ├── subtasks/ # Local ephemeral subagent input packets and handoffs (pending/archive ignored by Git)
|
|
180
192
|
│ └── STATE.md # Session state: Decisions, Blockers, Todos, Open Loops, Deferred Ideas, Lessons, Preferences (managed by /dw-pause + /dw-resume)
|
|
181
193
|
├── CLAUDE.md # Auto-trigger decision tree for Claude Code (merge-aware, includes Auto-Sizing Matrix)
|
|
182
194
|
├── AGENTS.md # Same content for Codex / Copilot / OpenCode
|
|
183
195
|
├── .claude/
|
|
184
196
|
│ ├── skills/ # Claude Code wrappers
|
|
197
|
+
│ ├── agents/ # Claude Code project agents
|
|
185
198
|
│ └── settings.json # MCP servers (Context7, Playwright)
|
|
186
199
|
├── .agents/skills/ # Codex/Copilot wrappers + bundled skills
|
|
187
|
-
|
|
200
|
+
├── .agents/agents/ # Codex/Copilot fallback agent definitions
|
|
201
|
+
├── .github/agents/ # GitHub Copilot custom agents
|
|
202
|
+
├── .opencode/commands/ # OpenCode wrappers
|
|
203
|
+
└── .opencode/agent/ # OpenCode project agents
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
## Agents
|
|
207
|
+
|
|
208
|
+
`dev-workflow` installs a compact agent layer in addition to skills. Skills remain protocols and reference material; agents are dispatchable roles such as `dw-code-explorer`, `dw-build-fixer`, `dw-code-reviewer`, and language-specific reviewers.
|
|
209
|
+
|
|
210
|
+
Profiles control agent breadth:
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
npx @brunosps00/dev-workflow init --profile=core
|
|
214
|
+
npx @brunosps00/dev-workflow init --profile=standard
|
|
215
|
+
npx @brunosps00/dev-workflow init --profile=full
|
|
216
|
+
npx @brunosps00/dev-workflow init --modules=typescript,python
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
Claude Code and OpenCode receive native project-agent files. Copilot receives `.github/agents/*.agent.md`. Codex receives fallback agent definitions and dispatch instructions through `AGENTS.md`.
|
|
220
|
+
|
|
221
|
+
Subagent handoffs use local packets under `.dw/subtasks/`:
|
|
222
|
+
|
|
223
|
+
```bash
|
|
224
|
+
npx @brunosps00/dev-workflow subtask create --agent=dw-code-explorer --goal="Map the auth flow"
|
|
225
|
+
npx @brunosps00/dev-workflow subtask complete --slug=<slug> --file=<handoff.md>
|
|
226
|
+
npx @brunosps00/dev-workflow subtask consume
|
|
188
227
|
```
|
|
189
228
|
|
|
190
229
|
## Bundled Skills
|
|
191
230
|
|
|
192
|
-
Skills installed to `.agents/skills/` for use by all commands.
|
|
231
|
+
Skills installed to `.agents/skills/` for use by all commands. The bundle is governed by `scaffold/skill-registry.json`, which records each skill's kind, tier, owner, trigger, expected output, load policy, and context limit.
|
|
232
|
+
|
|
233
|
+
Skill kinds:
|
|
234
|
+
|
|
235
|
+
- `protocol`: execution discipline or gate used by commands.
|
|
236
|
+
- `domain-pack`: deeper expertise for a domain such as security, UI, testing, React, Remotion, incident response, or LLM evals.
|
|
237
|
+
- `recipe-pack`: tactical recipes for a narrow implementation surface.
|
|
238
|
+
- `asset-pack`: reusable non-code material, prompts, templates, or editorial references.
|
|
239
|
+
|
|
240
|
+
The rule is deliberate: `SKILL.md` should be a compact entrypoint. Large examples, rules, assets, and checklists live under `references/`, `assets/`, `scripts/`, or `rules/` and are loaded only when the trigger actually needs them. `dev-workflow doctor` validates the registry, installed bundled skills, and context-size limits; `/dw-skill-health` is the agent-facing audit for overlap, bloat, and weak triggers.
|
|
193
241
|
|
|
194
242
|
### Workflow discipline (invoked internally by dw-* commands)
|
|
195
243
|
|
|
@@ -273,7 +321,7 @@ Incident response (`dw-incident-response`) adapted from [`wilsto/claude-code-sta
|
|
|
273
321
|
|
|
274
322
|
LLM evaluation (`dw-llm-eval`) trajectory-match modes (strict / unordered / subset / superset) and tool-argument matching strategies adapted from [`langchain-ai/agentevals`](https://github.com/langchain-ai/agentevals) (MIT). The broader oracle-ladder framing, judge-calibration discipline, and reference-dataset principle are distilled from the open evaluations literature (OpenAI evals cookbook, Anthropic evals guidance, the academic eval-of-LLM body of work) and rewritten in our voice.
|
|
275
323
|
|
|
276
|
-
Optional AWS integration (v1.0.
|
|
324
|
+
Optional AWS integration (v1.0.5). The `/dw-install-aws-skills` command and `npx @brunosps00/dev-workflow install-aws-skills` CLI pull curated agent skills from [`aws/agent-toolkit-for-aws`](https://github.com/aws/agent-toolkit-for-aws) (Apache 2.0, by AWS) into `.agents/skills/aws/` and register the unified [AWS MCP Server](https://docs.aws.amazon.com/aws-mcp/) via [`mcp-proxy-for-aws`](https://github.com/aws/mcp-proxy-for-aws) (stdio transport with SigV4 authentication). Unlike the Azure equivalent, the AWS MCP Server requires `uv`, `aws cli ≥ 2.32.0`, and valid AWS credentials configured via `aws login` or an IAM profile — the command detects each prerequisite and prints OS-specific install instructions if missing (without auto-installing anything). Capability includes `aws___search_documentation`, `aws___read_documentation`, `aws___retrieve_skill`, plus `aws___call_aws` (executes any of 15,000+ AWS APIs with the user's IAM permissions) and `aws___run_script` (Python sandboxed). `.dw/references/aws-mcp-instructions.md` encodes the destructive-operations protocol — agents must confirm before any `create*`/`update*`/`delete*`/`modify*` call, IAM change, or billing-affecting operation. The AWS Knowledge MCP (HTTP, no-auth) was considered for symmetry with Microsoft Learn MCP but is officially deprecated by AWS in favor of the unified server, which AWS explicitly recommends against running alongside the legacy endpoint ("tool conflicts that confuse AI agents"). Default endpoint is `us-east-1` with `eu-central-1` available; region overridable via `--region=<aws-region>` or by editing `.claude/settings.json` directly. Not installed by default; user explicitly invokes the command. Re-run refreshes from upstream; `dev-workflow update` deliberately does not touch `.agents/skills/aws/`.
|
|
277
325
|
|
|
278
326
|
Optional Azure integration (v1.0.3). The `/dw-install-azure-skills` command and `npx @brunosps00/dev-workflow install-azure-skills` CLI pull curated agent skills from [`MicrosoftDocs/Agent-Skills`](https://github.com/MicrosoftDocs/Agent-Skills) (CC-BY-4.0, by Microsoft) into `.agents/skills/azure/` and register the [Microsoft Learn MCP Server](https://learn.microsoft.com/en-us/training/support/mcp-get-started) (HTTP endpoint, no authentication required) into `.claude/settings.json`. The MCP server exposes three tools — `microsoft_docs_search`, `microsoft_docs_fetch`, `microsoft_code_sample_search` — that give the agent live access to Microsoft Learn documentation. **Not installed by default**: `init` and `update` do not touch `.agents/skills/azure/` or register the MCP. Users explicitly invoke the command when they begin Azure-focused work. The 10 categories (Compute, Data & Storage, AI & ML, Networking, Identity & Security, DevOps, Observability, Integration, Architecture, All) are dev-workflow's curated grouping over the 200+ skills in the upstream repo; the `--products=<csv>` flag lets advanced users pick individual services. Re-running the command refreshes from upstream; `dev-workflow update` deliberately does not touch these external skills so the Microsoft upstream release cadence is decoupled from the dev-workflow npm release cadence. Skills are copied verbatim from the upstream repo (CC-BY-4.0 permits this with attribution); the agent-facing `.dw/references/azure-mcp-instructions.md` is a clean-room adaptation of Microsoft's "Set instructions" guidance.
|
|
279
327
|
|
|
@@ -283,7 +331,7 @@ Four patterns from [`mattpocock/skills`](https://github.com/mattpocock/skills) b
|
|
|
283
331
|
|
|
284
332
|
## Migration from v0.x (1.0.0 is a consolidation release)
|
|
285
333
|
|
|
286
|
-
v1.0.0
|
|
334
|
+
v1.0.0 consolidated the legacy command surface into the current `dw-*` pipeline. **The `dev-workflow init`, `update`, and `repair` flows auto-remove obsolete wrappers and known removed command sources**; no manual action required.
|
|
287
335
|
|
|
288
336
|
### Command renames (15 → 7 merged)
|
|
289
337
|
|
|
@@ -319,8 +367,8 @@ On the next `npx @brunosps00/dev-workflow update`, the following happens automat
|
|
|
319
367
|
|
|
320
368
|
1. The 15 renamed commands' wrappers are detected as orphans (their names no longer exist in `lib/constants.js`) and removed from `.claude/skills/`, `.agents/skills/`, and `.opencode/commands/`.
|
|
321
369
|
2. The migrator prints each removal with the friendly "old → new" mapping (e.g., `[orphan] Removing wrapper .agents/skills/dw-create-prd (replaced in v1.0.0 by 'dw-plan prd')`).
|
|
322
|
-
3. The
|
|
323
|
-
4. The
|
|
370
|
+
3. The current command wrappers are installed for the consolidated commands.
|
|
371
|
+
4. The bundled skills are refreshed.
|
|
324
372
|
|
|
325
373
|
### Backwards compatibility
|
|
326
374
|
|
|
@@ -332,7 +380,7 @@ The Trigger Map block (between `<!-- dev-workflow:start -->` and `<!-- dev-workf
|
|
|
332
380
|
|
|
333
381
|
### Skill conventions
|
|
334
382
|
|
|
335
|
-
Skill description format ("pushy" trigger phrases ≤200 chars, "Use when X. Triggers on Y." pattern) and structural conventions (`SKILL.md` + `references/` / `scripts/` / `assets/` / `agents/` subdirectories, explicit `allowed-tools` in frontmatter) follow the official guidance from [`anthropics/skills/skill-creator`](https://github.com/anthropics/skills/tree/main/skills/skill-creator) (Apache 2.0). dev-workflow's
|
|
383
|
+
Skill description format ("pushy" trigger phrases ≤200 chars, "Use when X. Triggers on Y." pattern) and structural conventions (`SKILL.md` + `references/` / `scripts/` / `assets/` / `agents/` subdirectories, explicit `allowed-tools` in frontmatter) follow the official guidance from [`anthropics/skills/skill-creator`](https://github.com/anthropics/skills/tree/main/skills/skill-creator) (Apache 2.0). dev-workflow's bundled skills are not derived from skill-creator's content — only its conventions are followed for auto-trigger reliability across Claude Code, Codex CLI, Copilot, and OpenCode.
|
|
336
384
|
|
|
337
385
|
## License
|
|
338
386
|
|
package/bin/dev-workflow.js
CHANGED
|
@@ -22,8 +22,16 @@ const HELP_TEXT = `
|
|
|
22
22
|
|
|
23
23
|
Usage:
|
|
24
24
|
npx dev-workflow init [--force] [--lang=en|pt-br]
|
|
25
|
-
npx dev-workflow
|
|
25
|
+
npx dev-workflow init [--force] [--lang=en|pt-br] [--profile=core|standard|full] [--modules=<csv>]
|
|
26
|
+
npx dev-workflow update [--lang=en|pt-br] [--profile=core|standard|full] [--modules=<csv>]
|
|
26
27
|
npx dev-workflow install-deps
|
|
28
|
+
npx dev-workflow list-installed
|
|
29
|
+
npx dev-workflow doctor
|
|
30
|
+
npx dev-workflow repair
|
|
31
|
+
npx dev-workflow subtask create --agent=<name> --goal="<goal>"
|
|
32
|
+
npx dev-workflow subtask complete --slug=<slug> --file=<handoff.md>
|
|
33
|
+
npx dev-workflow subtask consume
|
|
34
|
+
npx dev-workflow subtask list
|
|
27
35
|
npx dev-workflow install-azure-skills [--products=<csv>]
|
|
28
36
|
npx dev-workflow install-aws-skills [--region=<aws-region>]
|
|
29
37
|
npx dev-workflow help
|
|
@@ -32,6 +40,10 @@ const HELP_TEXT = `
|
|
|
32
40
|
init Scaffold .dw/ (commands, templates, references, scripts, skills, rules, MCPs)
|
|
33
41
|
update Update managed files (commands, templates, references, scripts, skills, wrappers, MCPs)
|
|
34
42
|
Preserves: .dw/rules/, .dw/spec/, .dw/bugfixes/, .dw/STATE.md, .agents/skills/azure/, user data
|
|
43
|
+
list-installed Show dev-workflow install state for this project
|
|
44
|
+
doctor Check managed files, wrappers, agents, and MCP configuration
|
|
45
|
+
repair Reconcile managed files using the recorded install state
|
|
46
|
+
subtask Create, complete, consume, and list local subagent handoffs
|
|
35
47
|
install-deps Install system dependencies (Playwright browsers, MCP servers)
|
|
36
48
|
install-azure-skills Opt-in: clone curated Azure skills from MicrosoftDocs/Agent-Skills
|
|
37
49
|
into .agents/skills/azure/ and register the Microsoft Learn MCP
|
|
@@ -47,6 +59,8 @@ const HELP_TEXT = `
|
|
|
47
59
|
Options:
|
|
48
60
|
--force Overwrite existing files (init only; update always overwrites managed files)
|
|
49
61
|
--lang=LANG Set language without prompt (en or pt-br)
|
|
62
|
+
--profile=NAME Install profile for agents (core, standard, full)
|
|
63
|
+
--modules=CSV Extra agent modules to install (typescript, python, csharp, rust, security, frontend)
|
|
50
64
|
|
|
51
65
|
Examples:
|
|
52
66
|
npx dev-workflow init # Interactive language selection
|
|
@@ -61,10 +75,22 @@ const HELP_TEXT = `
|
|
|
61
75
|
async function main() {
|
|
62
76
|
switch (command) {
|
|
63
77
|
case 'init':
|
|
64
|
-
await run({ force: !!flags.force, lang: flags.lang, mode: 'init' });
|
|
78
|
+
await run({ force: !!flags.force, lang: flags.lang, mode: 'init', profile: flags.profile, modules: flags.modules });
|
|
65
79
|
break;
|
|
66
80
|
case 'update':
|
|
67
|
-
await run({ force: !!flags.force, lang: flags.lang, mode: 'update' });
|
|
81
|
+
await run({ force: !!flags.force, lang: flags.lang, mode: 'update', profile: flags.profile, modules: flags.modules });
|
|
82
|
+
break;
|
|
83
|
+
case 'list-installed':
|
|
84
|
+
require('../lib/list-installed').run();
|
|
85
|
+
break;
|
|
86
|
+
case 'doctor':
|
|
87
|
+
require('../lib/doctor').run({ repair: false });
|
|
88
|
+
break;
|
|
89
|
+
case 'repair':
|
|
90
|
+
await run({ force: true, lang: flags.lang, mode: 'repair', profile: flags.profile, modules: flags.modules });
|
|
91
|
+
break;
|
|
92
|
+
case 'subtask':
|
|
93
|
+
require('../lib/subtasks').run(args.slice(1));
|
|
68
94
|
break;
|
|
69
95
|
case 'install-deps':
|
|
70
96
|
installDeps.run();
|