popilot 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.
Files changed (136) hide show
  1. package/README.md +372 -0
  2. package/adapters/claude-code/.claude/commands/_domain.md.hbs +32 -0
  3. package/adapters/claude-code/.claude/commands/analytics.md.hbs +55 -0
  4. package/adapters/claude-code/.claude/commands/daily.md.hbs +301 -0
  5. package/adapters/claude-code/.claude/commands/dev.md.hbs +62 -0
  6. package/adapters/claude-code/.claude/commands/handoff.md +258 -0
  7. package/adapters/claude-code/.claude/commands/market.md +120 -0
  8. package/adapters/claude-code/.claude/commands/metrics.md +123 -0
  9. package/adapters/claude-code/.claude/commands/oscar-loop.md +436 -0
  10. package/adapters/claude-code/.claude/commands/party.md +85 -0
  11. package/adapters/claude-code/.claude/commands/plan.md +43 -0
  12. package/adapters/claude-code/.claude/commands/research.md +203 -0
  13. package/adapters/claude-code/.claude/commands/retro.md +68 -0
  14. package/adapters/claude-code/.claude/commands/save.md +440 -0
  15. package/adapters/claude-code/.claude/commands/sessions.md +139 -0
  16. package/adapters/claude-code/.claude/commands/sprint.md +106 -0
  17. package/adapters/claude-code/.claude/commands/start.md +368 -0
  18. package/adapters/claude-code/.claude/commands/strategy.md +41 -0
  19. package/adapters/claude-code/.claude/commands/task.md +220 -0
  20. package/adapters/claude-code/.claude/commands/tracking.md +116 -0
  21. package/adapters/claude-code/.claude/commands/validate.md +58 -0
  22. package/adapters/claude-code/CLAUDE.md.hbs +208 -0
  23. package/adapters/claude-code/manifest.yaml +36 -0
  24. package/bin/cli.mjs +218 -0
  25. package/lib/adapter.mjs +68 -0
  26. package/lib/doctor.mjs +161 -0
  27. package/lib/hydrate.mjs +421 -0
  28. package/lib/prompt.mjs +78 -0
  29. package/lib/scaffold.mjs +155 -0
  30. package/lib/setup-wizard.mjs +331 -0
  31. package/lib/template-engine.mjs +164 -0
  32. package/lib/yaml-lite.mjs +476 -0
  33. package/package.json +30 -0
  34. package/scaffold/.context/.secrets.yaml.example +20 -0
  35. package/scaffold/.context/WORKFLOW.md.hbs +332 -0
  36. package/scaffold/.context/agents/TEMPLATE.md +115 -0
  37. package/scaffold/.context/agents/analyst.md.hbs +362 -0
  38. package/scaffold/.context/agents/developer.md.hbs +390 -0
  39. package/scaffold/.context/agents/handoff-specialist.md.hbs +292 -0
  40. package/scaffold/.context/agents/market-researcher.md.hbs +288 -0
  41. package/scaffold/.context/agents/ollie.md +323 -0
  42. package/scaffold/.context/agents/operations.md.hbs +293 -0
  43. package/scaffold/.context/agents/orchestrator.md.hbs +434 -0
  44. package/scaffold/.context/agents/planner.md.hbs +405 -0
  45. package/scaffold/.context/agents/qa.md.hbs +409 -0
  46. package/scaffold/.context/agents/researcher.md.hbs +330 -0
  47. package/scaffold/.context/agents/sage.md +349 -0
  48. package/scaffold/.context/agents/strategist.md.hbs +339 -0
  49. package/scaffold/.context/agents/tracking-governor.md.hbs +291 -0
  50. package/scaffold/.context/agents/validator.md.hbs +365 -0
  51. package/scaffold/.context/integrations/_registry.yaml +38 -0
  52. package/scaffold/.context/integrations/providers/channel_io.yaml +38 -0
  53. package/scaffold/.context/integrations/providers/corti.yaml +203 -0
  54. package/scaffold/.context/integrations/providers/ga4.yaml +116 -0
  55. package/scaffold/.context/integrations/providers/intercom.yaml +47 -0
  56. package/scaffold/.context/integrations/providers/linear.yaml +46 -0
  57. package/scaffold/.context/integrations/providers/mixpanel.yaml +73 -0
  58. package/scaffold/.context/integrations/providers/notebooklm.yaml +74 -0
  59. package/scaffold/.context/integrations/providers/notion.yaml +129 -0
  60. package/scaffold/.context/integrations/providers/prod_db.yaml +183 -0
  61. package/scaffold/.context/oscar/workflows/multi-agent.md +82 -0
  62. package/scaffold/.context/oscar/workflows/ollie-sage.md +128 -0
  63. package/scaffold/.context/oscar/workflows/session-git.md +71 -0
  64. package/scaffold/.context/oscar/workflows/setup.md +663 -0
  65. package/scaffold/.context/oscar/workflows/tracking.md +118 -0
  66. package/scaffold/.context/project.yaml.example +102 -0
  67. package/scaffold/.context/templates/dev-guide.md +217 -0
  68. package/scaffold/.context/templates/epic-spec.md +225 -0
  69. package/scaffold/.context/templates/guardrail.md +94 -0
  70. package/scaffold/.context/templates/handoff-checklist.md +197 -0
  71. package/scaffold/.context/templates/prd.md +80 -0
  72. package/scaffold/.context/templates/retrospective.md +78 -0
  73. package/scaffold/.context/templates/screen-spec.md +714 -0
  74. package/scaffold/.context/templates/sprint-plan.md +72 -0
  75. package/scaffold/.context/templates/sprint-status.yaml +109 -0
  76. package/scaffold/.context/templates/story-v2.md +228 -0
  77. package/scaffold/.context/templates/validation-report.md +99 -0
  78. package/scaffold/.gitignore.append +7 -0
  79. package/scaffold/spec-site/env.d.ts +7 -0
  80. package/scaffold/spec-site/index.html +14 -0
  81. package/scaffold/spec-site/package.json +20 -0
  82. package/scaffold/spec-site/src/App.vue +27 -0
  83. package/scaffold/spec-site/src/assets/icons/menu/ic_ads.svg +10 -0
  84. package/scaffold/spec-site/src/assets/icons/menu/ic_ads_on.svg +10 -0
  85. package/scaffold/spec-site/src/assets/icons/menu/ic_board.svg +14 -0
  86. package/scaffold/spec-site/src/assets/icons/menu/ic_board_on.svg +14 -0
  87. package/scaffold/spec-site/src/assets/icons/menu/ic_dashboard.svg +21 -0
  88. package/scaffold/spec-site/src/assets/icons/menu/ic_dashboard_on.svg +21 -0
  89. package/scaffold/spec-site/src/assets/icons/menu/ic_pricing.svg +20 -0
  90. package/scaffold/spec-site/src/assets/icons/menu/ic_pricing_on.svg +20 -0
  91. package/scaffold/spec-site/src/assets/icons/menu/ic_store.svg +11 -0
  92. package/scaffold/spec-site/src/assets/icons/menu/ic_store_on.svg +11 -0
  93. package/scaffold/spec-site/src/components/Accordion.vue +108 -0
  94. package/scaffold/spec-site/src/components/AppHeader.vue +304 -0
  95. package/scaffold/spec-site/src/components/Badge.vue +25 -0
  96. package/scaffold/spec-site/src/components/CoachingCard.vue +112 -0
  97. package/scaffold/spec-site/src/components/MemoSidebar.vue +239 -0
  98. package/scaffold/spec-site/src/components/MockupShell.vue +100 -0
  99. package/scaffold/spec-site/src/components/RuleTable.vue +99 -0
  100. package/scaffold/spec-site/src/components/ScenarioSwitcher.vue +103 -0
  101. package/scaffold/spec-site/src/components/SpecNav.vue +26 -0
  102. package/scaffold/spec-site/src/components/SpecSection.vue +59 -0
  103. package/scaffold/spec-site/src/components/SummaryGrid.vue +39 -0
  104. package/scaffold/spec-site/src/components/VersionBadge.vue +38 -0
  105. package/scaffold/spec-site/src/composables/useActiveSection.ts +53 -0
  106. package/scaffold/spec-site/src/composables/useMemo.ts +138 -0
  107. package/scaffold/spec-site/src/composables/useRetro.ts +313 -0
  108. package/scaffold/spec-site/src/composables/useScenario.ts +43 -0
  109. package/scaffold/spec-site/src/composables/useScenarioStore.ts +102 -0
  110. package/scaffold/spec-site/src/composables/useTurso.ts +160 -0
  111. package/scaffold/spec-site/src/composables/useUser.ts +25 -0
  112. package/scaffold/spec-site/src/data/navigation.ts +59 -0
  113. package/scaffold/spec-site/src/data/types.ts +90 -0
  114. package/scaffold/spec-site/src/data/wireframeRegistry.ts +25 -0
  115. package/scaffold/spec-site/src/layouts/SplitPaneLayout.vue +79 -0
  116. package/scaffold/spec-site/src/main.ts +10 -0
  117. package/scaffold/spec-site/src/pages/IndexPage.vue +66 -0
  118. package/scaffold/spec-site/src/pages/PolicyDetail.vue +215 -0
  119. package/scaffold/spec-site/src/pages/PolicyIndex.vue +74 -0
  120. package/scaffold/spec-site/src/pages/retro/RetroActions.vue +191 -0
  121. package/scaffold/spec-site/src/pages/retro/RetroBoard.vue +192 -0
  122. package/scaffold/spec-site/src/pages/retro/RetroCard.vue +131 -0
  123. package/scaffold/spec-site/src/pages/retro/RetroHeader.vue +287 -0
  124. package/scaffold/spec-site/src/pages/retro/RetroPage.vue +178 -0
  125. package/scaffold/spec-site/src/pages/shared/NoContentPlaceholder.vue +34 -0
  126. package/scaffold/spec-site/src/pages/shared/PlaceholderContent.vue +22 -0
  127. package/scaffold/spec-site/src/pages/shared/PlaceholderSpecPanel.vue +16 -0
  128. package/scaffold/spec-site/src/pages/shared/PolicyFallback.vue +145 -0
  129. package/scaffold/spec-site/src/pages/wireframe/WireframeShell.vue +151 -0
  130. package/scaffold/spec-site/src/router.ts +85 -0
  131. package/scaffold/spec-site/src/styles/base.css +21 -0
  132. package/scaffold/spec-site/src/styles/split-pane.css +143 -0
  133. package/scaffold/spec-site/src/styles/variables.css +47 -0
  134. package/scaffold/spec-site/src/utils/markdown.ts +197 -0
  135. package/scaffold/spec-site/tsconfig.json +20 -0
  136. package/scaffold/spec-site/vite.config.ts +18 -0
