learnship 2.2.1 → 2.2.2
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/.claude-plugin/plugin.json +1 -1
- package/.cursor-plugin/plugin.json +1 -1
- package/gemini-extension.json +1 -1
- package/learnship/workflows/challenge.md +14 -0
- package/learnship/workflows/compound.md +6 -0
- package/learnship/workflows/debug.md +8 -0
- package/learnship/workflows/execute-phase.md +8 -0
- package/learnship/workflows/ideate.md +12 -0
- package/learnship/workflows/new-project.md +209 -28
- package/learnship/workflows/plan-phase.md +41 -13
- package/learnship/workflows/research-phase.md +21 -13
- package/learnship/workflows/review.md +8 -0
- package/learnship/workflows/secure-phase.md +7 -2
- package/learnship/workflows/validate-phase.md +9 -3
- package/learnship/workflows/verify-work.md +7 -2
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "learnship",
|
|
3
3
|
"description": "Agentic engineering done right — 57 structured workflows, persistent memory across sessions, integrated learning partner, and impeccable UI design system. Works with Claude Code, Windsurf, Cursor, Gemini CLI, OpenCode, and Codex.",
|
|
4
|
-
"version": "2.2.
|
|
4
|
+
"version": "2.2.2",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Favio Vazquez",
|
|
7
7
|
"email": "favio.vazquezp@gmail.com"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "learnship",
|
|
3
3
|
"displayName": "learnship",
|
|
4
4
|
"description": "Agentic engineering done right — 57 structured workflows, persistent memory across sessions, integrated learning partner, and impeccable UI design system.",
|
|
5
|
-
"version": "2.2.
|
|
5
|
+
"version": "2.2.2",
|
|
6
6
|
"logo": "assets/logo.png",
|
|
7
7
|
"author": {
|
|
8
8
|
"name": "Favio Vazquez",
|
package/gemini-extension.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "learnship",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.2",
|
|
4
4
|
"description": "Agentic engineering done right — 57 structured workflows, persistent memory across sessions, integrated learning partner, and impeccable UI design system.",
|
|
5
5
|
"author": "Favio Vazquez",
|
|
6
6
|
"homepage": "https://faviovazquez.github.io/learnship/",
|
|
@@ -42,7 +42,14 @@ Read `parallelization` from `.planning/config.json` (defaults to `false`).
|
|
|
42
42
|
```
|
|
43
43
|
Task(
|
|
44
44
|
subagent_type="learnship-challenger",
|
|
45
|
+
description="Product challenge",
|
|
45
46
|
prompt="
|
|
47
|
+
<agent_definition>
|
|
48
|
+
You are a learnship challenger running the PRODUCT lens. Your job is to stress-test whether this proposal is worth building.
|
|
49
|
+
Ask forcing questions that expose weak assumptions. Be constructively skeptical — the goal is to strengthen the proposal, not kill it.
|
|
50
|
+
Return a clear verdict: proceed / rethink / reduce-scope.
|
|
51
|
+
</agent_definition>
|
|
52
|
+
|
|
46
53
|
<objective>
|
|
47
54
|
Run the PRODUCT lens challenge on this proposal:
|
|
48
55
|
[proposal description]
|
|
@@ -81,7 +88,14 @@ Using `@./agents/challenger.md` as your challenge persona, ask the 3-5 product f
|
|
|
81
88
|
```
|
|
82
89
|
Task(
|
|
83
90
|
subagent_type="learnship-challenger",
|
|
91
|
+
description="Engineering challenge",
|
|
84
92
|
prompt="
|
|
93
|
+
<agent_definition>
|
|
94
|
+
You are a learnship challenger running the ENGINEERING lens. Your job is to stress-test whether this proposal is technically sound.
|
|
95
|
+
Ask forcing questions that expose complexity, fragility, and hidden costs. Be constructively skeptical.
|
|
96
|
+
Return a clear verdict: proceed / rethink / reduce-scope.
|
|
97
|
+
</agent_definition>
|
|
98
|
+
|
|
85
99
|
<objective>
|
|
86
100
|
Run the ENGINEERING lens challenge on this proposal:
|
|
87
101
|
[proposal description]
|
|
@@ -41,7 +41,13 @@ Launch these tasks IN PARALLEL. Each returns text data to the orchestrator — s
|
|
|
41
41
|
```
|
|
42
42
|
Task(
|
|
43
43
|
subagent_type="learnship-solution-writer",
|
|
44
|
+
description="Classify and extract solution",
|
|
44
45
|
prompt="
|
|
46
|
+
<agent_definition>
|
|
47
|
+
You are a learnship solution writer. Analyze conversation history to classify problems and extract structured solution metadata.
|
|
48
|
+
RESEARCH ONLY — do NOT write any files. Return text data to the orchestrator.
|
|
49
|
+
</agent_definition>
|
|
50
|
+
|
|
45
51
|
<objective>
|
|
46
52
|
RESEARCH ONLY — do NOT write any files.
|
|
47
53
|
Analyze conversation history to extract:
|
|
@@ -103,7 +103,15 @@ Spawn a dedicated debugger agent with a fresh context budget for deep investigat
|
|
|
103
103
|
```
|
|
104
104
|
Task(
|
|
105
105
|
subagent_type="learnship-debugger",
|
|
106
|
+
description="Investigate bug",
|
|
106
107
|
prompt="
|
|
108
|
+
<agent_definition>
|
|
109
|
+
You are a learnship debugger. Trace from user-facing symptoms inward to find root causes.
|
|
110
|
+
Read-first: understand the current design before proposing changes. Find the specific file and line where behavior diverges.
|
|
111
|
+
Confirm the root cause with: 'If this were fixed, would the symptom go away?'
|
|
112
|
+
One hypothesis at a time. Change one thing, verify, then move to the next.
|
|
113
|
+
</agent_definition>
|
|
114
|
+
|
|
107
115
|
<objective>
|
|
108
116
|
Investigate the bug described in [session_file].
|
|
109
117
|
Trace from the user-facing symptom inward to find the root cause.
|
|
@@ -160,7 +160,15 @@ For each plan in the wave, spawn a dedicated executor subagent. Pass paths only
|
|
|
160
160
|
```
|
|
161
161
|
Task(
|
|
162
162
|
subagent_type="learnship-executor",
|
|
163
|
+
description="Execute plan [plan_id]",
|
|
163
164
|
prompt="
|
|
165
|
+
<agent_definition>
|
|
166
|
+
You are a learnship executor. Execute plan tasks one at a time, commit atomically after each.
|
|
167
|
+
Read the plan file, follow each task's action field exactly. Verify using the verify field.
|
|
168
|
+
Mark tasks done. Create SUMMARY.md when complete. Update STATE.md.
|
|
169
|
+
Never skip tasks. Never batch commits. One task = one commit.
|
|
170
|
+
</agent_definition>
|
|
171
|
+
|
|
164
172
|
<objective>
|
|
165
173
|
Execute plan [plan_id] of phase [phase_number]-[phase_name].
|
|
166
174
|
Commit each task atomically. Create SUMMARY.md. Update STATE.md and ROADMAP.md.
|
|
@@ -93,7 +93,13 @@ If yes: read `parallelization` from `.planning/config.json`. If `parallelization
|
|
|
93
93
|
```
|
|
94
94
|
Task(
|
|
95
95
|
subagent_type="learnship-researcher",
|
|
96
|
+
description="Quick research pass",
|
|
96
97
|
prompt="
|
|
98
|
+
<agent_definition>
|
|
99
|
+
You are a learnship researcher doing a quick, focused research pass.
|
|
100
|
+
Your training data is stale — use WebSearch to verify current state. Be concise.
|
|
101
|
+
</agent_definition>
|
|
102
|
+
|
|
97
103
|
<objective>
|
|
98
104
|
Quick research pass on: [specific question].
|
|
99
105
|
Search web, scan codebase for relevant patterns, and return a concise summary of findings.
|
|
@@ -159,7 +165,13 @@ Spawn 3-4 ideation agents in parallel, each with a different thinking frame:
|
|
|
159
165
|
```
|
|
160
166
|
Task(
|
|
161
167
|
subagent_type="learnship-ideation-agent",
|
|
168
|
+
description="Ideate: [FRAME] lens",
|
|
162
169
|
prompt="
|
|
170
|
+
<agent_definition>
|
|
171
|
+
You are a learnship ideation agent. Generate improvement ideas grounded in the actual codebase — no abstract advice.
|
|
172
|
+
Every idea must cite specific files, patterns, or evidence. Be creative but practical.
|
|
173
|
+
</agent_definition>
|
|
174
|
+
|
|
163
175
|
<objective>
|
|
164
176
|
Generate 6-8 improvement ideas for this project using the [FRAME] lens.
|
|
165
177
|
Ground every idea in the codebase scan results — no abstract advice.
|
|
@@ -468,50 +468,231 @@ Read `parallelization` from `.planning/config.json` (defaults to `false`).
|
|
|
468
468
|
|
|
469
469
|
**If `parallelization.enabled` is `true` (subagent mode — Claude Code, OpenCode, Codex):**
|
|
470
470
|
|
|
471
|
-
|
|
471
|
+
Display spawning indicator:
|
|
472
|
+
```
|
|
473
|
+
◆ Spawning 4 researchers in parallel...
|
|
474
|
+
→ Stack research
|
|
475
|
+
→ Features research
|
|
476
|
+
→ Architecture research
|
|
477
|
+
→ Pitfalls research
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
Spawn 4 parallel researcher agents — one per research dimension. Each agent writes ONE file.
|
|
481
|
+
|
|
472
482
|
```
|
|
473
483
|
Task(
|
|
474
484
|
subagent_type="learnship-researcher",
|
|
485
|
+
description="Stack research",
|
|
475
486
|
prompt="
|
|
487
|
+
<agent_definition>
|
|
488
|
+
You are a learnship researcher. Your training data is 6-18 months stale — treat it as hypothesis, not fact.
|
|
489
|
+
Verify before asserting. Flag uncertainty with confidence levels (HIGH/MEDIUM/LOW). Be prescriptive: 'Use X because Y' not 'Options are X, Y, Z.'
|
|
490
|
+
Tool priority: 1. WebSearch (ecosystem discovery — always include current year), 2. WebFetch (official docs), 3. Codebase scan.
|
|
491
|
+
</agent_definition>
|
|
492
|
+
|
|
476
493
|
<objective>
|
|
477
|
-
Research the
|
|
494
|
+
Research the standard tech stack for [project domain]. Write .planning/research/STACK.md.
|
|
495
|
+
You MUST run WebSearch queries BEFORE writing the file. Do NOT write from training data alone.
|
|
496
|
+
</objective>
|
|
497
|
+
|
|
498
|
+
<research_steps>
|
|
499
|
+
1. Read .planning/PROJECT.md to understand the project domain and goals
|
|
500
|
+
2. Run 2-3 WebSearch queries: '[domain] recommended tech stack [current year]', '[domain] best libraries [current year]'
|
|
501
|
+
3. WebFetch official docs for any key libraries discovered
|
|
502
|
+
4. Write .planning/research/STACK.md with confidence levels and source citations
|
|
503
|
+
</research_steps>
|
|
478
504
|
|
|
479
|
-
|
|
505
|
+
<files_to_read>
|
|
506
|
+
- .planning/PROJECT.md (project context and goals)
|
|
507
|
+
</files_to_read>
|
|
508
|
+
|
|
509
|
+
<downstream_consumer>
|
|
510
|
+
Your STACK.md feeds into roadmap creation. Be prescriptive:
|
|
511
|
+
- Specific libraries with versions
|
|
512
|
+
- Clear rationale for each choice
|
|
513
|
+
- What NOT to use and why
|
|
514
|
+
</downstream_consumer>
|
|
515
|
+
|
|
516
|
+
<quality_gate>
|
|
517
|
+
- [ ] Versions are current (verified via WebSearch/WebFetch, not training data)
|
|
518
|
+
- [ ] Rationale explains WHY, not just WHAT
|
|
519
|
+
- [ ] Confidence levels assigned to each recommendation
|
|
520
|
+
</quality_gate>
|
|
521
|
+
|
|
522
|
+
<output>
|
|
523
|
+
Write to: .planning/research/STACK.md
|
|
524
|
+
Required sections: ## Recommended Stack, ## Alternatives Considered, ## What NOT to Use, ## Versions
|
|
525
|
+
</output>
|
|
526
|
+
"
|
|
527
|
+
)
|
|
528
|
+
|
|
529
|
+
Task(
|
|
530
|
+
subagent_type="learnship-researcher",
|
|
531
|
+
description="Features research",
|
|
532
|
+
prompt="
|
|
533
|
+
<agent_definition>
|
|
534
|
+
You are a learnship researcher. Your training data is 6-18 months stale — treat it as hypothesis, not fact.
|
|
535
|
+
Verify before asserting. Flag uncertainty with confidence levels (HIGH/MEDIUM/LOW). Be prescriptive: 'Use X because Y' not 'Options are X, Y, Z.'
|
|
536
|
+
Tool priority: 1. WebSearch (ecosystem discovery — always include current year), 2. WebFetch (official docs), 3. Codebase scan.
|
|
537
|
+
</agent_definition>
|
|
480
538
|
|
|
481
|
-
|
|
539
|
+
<objective>
|
|
540
|
+
Research what features [project domain] products typically have. Write .planning/research/FEATURES.md.
|
|
541
|
+
You MUST run WebSearch queries BEFORE writing the file. Do NOT write from training data alone.
|
|
542
|
+
</objective>
|
|
543
|
+
|
|
544
|
+
<research_steps>
|
|
482
545
|
1. Read .planning/PROJECT.md to understand the project domain and goals
|
|
483
|
-
2. Run
|
|
484
|
-
3.
|
|
485
|
-
4.
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
546
|
+
2. Run 2-3 WebSearch queries: '[domain] features table stakes [current year]', '[domain] product features comparison'
|
|
547
|
+
3. WebFetch any relevant product comparison pages or feature lists
|
|
548
|
+
4. Write .planning/research/FEATURES.md with confidence levels and source citations
|
|
549
|
+
</research_steps>
|
|
550
|
+
|
|
551
|
+
<files_to_read>
|
|
552
|
+
- .planning/PROJECT.md (project context and goals)
|
|
553
|
+
</files_to_read>
|
|
554
|
+
|
|
555
|
+
<downstream_consumer>
|
|
556
|
+
Your FEATURES.md feeds into requirements definition. Categorize clearly:
|
|
557
|
+
- Table stakes (must have or users leave)
|
|
558
|
+
- Differentiators (competitive advantage)
|
|
559
|
+
- Anti-features (things to deliberately NOT build)
|
|
560
|
+
</downstream_consumer>
|
|
561
|
+
|
|
562
|
+
<quality_gate>
|
|
563
|
+
- [ ] Categories are clear (table stakes vs differentiators vs anti-features)
|
|
564
|
+
- [ ] Complexity noted for each feature
|
|
565
|
+
- [ ] Dependencies between features identified
|
|
566
|
+
</quality_gate>
|
|
567
|
+
|
|
568
|
+
<output>
|
|
569
|
+
Write to: .planning/research/FEATURES.md
|
|
570
|
+
Required sections: ## Table Stakes, ## Differentiators, ## Anti-Features
|
|
571
|
+
</output>
|
|
572
|
+
"
|
|
573
|
+
)
|
|
574
|
+
|
|
575
|
+
Task(
|
|
576
|
+
subagent_type="learnship-researcher",
|
|
577
|
+
description="Architecture research",
|
|
578
|
+
prompt="
|
|
579
|
+
<agent_definition>
|
|
580
|
+
You are a learnship researcher. Your training data is 6-18 months stale — treat it as hypothesis, not fact.
|
|
581
|
+
Verify before asserting. Flag uncertainty with confidence levels (HIGH/MEDIUM/LOW). Be prescriptive: 'Use X because Y' not 'Options are X, Y, Z.'
|
|
582
|
+
Tool priority: 1. WebSearch (ecosystem discovery — always include current year), 2. WebFetch (official docs), 3. Codebase scan.
|
|
583
|
+
</agent_definition>
|
|
584
|
+
|
|
585
|
+
<objective>
|
|
586
|
+
Research how [project domain] systems are typically structured. Write .planning/research/ARCHITECTURE.md.
|
|
587
|
+
You MUST run WebSearch queries BEFORE writing the file. Do NOT write from training data alone.
|
|
499
588
|
</objective>
|
|
500
589
|
|
|
590
|
+
<research_steps>
|
|
591
|
+
1. Read .planning/PROJECT.md to understand the project domain and goals
|
|
592
|
+
2. Run 2-3 WebSearch queries: '[domain] architecture patterns', '[domain] system design components'
|
|
593
|
+
3. WebFetch architectural guides or documentation for the chosen stack
|
|
594
|
+
4. Write .planning/research/ARCHITECTURE.md with confidence levels and source citations
|
|
595
|
+
</research_steps>
|
|
596
|
+
|
|
597
|
+
<files_to_read>
|
|
598
|
+
- .planning/PROJECT.md (project context and goals)
|
|
599
|
+
</files_to_read>
|
|
600
|
+
|
|
601
|
+
<downstream_consumer>
|
|
602
|
+
Your ARCHITECTURE.md informs phase structure in roadmap. Include:
|
|
603
|
+
- Component boundaries (what talks to what)
|
|
604
|
+
- Data flow (how information moves)
|
|
605
|
+
- Suggested build order (dependencies between components)
|
|
606
|
+
</downstream_consumer>
|
|
607
|
+
|
|
608
|
+
<quality_gate>
|
|
609
|
+
- [ ] Components clearly defined with boundaries
|
|
610
|
+
- [ ] Data flow direction explicit
|
|
611
|
+
- [ ] Build order implications noted
|
|
612
|
+
</quality_gate>
|
|
613
|
+
|
|
614
|
+
<output>
|
|
615
|
+
Write to: .planning/research/ARCHITECTURE.md
|
|
616
|
+
Required sections: ## Component Boundaries, ## Data Flow, ## Build Order, ## Integration Points
|
|
617
|
+
</output>
|
|
618
|
+
"
|
|
619
|
+
)
|
|
620
|
+
|
|
621
|
+
Task(
|
|
622
|
+
subagent_type="learnship-researcher",
|
|
623
|
+
description="Pitfalls research",
|
|
624
|
+
prompt="
|
|
625
|
+
<agent_definition>
|
|
626
|
+
You are a learnship researcher. Your training data is 6-18 months stale — treat it as hypothesis, not fact.
|
|
627
|
+
Verify before asserting. Flag uncertainty with confidence levels (HIGH/MEDIUM/LOW). Be prescriptive: 'Use X because Y' not 'Options are X, Y, Z.'
|
|
628
|
+
Tool priority: 1. WebSearch (ecosystem discovery — always include current year), 2. WebFetch (official docs), 3. Codebase scan.
|
|
629
|
+
</agent_definition>
|
|
630
|
+
|
|
631
|
+
<objective>
|
|
632
|
+
Research what [project domain] projects commonly get wrong. Write .planning/research/PITFALLS.md.
|
|
633
|
+
You MUST run WebSearch queries BEFORE writing the file. Do NOT write from training data alone.
|
|
634
|
+
</objective>
|
|
635
|
+
|
|
636
|
+
<research_steps>
|
|
637
|
+
1. Read .planning/PROJECT.md to understand the project domain and goals
|
|
638
|
+
2. Run 2-3 WebSearch queries: '[domain] common mistakes gotchas', '[domain] pitfalls beginners'
|
|
639
|
+
3. WebFetch any detailed postmortems or lessons-learned articles
|
|
640
|
+
4. Write .planning/research/PITFALLS.md with confidence levels and source citations
|
|
641
|
+
</research_steps>
|
|
642
|
+
|
|
501
643
|
<files_to_read>
|
|
502
|
-
- .planning/PROJECT.md (project
|
|
503
|
-
- @./agents/researcher.md (research persona — read for research principles and tool strategy)
|
|
504
|
-
- @./templates/research-project/STACK.md (template for STACK.md)
|
|
505
|
-
- @./templates/research-project/FEATURES.md (template for FEATURES.md)
|
|
506
|
-
- @./templates/research-project/ARCHITECTURE.md (template for ARCHITECTURE.md)
|
|
507
|
-
- @./templates/research-project/PITFALLS.md (template for PITFALLS.md)
|
|
508
|
-
- @./templates/research-project/SUMMARY.md (template for SUMMARY.md)
|
|
644
|
+
- .planning/PROJECT.md (project context and goals)
|
|
509
645
|
</files_to_read>
|
|
646
|
+
|
|
647
|
+
<downstream_consumer>
|
|
648
|
+
Your PITFALLS.md prevents mistakes in roadmap/planning. For each pitfall:
|
|
649
|
+
- Warning signs (how to detect early)
|
|
650
|
+
- Prevention strategy (how to avoid)
|
|
651
|
+
- Which phase should address it
|
|
652
|
+
</downstream_consumer>
|
|
653
|
+
|
|
654
|
+
<quality_gate>
|
|
655
|
+
- [ ] Pitfalls are specific to this domain (not generic advice)
|
|
656
|
+
- [ ] Prevention strategies are actionable
|
|
657
|
+
- [ ] Phase mapping included where relevant
|
|
658
|
+
</quality_gate>
|
|
659
|
+
|
|
660
|
+
<output>
|
|
661
|
+
Write to: .planning/research/PITFALLS.md
|
|
662
|
+
Required sections: ## Common Mistakes, ## Warning Signs, ## Prevention Strategies
|
|
663
|
+
</output>
|
|
664
|
+
"
|
|
665
|
+
)
|
|
666
|
+
```
|
|
667
|
+
|
|
668
|
+
After all 4 agents complete, spawn a synthesizer to create SUMMARY.md from the other 4 files:
|
|
669
|
+
|
|
670
|
+
```
|
|
671
|
+
Task(
|
|
672
|
+
subagent_type="learnship-researcher",
|
|
673
|
+
description="Synthesize research",
|
|
674
|
+
prompt="
|
|
675
|
+
<objective>
|
|
676
|
+
Synthesize the 4 research files into a single SUMMARY.md.
|
|
677
|
+
Read all 4 files, extract the key findings, and write a cohesive summary.
|
|
678
|
+
</objective>
|
|
679
|
+
|
|
680
|
+
<files_to_read>
|
|
681
|
+
- .planning/research/STACK.md
|
|
682
|
+
- .planning/research/FEATURES.md
|
|
683
|
+
- .planning/research/ARCHITECTURE.md
|
|
684
|
+
- .planning/research/PITFALLS.md
|
|
685
|
+
</files_to_read>
|
|
686
|
+
|
|
687
|
+
<output>
|
|
688
|
+
Write to: .planning/research/SUMMARY.md
|
|
689
|
+
Required sections: ## Recommended Stack, ## Table Stakes Features, ## Key Architecture Decisions, ## Top Pitfalls
|
|
690
|
+
</output>
|
|
510
691
|
"
|
|
511
692
|
)
|
|
512
693
|
```
|
|
513
694
|
|
|
514
|
-
Wait for the
|
|
695
|
+
Wait for the synthesizer to complete, then proceed to Step 5c (verification) to confirm all 5 files were written correctly.
|
|
515
696
|
|
|
516
697
|
**If `parallelization.enabled` is `false` (sequential mode):**
|
|
517
698
|
|
|
@@ -107,31 +107,39 @@ Display:
|
|
|
107
107
|
Spawn a dedicated researcher agent:
|
|
108
108
|
```
|
|
109
109
|
Task(
|
|
110
|
-
subagent_type="learnship-
|
|
110
|
+
subagent_type="learnship-researcher",
|
|
111
|
+
description="Phase [phase_number] research",
|
|
111
112
|
prompt="
|
|
113
|
+
<agent_definition>
|
|
114
|
+
You are a learnship researcher. Your training data is 6-18 months stale — treat it as hypothesis, not fact.
|
|
115
|
+
Verify before asserting. Flag uncertainty with confidence levels (HIGH/MEDIUM/LOW). Be prescriptive: 'Use X because Y' not 'Options are X, Y, Z.'
|
|
116
|
+
Tool priority: 1. WebSearch (ecosystem discovery — always include current year), 2. WebFetch (official docs), 3. Codebase scan.
|
|
117
|
+
</agent_definition>
|
|
118
|
+
|
|
112
119
|
<objective>
|
|
113
120
|
Research how to implement Phase [phase_number]: [phase_name].
|
|
114
121
|
Answer: 'What do I need to know to PLAN this phase well?'
|
|
122
|
+
You MUST run WebSearch queries BEFORE writing the file. Do NOT write from training data alone.
|
|
123
|
+
</objective>
|
|
115
124
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
Phase 1 — INVESTIGATE (do this first):
|
|
125
|
+
<research_steps>
|
|
119
126
|
1. Read user decisions from CONTEXT.md (if exists), requirements from REQUIREMENTS.md, and project state from STATE.md
|
|
120
|
-
2.
|
|
121
|
-
3.
|
|
122
|
-
4.
|
|
123
|
-
5.
|
|
124
|
-
|
|
125
|
-
Phase 2 — WRITE FILE (only after investigating):
|
|
126
|
-
Write RESEARCH.md to [phase_dir]/[padded_phase]-RESEARCH.md with Don't Hand-Roll, Common Pitfalls, Existing Patterns, and Recommended Approach sections. Include confidence levels (HIGH/MEDIUM/LOW) and cite sources.
|
|
127
|
-
</objective>
|
|
127
|
+
2. Run at least 3 WebSearch queries: '[phase technology] best practices [current year]', '[phase technology] common mistakes', '[phase technology] recommended libraries'
|
|
128
|
+
3. WebFetch official docs for key libraries or frameworks discovered
|
|
129
|
+
4. Scan the codebase for existing patterns relevant to this phase
|
|
130
|
+
5. Write [padded_phase]-RESEARCH.md with confidence levels and source citations
|
|
131
|
+
</research_steps>
|
|
128
132
|
|
|
129
133
|
<files_to_read>
|
|
130
134
|
- [context_path] (user decisions, if exists)
|
|
131
135
|
- .planning/REQUIREMENTS.md
|
|
132
136
|
- .planning/STATE.md
|
|
133
|
-
- @./agents/researcher.md (persona — read for research principles and tool strategy)
|
|
134
137
|
</files_to_read>
|
|
138
|
+
|
|
139
|
+
<output>
|
|
140
|
+
Write to: .planning/phases/[padded_phase]-[phase_slug]/[padded_phase]-RESEARCH.md
|
|
141
|
+
Required sections: ## Don't Hand-Roll, ## Common Pitfalls, ## Existing Patterns in This Codebase, ## Recommended Approach
|
|
142
|
+
</output>
|
|
135
143
|
"
|
|
136
144
|
)
|
|
137
145
|
```
|
|
@@ -178,7 +186,15 @@ Spawn a dedicated planner agent:
|
|
|
178
186
|
```
|
|
179
187
|
Task(
|
|
180
188
|
subagent_type="learnship-planner",
|
|
189
|
+
description="Plan phase [phase_number]",
|
|
181
190
|
prompt="
|
|
191
|
+
<agent_definition>
|
|
192
|
+
You are a learnship planner. Create executable PLAN.md files that an AI agent can follow step-by-step.
|
|
193
|
+
Each plan covers a single logical unit of work. Tasks use XML format with file, action, verify, done fields.
|
|
194
|
+
Plans have YAML frontmatter: wave, depends_on, files_modified, autonomous.
|
|
195
|
+
Be specific — task actions should be concrete instructions, not vague guidance.
|
|
196
|
+
</agent_definition>
|
|
197
|
+
|
|
182
198
|
<objective>
|
|
183
199
|
Create 2-4 executable PLAN.md files for Phase [phase_number]: [phase_name].
|
|
184
200
|
Write plans to [phase_dir]/[padded_phase]-NN-PLAN.md.
|
|
@@ -192,6 +208,11 @@ Task(
|
|
|
192
208
|
- [research_path] (if exists)
|
|
193
209
|
- $LEARNSHIP_DIR/templates/plan.md
|
|
194
210
|
</files_to_read>
|
|
211
|
+
|
|
212
|
+
<output>
|
|
213
|
+
Write to: [phase_dir]/[padded_phase]-01-PLAN.md, [padded_phase]-02-PLAN.md, etc.
|
|
214
|
+
Each plan must have: YAML frontmatter (wave, depends_on, files_modified) + tasks in XML + must_haves section
|
|
215
|
+
</output>
|
|
195
216
|
"
|
|
196
217
|
)
|
|
197
218
|
```
|
|
@@ -237,7 +258,14 @@ Spawn a plan-checker agent:
|
|
|
237
258
|
```
|
|
238
259
|
Task(
|
|
239
260
|
subagent_type="learnship-plan-checker",
|
|
261
|
+
description="Verify phase [phase_number] plans",
|
|
240
262
|
prompt="
|
|
263
|
+
<agent_definition>
|
|
264
|
+
You are a learnship plan checker. Verify plans are complete, correct, and executable.
|
|
265
|
+
Check: phase goal coverage, requirement IDs, CONTEXT.md decisions honored, task completeness, wave/dependency correctness.
|
|
266
|
+
Be strict — flag missing requirement IDs, vague task actions, incorrect wave assignments.
|
|
267
|
+
</agent_definition>
|
|
268
|
+
|
|
241
269
|
<objective>
|
|
242
270
|
Verify all PLAN.md files in [phase_dir] for Phase [phase_number]: [phase_name].
|
|
243
271
|
Check: phase goal coverage, requirement IDs, CONTEXT.md decisions, task completeness, wave correctness.
|
|
@@ -78,30 +78,38 @@ Spawn a dedicated researcher agent:
|
|
|
78
78
|
```
|
|
79
79
|
Task(
|
|
80
80
|
subagent_type="learnship-researcher",
|
|
81
|
+
description="Phase [N] research",
|
|
81
82
|
prompt="
|
|
82
|
-
<
|
|
83
|
-
|
|
83
|
+
<agent_definition>
|
|
84
|
+
You are a learnship researcher. Your training data is 6-18 months stale — treat it as hypothesis, not fact.
|
|
85
|
+
Verify before asserting. Flag uncertainty with confidence levels (HIGH/MEDIUM/LOW). Be prescriptive: 'Use X because Y' not 'Options are X, Y, Z.'
|
|
86
|
+
Tool priority: 1. WebSearch (ecosystem discovery — always include current year), 2. WebFetch (official docs), 3. Codebase scan.
|
|
87
|
+
</agent_definition>
|
|
84
88
|
|
|
85
|
-
|
|
89
|
+
<objective>
|
|
90
|
+
Research how to implement phase [N] for this project. Write [padded_phase]-RESEARCH.md.
|
|
91
|
+
You MUST run WebSearch queries BEFORE writing the file. Do NOT write from training data alone.
|
|
92
|
+
</objective>
|
|
86
93
|
|
|
87
|
-
|
|
94
|
+
<research_steps>
|
|
88
95
|
1. Read the phase goal from ROADMAP.md, requirements from REQUIREMENTS.md, and any CONTEXT.md decisions
|
|
89
|
-
2.
|
|
90
|
-
3.
|
|
91
|
-
4.
|
|
92
|
-
5.
|
|
93
|
-
|
|
94
|
-
Phase 2 — WRITE FILE (only after investigating):
|
|
95
|
-
Write [padded_phase]-RESEARCH.md with Don't Hand-Roll, Common Pitfalls, Existing Patterns, and Recommended Approach sections. Include confidence levels (HIGH/MEDIUM/LOW) and cite sources.
|
|
96
|
-
</objective>
|
|
96
|
+
2. Run at least 3 WebSearch queries: '[phase technology] best practices [current year]', '[phase technology] common mistakes', '[phase technology] recommended libraries'
|
|
97
|
+
3. WebFetch official docs for key libraries or frameworks discovered
|
|
98
|
+
4. Scan the codebase for existing patterns relevant to this phase
|
|
99
|
+
5. Write [padded_phase]-RESEARCH.md with confidence levels and source citations
|
|
100
|
+
</research_steps>
|
|
97
101
|
|
|
98
102
|
<files_to_read>
|
|
99
103
|
- .planning/ROADMAP.md
|
|
100
104
|
- .planning/REQUIREMENTS.md
|
|
101
105
|
- .planning/STATE.md
|
|
102
106
|
- .planning/phases/[padded_phase]-[slug]/[padded_phase]-CONTEXT.md (if exists)
|
|
103
|
-
- @./agents/researcher.md (persona — read for research principles and tool strategy)
|
|
104
107
|
</files_to_read>
|
|
108
|
+
|
|
109
|
+
<output>
|
|
110
|
+
Write to: .planning/phases/[padded_phase]-[slug]/[padded_phase]-RESEARCH.md
|
|
111
|
+
Required sections: ## Don't Hand-Roll, ## Common Pitfalls, ## Existing Patterns in This Codebase, ## Recommended Approach
|
|
112
|
+
</output>
|
|
105
113
|
"
|
|
106
114
|
)
|
|
107
115
|
```
|
|
@@ -92,7 +92,15 @@ Spawn a dedicated code-reviewer agent for each selected persona:
|
|
|
92
92
|
```
|
|
93
93
|
Task(
|
|
94
94
|
subagent_type="learnship-code-reviewer",
|
|
95
|
+
description="Review: [PERSONA]",
|
|
95
96
|
prompt="
|
|
97
|
+
<agent_definition>
|
|
98
|
+
You are a learnship code reviewer running the [PERSONA] lens.
|
|
99
|
+
Review the diff — do NOT edit any files. Read-only review.
|
|
100
|
+
Return structured findings with severity (P0-P3) and confidence (0.0-1.0).
|
|
101
|
+
Be specific: cite exact files and lines. Distinguish real issues from style preferences.
|
|
102
|
+
</agent_definition>
|
|
103
|
+
|
|
96
104
|
<objective>
|
|
97
105
|
Review the following diff as the [PERSONA] reviewer.
|
|
98
106
|
Focus: [persona-specific focus areas]
|
|
@@ -104,17 +104,22 @@ Read `parallelization` from `.planning/config.json` (defaults to `false`).
|
|
|
104
104
|
```
|
|
105
105
|
Task(
|
|
106
106
|
subagent_type="learnship-security-auditor",
|
|
107
|
+
description="Security audit phase [N]",
|
|
107
108
|
prompt="
|
|
109
|
+
<agent_definition>
|
|
110
|
+
You are a learnship security auditor. Verify threats against the actual codebase using STRIDE methodology.
|
|
111
|
+
Check each open threat: if mitigation is found in code, mark CLOSED with evidence. If missing, document what's needed.
|
|
112
|
+
Be thorough — check actual code, not just file names. False negatives are worse than false positives.
|
|
113
|
+
</agent_definition>
|
|
114
|
+
|
|
108
115
|
<objective>
|
|
109
116
|
Verify all open threats in the threat register for phase [N].
|
|
110
117
|
Check each threat against the actual codebase. Update status to
|
|
111
118
|
CLOSED if mitigation found, or document what's missing.
|
|
112
|
-
Follow the security auditor persona at @./agents/security-auditor.md.
|
|
113
119
|
</objective>
|
|
114
120
|
|
|
115
121
|
<files_to_read>
|
|
116
122
|
- [phase SECURITY.md or threat register]
|
|
117
|
-
- @./agents/security-auditor.md (persona)
|
|
118
123
|
</files_to_read>
|
|
119
124
|
"
|
|
120
125
|
)
|
|
@@ -105,18 +105,24 @@ Read `parallelization` from `.planning/config.json` (defaults to `false`).
|
|
|
105
105
|
```
|
|
106
106
|
Task(
|
|
107
107
|
subagent_type="learnship-verifier",
|
|
108
|
+
description="Fill validation gaps phase [N]",
|
|
108
109
|
prompt="
|
|
110
|
+
<agent_definition>
|
|
111
|
+
You are a learnship verifier. Write test files that cover validation gaps — never modify implementation files.
|
|
112
|
+
Match existing test framework and style. Write tests that actually run (import real modules, not mocks).
|
|
113
|
+
If a test reveals an implementation bug, log it as an escalation — don't fix the implementation.
|
|
114
|
+
Up to 3 debug attempts if tests fail.
|
|
115
|
+
</agent_definition>
|
|
116
|
+
|
|
109
117
|
<objective>
|
|
110
118
|
Write missing test files for phase [N] validation gaps.
|
|
111
119
|
Read VALIDATION.md gaps and write tests that cover each MISSING or PARTIAL requirement.
|
|
112
|
-
Follow the verifier persona at @./agents/verifier.md.
|
|
113
120
|
Never modify implementation files — only write test files.
|
|
114
121
|
Run tests to verify they pass. Up to 3 debug attempts if tests fail.
|
|
115
122
|
</objective>
|
|
116
123
|
|
|
117
124
|
<files_to_read>
|
|
118
125
|
- [VALIDATION.md path]
|
|
119
|
-
- @./agents/verifier.md (persona)
|
|
120
126
|
</files_to_read>
|
|
121
127
|
"
|
|
122
128
|
)
|
|
@@ -124,7 +130,7 @@ Task(
|
|
|
124
130
|
|
|
125
131
|
**If `parallelization.enabled` is `false` (sequential mode):**
|
|
126
132
|
|
|
127
|
-
|
|
133
|
+
Using `@./agents/verifier.md` as your verification persona, write the missing test files. Rules:
|
|
128
134
|
- Never touch implementation files
|
|
129
135
|
- Match the existing test framework and style
|
|
130
136
|
- Write tests that actually run (import real modules, not mocks of the implementation)
|
|
@@ -253,18 +253,23 @@ Spawn a dedicated debugger agent for diagnosis:
|
|
|
253
253
|
```
|
|
254
254
|
Task(
|
|
255
255
|
subagent_type="learnship-debugger",
|
|
256
|
+
description="Diagnose UAT issues phase [N]",
|
|
256
257
|
prompt="
|
|
258
|
+
<agent_definition>
|
|
259
|
+
You are a learnship debugger in diagnosis mode. Trace each issue to its root cause.
|
|
260
|
+
Read-first: understand the current design before proposing changes. Find specific files and lines.
|
|
261
|
+
Do NOT fix anything — just diagnose and document. One hypothesis at a time.
|
|
262
|
+
</agent_definition>
|
|
263
|
+
|
|
257
264
|
<objective>
|
|
258
265
|
Diagnose all issues found in UAT for phase [N].
|
|
259
266
|
Read the UAT.md file with gaps, trace each issue to its root cause.
|
|
260
267
|
Do NOT fix anything — just diagnose and document root causes.
|
|
261
|
-
Follow the debugger persona at @./agents/debugger.md.
|
|
262
268
|
Write root_cause and affected_files for each gap back to UAT.md.
|
|
263
269
|
</objective>
|
|
264
270
|
|
|
265
271
|
<files_to_read>
|
|
266
272
|
- [UAT.md path]
|
|
267
|
-
- @./agents/debugger.md (persona)
|
|
268
273
|
</files_to_read>
|
|
269
274
|
"
|
|
270
275
|
)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "learnship",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.2",
|
|
4
4
|
"description": "Learn as you build. Build with intent. — A multi-platform agentic engineering system for Windsurf, Claude Code, Cursor, OpenCode, Gemini CLI, and Codex: spec-driven workflows, integrated learning, and production-grade design.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"agentic",
|