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.
- package/README.md +372 -0
- package/adapters/claude-code/.claude/commands/_domain.md.hbs +32 -0
- package/adapters/claude-code/.claude/commands/analytics.md.hbs +55 -0
- package/adapters/claude-code/.claude/commands/daily.md.hbs +301 -0
- package/adapters/claude-code/.claude/commands/dev.md.hbs +62 -0
- package/adapters/claude-code/.claude/commands/handoff.md +258 -0
- package/adapters/claude-code/.claude/commands/market.md +120 -0
- package/adapters/claude-code/.claude/commands/metrics.md +123 -0
- package/adapters/claude-code/.claude/commands/oscar-loop.md +436 -0
- package/adapters/claude-code/.claude/commands/party.md +85 -0
- package/adapters/claude-code/.claude/commands/plan.md +43 -0
- package/adapters/claude-code/.claude/commands/research.md +203 -0
- package/adapters/claude-code/.claude/commands/retro.md +68 -0
- package/adapters/claude-code/.claude/commands/save.md +440 -0
- package/adapters/claude-code/.claude/commands/sessions.md +139 -0
- package/adapters/claude-code/.claude/commands/sprint.md +106 -0
- package/adapters/claude-code/.claude/commands/start.md +368 -0
- package/adapters/claude-code/.claude/commands/strategy.md +41 -0
- package/adapters/claude-code/.claude/commands/task.md +220 -0
- package/adapters/claude-code/.claude/commands/tracking.md +116 -0
- package/adapters/claude-code/.claude/commands/validate.md +58 -0
- package/adapters/claude-code/CLAUDE.md.hbs +208 -0
- package/adapters/claude-code/manifest.yaml +36 -0
- package/bin/cli.mjs +218 -0
- package/lib/adapter.mjs +68 -0
- package/lib/doctor.mjs +161 -0
- package/lib/hydrate.mjs +421 -0
- package/lib/prompt.mjs +78 -0
- package/lib/scaffold.mjs +155 -0
- package/lib/setup-wizard.mjs +331 -0
- package/lib/template-engine.mjs +164 -0
- package/lib/yaml-lite.mjs +476 -0
- package/package.json +30 -0
- package/scaffold/.context/.secrets.yaml.example +20 -0
- package/scaffold/.context/WORKFLOW.md.hbs +332 -0
- package/scaffold/.context/agents/TEMPLATE.md +115 -0
- package/scaffold/.context/agents/analyst.md.hbs +362 -0
- package/scaffold/.context/agents/developer.md.hbs +390 -0
- package/scaffold/.context/agents/handoff-specialist.md.hbs +292 -0
- package/scaffold/.context/agents/market-researcher.md.hbs +288 -0
- package/scaffold/.context/agents/ollie.md +323 -0
- package/scaffold/.context/agents/operations.md.hbs +293 -0
- package/scaffold/.context/agents/orchestrator.md.hbs +434 -0
- package/scaffold/.context/agents/planner.md.hbs +405 -0
- package/scaffold/.context/agents/qa.md.hbs +409 -0
- package/scaffold/.context/agents/researcher.md.hbs +330 -0
- package/scaffold/.context/agents/sage.md +349 -0
- package/scaffold/.context/agents/strategist.md.hbs +339 -0
- package/scaffold/.context/agents/tracking-governor.md.hbs +291 -0
- package/scaffold/.context/agents/validator.md.hbs +365 -0
- package/scaffold/.context/integrations/_registry.yaml +38 -0
- package/scaffold/.context/integrations/providers/channel_io.yaml +38 -0
- package/scaffold/.context/integrations/providers/corti.yaml +203 -0
- package/scaffold/.context/integrations/providers/ga4.yaml +116 -0
- package/scaffold/.context/integrations/providers/intercom.yaml +47 -0
- package/scaffold/.context/integrations/providers/linear.yaml +46 -0
- package/scaffold/.context/integrations/providers/mixpanel.yaml +73 -0
- package/scaffold/.context/integrations/providers/notebooklm.yaml +74 -0
- package/scaffold/.context/integrations/providers/notion.yaml +129 -0
- package/scaffold/.context/integrations/providers/prod_db.yaml +183 -0
- package/scaffold/.context/oscar/workflows/multi-agent.md +82 -0
- package/scaffold/.context/oscar/workflows/ollie-sage.md +128 -0
- package/scaffold/.context/oscar/workflows/session-git.md +71 -0
- package/scaffold/.context/oscar/workflows/setup.md +663 -0
- package/scaffold/.context/oscar/workflows/tracking.md +118 -0
- package/scaffold/.context/project.yaml.example +102 -0
- package/scaffold/.context/templates/dev-guide.md +217 -0
- package/scaffold/.context/templates/epic-spec.md +225 -0
- package/scaffold/.context/templates/guardrail.md +94 -0
- package/scaffold/.context/templates/handoff-checklist.md +197 -0
- package/scaffold/.context/templates/prd.md +80 -0
- package/scaffold/.context/templates/retrospective.md +78 -0
- package/scaffold/.context/templates/screen-spec.md +714 -0
- package/scaffold/.context/templates/sprint-plan.md +72 -0
- package/scaffold/.context/templates/sprint-status.yaml +109 -0
- package/scaffold/.context/templates/story-v2.md +228 -0
- package/scaffold/.context/templates/validation-report.md +99 -0
- package/scaffold/.gitignore.append +7 -0
- package/scaffold/spec-site/env.d.ts +7 -0
- package/scaffold/spec-site/index.html +14 -0
- package/scaffold/spec-site/package.json +20 -0
- package/scaffold/spec-site/src/App.vue +27 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_ads.svg +10 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_ads_on.svg +10 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_board.svg +14 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_board_on.svg +14 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_dashboard.svg +21 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_dashboard_on.svg +21 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_pricing.svg +20 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_pricing_on.svg +20 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_store.svg +11 -0
- package/scaffold/spec-site/src/assets/icons/menu/ic_store_on.svg +11 -0
- package/scaffold/spec-site/src/components/Accordion.vue +108 -0
- package/scaffold/spec-site/src/components/AppHeader.vue +304 -0
- package/scaffold/spec-site/src/components/Badge.vue +25 -0
- package/scaffold/spec-site/src/components/CoachingCard.vue +112 -0
- package/scaffold/spec-site/src/components/MemoSidebar.vue +239 -0
- package/scaffold/spec-site/src/components/MockupShell.vue +100 -0
- package/scaffold/spec-site/src/components/RuleTable.vue +99 -0
- package/scaffold/spec-site/src/components/ScenarioSwitcher.vue +103 -0
- package/scaffold/spec-site/src/components/SpecNav.vue +26 -0
- package/scaffold/spec-site/src/components/SpecSection.vue +59 -0
- package/scaffold/spec-site/src/components/SummaryGrid.vue +39 -0
- package/scaffold/spec-site/src/components/VersionBadge.vue +38 -0
- package/scaffold/spec-site/src/composables/useActiveSection.ts +53 -0
- package/scaffold/spec-site/src/composables/useMemo.ts +138 -0
- package/scaffold/spec-site/src/composables/useRetro.ts +313 -0
- package/scaffold/spec-site/src/composables/useScenario.ts +43 -0
- package/scaffold/spec-site/src/composables/useScenarioStore.ts +102 -0
- package/scaffold/spec-site/src/composables/useTurso.ts +160 -0
- package/scaffold/spec-site/src/composables/useUser.ts +25 -0
- package/scaffold/spec-site/src/data/navigation.ts +59 -0
- package/scaffold/spec-site/src/data/types.ts +90 -0
- package/scaffold/spec-site/src/data/wireframeRegistry.ts +25 -0
- package/scaffold/spec-site/src/layouts/SplitPaneLayout.vue +79 -0
- package/scaffold/spec-site/src/main.ts +10 -0
- package/scaffold/spec-site/src/pages/IndexPage.vue +66 -0
- package/scaffold/spec-site/src/pages/PolicyDetail.vue +215 -0
- package/scaffold/spec-site/src/pages/PolicyIndex.vue +74 -0
- package/scaffold/spec-site/src/pages/retro/RetroActions.vue +191 -0
- package/scaffold/spec-site/src/pages/retro/RetroBoard.vue +192 -0
- package/scaffold/spec-site/src/pages/retro/RetroCard.vue +131 -0
- package/scaffold/spec-site/src/pages/retro/RetroHeader.vue +287 -0
- package/scaffold/spec-site/src/pages/retro/RetroPage.vue +178 -0
- package/scaffold/spec-site/src/pages/shared/NoContentPlaceholder.vue +34 -0
- package/scaffold/spec-site/src/pages/shared/PlaceholderContent.vue +22 -0
- package/scaffold/spec-site/src/pages/shared/PlaceholderSpecPanel.vue +16 -0
- package/scaffold/spec-site/src/pages/shared/PolicyFallback.vue +145 -0
- package/scaffold/spec-site/src/pages/wireframe/WireframeShell.vue +151 -0
- package/scaffold/spec-site/src/router.ts +85 -0
- package/scaffold/spec-site/src/styles/base.css +21 -0
- package/scaffold/spec-site/src/styles/split-pane.css +143 -0
- package/scaffold/spec-site/src/styles/variables.css +47 -0
- package/scaffold/spec-site/src/utils/markdown.ts +197 -0
- package/scaffold/spec-site/tsconfig.json +20 -0
- package/scaffold/spec-site/vite.config.ts +18 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Multi-Agent Coordination (Oscar Module)
|
|
2
|
+
|
|
3
|
+
> Referenced from orchestrator.md core when delegation/parallel execution is needed
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Sequential Deployment
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
"Danny should look at the data first, then Simon can formulate hypotheses based on the results."
|
|
11
|
+
|
|
12
|
+
Danny analysis complete → Oscar passes results → Simon formulates hypothesis
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parallel Deployment (Parallel Task tool calls)
|
|
16
|
+
|
|
17
|
+
Oscar **invokes multiple Task tools simultaneously in a single response** for actual parallel execution.
|
|
18
|
+
|
|
19
|
+
### Implementation Method
|
|
20
|
+
|
|
21
|
+
```markdown
|
|
22
|
+
1. Analyze request → Determine need for parallel execution
|
|
23
|
+
2. Create Tasks per agent (parallel calls in the same message):
|
|
24
|
+
|
|
25
|
+
Task #1 (Danny):
|
|
26
|
+
- subagent_type: "general-purpose"
|
|
27
|
+
- prompt: "You are 📈 Danny (Analyst).
|
|
28
|
+
[Refer to .context/agents/analyst.md persona]
|
|
29
|
+
{specific analysis request}
|
|
30
|
+
Be careful with heavy tables when running DB queries."
|
|
31
|
+
|
|
32
|
+
Task #2 (Rita):
|
|
33
|
+
- subagent_type: "general-purpose"
|
|
34
|
+
- prompt: "You are 🎤 Rita (Researcher).
|
|
35
|
+
[Refer to .context/agents/researcher.md persona]
|
|
36
|
+
{specific research request}"
|
|
37
|
+
|
|
38
|
+
3. Collect results and synthesize
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Parallel Execution Triggers
|
|
42
|
+
|
|
43
|
+
| Keyword/Situation | Parallel Targets | Reason |
|
|
44
|
+
|-------------------|-----------------|--------|
|
|
45
|
+
| `churn`, `attrition`, `why leaving` | Danny + Rita | Quantitative + Qualitative simultaneously |
|
|
46
|
+
| `full analysis`, `comprehensive` | Danny + Rita + Vicky | Multi-angle analysis |
|
|
47
|
+
| `quick assessment`, `ASAP` | All relevant agents | Speed priority |
|
|
48
|
+
| `brainstorm`, `ideas` | All 5 agents | Parallelized party mode |
|
|
49
|
+
|
|
50
|
+
### Parallel vs Sequential Decision Criteria
|
|
51
|
+
|
|
52
|
+
| Situation | Execution Mode | Reason |
|
|
53
|
+
|-----------|---------------|--------|
|
|
54
|
+
| 2+ independent analyses | **Parallel** | Time savings |
|
|
55
|
+
| Previous results needed for next task | **Sequential** | Dependencies |
|
|
56
|
+
| Multiple heavy table DB accesses | **Sequential** | Load distribution |
|
|
57
|
+
| Fast response needed (ASAP) | **Parallel** | Speed priority |
|
|
58
|
+
| Deep analysis needed (deep dive) | **Sequential** | Quality priority |
|
|
59
|
+
|
|
60
|
+
### Result Synthesis Format
|
|
61
|
+
|
|
62
|
+
```markdown
|
|
63
|
+
🎩 Oscar: Parallel analysis complete. Synthesizing results.
|
|
64
|
+
|
|
65
|
+
## 📈 Danny Analysis Results
|
|
66
|
+
- {key metrics}
|
|
67
|
+
- {patterns/insights}
|
|
68
|
+
|
|
69
|
+
## 🎤 Rita Analysis Results
|
|
70
|
+
- {key VOC}
|
|
71
|
+
- {customer psychology}
|
|
72
|
+
|
|
73
|
+
## 🎩 Oscar Synthesis
|
|
74
|
+
- **Common findings**: {cross-insights}
|
|
75
|
+
- **Next steps**: {follow-up agent suggestions}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Precautions
|
|
79
|
+
|
|
80
|
+
1. **Concurrent DB access**: Be careful with simultaneous heavy table queries, specify LIMIT/WHERE in each Task
|
|
81
|
+
2. **MCP rate limit**: Fall back to sequential when accessing the same MCP server concurrently
|
|
82
|
+
3. **Context consistency**: Pass identical baseline information to each Task, specify reference timestamp when synthesizing results
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# Ollie & Sage Integration (Oscar Module)
|
|
2
|
+
|
|
3
|
+
> Referenced when `/oscar-loop` or Task decomposition is requested
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Ollie (🎩✨) - Task Creator
|
|
8
|
+
|
|
9
|
+
Oscar's hands-on counterpart. Responsible for breaking down Epics into detailed Stories/Tasks.
|
|
10
|
+
|
|
11
|
+
### Spawn Triggers
|
|
12
|
+
|
|
13
|
+
| Trigger | Action |
|
|
14
|
+
|---------|--------|
|
|
15
|
+
| `/oscar-loop` command | Start parallel Ollie spawn |
|
|
16
|
+
| `Epic N, M elaboration` pattern | Multiple Epics → Multiple Ollies |
|
|
17
|
+
| `Break down tasks` pattern | Single Ollie spawn |
|
|
18
|
+
|
|
19
|
+
### Spawn Method
|
|
20
|
+
|
|
21
|
+
```markdown
|
|
22
|
+
Task(
|
|
23
|
+
subagent_type="general-purpose",
|
|
24
|
+
run_in_background=true,
|
|
25
|
+
prompt="""
|
|
26
|
+
You are 🎩✨ Ollie.
|
|
27
|
+
[Refer to .context/agents/ollie.md persona]
|
|
28
|
+
|
|
29
|
+
[Task] Break down Epic {N} into detailed Tasks/Stories
|
|
30
|
+
[Collaboration] Collaborate with Danny, Rita, Simon as needed
|
|
31
|
+
[Deliverables] Story list, collaboration log, uncertainties
|
|
32
|
+
"""
|
|
33
|
+
)
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Result Review Criteria
|
|
37
|
+
|
|
38
|
+
| Confidence | Oscar Action |
|
|
39
|
+
|------------|-------------|
|
|
40
|
+
| ≥ 0.85 | Auto-approve |
|
|
41
|
+
| 0.5 ~ 0.85 | Oscar's discretion |
|
|
42
|
+
| < 0.5 | Sage consultation required |
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Sage (🔮) - Strategic Advisor
|
|
47
|
+
|
|
48
|
+
Oscar's strategic advisor. Provides big-picture direction when judgment is difficult.
|
|
49
|
+
|
|
50
|
+
### Consultation Triggers
|
|
51
|
+
|
|
52
|
+
| Situation | Trigger |
|
|
53
|
+
|-----------|---------|
|
|
54
|
+
| Ollie confidence < 0.5 | Automatic consultation request |
|
|
55
|
+
| Oscar confidence < 70% | **Recommended** |
|
|
56
|
+
| 2+ options under consideration | **Recommended** |
|
|
57
|
+
| Sprint goal alignment in question | Required |
|
|
58
|
+
| Unfamiliar domain/situation | **Recommended** |
|
|
59
|
+
| 3+ rejection iterations | Automatic intervention |
|
|
60
|
+
| Potential Guard Rail violation | Automatic warning |
|
|
61
|
+
|
|
62
|
+
### Consultation Request Method
|
|
63
|
+
|
|
64
|
+
```markdown
|
|
65
|
+
Task(
|
|
66
|
+
subagent_type="general-purpose",
|
|
67
|
+
run_in_background=false,
|
|
68
|
+
prompt="""
|
|
69
|
+
You are 🔮 Sage.
|
|
70
|
+
[Refer to .context/agents/sage.md persona]
|
|
71
|
+
|
|
72
|
+
[Situation] {situation description}
|
|
73
|
+
[Oscar's concern] {what's difficult to decide}
|
|
74
|
+
[Sprint goal] {current goal}
|
|
75
|
+
|
|
76
|
+
[Request]
|
|
77
|
+
1. Approval/rejection judgment
|
|
78
|
+
2. Risk identification
|
|
79
|
+
3. Recommendations
|
|
80
|
+
"""
|
|
81
|
+
)
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Sage Response Handling
|
|
85
|
+
|
|
86
|
+
- `approve` → Approve result
|
|
87
|
+
- `reject` → Modification needed, apply Sage's feedback
|
|
88
|
+
- `clarify` → Request clarification from user
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## /oscar-loop Full Flow
|
|
93
|
+
|
|
94
|
+
```
|
|
95
|
+
User: "/oscar-loop Elaborate on Epic 2, 3"
|
|
96
|
+
│
|
|
97
|
+
▼
|
|
98
|
+
🎩 Oscar: Analyze request → Identify N independent tasks
|
|
99
|
+
│
|
|
100
|
+
┌───────┴───────┐
|
|
101
|
+
│ │
|
|
102
|
+
▼ ▼
|
|
103
|
+
🎩✨ Ollie #1 🎩✨ Ollie #2
|
|
104
|
+
(Epic 2) (Epic 3)
|
|
105
|
+
│ │
|
|
106
|
+
▼ ▼
|
|
107
|
+
Submit result Submit result
|
|
108
|
+
│ │
|
|
109
|
+
└───────┬───────┘
|
|
110
|
+
│
|
|
111
|
+
🎩 Oscar: Review results
|
|
112
|
+
│
|
|
113
|
+
┌───────┼───────┐
|
|
114
|
+
≥0.85 0.5~0.85 <0.5
|
|
115
|
+
│ │ │
|
|
116
|
+
Auto- Discretion 🔮 Sage consultation
|
|
117
|
+
approve │ │
|
|
118
|
+
└───┬────┘
|
|
119
|
+
▼
|
|
120
|
+
Final approve/reject → (If rejected, re-run Ollie)
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Precautions
|
|
124
|
+
|
|
125
|
+
1. **API cost**: Don't spawn more Ollies than necessary
|
|
126
|
+
2. **Context passing**: Specify sprint goals and related document paths for each Ollie
|
|
127
|
+
3. **Circular reference prevention**: Prevent Ollie from spawning another Ollie
|
|
128
|
+
4. **Timeout**: Recommended maximum 300 seconds per Ollie, Oscar intervenes if exceeded
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Session-based Git Operations (Oscar Module)
|
|
2
|
+
|
|
3
|
+
> Referenced when "commit", "push" requests are made
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Core Principles
|
|
8
|
+
|
|
9
|
+
To avoid breaking other sessions' work in a parallel session environment:
|
|
10
|
+
|
|
11
|
+
1. **Commit only current session files**: Only process files recorded in the "deliverables" section of the session file
|
|
12
|
+
2. **Protect other session files**: Ignore other files even if they appear in `git status`
|
|
13
|
+
3. **Explicit confirmation**: Show the file list to the user and confirm before committing
|
|
14
|
+
|
|
15
|
+
## Git Request Detection Keywords
|
|
16
|
+
|
|
17
|
+
| Keyword | Action |
|
|
18
|
+
|---------|--------|
|
|
19
|
+
| `commit`, `save and push` | Selective per-session commit |
|
|
20
|
+
| `push`, `upload` | Commit then push |
|
|
21
|
+
| `full commit`, `all changes`, `--all` | Full commit (only on explicit request) |
|
|
22
|
+
|
|
23
|
+
## Execution Flow
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
1. Check current session files
|
|
27
|
+
→ Extract file list from "deliverables" section in sessions/active/{current session}.md
|
|
28
|
+
|
|
29
|
+
2. Cross-check with git status
|
|
30
|
+
→ Session deliverables ∩ git changed files = commit targets
|
|
31
|
+
|
|
32
|
+
3. User confirmation
|
|
33
|
+
→ Display "Commit these files?" list
|
|
34
|
+
→ Warn if other session files exist
|
|
35
|
+
|
|
36
|
+
4. Execute selective commit
|
|
37
|
+
→ git add {session files only}
|
|
38
|
+
→ git commit -m "..."
|
|
39
|
+
→ git push (on request)
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Commit Message Format
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
feat(oscar): Improve session journal system and authority delegation
|
|
46
|
+
|
|
47
|
+
- Add automatic session journal generation to /save command
|
|
48
|
+
- Add Oscar proactive delegation principles
|
|
49
|
+
|
|
50
|
+
Session: {current session ID}
|
|
51
|
+
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Deliverable Tracking
|
|
55
|
+
|
|
56
|
+
Oscar **automatically updates the deliverables section of the session file** when modifying files:
|
|
57
|
+
|
|
58
|
+
```markdown
|
|
59
|
+
## Deliverables
|
|
60
|
+
| File | Change | Description |
|
|
61
|
+
|------|--------|-------------|
|
|
62
|
+
| `.context/agents/orchestrator.md` | Modified | Core lightweight refactor |
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
This list serves as the basis for which files to commit.
|
|
66
|
+
|
|
67
|
+
## Precautions
|
|
68
|
+
|
|
69
|
+
1. **Prevent missing deliverables section**: Always update deliverables section when modifying files
|
|
70
|
+
2. **Same file modified by multiple sessions**: Warn when multiple sessions modify the same file, first-to-commit session takes priority
|
|
71
|
+
3. **Full commit**: Requires explicit "full commit", "all files", or "--all", warns about including other session files
|