pi-maestro-flow 0.2.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/README.md +124 -0
- package/agents/aggregator.md +27 -0
- package/agents/cli-explore-agent.md +188 -0
- package/agents/cross-role-reviewer.md +171 -0
- package/agents/delegate.md +19 -0
- package/agents/explorer.md +23 -0
- package/agents/impeccable-agent.md +99 -0
- package/agents/ralph-executor.md +81 -0
- package/agents/reference.md +24 -0
- package/agents/role-design-author.md +220 -0
- package/agents/team-supervisor.md +143 -0
- package/agents/team-worker.md +237 -0
- package/agents/ui-design-agent.md +270 -0
- package/agents/workflow-analyzer.md +116 -0
- package/agents/workflow-codebase-mapper.md +77 -0
- package/agents/workflow-collab-planner.md +147 -0
- package/agents/workflow-debugger.md +104 -0
- package/agents/workflow-executor.md +133 -0
- package/agents/workflow-external-researcher.md +86 -0
- package/agents/workflow-integration-checker.md +83 -0
- package/agents/workflow-nyquist-auditor.md +85 -0
- package/agents/workflow-phase-researcher.md +85 -0
- package/agents/workflow-plan-checker.md +100 -0
- package/agents/workflow-planner.md +200 -0
- package/agents/workflow-project-researcher.md +74 -0
- package/agents/workflow-research-synthesizer.md +70 -0
- package/agents/workflow-reviewer.md +82 -0
- package/agents/workflow-roadmapper.md +81 -0
- package/agents/workflow-verifier.md +120 -0
- package/package.json +58 -0
- package/skills/codify-to-knowhow/SKILL.md +167 -0
- package/skills/delegation-check/SKILL.md +297 -0
- package/skills/domain-add/SKILL.md +75 -0
- package/skills/insight-challenge/SKILL.md +226 -0
- package/skills/learn-decompose/SKILL.md +124 -0
- package/skills/learn-follow/SKILL.md +163 -0
- package/skills/learn-investigate/SKILL.md +160 -0
- package/skills/learn-second-opinion/SKILL.md +128 -0
- package/skills/maestro/SKILL.md +239 -0
- package/skills/maestro-amend/SKILL.md +169 -0
- package/skills/maestro-analyze/SKILL.md +173 -0
- package/skills/maestro-blueprint/SKILL.md +159 -0
- package/skills/maestro-brainstorm/SKILL.md +193 -0
- package/skills/maestro-collab/SKILL.md +181 -0
- package/skills/maestro-companion/SKILL.md +536 -0
- package/skills/maestro-composer/SKILL.md +192 -0
- package/skills/maestro-execute/SKILL.md +193 -0
- package/skills/maestro-fork/SKILL.md +104 -0
- package/skills/maestro-grill/SKILL.md +151 -0
- package/skills/maestro-guard/SKILL.md +124 -0
- package/skills/maestro-help/SKILL.md +328 -0
- package/skills/maestro-impeccable/SKILL.md +302 -0
- package/skills/maestro-init/SKILL.md +151 -0
- package/skills/maestro-merge/SKILL.md +90 -0
- package/skills/maestro-milestone-audit/SKILL.md +117 -0
- package/skills/maestro-milestone-complete/SKILL.md +133 -0
- package/skills/maestro-milestone-release/SKILL.md +131 -0
- package/skills/maestro-next/SKILL.md +269 -0
- package/skills/maestro-overlay/SKILL.md +203 -0
- package/skills/maestro-plan/SKILL.md +194 -0
- package/skills/maestro-player/SKILL.md +184 -0
- package/skills/maestro-quick/SKILL.md +117 -0
- package/skills/maestro-ralph/SKILL.md +905 -0
- package/skills/maestro-ralph-cli/SKILL.md +976 -0
- package/skills/maestro-ralph-cli-execute/SKILL.md +229 -0
- package/skills/maestro-ralph-execute/SKILL.md +409 -0
- package/skills/maestro-ralph-v2/SKILL.md +1198 -0
- package/skills/maestro-roadmap/SKILL.md +157 -0
- package/skills/maestro-swarm-workflow/SKILL.md +272 -0
- package/skills/maestro-tools-execute/SKILL.md +143 -0
- package/skills/maestro-tools-register/SKILL.md +192 -0
- package/skills/maestro-ui-codify/SKILL.md +127 -0
- package/skills/maestro-universal-workflow/SKILL.md +622 -0
- package/skills/maestro-update/SKILL.md +156 -0
- package/skills/manage-codebase-rebuild/SKILL.md +111 -0
- package/skills/manage-drift-realign/SKILL.md +159 -0
- package/skills/manage-harvest/SKILL.md +121 -0
- package/skills/manage-issue/SKILL.md +88 -0
- package/skills/manage-issue-discover/SKILL.md +104 -0
- package/skills/manage-kg-extractors/SKILL.md +147 -0
- package/skills/manage-knowhow/SKILL.md +102 -0
- package/skills/manage-knowhow-capture/SKILL.md +109 -0
- package/skills/manage-knowledge-audit/SKILL.md +147 -0
- package/skills/manage-status/SKILL.md +80 -0
- package/skills/manage-wiki/SKILL.md +104 -0
- package/skills/odyssey-debug/SKILL.md +344 -0
- package/skills/odyssey-improve/SKILL.md +423 -0
- package/skills/odyssey-planex/SKILL.md +542 -0
- package/skills/odyssey-review-test-fix/SKILL.md +392 -0
- package/skills/odyssey-ui/SKILL.md +388 -0
- package/skills/prompt-generator/SKILL.md +470 -0
- package/skills/quality-auto-test/SKILL.md +168 -0
- package/skills/quality-debug/SKILL.md +176 -0
- package/skills/quality-refactor/SKILL.md +108 -0
- package/skills/quality-retrospective/SKILL.md +134 -0
- package/skills/quality-review/SKILL.md +169 -0
- package/skills/quality-sync/SKILL.md +90 -0
- package/skills/quality-test/SKILL.md +183 -0
- package/skills/scholar-anti-ai-writing/SKILL.md +173 -0
- package/skills/scholar-anti-ai-writing/references/patterns-chinese.md +242 -0
- package/skills/scholar-anti-ai-writing/references/patterns-english.md +242 -0
- package/skills/scholar-citation-verify/SKILL.md +166 -0
- package/skills/scholar-citation-verify/references/api-usage.md +372 -0
- package/skills/scholar-citation-verify/references/common-errors.md +384 -0
- package/skills/scholar-citation-verify/references/verification-rules.md +399 -0
- package/skills/scholar-experiment/SKILL.md +321 -0
- package/skills/scholar-ideation/SKILL.md +288 -0
- package/skills/scholar-latex-organizer/SKILL.md +186 -0
- package/skills/scholar-publish/SKILL.md +220 -0
- package/skills/scholar-rebuttal-pro/README.md +313 -0
- package/skills/scholar-rebuttal-pro/SKILL.md +511 -0
- package/skills/scholar-review/SKILL.md +227 -0
- package/skills/scholar-thesis-docx/README.md +111 -0
- package/skills/scholar-thesis-docx/README_EN.md +108 -0
- package/skills/scholar-thesis-docx/SKILL.md +212 -0
- package/skills/scholar-thesis-docx/references/failure-patterns-and-quality-gates.md +178 -0
- package/skills/scholar-thesis-docx/references/figure-and-code-rules.md +33 -0
- package/skills/scholar-thesis-docx/references/paper-format-workflow.md +68 -0
- package/skills/scholar-thesis-docx/references/script-usage.md +157 -0
- package/skills/scholar-thesis-docx/scripts/audit_docx_ooxml.py +429 -0
- package/skills/scholar-thesis-docx/scripts/check_word_com.ps1 +50 -0
- package/skills/scholar-thesis-docx/scripts/export_word_pdf.ps1 +62 -0
- package/skills/scholar-thesis-docx/scripts/normalize_word_styles.ps1 +498 -0
- package/skills/scholar-thesis-docx/scripts/render_mermaid_figure.ps1 +148 -0
- package/skills/scholar-writing/SKILL.md +296 -0
- package/skills/security-audit/SKILL.md +244 -0
- package/skills/skill-generator/SKILL.md +472 -0
- package/skills/skill-iter-tune/SKILL.md +382 -0
- package/skills/skill-simplify/SKILL.md +63 -0
- package/skills/skill-tuning/SKILL.md +174 -0
- package/skills/spec-add/SKILL.md +105 -0
- package/skills/spec-load/SKILL.md +98 -0
- package/skills/spec-remove/SKILL.md +74 -0
- package/skills/spec-setup/SKILL.md +75 -0
- package/skills/team-adversarial-swarm/SKILL.md +233 -0
- package/skills/team-adversarial-swarm/scripts/__pycache__/pheromone.cpython-313.pyc +0 -0
- package/skills/team-adversarial-swarm/scripts/__pycache__/scoring.cpython-313.pyc +0 -0
- package/skills/team-adversarial-swarm/scripts/aco.py +473 -0
- package/skills/team-adversarial-swarm/scripts/pheromone.py +144 -0
- package/skills/team-adversarial-swarm/scripts/scoring.py +92 -0
- package/skills/team-adversarial-swarm/scripts/test_aco.py +475 -0
- package/skills/team-arch-opt/SKILL.md +158 -0
- package/skills/team-brainstorm/SKILL.md +171 -0
- package/skills/team-coordinate/SKILL.md +266 -0
- package/skills/team-designer/SKILL.md +160 -0
- package/skills/team-executor/SKILL.md +189 -0
- package/skills/team-frontend/SKILL.md +136 -0
- package/skills/team-frontend-debug/SKILL.md +198 -0
- package/skills/team-interactive-craft/SKILL.md +141 -0
- package/skills/team-issue/SKILL.md +171 -0
- package/skills/team-lifecycle-v4/SKILL.md +209 -0
- package/skills/team-motion-design/SKILL.md +142 -0
- package/skills/team-perf-opt/SKILL.md +175 -0
- package/skills/team-planex/SKILL.md +137 -0
- package/skills/team-quality-assurance/SKILL.md +147 -0
- package/skills/team-review/SKILL.md +147 -0
- package/skills/team-roadmap-dev/SKILL.md +169 -0
- package/skills/team-swarm/SKILL.md +178 -0
- package/skills/team-swarm/scripts/aco.py +473 -0
- package/skills/team-swarm/scripts/pheromone.py +144 -0
- package/skills/team-swarm/scripts/scoring.py +92 -0
- package/skills/team-swarm/scripts/test_aco.py +475 -0
- package/skills/team-tech-debt/SKILL.md +128 -0
- package/skills/team-testing/SKILL.md +143 -0
- package/skills/team-ui-polish/SKILL.md +141 -0
- package/skills/team-uidesign/SKILL.md +144 -0
- package/skills/team-ultra-analyze/SKILL.md +173 -0
- package/skills/team-ux-improve/SKILL.md +151 -0
- package/skills/team-visual-a11y/SKILL.md +156 -0
- package/skills/workflow-skill-designer/SKILL.md +496 -0
- package/src/extension/index.ts +222 -0
- package/src/extension/schemas.ts +131 -0
- package/src/providers/cli-tools-loader.ts +74 -0
- package/src/providers/provider-registry.ts +130 -0
- package/src/tools/delegate.ts +85 -0
- package/src/tools/explore.ts +134 -0
- package/src/tools/moa.ts +213 -0
- package/src/tools/status.ts +99 -0
- package/src/tools/wait.ts +166 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: workflow-reviewer
|
|
3
|
+
description: "Multi-dimensional code review agent โ analyzes changed files for a single review dimension"
|
|
4
|
+
tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Glob
|
|
7
|
+
- Grep
|
|
8
|
+
- Bash
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Workflow Reviewer
|
|
12
|
+
|
|
13
|
+
## Role
|
|
14
|
+
You perform focused code review for a single dimension (e.g., security, performance, architecture). You analyze changed files, identify issues with evidence, classify severity, and produce structured findings. You are read-only and never modify project files.
|
|
15
|
+
|
|
16
|
+
## Search Tools
|
|
17
|
+
@~/.maestro/templates/search-tools.md โ Follow search tool priority and selection patterns.
|
|
18
|
+
|
|
19
|
+
## Process
|
|
20
|
+
|
|
21
|
+
1. **Load context** โ Read the dimension assignment, file list, project specs, and tech stack
|
|
22
|
+
2. **Structural scan** โ For each file, identify patterns relevant to the assigned dimension:
|
|
23
|
+
- Parse imports, exports, function signatures, class hierarchies
|
|
24
|
+
- Count lines of logic, cyclomatic complexity indicators
|
|
25
|
+
- Identify the file's role in the codebase (handler, model, utility, component, config)
|
|
26
|
+
3. **Dimension-specific analysis** โ Apply dimension rules:
|
|
27
|
+
- **Correctness**: Logic errors, off-by-one, null handling, missing error propagation, type mismatches, unhandled edge cases
|
|
28
|
+
- **Security**: Injection vectors (SQL/command/XSS), auth bypass, hardcoded secrets, missing input validation, data exposure in logs/errors
|
|
29
|
+
- **Performance**: O(n^2+) algorithms, N+1 queries, missing pagination, resource leaks (unclosed handles/streams), synchronous blocking, missing caching
|
|
30
|
+
- **Architecture**: Layer violations (UI calling DB directly), circular dependencies, god classes/functions, inconsistent patterns, tight coupling
|
|
31
|
+
- **Maintainability**: Functions >50 lines, cyclomatic complexity >10, duplicated logic, unclear naming, dead code, missing error context
|
|
32
|
+
- **Best Practices**: Deprecated API usage, framework anti-patterns, inconsistent style with codebase, missing TypeScript strict checks, raw `any` types
|
|
33
|
+
4. **Cross-reference** โ Check findings against project specs (`maestro load --type spec --category review`):
|
|
34
|
+
- Do findings violate documented review standards?
|
|
35
|
+
- Do findings contradict architecture constraints?
|
|
36
|
+
5. **Classify severity** โ For each finding:
|
|
37
|
+
- **Critical**: Security vulnerability, data corruption risk, crash in production
|
|
38
|
+
- **High**: Logic bug likely to cause incorrect behavior, resource leak, architecture violation
|
|
39
|
+
- **Medium**: Code smell, maintainability concern, performance opportunity
|
|
40
|
+
- **Low**: Style issue, minor optimization, suggestion
|
|
41
|
+
6. **Produce findings** โ Structured output with evidence
|
|
42
|
+
|
|
43
|
+
## Input
|
|
44
|
+
- `dimension`: One of correctness, security, performance, architecture, maintainability, best-practices
|
|
45
|
+
- `files[]`: Array of file paths to review (changed files in phase)
|
|
46
|
+
- `phase_context`: Phase goal, success criteria, task descriptions
|
|
47
|
+
- `specs_context`: Project coding conventions, architecture constraints, quality rules (optional)
|
|
48
|
+
- `tech_stack`: Language, framework, test framework (optional)
|
|
49
|
+
- `codebase_context` (optional): `.workflow/codebase/ARCHITECTURE.md` content โ component boundaries, layer rules, dependency direction. Use for architecture dimension and cross-referencing layer violations.
|
|
50
|
+
- `wiki_context` (optional): Related wiki entries from `maestro wiki search` โ architecture decisions and constraints to evaluate code against.
|
|
51
|
+
|
|
52
|
+
## Output
|
|
53
|
+
Return a JSON array of findings:
|
|
54
|
+
```json
|
|
55
|
+
[
|
|
56
|
+
{
|
|
57
|
+
"id": "{DIMENSION_PREFIX}-{NNN}",
|
|
58
|
+
"dimension": "security",
|
|
59
|
+
"severity": "critical",
|
|
60
|
+
"title": "SQL injection via unsanitized user input",
|
|
61
|
+
"file": "src/api/users.ts",
|
|
62
|
+
"line": 42,
|
|
63
|
+
"snippet": "db.query(`SELECT * FROM users WHERE id = ${req.params.id}`)",
|
|
64
|
+
"description": "User-supplied parameter interpolated directly into SQL query without parameterization",
|
|
65
|
+
"impact": "Attacker can extract or modify arbitrary database records",
|
|
66
|
+
"suggestion": "Use parameterized query: db.query('SELECT * FROM users WHERE id = $1', [req.params.id])",
|
|
67
|
+
"spec_violation": "coding-conventions.md: 'Always use parameterized queries'"
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**Dimension prefixes**: CORR (correctness), SEC (security), PERF (performance), ARCH (architecture), MAINT (maintainability), BP (best-practices)
|
|
73
|
+
|
|
74
|
+
## Constraints
|
|
75
|
+
- Read-only; never modify project files
|
|
76
|
+
- Every finding MUST have file:line evidence and a concrete code snippet
|
|
77
|
+
- Do not report style-only issues unless they harm readability significantly
|
|
78
|
+
- Do not report issues in generated files, lock files, or vendor directories
|
|
79
|
+
- Limit findings to top 20 per dimension (prioritize by severity)
|
|
80
|
+
- If specs are provided, cross-reference โ note spec violations explicitly
|
|
81
|
+
- Focus on the assigned dimension only; do not stray into other dimensions
|
|
82
|
+
- Prefer actionable findings over vague observations
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: workflow-roadmapper
|
|
3
|
+
description: "Creates project roadmap with phased milestones from research and requirements"
|
|
4
|
+
tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Write
|
|
7
|
+
- Bash
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Roadmapper
|
|
11
|
+
|
|
12
|
+
## Role
|
|
13
|
+
You create a phased project roadmap from research findings and requirements. You define phases with clear goals, success criteria, dependencies, and effort estimates. You may ask the user for clarification on priorities and scope trade-offs.
|
|
14
|
+
|
|
15
|
+
## Process
|
|
16
|
+
|
|
17
|
+
1. **Gather context** -- Read research summary, project description, and any existing requirements
|
|
18
|
+
2. **Define phases** -- Break the project into sequential phases, each with a clear milestone
|
|
19
|
+
3. **Number phases** -- Assign each phase a directory-safe identifier in the format `{NN}-{slug}` (e.g., `01-auth`, `02-api`, `03-ui-components`)
|
|
20
|
+
4. **Set success criteria** -- Define measurable done-when conditions for each phase
|
|
21
|
+
5. **Map dependencies** -- Identify cross-phase dependencies and prerequisites
|
|
22
|
+
6. **Estimate effort** -- Provide relative sizing (S/M/L/XL) for each phase
|
|
23
|
+
7. **Seek confirmation** -- Ask user to validate priorities and scope decisions
|
|
24
|
+
8. **Write roadmap** -- Produce the roadmap document
|
|
25
|
+
|
|
26
|
+
## Input
|
|
27
|
+
- `.workflow/research/SUMMARY.md` (synthesized research)
|
|
28
|
+
- `.workflow/codebase/` documents (if available)
|
|
29
|
+
- Project description and goals
|
|
30
|
+
- User priorities and constraints
|
|
31
|
+
|
|
32
|
+
## Output
|
|
33
|
+
`.workflow/roadmap.md` with the following structure:
|
|
34
|
+
```
|
|
35
|
+
# Roadmap
|
|
36
|
+
|
|
37
|
+
## Vision
|
|
38
|
+
<1-2 sentence project vision>
|
|
39
|
+
|
|
40
|
+
## Phases
|
|
41
|
+
|
|
42
|
+
### Phase 01-auth: Authentication (Size: M)
|
|
43
|
+
- **Goal**: <what this phase achieves>
|
|
44
|
+
- **Success Criteria**: <measurable conditions>
|
|
45
|
+
- **Key Deliverables**: <artifacts produced>
|
|
46
|
+
- **Dependencies**: <prerequisites>
|
|
47
|
+
- **Risks**: <phase-specific risks>
|
|
48
|
+
|
|
49
|
+
### Phase 02-api: API Layer (Size: L)
|
|
50
|
+
...
|
|
51
|
+
|
|
52
|
+
## Phase Dependencies
|
|
53
|
+
<Dependency graph or ordered list>
|
|
54
|
+
|
|
55
|
+
## Scope Decisions
|
|
56
|
+
- In scope: <included items>
|
|
57
|
+
- Deferred: <items for later phases>
|
|
58
|
+
- Out of scope: <excluded items>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Phase identifiers use lowercase kebab-case slug names (e.g., `auth`, `api-layer`, `ui-components`).
|
|
62
|
+
|
|
63
|
+
These identifiers become scratch directory names under `.workflow/scratch/{slug}/` (resolved via state.json artifact registry).
|
|
64
|
+
|
|
65
|
+
## Schema Reference
|
|
66
|
+
`@templates/roadmap.md` -- roadmap template
|
|
67
|
+
|
|
68
|
+
## Output Location
|
|
69
|
+
`.workflow/roadmap.md`
|
|
70
|
+
|
|
71
|
+
## Error Behavior
|
|
72
|
+
- If research summary (`.workflow/research/SUMMARY.md`) is not available, ask the user for priorities directly
|
|
73
|
+
- If codebase documents are unavailable, proceed with user-provided context only
|
|
74
|
+
- If user does not respond to confirmation prompt, document assumptions and proceed
|
|
75
|
+
|
|
76
|
+
## Constraints
|
|
77
|
+
- Each phase must be independently valuable (deliverable milestone)
|
|
78
|
+
- Success criteria must be specific and verifiable, not vague
|
|
79
|
+
- Phases should be ordered by dependency and risk (tackle high-risk early)
|
|
80
|
+
- **Minimum-phase principle**: Default 1 phase, max 2, exceptional 3 with justification. Phase = synchronization barrier (planโexecuteโverify cycle). Wave DAG inside each phase handles task ordering. Only split when hard dependency exists: (1) runtime dependency that cannot be mocked, (2) not parallelizable via contract/interface, (3) full barrier โ all of Phase A must complete before any of Phase B starts.
|
|
81
|
+
- Do not define implementation tasks; that is the planner's job
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: workflow-verifier
|
|
3
|
+
description: "Goal-backward verification across three layers (existence, substance, connection)"
|
|
4
|
+
tools:
|
|
5
|
+
- Read
|
|
6
|
+
- Glob
|
|
7
|
+
- Grep
|
|
8
|
+
- Bash
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Workflow Verifier
|
|
12
|
+
|
|
13
|
+
## Role
|
|
14
|
+
You perform goal-backward verification of completed work using a three-layer checking approach. You verify that artifacts exist, contain real substance, and are properly connected to the rest of the system. You also validate each task's convergence criteria individually. You are read-only and never modify project files.
|
|
15
|
+
|
|
16
|
+
## Search Tools
|
|
17
|
+
@~/.maestro/templates/search-tools.md โ Follow search tool priority and selection patterns.
|
|
18
|
+
|
|
19
|
+
## Process
|
|
20
|
+
|
|
21
|
+
1. **Load goals** -- Read the phase/task goals, success criteria, must_haves, and `convergence.criteria` from each task JSON
|
|
22
|
+
2. **Layer 1 - Existence** -- Verify all expected artifacts exist:
|
|
23
|
+
- Files created as specified in task `files[].path` where `files[].action` is "create"
|
|
24
|
+
- Functions/classes/modules present at `files[].target`
|
|
25
|
+
- Configuration entries added
|
|
26
|
+
3. **Layer 2 - Substance** -- Verify artifacts are non-trivial:
|
|
27
|
+
- Files contain meaningful implementation (not stubs or TODOs)
|
|
28
|
+
- Functions have real logic (not empty bodies or pass-through)
|
|
29
|
+
- Tests actually test behavior (not empty test cases)
|
|
30
|
+
4. **Layer 3 - Connection** -- Verify artifacts are properly wired:
|
|
31
|
+
- Imports resolve correctly
|
|
32
|
+
- New modules are registered/exported
|
|
33
|
+
- Routes are mounted, handlers are connected
|
|
34
|
+
- Configuration is loaded and used
|
|
35
|
+
5. **Per-task convergence validation** -- For each completed task, verify every item in `convergence.criteria`:
|
|
36
|
+
- Run `convergence.verification` command if defined
|
|
37
|
+
- Check each criterion individually (pass/fail with evidence)
|
|
38
|
+
- Cross-reference with task summaries in `.summaries/`
|
|
39
|
+
6. **Check must_haves** -- Verify each must_have category:
|
|
40
|
+
- `truths`: Invariants that must hold
|
|
41
|
+
- `artifacts`: Files/outputs that must exist
|
|
42
|
+
- `key_links`: Connections that must be wired
|
|
43
|
+
7. **Write report** -- Output verification.json with results
|
|
44
|
+
|
|
45
|
+
## Input
|
|
46
|
+
- Phase or task goals with must_haves definition
|
|
47
|
+
- `.task/TASK-{NNN}.json` files with `convergence.criteria` to validate
|
|
48
|
+
- Completed code/artifacts to verify
|
|
49
|
+
- Task summaries from `.summaries/`
|
|
50
|
+
- **Project specs** โ `maestro load --type spec --category quality`: verification criteria, acceptance standards. Must verify code complies with loaded constraints.
|
|
51
|
+
- **Codebase docs** (if `.workflow/codebase/` exists) โ Read `ARCHITECTURE.md` for expected module wiring and `FEATURES.md` for component mapping; use in Layer 3 (Connection) checks
|
|
52
|
+
- **Wiki constraints** (if `maestro wiki` available) โ `maestro wiki search "architecture constraint"` for documented invariants to include as additional truth checks
|
|
53
|
+
|
|
54
|
+
## Output
|
|
55
|
+
`verification.json`:
|
|
56
|
+
```json
|
|
57
|
+
{
|
|
58
|
+
"phase": "<phase-id>",
|
|
59
|
+
"status": "pass|fail",
|
|
60
|
+
"layers": {
|
|
61
|
+
"existence": {"pass": true, "checks": [...]},
|
|
62
|
+
"substance": {"pass": true, "checks": [...]},
|
|
63
|
+
"connection": {"pass": false, "checks": [...]}
|
|
64
|
+
},
|
|
65
|
+
"convergence_check": {
|
|
66
|
+
"TASK-001": {
|
|
67
|
+
"status": "pass",
|
|
68
|
+
"criteria": [
|
|
69
|
+
{"criterion": "File src/tools/new-tool.ts exports NewTool class", "pass": true, "evidence": "grep confirms export at line 15"},
|
|
70
|
+
{"criterion": "npm run build completes without errors", "pass": true, "evidence": "build exit code 0"}
|
|
71
|
+
]
|
|
72
|
+
},
|
|
73
|
+
"TASK-002": {
|
|
74
|
+
"status": "fail",
|
|
75
|
+
"criteria": [
|
|
76
|
+
{"criterion": "GET /api/health returns 200", "pass": true, "evidence": "curl test passed"},
|
|
77
|
+
{"criterion": "Response includes version field", "pass": false, "evidence": "Response body missing 'version' key"}
|
|
78
|
+
]
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
"must_haves": {
|
|
82
|
+
"truths": [{"claim": "...", "verified": true}],
|
|
83
|
+
"artifacts": [{"path": "...", "exists": true, "substantial": true}],
|
|
84
|
+
"key_links": [{"from": "...", "to": "...", "connected": false}]
|
|
85
|
+
},
|
|
86
|
+
"gaps": [
|
|
87
|
+
{"layer": "connection", "description": "Router not mounted in app.ts", "severity": "high", "task": "TASK-002"}
|
|
88
|
+
]
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Constraints
|
|
93
|
+
- Read-only; never modify project files
|
|
94
|
+
- Every check must have evidence (file:line reference or command output)
|
|
95
|
+
- Layer 2 checks must go beyond file existence (actually read content)
|
|
96
|
+
- Layer 3 checks must trace import/require chains
|
|
97
|
+
- Verify each `convergence.criteria` item from task JSON individually
|
|
98
|
+
- Report gaps with severity (high/medium/low), specific location, and originating task ID
|
|
99
|
+
- Do not suggest fixes; only identify gaps
|
|
100
|
+
|
|
101
|
+
## Schema Reference
|
|
102
|
+
- **Task schema**: `templates/task.json` -- Used to locate `convergence.criteria` and `files` for verification
|
|
103
|
+
- Key fields consumed during verification:
|
|
104
|
+
- `convergence.criteria` -- Array of testable conditions to check per task (replaces deprecated `done_when`)
|
|
105
|
+
- `convergence.verification` -- Command or steps to run for automated checking
|
|
106
|
+
- `files[].{path, action, target}` -- Expected file operations to verify
|
|
107
|
+
- `status` -- Top-level task status (only verify tasks with status "completed")
|
|
108
|
+
- **Verification template**: `templates/verification.json` -- Output format reference
|
|
109
|
+
|
|
110
|
+
## Output Location
|
|
111
|
+
- **Scratch verification**: `.workflow/scratch/{slug}/verification.json`
|
|
112
|
+
- **Per-task verification**: Embedded in the `convergence_check` block within verification.json (not separate files)
|
|
113
|
+
|
|
114
|
+
## Error Behavior
|
|
115
|
+
- **Task JSON missing or malformed**: Skip task, log as gap with severity "high" and description "Task definition missing or unreadable"
|
|
116
|
+
- **convergence.verification command fails**: Log command error output as evidence, mark criterion as "fail"
|
|
117
|
+
- **Cannot determine pass/fail for a criterion**: Mark as "inconclusive" with explanation; count as fail for overall status
|
|
118
|
+
- **Build/test environment unavailable**: Log as gap with severity "medium", skip automated checks, perform static checks only
|
|
119
|
+
- **All tasks pass all layers**: Set status to "pass" and report clean verification
|
|
120
|
+
- **Any gap found**: Set status to "fail" regardless of gap severity; list all gaps for resolution
|
package/package.json
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "pi-maestro-flow",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "Pi extension for Maestro workflow orchestration โ explore, delegate, MOA tools, 113 skills, and 28 agent definitions",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"pi-package",
|
|
8
|
+
"pi",
|
|
9
|
+
"pi-coding-agent",
|
|
10
|
+
"maestro",
|
|
11
|
+
"agents",
|
|
12
|
+
"explore",
|
|
13
|
+
"delegate",
|
|
14
|
+
"moa",
|
|
15
|
+
"workflow",
|
|
16
|
+
"orchestration"
|
|
17
|
+
],
|
|
18
|
+
"files": [
|
|
19
|
+
"src/**/*.ts",
|
|
20
|
+
"agents/",
|
|
21
|
+
"skills/",
|
|
22
|
+
"README.md"
|
|
23
|
+
],
|
|
24
|
+
"pi": {
|
|
25
|
+
"extensions": [
|
|
26
|
+
"./src/extension/index.ts"
|
|
27
|
+
],
|
|
28
|
+
"skills": [
|
|
29
|
+
"./skills"
|
|
30
|
+
]
|
|
31
|
+
},
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"pi-maestro-teammate": "0.1.0",
|
|
34
|
+
"@earendil-works/pi-tui": "0.74.0",
|
|
35
|
+
"typebox": "1.1.24"
|
|
36
|
+
},
|
|
37
|
+
"peerDependencies": {
|
|
38
|
+
"@earendil-works/pi-agent-core": "*",
|
|
39
|
+
"@earendil-works/pi-ai": "*",
|
|
40
|
+
"@earendil-works/pi-coding-agent": "*"
|
|
41
|
+
},
|
|
42
|
+
"peerDependenciesMeta": {
|
|
43
|
+
"@earendil-works/pi-agent-core": {
|
|
44
|
+
"optional": true
|
|
45
|
+
},
|
|
46
|
+
"@earendil-works/pi-ai": {
|
|
47
|
+
"optional": true
|
|
48
|
+
},
|
|
49
|
+
"@earendil-works/pi-coding-agent": {
|
|
50
|
+
"optional": true
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"@earendil-works/pi-agent-core": "0.74.0",
|
|
55
|
+
"@earendil-works/pi-ai": "0.74.0",
|
|
56
|
+
"@earendil-works/pi-coding-agent": "0.74.0"
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: codify-to-knowhow
|
|
3
|
+
description: "Manifest-driven knowledge asset generator โ converts any structured package into maestro knowhow + spec entries with ref linking. Triggers on \"codify-to-knowhow\", \"style to knowhow\", \"็ฅ่ฏๅบๅ\"."
|
|
4
|
+
allowed-tools: Read Write Edit Bash Glob Grep TodoWrite
|
|
5
|
+
auto-continue: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Codify to Knowhow
|
|
9
|
+
|
|
10
|
+
้็จ manifest ้ฉฑๅจ็็ฅ่ฏ่ตไบง็ๆๅจใ่ฏปๅ `knowhow-manifest.json`๏ผๆๅฃฐๆๅๅปบ knowhow ๆไปถๅ spec ๆก็ฎ๏ผ้่ฟ ref ๅปบ็ซ็ดขๅผ-่ฏฆๆๆกฅๆขใ
|
|
11
|
+
|
|
12
|
+
**้็จๅบๆฏ**: ไปปไฝๅทฅไฝๆตไบงๅบ้่ฆๅบๅไธบ็ฅ่ฏ่ตไบงๆถไฝฟ็จใไธๆธธ skill๏ผๅฆ `maestro-ui-codify`๏ผ่ด่ดฃ็ๆ manifest๏ผๆฌ skill ่ด่ดฃๆง่ก็ฅ่ฏๅๅ
ฅใ
|
|
13
|
+
|
|
14
|
+
## Architecture Overview
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
18
|
+
โ Codify to Knowhow (SKILL.md) โ Manifest-Driven โ
|
|
19
|
+
โ โ Read manifest โ Create knowhow โ Create specs โ Verify โ
|
|
20
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
21
|
+
โ
|
|
22
|
+
โโโโโโโโโโโโฌโโโโโโโโโโโโผโโโโโโโโโโโโฌโโโโโโโโโโโ
|
|
23
|
+
โ โ โ โ โ
|
|
24
|
+
โโโโโโโโโโ โโโโโโโโโโ โโโโโโโโโโ โโโโโโโโโโ โ
|
|
25
|
+
โPhase 1 โ โPhase 2 โ โPhase 3 โ โPhase 4 โ โ
|
|
26
|
+
โ Load โ โGenerateโ โGenerateโ โ Index โ โ
|
|
27
|
+
โManifestโ โKnowhow โ โ Specs โ โ Verify โ โ
|
|
28
|
+
โโโโโฌโโโโโ โโโโโฌโโโโโ โโโโโฌโโโโโ โโโโโฌโโโโโ โ
|
|
29
|
+
โ โ โ โ โ
|
|
30
|
+
manifest AST-/DCS- spec-entry verified โ
|
|
31
|
+
parsed files + ref assets โ
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Key Design Principles
|
|
35
|
+
|
|
36
|
+
1. **Manifest ้ฉฑๅจ**: ๆๆ่กไธบ็ฑ `knowhow-manifest.json` ๅฃฐๆ๏ผไธๅซ็กฌ็ผ็ ้ขๅ็ฅ่ฏ
|
|
37
|
+
2. **ๅน็ญๆง่ก**: ๆฏไธชๅๅ
ฅๅๆ slug ๆฃๆฅๅทฒๅญๅจ่ตไบง๏ผๅญๅจๅ่ทณ่ฟ
|
|
38
|
+
3. **ref ๆกฅๆข**: spec-entry ้่ฟ `ref` ๅผ็จ knowhow ่ฏฆๆ
|
|
39
|
+
4. **้ญๅๆ ็ญพ**: ๆๆๆก็ฎไฝฟ็จ `<spec-entry>`/`<knowhow-entry>` ้ญๅๆ ็ญพ
|
|
40
|
+
5. **ไธๆธธ็ๆ manifest**: ๆฌ skill ไธๅ็ฅ่ฏๆๅ๏ผๅชๅ็ฅ่ฏๅๅ
ฅ
|
|
41
|
+
|
|
42
|
+
## Manifest Format
|
|
43
|
+
|
|
44
|
+
`knowhow-manifest.json` ็ฑไธๆธธ skill ็ๆ๏ผๆพๅจ package ็ฎๅฝไธญ๏ผ
|
|
45
|
+
|
|
46
|
+
```json
|
|
47
|
+
{
|
|
48
|
+
"slug": "my-style-v1",
|
|
49
|
+
"domain": "ui-design",
|
|
50
|
+
"roles": ["implement", "review"],
|
|
51
|
+
"packagePath": ".workflow/reference_style/my-style-v1",
|
|
52
|
+
|
|
53
|
+
"knowhow": [
|
|
54
|
+
{
|
|
55
|
+
"prefix": "AST",
|
|
56
|
+
"fileSlug": "tokens",
|
|
57
|
+
"title": "Design Tokens",
|
|
58
|
+
"category": "asset",
|
|
59
|
+
"assetType": "design-tokens",
|
|
60
|
+
"codePaths": ["src/styles/"],
|
|
61
|
+
"tags": ["design-tokens", "colors"],
|
|
62
|
+
"entries": [
|
|
63
|
+
{
|
|
64
|
+
"category": "pattern",
|
|
65
|
+
"keywords": "colors,tokens",
|
|
66
|
+
"title": "Color System",
|
|
67
|
+
"body": "## Colors\n\n..."
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
|
|
73
|
+
"specs": [
|
|
74
|
+
{
|
|
75
|
+
"category": "coding",
|
|
76
|
+
"keywords": "colors,design-tokens",
|
|
77
|
+
"title": "้ข่ฒ็ผ็ ็บฆๅฎ",
|
|
78
|
+
"ref": "knowhow/AST-my-style-v1-tokens.md",
|
|
79
|
+
"body": "ไธป่ฒไฝฟ็จ var(--color-primary)..."
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Execution Flow
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
Input: <package-path> (must contain knowhow-manifest.json)
|
|
89
|
+
|
|
90
|
+
Phase 1: Load and Validate Manifest
|
|
91
|
+
โโ Ref: phases/01-load-manifest.md
|
|
92
|
+
โโ Validate package path and manifest existence
|
|
93
|
+
โโ Parse knowhow-manifest.json
|
|
94
|
+
โโ Output: manifest object
|
|
95
|
+
|
|
96
|
+
Phase 2: Generate Knowhow Assets
|
|
97
|
+
โโ Ref: phases/02-generate-knowhow.md
|
|
98
|
+
โโ Idempotency check per file
|
|
99
|
+
โโ Write knowhow files per manifest.knowhow[]
|
|
100
|
+
โโ Output: knowhowPaths[]
|
|
101
|
+
|
|
102
|
+
Phase 3: Generate Spec Entries
|
|
103
|
+
โโ Ref: phases/03-generate-specs.md
|
|
104
|
+
โโ Idempotency check per entry
|
|
105
|
+
โโ Write spec entries per manifest.specs[]
|
|
106
|
+
โโ Output: specEntryCount
|
|
107
|
+
|
|
108
|
+
Phase 4: Index and Verify
|
|
109
|
+
โโ Ref: phases/04-index-verify.md
|
|
110
|
+
โโ Output: verification report
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Phase Reference Documents**:
|
|
114
|
+
|
|
115
|
+
| Phase | Document | Purpose |
|
|
116
|
+
|-------|----------|---------|
|
|
117
|
+
| 1 | [phases/01-load-manifest.md](phases/01-load-manifest.md) | Load and validate manifest |
|
|
118
|
+
| 2 | [phases/02-generate-knowhow.md](phases/02-generate-knowhow.md) | Create knowhow files |
|
|
119
|
+
| 3 | [phases/03-generate-specs.md](phases/03-generate-specs.md) | Create spec entries with ref |
|
|
120
|
+
| 4 | [phases/04-index-verify.md](phases/04-index-verify.md) | Verify assets and index |
|
|
121
|
+
|
|
122
|
+
## Core Rules
|
|
123
|
+
|
|
124
|
+
1. **Manifest ๅฟ
้**: ๆ manifest ๅๆฅ้้ๅบ
|
|
125
|
+
2. **ๅน็ญๅๅ
ฅ**: ๅ slug ๆไปถๅญๅจๅ่ทณ่ฟ
|
|
126
|
+
3. **้ญๅๆ ็ญพ**: ๆๆ entry ไฝฟ็จ้ญๅๆ ็ญพๆ ผๅผ
|
|
127
|
+
4. **Auto-Continue**: Phase ๅฎๆๅ่ชๅจๆง่กไธไธ Phase
|
|
128
|
+
5. **ไธๆๅ็ฅ่ฏ**: ๆฌ skill ๅชๅๅ
ฅ๏ผ็ฅ่ฏๆๅ็ฑไธๆธธๅฎๆ
|
|
129
|
+
|
|
130
|
+
## Data Flow
|
|
131
|
+
|
|
132
|
+
```
|
|
133
|
+
Input (packagePath)
|
|
134
|
+
โ
|
|
135
|
+
Phase 1 โ manifest: { slug, knowhow[], specs[] }
|
|
136
|
+
โ
|
|
137
|
+
Phase 2 โ knowhowPaths: string[], knowhowIds: string[]
|
|
138
|
+
โ
|
|
139
|
+
Phase 3 โ specEntryCount: number
|
|
140
|
+
โ
|
|
141
|
+
Phase 4 โ verificationResult
|
|
142
|
+
โ
|
|
143
|
+
Completion report
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
## TodoWrite Pattern
|
|
147
|
+
|
|
148
|
+
```json
|
|
149
|
+
[
|
|
150
|
+
{"content": "Phase 1: ๅ ่ฝฝ Manifest", "status": "in_progress"},
|
|
151
|
+
{"content": "Phase 2: ็ๆ Knowhow ่ตไบง", "status": "pending"},
|
|
152
|
+
{"content": "Phase 3: ็ๆ Spec ๆก็ฎ", "status": "pending"},
|
|
153
|
+
{"content": "Phase 4: ็ดขๅผ้ช่ฏ", "status": "pending"}
|
|
154
|
+
]
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## Error Handling
|
|
158
|
+
|
|
159
|
+
- **Manifest ไธๅญๅจ**: ๆฅๅ้่ฏฏ๏ผๆ็คบไธๆธธ skill ้ๅ
็ๆ manifest
|
|
160
|
+
- **Manifest ๆ ผๅผ้่ฏฏ**: ๆฅๅ็ผบๅคฑๅญๆฎต
|
|
161
|
+
- **ๅน็ญๅฒ็ช**: ่ทณ่ฟๅทฒๅญๅจ่ตไบง๏ผๆฅๅ่ทณ่ฟๆฐ้
|
|
162
|
+
- **CLI ๅคฑ่ดฅ**: ๅ้ๅฐ Write tool ็ดๆฅๅๆไปถ
|
|
163
|
+
|
|
164
|
+
## Related Commands
|
|
165
|
+
|
|
166
|
+
**ไธๆธธ**: `maestro-ui-codify`, `learn-decompose`, ๆไปปไฝ็ๆ manifest ็ skill
|
|
167
|
+
**ๅ็ปญ**: `maestro wiki list --category coding`, `maestro load --type spec --keyword <slug>`
|