package/README.md ADDED
@@ -0,0 +1,372 @@
1
+ # Popilot
2
+
3
+ > *"Developers have Copilot. Product Owners have Popilot."*
4
+
5
+ **Popilot** is a multi-agent AI assistant for Product Owners and Product Managers, built on [Claude Code](https://docs.anthropic.com/en/docs/claude-code). It scaffolds a complete agent team — 14 specialized personas, 30+ slash commands, document templates, and workflow automation — so you can focus on product decisions while AI handles the heavy lifting.
6
+
7
+ ---
8
+
9
+ ## Why Popilot?
10
+
11
+ Product work is messy. You juggle strategy, sprint planning, data analysis, customer research, and developer handoffs — often switching context dozens of times a day.
12
+
13
+ Popilot solves this with a **team of specialized agents**, each with deep expertise in one domain:
14
+
15
+ - **No more context-switching** — Oscar routes your request to the right agent automatically
16
+ - **Structured workflows** — From PRD to Screen Spec to Story to Dev Handoff, nothing falls through the cracks
17
+ - **Data-driven decisions** — Danny queries your analytics; Vicky validates your hypotheses; Tara governs data quality
18
+ - **Full PO coverage** — Strategy, market research, sprint planning, screen specs, tracking, operations, and more
19
+ - **Living specs, not dead docs** — spec-site turns static markdown into interactive, scenario-based mockups that developers actually use
20
+
21
+ ---
22
+
23
+ ## Quick Start
24
+
25
+ ```bash
26
+ npx popilot init my-project
27
+ cd my-project
28
+ ```
29
+
30
+ Then open [Claude Code](https://docs.anthropic.com/en/docs/claude-code) and type `/start` — Oscar will greet you and begin an onboarding interview to understand your product.
31
+
32
+ ---
33
+
34
+ ## The Agent Team
35
+
36
+ ### PO Team (8 + Orchestrator)
37
+
38
+ | Icon | Name | Command | Role | Specialty |
39
+ |------|------|---------|------|-----------|
40
+ | :tophat: | **Oscar** | *(default)* | Orchestrator | Routing, coordination, proactive alerts |
41
+ | :dart: | **Simon** | `/strategy` | Strategist | PRD, hypotheses, product strategy |
42
+ | :world_map: | **Marco** | `/market` | Market Researcher | Competitive analysis, positioning |
43
+ | :clipboard: | **Penny** | `/plan` | Planner | Sprint planning, stories, backlog |
44
+ | :triangular_ruler: | **Hank** | `/handoff` | Handoff Specialist | Screen specs, dev handoff, release readiness |
45
+ | :bar_chart: | **Vicky** | `/validate` | Validator | Hypothesis validation, guard rails, OKR tracking |
46
+ | :chart_with_upwards_trend: | **Danny** | `/analytics` | Analyst | Data analysis, cohorts, insights |
47
+ | :microphone: | **Rita** | `/research` | Researcher | VOC pipeline, customer insights |
48
+ | :satellite: | **Tara** | `/tracking` | Tracking Governor | Event taxonomy, data quality, metrics governance |
49
+ | :calendar: | **Nora** | `/daily` | Operations | Daily logs, retrospectives, status reports |
50
+
51
+ ### Dev Team (2)
52
+
53
+ | Icon | Name | Command | Role | Specialty |
54
+ |------|------|---------|------|-----------|
55
+ | :hammer: | **Derek** | `/dev` | Developer | Dashboard + spec-site development |
56
+ | :test_tube: | **Quinn** | `/qa` | QA Engineer | Testing, quality review |
57
+
58
+ ### Internal Agents
59
+
60
+ | Icon | Name | Command | Role | Specialty |
61
+ |------|------|---------|------|-----------|
62
+ | :tophat::sparkles: | **Ollie** | *(internal)* | Task Creator | Parallel task execution for Oscar |
63
+ | :crystal_ball: | **Sage** | *(internal)* | Advisor | Strategic advisory for Oscar |
64
+
65
+ ### Agent Lanes
66
+
67
+ ```
68
+ Strategy: Simon ←→ Marco
69
+ Execute: Penny → Hank → Derek + Quinn
70
+ Insight: Danny ←→ Rita
71
+ Measure: Vicky ←→ Tara
72
+ Operations: Nora
73
+ Command: Oscar → Ollie (×N) + Sage
74
+ ```
75
+
76
+ ---
77
+
78
+ ## Prerequisites
79
+
80
+ - [Claude Code](https://docs.anthropic.com/en/docs/claude-code) (CLI)
81
+ - Node.js 18+
82
+ - npm / npx
83
+
84
+ ---
85
+
86
+ ## Setup Flow
87
+
88
+ When you run `npx popilot init`, the CLI walks you through:
89
+
90
+ ```
91
+ :rocket: Popilot — Multi-agent PO/PM System
92
+ ══════════════════════════════════════
93
+
94
+ :bust_in_silhouette: User Preferences
95
+ What should the agents call you? [there]: Yoonjae
96
+ Your role/title (optional): PO
97
+ Preferred response language: Korean (ko)
98
+ Communication style: Concise
99
+
100
+ :memo: Project Setup
101
+ Project name [my-project]: sellerking
102
+ Tagline (optional): Amazon seller analytics
103
+ Project type: brownfield (existing codebase)
104
+
105
+ :electric_plug: Integrations
106
+ [Analytics]: GA4
107
+ [PM Tool]: Notion
108
+ [Database]: Production DB
109
+
110
+ :gear: Hydrating templates...
111
+ CLAUDE.md ✅
112
+ .context/agents/orchestrator.md ✅
113
+ ...
114
+
115
+ ✅ Popilot is ready!
116
+ ```
117
+
118
+ After setup, open Claude Code and type `/start`. Oscar can run a **deep interview** (15-20 min with Simon) to fully understand your product context.
119
+
120
+ ---
121
+
122
+ ## Slash Commands
123
+
124
+ ### Session & Context
125
+
126
+ | Command | Description |
127
+ |---------|-------------|
128
+ | `/start` | List active sessions or start Setup Wizard |
129
+ | `/start {id}` | Restore a specific session |
130
+ | `/start new "{topic}"` | Create a new session |
131
+ | `/start recent` | Restore most recently closed session |
132
+ | `/start parallel` | Start a parallel session (skip lock warnings) |
133
+ | `/save` | Save session (release lock) |
134
+ | `/save --close` | Save and archive session |
135
+ | `/save --share "{title}"` | Save and share deliverables |
136
+ | `/sessions` | Session dashboard |
137
+ | `/sessions clean` | Clean up stale locks |
138
+
139
+ ### Sprint & Metrics
140
+
141
+ | Command | Description |
142
+ |---------|-------------|
143
+ | `/sprint` | Sprint dashboard |
144
+ | `/sprint new` | Create new sprint |
145
+ | `/retro` | Sprint retrospective |
146
+ | `/metrics` | Core metrics review |
147
+ | `/daily` | Daily work log (uploads to Notion) |
148
+ | `/daily --dry-run` | Preview daily log (no upload) |
149
+
150
+ ### Agent Activation
151
+
152
+ | Command | Description |
153
+ |---------|-------------|
154
+ | `/strategy` | Activate Simon (strategy, PRD) |
155
+ | `/market` | Activate Marco (competitive analysis, positioning) |
156
+ | `/plan` | Activate Penny (sprint planning) |
157
+ | `/validate` | Activate Vicky (hypothesis validation) |
158
+ | `/analytics` | Activate Danny (data analysis) |
159
+ | `/research` | Activate Rita (VOC, customer insights) |
160
+ | `/tracking` | Activate Tara (event taxonomy, data quality) |
161
+ | `/dev` | Activate Derek (development) |
162
+ | `/party` | Team discussion mode (all agents) |
163
+ | `/handoff` | Agent-to-agent handoff (via Hank) |
164
+ | `/oscar-loop` | Autonomous parallel task creation |
165
+ | `/task` | Story/Task status management |
166
+
167
+ ### Domain Loading
168
+
169
+ | Command | Description |
170
+ |---------|-------------|
171
+ | `/{domain-id}` | Load domain-specific context (configured in project.yaml) |
172
+
173
+ ---
174
+
175
+ ## Integration Support
176
+
177
+ Popilot supports 9 integrations out of the box. Enable them during setup or later in `project.yaml`:
178
+
179
+ | Integration | Category | What It Enables |
180
+ |-------------|----------|-----------------|
181
+ | **GA4** | Analytics | Event analysis, funnel reports, real-time data |
182
+ | **Mixpanel** | Analytics | Product analytics, cohort analysis |
183
+ | **Notion** | PM Tool | Task management, sprint boards, meeting notes |
184
+ | **Linear** | PM Tool | Issue tracking, project management |
185
+ | **Channel.io** | Customer | CS chat analysis, VOC extraction |
186
+ | **Intercom** | Customer | Customer feedback, support analytics |
187
+ | **Production DB** | Database | Direct SQL queries with safety rules |
188
+ | **NotebookLM** | AI Research | Source-grounded research, citation-backed answers |
189
+ | **Corti** | Decision | Interview transcription, decision tracking |
190
+
191
+ ---
192
+
193
+ ## Architecture
194
+
195
+ ```
196
+ my-project/
197
+ ├── CLAUDE.md # System instructions (hydrated)
198
+ ├── .claude/commands/ # 30+ slash commands
199
+ ├── .context/
200
+ │ ├── project.yaml # Project config (from setup wizard)
201
+ │ ├── user-context.yaml # User preferences (gitignored)
202
+ │ ├── .secrets.yaml # Sensitive data (gitignored)
203
+ │ ├── WORKFLOW.md # Workflow guide (hydrated)
204
+ │ │
205
+ │ ├── agents/ # 14 agent personas (+ TEMPLATE.md)
206
+ │ ├── oscar/workflows/ # Oscar extension modules
207
+ │ ├── templates/ # 11 document templates
208
+ │ ├── integrations/ # Provider configs + registry
209
+ │ ├── metrics/ # Metrics data
210
+ │ ├── daily/ # Daily work logs
211
+ │ │
212
+ │ ├── global/ # Cross-cutting context
213
+ │ │ ├── database/ # DB schema docs
214
+ │ │ ├── product/ # Product specs per domain
215
+ │ │ ├── tracking/ # GA4/GTM events
216
+ │ │ ├── strategy.md # Strategic direction
217
+ │ │ └── metrics.md # Core metrics definitions
218
+ │ │
219
+ │ ├── domains/ # Domain-specific context
220
+ │ ├── sprints/ # Sprint folders (current + archive)
221
+ │ │
222
+ │ └── sessions/ # Parallel session management
223
+ │ ├── index.yaml # Session index + locks
224
+ │ ├── active/ # Active sessions
225
+ │ └── archive/ # Archived sessions (monthly)
226
+
227
+ └── spec-site/ # Interactive spec viewer (Vue 3 + Vite)
228
+ ```
229
+
230
+ ---
231
+
232
+ ## spec-site: The Heart of Popilot
233
+
234
+ Traditional PO work treats wireframes, storyboards, and screen specs as "documents" — static markdown files that developers skim and misinterpret. Popilot takes a different approach.
235
+
236
+ **spec-site** is a Vue 3 + Vite interactive spec viewer that ships with every Popilot project. Instead of writing a 50-page spec doc, you build a living mockup where stakeholders can switch scenarios, see state transitions, and read contextual specs — all in one place.
237
+
238
+ This isn't just a nice-to-have. When you create specs AI-natively — generating interactive mockups with scenario-driven state — the result is dramatically more intuitive than any static document. Developers see exactly what to build. Edge cases are visible, not buried in paragraphs.
239
+
240
+ ### Why It Matters
241
+
242
+ ```
243
+ Before (static docs):
244
+ PO writes markdown → Developer reads (maybe) → "What did you mean by...?" → Repeat
245
+
246
+ After (spec-site):
247
+ PO builds interactive mockup → Developer clicks through scenarios → Builds exactly that
248
+ ```
249
+
250
+ ### How It Works
251
+
252
+ Every feature page follows the **SplitPaneLayout** pattern:
253
+
254
+ ```
255
+ ┌────────────────────────────────────────────────┐
256
+ │ AppHeader │
257
+ ├─────────────────────┬──────────────────────────┤
258
+ │ │ │
259
+ │ Interactive │ Spec Panel │
260
+ │ Mockup │ (contextual docs) │
261
+ │ │ │
262
+ │ ← Click, hover, │ ← Spec updates │
263
+ │ switch states │ per scenario │
264
+ │ │ │
265
+ ├─────────────────────┴──────────────────────────┤
266
+ │ ScenarioSwitcher │
267
+ │ [ Default ] [ Empty ] [ Error ] [ Premium ] │
268
+ └────────────────────────────────────────────────┘
269
+ ```
270
+
271
+ Left pane: a real, clickable mockup. Right pane: specs that update as you switch scenarios. Bottom: scenario selector to see different user types and states.
272
+
273
+ ### Adding a Page
274
+
275
+ Each feature = 3 files + 2 registrations:
276
+
277
+ ```
278
+ spec-site/src/pages/{feature}/
279
+ ├── {feature}Data.ts # Scenarios, spec areas, version info
280
+ ├── {Feature}Mockup.vue # Interactive mockup component
281
+ └── {Feature}SpecPanel.vue # Spec document panel
282
+ ```
283
+
284
+ Register in `wireframeRegistry.ts` and `navigation.ts`. That's it.
285
+
286
+ ### Running Locally
287
+
288
+ ```bash
289
+ cd spec-site
290
+ npm install # already done by popilot init
291
+ npm run dev # → http://localhost:5173
292
+ ```
293
+
294
+ ### Built-in Pages
295
+
296
+ | Page | Route | Purpose |
297
+ |------|-------|---------|
298
+ | Home | `/` | Dashboard overview, navigation |
299
+ | Epic Specs | `/policies` | Browse and read Epic Spec documents |
300
+ | Wireframes | `/wireframe/:id` | Interactive mockups per feature |
301
+ | Retro Board | `/retro` | Sprint retrospective (Turso/LibSQL) |
302
+
303
+ ### Deployment
304
+
305
+ spec-site is a standard Vite app. Deploy anywhere:
306
+
307
+ ```bash
308
+ cd spec-site
309
+ npm run build # → dist/
310
+ # Deploy dist/ to Vercel, Netlify, AWS Amplify, etc.
311
+ ```
312
+
313
+ Set `spec_site.deploy_url` in `project.yaml` — agents will use this URL in handoff documents.
314
+
315
+ ---
316
+
317
+ ## Document Templates
318
+
319
+ | Template | Owner | File | Purpose |
320
+ |----------|-------|------|---------|
321
+ | Sprint PRD | Simon | `templates/prd.md` | One Question, hypothesis, OMTM |
322
+ | Epic Spec | PO | `templates/epic-spec.md` | WHY, WHAT, HOW, edge cases |
323
+ | Story v2 | Penny | `templates/story-v2.md` | AC (Given-When-Then), task breakdown |
324
+ | Screen Spec | Hank | `templates/screen-spec.md` | 7-level UI specification |
325
+ | Sprint Plan | Penny | `templates/sprint-plan.md` | Sprint goals and KRs |
326
+ | Sprint Status | Penny | `templates/sprint-status.yaml` | Progress dashboard |
327
+ | Validation Report | Vicky | `templates/validation-report.md` | Before/After analysis |
328
+ | Guard Rail | Vicky | `templates/guardrail.md` | Safety metrics definition |
329
+ | Retrospective | Nora | `templates/retrospective.md` | Sprint retro template |
330
+ | Handoff Checklist | Hank | `templates/handoff-checklist.md` | Dev handoff verification |
331
+ | Dev Guide | Derek | `templates/dev-guide.md` | Implementation guidelines |
332
+
333
+ ---
334
+
335
+ ## CLI Reference
336
+
337
+ ```
338
+ popilot <command> [target-dir] [options]
339
+
340
+ Commands:
341
+ init [dir] Scaffold + interactive setup + hydration (default)
342
+ hydrate [dir] Re-hydrate .hbs templates from existing project.yaml
343
+ doctor [dir] Check installation health
344
+ help Show this help
345
+
346
+ Options:
347
+ --skip-spec-site Skip spec-site (Vue 3 + Vite) scaffold
348
+ --force Overwrite existing files
349
+
350
+ Examples:
351
+ npx popilot init my-project
352
+ npx popilot hydrate
353
+ npx popilot doctor
354
+ npx popilot my-project # same as: popilot init my-project
355
+ ```
356
+
357
+ ---
358
+
359
+ ## How It Works
360
+
361
+ 1. **`npx popilot init`** copies the scaffold and runs the setup wizard
362
+ 2. **Setup Wizard** collects project info, user preferences, and integration config
363
+ 3. **Hydration engine** renders `.hbs` templates into `.md` files using your project config
364
+ 4. **Claude Code** loads `CLAUDE.md` as system instructions — Oscar is now active
365
+ 5. **Oscar** routes your natural language requests to the right agent
366
+ 6. **Agents** use your `.context/` files, integrations, and templates to do real work
367
+
368
+ ---
369
+
370
+ ## License
371
+
372
+ MIT
@@ -0,0 +1,32 @@
1
+ # /{{id}} - Load {{name}} Domain
2
+
3
+ Load {{name}} related context.
4
+
5
+ ## Execution Steps
6
+
7
+ 1. Read all files in the `.context/{{path}}` directory.
8
+
9
+ 2. Provide a summary of the related context.
10
+
11
+ 3. Recommend a suitable agent:
12
+ - 🎯 Simon: Strategy/PRD discussion
13
+ - 📈 Danny: Data analysis
14
+ - 📊 Vicky: Validation/analysis
15
+ - 🎤 Rita: Customer insights
16
+
17
+ ## Response Format
18
+
19
+ 🎩 Oscar: {{name}} domain context has been loaded.
20
+
21
+ [Loaded Files]
22
+ • {file list}
23
+
24
+ [Key Summary]
25
+ {context summary}
26
+
27
+ [Recommended Agent]
28
+ {Guide to the suitable agent based on the task}
29
+
30
+ ---
31
+
32
+ *Related documents*: `.context/{{path}}`
@@ -0,0 +1,55 @@
1
+ # /analytics - Activate Data Analyst
2
+
3
+ Activate 📈 **Danny** (Data Analyst) agent.
4
+
5
+ ## Load Persona
6
+
7
+ Read `.context/agents/analyst.md` and activate Danny's persona.
8
+
9
+ ## Danny's Identity
10
+
11
+ - **Role**: Data Analyst + Insight Hunter
12
+ - **Personality**: Curious detective type who enjoys finding patterns in numbers
13
+ - **Strengths**: Exploratory analysis, turning complex data into simple stories
14
+
15
+ ## Differentiation from Vicky
16
+
17
+ | Aspect | 📊 Vicky | 📈 Danny |
18
+ |--------|----------|----------|
19
+ | **Purpose** | Hypothesis validation | Insight discovery |
20
+ | **Method** | Before/After | Exploratory analysis |
21
+ | **Tools** | GA4 focused | Prod DB + GA4 |
22
+
23
+ ## Communication Style
24
+
25
+ - Shares the joy of discovery
26
+ - Turns complex data into simple stories
27
+ - Focuses on "So what?" rather than just numbers
28
+ - Actively uses visualization and analogies
29
+
30
+ ## Speech Examples
31
+
32
+ ```
33
+ 📈 Danny: "Found an interesting pattern. Premium users have 2x higher retention than regular users."
34
+ 📈 Danny: "This number looks off, let me dig into it."
35
+ 📈 Danny: "Looking by cohort, December signups have unusually high churn. Why could that be?"
36
+ ```
37
+
38
+ ## Trigger Menu
39
+
40
+ | Trigger | Function |
41
+ |---------|----------|
42
+ | **ANL** | Exploratory analysis (discover insights from open questions) |
43
+ | **COH** | Cohort analysis (monthly/weekly signup retention) |
44
+ | **SEG** | Segment analysis (paid/free, active/churned comparison) |
45
+ | **FUN** | Funnel deep dive (conversion bottleneck + root cause exploration) |
46
+ | **SQL** | Custom query (specific data retrieval) |
47
+ | **TRD** | Trend analysis (time series patterns, anomaly detection) |
48
+
49
+ ## Tools
50
+
51
+ {{INTEGRATION_PROMPTS}}
52
+
53
+ ## Response Format
54
+
55
+ From now on, respond with the 📈 icon using Danny's persona.