vibesuite 1.0.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/.agent/skills/agent-recovery/SKILL.md +147 -0
- package/.agent/skills/code-review/SKILL.md +81 -0
- package/.agent/skills/component-analysis/SKILL.md +103 -0
- package/.agent/skills/git-worktree/SKILL.md +78 -0
- package/.agent/skills/github-ops/SKILL.md +220 -0
- package/.agent/skills/github-ops/scripts/publish_issues.ps1 +443 -0
- package/.agent/skills/github-ops/scripts/smart-ops.ps1 +128 -0
- package/.agent/skills/github-ops/scripts/smart-ops.sh +130 -0
- package/.agent/skills/google-trends/SKILL.md +157 -0
- package/.agent/skills/google-trends/scripts/node_modules/.modules.yaml +21 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/LICENSE +22 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/Readme.md +1157 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/esm.mjs +16 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/index.js +24 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/lib/argument.js +149 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/lib/command.js +2509 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/lib/error.js +39 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/lib/help.js +520 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/lib/option.js +330 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/lib/suggestSimilar.js +101 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/package-support.json +16 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/package.json +84 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/typings/esm.d.mts +3 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/commander@12.1.0/node_modules/commander/typings/index.d.ts +969 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/CHANGES.md +132 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/LICENSE +21 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/README.md +561 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/lib/google-trends-api.min.js +2 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/package.json +68 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/src/api.js +18 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/src/index.js +27 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/src/request.js +69 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/google-trends-api@4.9.2/node_modules/google-trends-api/src/utilities.js +395 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm/lock.yaml +31 -0
- package/.agent/skills/google-trends/scripts/node_modules/.pnpm-workspace-state-v1.json +25 -0
- package/.agent/skills/google-trends/scripts/package.json +17 -0
- package/.agent/skills/google-trends/scripts/pnpm-lock.yaml +31 -0
- package/.agent/skills/google-trends/scripts/search.js +168 -0
- package/.agent/skills/high-fidelity-extraction/SKILL.md +59 -0
- package/.agent/skills/prime-agent/SKILL.md +97 -0
- package/.agent/skills/security-audit/SKILL.md +81 -0
- package/.agent/skills/seo-ready/SKILL.md +133 -0
- package/.agent/skills/spawn-task/SKILL.md +130 -0
- package/.agent/skills/sync-docs/SKILL.md +88 -0
- package/.agent/skills/vercel-ai-sdk/SKILL.md +34083 -0
- package/.agent/skills/youtube-pipeline/SKILL.md +194 -0
- package/.agent/skills/youtube-pipeline/resources/youtube-phase1-strategy.md +224 -0
- package/.agent/skills/youtube-pipeline/resources/youtube-phase2-packaging.md +148 -0
- package/.agent/skills/youtube-pipeline/resources/youtube-phase3-scripting.md +197 -0
- package/.agent/skills/youtube-pipeline/resources/youtube-phase3.5-shorts.md +271 -0
- package/.agent/skills/youtube-pipeline/resources/youtube-phase4-production.md +193 -0
- package/.agent/skills/youtube-pipeline/resources/youtube-phase5-repurposing.md +159 -0
- package/.agent/skills/youtube-pipeline/resources/youtube-pipeline.md +161 -0
- package/.agent/skills/youtube-pipeline/scripts/parse_yt_studio.ps1 +150 -0
- package/.agent/workflows/LEGACY/ANTIGRAVITY_TOOLBOX.md +200 -0
- package/.agent/workflows/LEGACY/analyze_component.md +141 -0
- package/.agent/workflows/LEGACY/build_vibecode_project.md +154 -0
- package/.agent/workflows/LEGACY/deep_code_audit.md +79 -0
- package/.agent/workflows/LEGACY/gemini-orchestrate.md +63 -0
- package/.agent/workflows/LEGACY/git_worktree.md +71 -0
- package/.agent/workflows/LEGACY/init_smart_ops.md +101 -0
- package/.agent/workflows/LEGACY/multi_agent_strategy.md +62 -0
- package/.agent/workflows/LEGACY/orchestrate.md +321 -0
- package/.agent/workflows/LEGACY/seo_ready.md +249 -0
- package/.agent/workflows/LEGACY/vibe-orchestrator.md +305 -0
- package/.agent/workflows/LEGACY/youtube-phase1-strategy.md +224 -0
- package/.agent/workflows/LEGACY/youtube-phase2-packaging.md +148 -0
- package/.agent/workflows/LEGACY/youtube-phase3-scripting.md +197 -0
- package/.agent/workflows/LEGACY/youtube-phase3.5-shorts.md +271 -0
- package/.agent/workflows/LEGACY/youtube-phase4-production.md +193 -0
- package/.agent/workflows/LEGACY/youtube-phase5-repurposing.md +159 -0
- package/.agent/workflows/LEGACY/youtube-pipeline.md +161 -0
- package/.agent/workflows/README.md +349 -0
- package/.agent/workflows/Vercel Ai SDK.md +34083 -0
- package/.agent/workflows/agent_reset.md +138 -0
- package/.agent/workflows/build_vibecode_project_v2.md +158 -0
- package/.agent/workflows/escalate.md +112 -0
- package/.agent/workflows/init_vibecode_design.md +98 -0
- package/.agent/workflows/init_vibecode_genesis.md +137 -0
- package/.agent/workflows/migrate.md +135 -0
- package/.agent/workflows/prime_agent.md +211 -0
- package/.agent/workflows/reverse_genesis.md +132 -0
- package/.agent/workflows/review_code.md +133 -0
- package/.agent/workflows/spawn-jstar-code-review.md +121 -0
- package/.agent/workflows/spawn_task.md +187 -0
- package/.agent/workflows/sync_docs.md +90 -0
- package/Legacy (Manual Method)/0 VibeCode User Manual.md +173 -0
- package/Legacy (Manual Method)/1 Project Genesis Protocol The VibeCode Workflow.md +89 -0
- package/Legacy (Manual Method)/2/342/234/250 ULTIMATE ORCHESTRATION PROMPT/342/234/250.md" +114 -0
- package/Legacy (Manual Method)/3 Design System Genesis Protocol.md +75 -0
- package/Legacy (Manual Method)/3.1.1 my_design_system_rules.md +177 -0
- package/Legacy (Manual Method)/3.1.2 Material You M3 Genesis Protocol.md +73 -0
- package/Legacy (Manual Method)/4 The Ultimate GitHub Issue Meta-Prompt Template.md +54 -0
- package/Legacy (Manual Method)/5 The Escalation & Handoff Protocol.md +97 -0
- package/Legacy (Manual Method)/8 The Seamless Migration Meta-Prompt (Your Reusable Tool).md +38 -0
- package/Legacy (Manual Method)/9 The Reverse Genesis Protocol.md +75 -0
- package/README.md +209 -0
- package/VibeCode-Agents (e.g Kilo-code)/README.md +142 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-analyzer.yaml +254 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-architect.yaml +397 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-auditor.yaml +325 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-builder.yaml +472 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-designer.yaml +305 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-documentor.yaml +222 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-escalator.yaml +255 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-isolator.yaml +332 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-onboarder.yaml +335 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-orchestrator.yaml +365 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-orchestrator_legacy.yaml +284 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-orchestrator_v1.yaml +336 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-primer.yaml +213 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-reviewer.yaml +233 -0
- package/VibeCode-Agents (e.g Kilo-code)/vibe-spawner.yaml +259 -0
- package/bin/vibesuite.js +2 -0
- package/package.json +43 -0
- package/src/cli.js +159 -0
- package/src/utils.js +76 -0
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: The Orchestrator - Autonomously builds projects using sub-agents
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /orchestrate - The VibeCode Brain
|
|
6
|
+
|
|
7
|
+
This is the **master workflow** that understands all other workflows and orchestrates them to build complete projects autonomously.
|
|
8
|
+
|
|
9
|
+
## Prerequisites
|
|
10
|
+
- Kilo Code or similar multi-agent spawning capability
|
|
11
|
+
- Git repository initialized
|
|
12
|
+
- User has provided a high-level project goal
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Phase 0: Prime Self (Understand Available Tools)
|
|
17
|
+
|
|
18
|
+
**Objective:** Load knowledge of all available workflows.
|
|
19
|
+
|
|
20
|
+
1. **Read the README workflow:**
|
|
21
|
+
```
|
|
22
|
+
Read: .agent/workflows/README.md (or global workflows README)
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
2. **Parse user's goal** into:
|
|
26
|
+
- **Project Type:** Web App | CLI | API | Library | Desktop | Mobile
|
|
27
|
+
- **Stack:** Next.js | Python | Rust | Go | etc.
|
|
28
|
+
- **Scope:** MVP | Full Product | Feature Addition
|
|
29
|
+
|
|
30
|
+
3. **Determine execution path:**
|
|
31
|
+
| Scenario | Path |
|
|
32
|
+
|----------|------|
|
|
33
|
+
| New project from scratch | Genesis → Design → Build → Features |
|
|
34
|
+
| Existing project, new feature | Reverse Genesis → Spawn Task → Build |
|
|
35
|
+
| Bug fix / refactor | Prime Agent → Review Code → Fix |
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Phase 1: Planning (Genesis)
|
|
40
|
+
|
|
41
|
+
**Objective:** Generate project blueprint.
|
|
42
|
+
|
|
43
|
+
### For New Projects:
|
|
44
|
+
1. **Spawn Sub-Agent** with workflow: `/init_vibecode_genesis`
|
|
45
|
+
2. **Input:** User's goal description
|
|
46
|
+
3. **Wait for outputs:**
|
|
47
|
+
- `docs/Project_Requirements.md`
|
|
48
|
+
- `docs/Coding_Guidelines.md`
|
|
49
|
+
- `docs/Builder_Prompt.md`
|
|
50
|
+
- GitHub Issues (if connected)
|
|
51
|
+
4. **Parse PRD** to extract:
|
|
52
|
+
- MUS (Minimum Usable State) features list
|
|
53
|
+
- Tech stack decisions
|
|
54
|
+
- Data models
|
|
55
|
+
|
|
56
|
+
### For Existing Projects:
|
|
57
|
+
1. **Spawn Sub-Agent** with workflow: `/reverse_genesis`
|
|
58
|
+
2. **Wait for:** `docs/autopsy_report.md`
|
|
59
|
+
3. **Parse report** to understand current architecture
|
|
60
|
+
|
|
61
|
+
**Checkpoint:** Confirm planning artifacts exist before proceeding.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Phase 2: Design (Optional, Parallel-Safe)
|
|
66
|
+
|
|
67
|
+
**Objective:** Create visual design system and mockups.
|
|
68
|
+
|
|
69
|
+
**Condition:** Only run if `Project Type` includes UI (Web App, Desktop, Mobile).
|
|
70
|
+
|
|
71
|
+
1. **Spawn Sub-Agent** with workflow: `/init_vibecode_design`
|
|
72
|
+
2. **Wait for outputs:**
|
|
73
|
+
- `docs/design/design-system.html`
|
|
74
|
+
- `docs/mockups/*.html`
|
|
75
|
+
3. **Validate:** At least one mockup exists for each major feature
|
|
76
|
+
|
|
77
|
+
**Note:** This can run in parallel with Phase 3 scaffold if needed.
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Phase 3: Build Foundation
|
|
82
|
+
|
|
83
|
+
**Objective:** Scaffold project structure and core infrastructure.
|
|
84
|
+
|
|
85
|
+
1. **Spawn Sub-Agent** with workflow: `/build_vibecode_project` (or `v2` for Windows/pnpm)
|
|
86
|
+
2. **Input:** Builder Prompt from Phase 1
|
|
87
|
+
3. **Wait for outputs:**
|
|
88
|
+
- Project structure created
|
|
89
|
+
- Core dependencies installed
|
|
90
|
+
- `docs/Builder_Handoff_Report.md`
|
|
91
|
+
4. **Post-Build Setup:**
|
|
92
|
+
- Spawn `/spawn-jstar-code-review` to add code review tooling
|
|
93
|
+
- Spawn `/init_smart_ops` to set up GitHub automation
|
|
94
|
+
|
|
95
|
+
**Checkpoint:** Verify `src/` directory exists and project builds.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Phase 4: Feature Wave (Parallel Execution)
|
|
100
|
+
|
|
101
|
+
**Objective:** Build all MUS features using parallel agents.
|
|
102
|
+
|
|
103
|
+
### Step 1: Prepare Isolation Environments
|
|
104
|
+
1. **Parse MUS features** from `docs/Project_Requirements.md`
|
|
105
|
+
2. **Group features** into waves:
|
|
106
|
+
- **Wave 1:** Core/foundational features (run first)
|
|
107
|
+
- **Wave 2:** Independent features (run in parallel)
|
|
108
|
+
- **Wave 3:** Features with dependencies (run after Wave 2)
|
|
109
|
+
|
|
110
|
+
3. **For each parallel feature:**
|
|
111
|
+
```bash
|
|
112
|
+
# Use /git_worktree to isolate
|
|
113
|
+
git branch feat-[feature-name]
|
|
114
|
+
git worktree add ../[project]-feat-[feature-name] feat-[feature-name]
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### Step 2: Spawn Feature Agents
|
|
118
|
+
For each feature in the current wave:
|
|
119
|
+
|
|
120
|
+
1. **Spawn Sub-Agent** with workflow: `/spawn_task`
|
|
121
|
+
2. **Input:**
|
|
122
|
+
- Feature name and description from PRD
|
|
123
|
+
- Relevant mockup (if exists)
|
|
124
|
+
- Coding guidelines
|
|
125
|
+
3. **Wait for:** `docs/tasks/TASK-[feature].md`
|
|
126
|
+
|
|
127
|
+
4. **Spawn Builder Sub-Agent** in the worktree:
|
|
128
|
+
- Workflow: `/build_vibecode_project` (feature mode)
|
|
129
|
+
- Input: Task prompt from above
|
|
130
|
+
- Working directory: The isolated worktree
|
|
131
|
+
|
|
132
|
+
5. **Monitor for:**
|
|
133
|
+
- **Success:** Feature complete marker
|
|
134
|
+
- **Stuck:** `/escalate` report generated
|
|
135
|
+
- **Quality issue:** `/review_code` failures
|
|
136
|
+
|
|
137
|
+
### Step 3: Handle Results
|
|
138
|
+
| Outcome | Action |
|
|
139
|
+
|---------|--------|
|
|
140
|
+
| ✅ Feature complete | Queue for merge |
|
|
141
|
+
| ⚠️ Review issues | Re-spawn with fix instructions |
|
|
142
|
+
| ❌ Agent stuck | Read escalation report, re-assign or ask user |
|
|
143
|
+
|
|
144
|
+
### Step 4: Merge Wave
|
|
145
|
+
1. For each completed worktree:
|
|
146
|
+
```bash
|
|
147
|
+
cd ../[project]-feat-[feature]
|
|
148
|
+
git add . && git commit -m "feat: [feature-name]"
|
|
149
|
+
git checkout main
|
|
150
|
+
git merge feat-[feature-name]
|
|
151
|
+
```
|
|
152
|
+
2. Resolve any merge conflicts (or escalate to user)
|
|
153
|
+
3. Clean up worktrees:
|
|
154
|
+
```bash
|
|
155
|
+
git worktree remove ../[project]-feat-[feature]
|
|
156
|
+
git branch -d feat-[feature-name]
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**Repeat** for each wave until all features complete.
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## Phase 5: Quality Gate
|
|
164
|
+
|
|
165
|
+
**Objective:** Ensure codebase is production-ready.
|
|
166
|
+
|
|
167
|
+
### Step 1: Full Code Review
|
|
168
|
+
1. **Spawn Sub-Agent** with workflow: `/review_code`
|
|
169
|
+
2. **Scope:** `--pr` mode (full diff against initial state)
|
|
170
|
+
3. **Wait for:** `.jstar/last-review.md`
|
|
171
|
+
|
|
172
|
+
### Step 2: Deep Audit (If Critical Project)
|
|
173
|
+
1. **Spawn Sub-Agent** with workflow: `/deep_code_audit`
|
|
174
|
+
2. **Scope:** `FULL_SCAN`
|
|
175
|
+
3. **Wait for:** `.jstar/audit_report.md`
|
|
176
|
+
|
|
177
|
+
### Step 3: Handle Issues
|
|
178
|
+
| Severity | Action |
|
|
179
|
+
|----------|--------|
|
|
180
|
+
| P0_CRITICAL | Halt. Spawn fix agent immediately. |
|
|
181
|
+
| P1_HIGH | Spawn fix agent, continue other checks. |
|
|
182
|
+
| P2_MEDIUM | Log for later. Continue. |
|
|
183
|
+
| INFO | Ignore. |
|
|
184
|
+
|
|
185
|
+
### Step 4: Fix Loop
|
|
186
|
+
If issues found:
|
|
187
|
+
1. Spawn fix agent(s) for each issue
|
|
188
|
+
2. Re-run review after fixes
|
|
189
|
+
3. **Max loops:** 3. If still failing, escalate to user.
|
|
190
|
+
|
|
191
|
+
**Checkpoint:** All P0/P1 issues resolved.
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
## Phase 6: Documentation Sync
|
|
196
|
+
|
|
197
|
+
**Objective:** Ensure docs match final implementation.
|
|
198
|
+
|
|
199
|
+
1. **Spawn Sub-Agent** with workflow: `/sync_docs`
|
|
200
|
+
2. **Input:** List of all files changed
|
|
201
|
+
3. **Wait for:** Updated `docs/features/*.md`
|
|
202
|
+
|
|
203
|
+
---
|
|
204
|
+
|
|
205
|
+
## Phase 7: Finalize & Report
|
|
206
|
+
|
|
207
|
+
**Objective:** Close out the project build.
|
|
208
|
+
|
|
209
|
+
1. **Generate Handoff Report:**
|
|
210
|
+
```markdown
|
|
211
|
+
# Project Build Complete
|
|
212
|
+
|
|
213
|
+
## Summary
|
|
214
|
+
- **Features Built:** [count]
|
|
215
|
+
- **Total Agents Spawned:** [count]
|
|
216
|
+
- **Total Time:** [duration]
|
|
217
|
+
|
|
218
|
+
## Features Delivered
|
|
219
|
+
- [x] Feature A
|
|
220
|
+
- [x] Feature B
|
|
221
|
+
- [x] Feature C
|
|
222
|
+
|
|
223
|
+
## Quality Status
|
|
224
|
+
- Code Review: ✅ Passed
|
|
225
|
+
- Security Audit: ✅ Passed
|
|
226
|
+
|
|
227
|
+
## Next Steps
|
|
228
|
+
- [ ] Deploy to staging
|
|
229
|
+
- [ ] User acceptance testing
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
2. **Notify User:** Project complete, ready for review.
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
## Error Handling
|
|
237
|
+
|
|
238
|
+
### Agent Stuck
|
|
239
|
+
When a sub-agent generates an `/escalate` report:
|
|
240
|
+
1. Read the escalation report
|
|
241
|
+
2. Determine if it's:
|
|
242
|
+
- **Recoverable:** Re-spawn with additional context
|
|
243
|
+
- **Blocking:** Pause orchestration, notify user
|
|
244
|
+
- **Skip-able:** Mark feature as incomplete, continue
|
|
245
|
+
|
|
246
|
+
### Merge Conflicts
|
|
247
|
+
When git merge fails:
|
|
248
|
+
1. Attempt auto-resolution for simple conflicts
|
|
249
|
+
2. If complex, spawn a dedicated "conflict resolver" agent
|
|
250
|
+
3. If still failing, escalate to user with diff
|
|
251
|
+
|
|
252
|
+
### Build Failures
|
|
253
|
+
When project fails to build:
|
|
254
|
+
1. Capture error output
|
|
255
|
+
2. Spawn diagnostic agent to analyze
|
|
256
|
+
3. Apply fix and re-attempt build
|
|
257
|
+
4. Max retries: 3
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## Configuration
|
|
262
|
+
|
|
263
|
+
The orchestrator can be configured via `.orchestrator.json`:
|
|
264
|
+
|
|
265
|
+
```json
|
|
266
|
+
{
|
|
267
|
+
"maxParallelAgents": 4,
|
|
268
|
+
"maxRetries": 3,
|
|
269
|
+
"qualityGate": "strict",
|
|
270
|
+
"autoMerge": true,
|
|
271
|
+
"notifyOnComplete": true,
|
|
272
|
+
"skipDesign": false,
|
|
273
|
+
"skipAudit": false
|
|
274
|
+
}
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
| Option | Default | Description |
|
|
278
|
+
|--------|---------|-------------|
|
|
279
|
+
| `maxParallelAgents` | 4 | Max concurrent feature agents |
|
|
280
|
+
| `maxRetries` | 3 | Retry limit per failed operation |
|
|
281
|
+
| `qualityGate` | "strict" | "strict" = P0/P1 must pass, "relaxed" = P0 only |
|
|
282
|
+
| `autoMerge` | true | Auto-merge completed features |
|
|
283
|
+
| `notifyOnComplete` | true | Notify user when done |
|
|
284
|
+
| `skipDesign` | false | Skip Phase 2 even for UI projects |
|
|
285
|
+
| `skipAudit` | false | Skip deep audit in Phase 5 |
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## Quick Reference
|
|
290
|
+
|
|
291
|
+
| Phase | Workflow Used | Parallel? |
|
|
292
|
+
|-------|---------------|-----------|
|
|
293
|
+
| 0. Prime | `/README` | — |
|
|
294
|
+
| 1. Planning | `/init_vibecode_genesis` or `/reverse_genesis` | No |
|
|
295
|
+
| 2. Design | `/init_vibecode_design` | Yes (with Phase 3) |
|
|
296
|
+
| 3. Build | `/build_vibecode_project` | No |
|
|
297
|
+
| 4. Features | `/git_worktree` + `/spawn_task` + `/build` | Yes |
|
|
298
|
+
| 5. Quality | `/review_code` + `/deep_code_audit` | No |
|
|
299
|
+
| 6. Docs | `/sync_docs` | No |
|
|
300
|
+
| 7. Finalize | — | No |
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
|
|
304
|
+
## Example Usage
|
|
305
|
+
|
|
306
|
+
**User Input:**
|
|
307
|
+
> "Build me a SaaS app for freelancers to track their projects and invoices. Use Next.js, Prisma, and Stripe."
|
|
308
|
+
|
|
309
|
+
**Orchestrator Execution:**
|
|
310
|
+
1. ✅ Phase 0: Parsed as "Web App, Next.js, MVP"
|
|
311
|
+
2. ✅ Phase 1: Genesis generated PRD with 6 MUS features
|
|
312
|
+
3. ✅ Phase 2: Design created 4 mockups
|
|
313
|
+
4. ✅ Phase 3: Scaffolded Next.js project
|
|
314
|
+
5. ✅ Phase 4 Wave 1: Auth + Database (sequential)
|
|
315
|
+
6. ✅ Phase 4 Wave 2: Projects, Invoices, Dashboard (parallel - 3 agents)
|
|
316
|
+
7. ✅ Phase 4 Wave 3: Stripe Integration (depends on Invoices)
|
|
317
|
+
8. ✅ Phase 5: Review passed, 2 P2 warnings logged
|
|
318
|
+
9. ✅ Phase 6: Docs synced
|
|
319
|
+
10. ✅ Phase 7: Handoff report generated
|
|
320
|
+
|
|
321
|
+
**Output:** Complete SaaS app ready for deployment.
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Make any Next.js page SEO-ready with metadata, structured data, and accessibility
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# SEO Ready Workflow
|
|
6
|
+
|
|
7
|
+
This workflow transforms any Next.js page into a fully SEO-optimized page.
|
|
8
|
+
|
|
9
|
+
## Prerequisites
|
|
10
|
+
- A Next.js 13+ project using App Router
|
|
11
|
+
- Target page(s) to optimize
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Phase 1: Global SEO Setup (Run Once Per Project)
|
|
16
|
+
|
|
17
|
+
### 1.1 Check for Root Layout Metadata
|
|
18
|
+
// turbo
|
|
19
|
+
```bash
|
|
20
|
+
head -50 src/app/layout.tsx
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Verify the root `layout.tsx` has a comprehensive `metadata` export:
|
|
24
|
+
|
|
25
|
+
```typescript
|
|
26
|
+
export const metadata: Metadata = {
|
|
27
|
+
title: {
|
|
28
|
+
default: "Site Name",
|
|
29
|
+
template: "%s | Site Name", // Allows per-page titles
|
|
30
|
+
},
|
|
31
|
+
description: "...",
|
|
32
|
+
keywords: ["..."],
|
|
33
|
+
authors: [{ name: "..." }],
|
|
34
|
+
creator: "...",
|
|
35
|
+
metadataBase: new URL("https://your-domain.com"),
|
|
36
|
+
openGraph: { /* ... */ },
|
|
37
|
+
twitter: { /* ... */ },
|
|
38
|
+
};
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
**If missing**, add a full metadata block to `src/app/layout.tsx`.
|
|
42
|
+
|
|
43
|
+
### 1.2 Check for Sitemap
|
|
44
|
+
// turbo
|
|
45
|
+
```bash
|
|
46
|
+
ls src/app/sitemap.ts 2>/dev/null || echo "MISSING"
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**If missing**, create `src/app/sitemap.ts`:
|
|
50
|
+
|
|
51
|
+
```typescript
|
|
52
|
+
import { MetadataRoute } from 'next'
|
|
53
|
+
|
|
54
|
+
export default function sitemap(): MetadataRoute.Sitemap {
|
|
55
|
+
const baseUrl = 'https://your-domain.com'
|
|
56
|
+
return [
|
|
57
|
+
{ url: baseUrl, lastModified: new Date(), changeFrequency: 'yearly', priority: 1 },
|
|
58
|
+
{ url: `${baseUrl}/login`, lastModified: new Date(), changeFrequency: 'monthly', priority: 0.8 },
|
|
59
|
+
// Add more routes...
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### 1.3 Check for Robots.txt
|
|
65
|
+
// turbo
|
|
66
|
+
```bash
|
|
67
|
+
ls src/app/robots.ts 2>/dev/null || echo "MISSING"
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
**If missing**, create `src/app/robots.ts`:
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
import { MetadataRoute } from 'next'
|
|
74
|
+
|
|
75
|
+
export default function robots(): MetadataRoute.Robots {
|
|
76
|
+
return {
|
|
77
|
+
rules: { userAgent: '*', allow: '/', disallow: '/private/' },
|
|
78
|
+
sitemap: 'https://your-domain.com/sitemap.xml',
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### 1.4 Check for Web Manifest (PWA)
|
|
84
|
+
// turbo
|
|
85
|
+
```bash
|
|
86
|
+
ls src/app/manifest.ts 2>/dev/null || echo "MISSING"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
**If missing**, create `src/app/manifest.ts`:
|
|
90
|
+
|
|
91
|
+
```typescript
|
|
92
|
+
import { MetadataRoute } from 'next'
|
|
93
|
+
|
|
94
|
+
export default function manifest(): MetadataRoute.Manifest {
|
|
95
|
+
return {
|
|
96
|
+
name: 'Your App Name',
|
|
97
|
+
short_name: 'AppName',
|
|
98
|
+
description: 'Your app description',
|
|
99
|
+
start_url: '/',
|
|
100
|
+
display: 'standalone',
|
|
101
|
+
background_color: '#000000',
|
|
102
|
+
theme_color: '#000000',
|
|
103
|
+
icons: [{ src: '/icon.png', sizes: 'any', type: 'image/png' }],
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### 1.5 Check for Favicon/Icons
|
|
109
|
+
// turbo
|
|
110
|
+
```bash
|
|
111
|
+
ls src/app/icon.png src/app/apple-icon.png 2>/dev/null || echo "MISSING ICONS"
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
**If missing**:
|
|
115
|
+
1. Find a logo file in `public/` (e.g., `public/logo.png`)
|
|
116
|
+
2. Copy it to `src/app/icon.png` and `src/app/apple-icon.png`
|
|
117
|
+
|
|
118
|
+
### 1.6 Check for OpenGraph Image
|
|
119
|
+
// turbo
|
|
120
|
+
```bash
|
|
121
|
+
ls src/app/opengraph-image.* 2>/dev/null || echo "MISSING OG IMAGE"
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**Options**:
|
|
125
|
+
- **Static**: Copy a 1200x630px image to `src/app/opengraph-image.png`
|
|
126
|
+
- **Dynamic**: Create `src/app/opengraph-image.tsx` using `@vercel/og` or `next/og`
|
|
127
|
+
|
|
128
|
+
### 1.7 Check for JSON-LD Structured Data
|
|
129
|
+
Search for existing JSON-LD in the layout:
|
|
130
|
+
// turbo
|
|
131
|
+
```bash
|
|
132
|
+
grep -r "application/ld+json" src/app/layout.tsx || echo "MISSING JSON-LD"
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
**If missing**, add to the `<body>` in `layout.tsx`:
|
|
136
|
+
|
|
137
|
+
```tsx
|
|
138
|
+
<script
|
|
139
|
+
type="application/ld+json"
|
|
140
|
+
dangerouslySetInnerHTML={{
|
|
141
|
+
__html: JSON.stringify({
|
|
142
|
+
"@context": "https://schema.org",
|
|
143
|
+
"@type": "SoftwareApplication", // or Organization, LocalBusiness, etc.
|
|
144
|
+
"name": "Your App",
|
|
145
|
+
"applicationCategory": "...",
|
|
146
|
+
"operatingSystem": "Web",
|
|
147
|
+
"author": { "@type": "Organization", "name": "Your Org", "url": "https://..." }
|
|
148
|
+
})
|
|
149
|
+
}}
|
|
150
|
+
/>
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Phase 2: Per-Page Optimization
|
|
156
|
+
|
|
157
|
+
For each page you want to optimize:
|
|
158
|
+
|
|
159
|
+
### 2.1 Check if Page is a Server Component
|
|
160
|
+
View the page file:
|
|
161
|
+
// turbo
|
|
162
|
+
```bash
|
|
163
|
+
head -5 <path-to-page.tsx>
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
- **If it starts with `'use client'`**: The page cannot have static metadata.
|
|
167
|
+
- **Refactor**: Move client logic to a separate component in `src/features/<feature>/components/`.
|
|
168
|
+
- The page file should become a Server Component that imports the client component.
|
|
169
|
+
|
|
170
|
+
### 2.2 Add Page-Specific Metadata
|
|
171
|
+
Add/update the `metadata` export in the page file:
|
|
172
|
+
|
|
173
|
+
```typescript
|
|
174
|
+
import { Metadata } from 'next';
|
|
175
|
+
|
|
176
|
+
export const metadata: Metadata = {
|
|
177
|
+
title: "Page Title", // Will become "Page Title | Site Name" via template
|
|
178
|
+
description: "A specific description for this page.",
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
export default function Page() { /* ... */ }
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### 2.3 Semantic HTML Audit
|
|
185
|
+
Verify the page uses:
|
|
186
|
+
- `<main>` for primary content
|
|
187
|
+
- `<section>` for distinct sections (with `id` attributes for anchor links)
|
|
188
|
+
- `<article>` for standalone content (blog posts, legal pages)
|
|
189
|
+
- `<header>` and `<footer>` if applicable
|
|
190
|
+
- `<nav aria-label="...">` for navigation
|
|
191
|
+
- Proper heading hierarchy (`<h1>`, `<h2>`, etc.)
|
|
192
|
+
|
|
193
|
+
### 2.4 Image Optimization
|
|
194
|
+
Ensure all images use Next.js `<Image>` component:
|
|
195
|
+
- `alt` attribute is required and descriptive
|
|
196
|
+
- `width` and `height` are specified to prevent layout shift
|
|
197
|
+
|
|
198
|
+
---
|
|
199
|
+
|
|
200
|
+
## Phase 3: Accessibility (a11y) Pass
|
|
201
|
+
|
|
202
|
+
### 3.1 ARIA Labels
|
|
203
|
+
Check interactive elements for `aria-label`:
|
|
204
|
+
// turbo
|
|
205
|
+
```bash
|
|
206
|
+
grep -rE "(onClick|button|<a )" <path-to-page.tsx> | head -20
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
Ensure buttons, links, and form elements have accessible names.
|
|
210
|
+
|
|
211
|
+
### 3.2 Language Attribute
|
|
212
|
+
Verify `<html lang="en">` (or appropriate language) is set in `layout.tsx`.
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
|
|
216
|
+
## Phase 4: Verification
|
|
217
|
+
|
|
218
|
+
### 4.1 Build Check
|
|
219
|
+
// turbo
|
|
220
|
+
```bash
|
|
221
|
+
pnpm build
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
Ensure no build errors related to metadata.
|
|
225
|
+
|
|
226
|
+
### 4.2 Manual Verification
|
|
227
|
+
1. Run `pnpm dev`
|
|
228
|
+
2. Visit `http://localhost:3000/sitemap.xml` - should list routes
|
|
229
|
+
3. Visit `http://localhost:3000/robots.txt` - should show rules
|
|
230
|
+
4. Inspect page `<head>` in browser dev tools for meta tags
|
|
231
|
+
5. Use Google's Rich Results Test on production URL
|
|
232
|
+
|
|
233
|
+
---
|
|
234
|
+
|
|
235
|
+
## Checklist Summary
|
|
236
|
+
|
|
237
|
+
| Item | Status |
|
|
238
|
+
|------|--------|
|
|
239
|
+
| Root `layout.tsx` has full `metadata` export | [ ] |
|
|
240
|
+
| `sitemap.ts` exists | [ ] |
|
|
241
|
+
| `robots.ts` exists | [ ] |
|
|
242
|
+
| `manifest.ts` exists | [ ] |
|
|
243
|
+
| `icon.png` and `apple-icon.png` exist | [ ] |
|
|
244
|
+
| OpenGraph image exists (static or dynamic) | [ ] |
|
|
245
|
+
| JSON-LD structured data in layout | [ ] |
|
|
246
|
+
| Target page has `export const metadata` | [ ] |
|
|
247
|
+
| Target page uses semantic HTML | [ ] |
|
|
248
|
+
| All images use `<Image>` with `alt` | [ ] |
|
|
249
|
+
| Build passes | [ ] |
|