omnilearn-workflow 1.0.9 → 1.0.11
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.
|
@@ -39,7 +39,7 @@ Both scenarios follow the same core flow: research → analyze → produce struc
|
|
|
39
39
|
└── topics/
|
|
40
40
|
└── <topic>/
|
|
41
41
|
├── topic-roadmap.md ← Will be updated if refined
|
|
42
|
-
├── topic-explanation.md ← Theory
|
|
42
|
+
├── topic-explanation.md ← Theory: Expert-grade deep-dive (context hook → progressive layers → annotated examples → misconceptions → checkpoints) — updated if refined
|
|
43
43
|
├── topic-progress.md ← Progress state (preserved)
|
|
44
44
|
├── assignments/ ← May be added to if needed
|
|
45
45
|
│ ├── 01-<concept>/
|
|
@@ -76,7 +76,7 @@ This command performs the same rigorous research-backed process as `/omnilearn-r
|
|
|
76
76
|
└── topics/ ← MUST be preserved — never delete or alter
|
|
77
77
|
└── <topic-name>/
|
|
78
78
|
├── topic-roadmap.md
|
|
79
|
-
├── topic-explanation.md ← Theory
|
|
79
|
+
├── topic-explanation.md ← Theory: Expert-grade deep-dive (context hook → progressive layers → annotated examples → misconceptions → checkpoints)
|
|
80
80
|
├── topic-progress.md ← 🔑 Source of truth for user progress
|
|
81
81
|
├── assignments/ ← MUST NOT be modified
|
|
82
82
|
│ ├── 01-<concept>/
|
|
@@ -32,7 +32,7 @@ description: Create a comprehensive, real-world-ready learning roadmap for any s
|
|
|
32
32
|
└── topics/ ← Topics in the roadmap
|
|
33
33
|
└── <topic-name>/ ← One per topic
|
|
34
34
|
├── topic-roadmap.md ← Detailed subtopic roadmap
|
|
35
|
-
├── topic-explanation.md ← Theory:
|
|
35
|
+
├── topic-explanation.md ← Theory: Expert-grade deep-dive (context hook → progressive layers → annotated examples → misconceptions → checkpoints)
|
|
36
36
|
├── topic-progress.md ← 🔑 Progress: assignments, sessions, skills
|
|
37
37
|
├── assignments/
|
|
38
38
|
│ ├── 01-<concept>/
|
|
@@ -30,7 +30,7 @@ description: Start an interactive learning session. Generates hands-on assignmen
|
|
|
30
30
|
|
|
31
31
|
### What Every Topic Produces
|
|
32
32
|
|
|
33
|
-
1. **`topic-explanation.md`** —
|
|
33
|
+
1. **`topic-explanation.md`** — Expert-grade theory explainer: context hook → progressive layers (simple→complex) → annotated examples → misconceptions → checkpoints. Each layer is self-contained and correct; they build up WITHOUT assuming prior technical depth.
|
|
34
34
|
2. **Hands-on assignments** — calibrated difficulty: baseline → adjusted based on performance. NOT a fixed ladder.
|
|
35
35
|
3. **Test scripts** — immediate feedback so the user knows if they're on track.
|
|
36
36
|
4. **Scaffold code** — starter files so they jump straight into coding, not boilerplate.
|
|
@@ -58,7 +58,7 @@ The goal metric: **Can the user apply what they learned to real-world problems t
|
|
|
58
58
|
└── topics/
|
|
59
59
|
└── <topic-name>/ ← e.g., "error-handling", "neural-networks"
|
|
60
60
|
├── topic-roadmap.md ← Detailed subtopic roadmap (created on-demand)
|
|
61
|
-
├── **topic-explanation.md** ← ← 🔑 THEORY:
|
|
61
|
+
├── **topic-explanation.md** ← ← 🔑 THEORY: Expert-grade explanation (context hook → progressive layers 1→2→3 → annotated examples → misconceptions → checkpoints → bridge to assignments)
|
|
62
62
|
├── topic-progress.md ← 🔑 PROGRESS LIVES HERE: assignment status, sessions, skills demonstrated
|
|
63
63
|
├── assignments/
|
|
64
64
|
│ ├── 01-<concept-basics>/
|
|
@@ -265,54 +265,117 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
|
|
|
265
265
|
|
|
266
266
|
### 2. ...
|
|
267
267
|
|
|
268
|
-
## Assignment Structure
|
|
269
|
-
-
|
|
270
|
-
-
|
|
271
|
-
-
|
|
268
|
+
## Assignment Structure (Adaptive — Determined During Learning)
|
|
269
|
+
- **Assignments are NOT pre-defined.** They are generated on-demand based on the user's performance, ZPD, and pace.
|
|
270
|
+
- The general trajectory is: Baseline → Stretch → Real-World, but the number of assignments and their specific difficulty is determined adaptively.
|
|
271
|
+
- If the user breezes through, they get fewer, harder assignments. If they struggle, they get more scaffolding and intermediate bridging exercises.
|
|
272
|
+
- The final assignment will be a real-world scenario that integrates this topic with other skills the user knows.
|
|
272
273
|
|
|
273
274
|
STEP 3 — Create topic-explanation.md at:
|
|
274
275
|
{TOPICS_DIR}/{topic}/topic-explanation.md
|
|
275
276
|
|
|
276
277
|
This is the THEORETICAL FOUNDATION the user reads BEFORE attempting assignments.
|
|
277
|
-
|
|
278
|
-
|
|
278
|
+
|
|
279
|
+
**CRITICAL PEDAGOGY RULES** (based on cognitive load theory + expert teaching research):
|
|
280
|
+
- **One-Level-Down Rule**: Start one level simpler than you think the user needs. You can always go deeper; you cannot undo confusion once it sets in. Each layer must be a correct (if simplified) mental model.
|
|
281
|
+
- **Unpack → Complexity → Repack**: Deconstruct the concept to its essence, progressively add real-world constraints, then reconstruct into a coherent mental model the user can carry forward.
|
|
282
|
+
- **Assume Nothing**: Make ALL prerequisites explicit. The user is here to LEARN. Do not assume they know the surrounding jargon unless you stated it as a prerequisite.
|
|
283
|
+
- **One New Idea at a Time**: Working memory holds ~4 chunks. Never introduce multiple new concepts in the same paragraph.
|
|
284
|
+
- **Concrete Before Abstract**: Show the full working example FIRST, then explain why it works. Humans learn patterns, then rules.
|
|
285
|
+
- **Address Misconceptions Proactively**: For every concept, anticipate the 2-3 most common confusions and address them BEFORE the user gets confused.
|
|
286
|
+
- **Active > Passive**: Embed quick checkpoints. The user should pause, think, or answer before moving on.
|
|
287
|
+
- **The Completeness Test**: Each layer must give a correct mental model IN ISOLATION. Layer 1 must not contradict Layer 3 — it's a simplified version of the same truth.
|
|
288
|
+
|
|
289
|
+
Use this format:
|
|
279
290
|
|
|
280
291
|
# {topic}
|
|
292
|
+
|
|
293
|
+
⏱️ Estimated reading time: {X}-{Y} minutes (varies by your depth preference — Layer 1 alone is ~3 min)
|
|
294
|
+
|
|
295
|
+
## Why This Matters
|
|
296
|
+
Start with a problem the reader has felt. A concrete situation: "You're building X and you notice Y behavior. You try Z but it doesn't work. That's because..."
|
|
297
|
+
|
|
298
|
+
**Hook them with the pain this concept solves.** Do NOT start with a definition. Start with the human situation.
|
|
299
|
+
|
|
300
|
+
> Example: Instead of "FastAPI is a modern web framework for Python", say: "You've built a Python script that processes data. Now you need to expose it as an API so others can call it. You could use Flask, but you notice it doesn't validate request data, your docs are hand-written, and async endpoints need boilerplate. FastAPI solves these three problems in one go."
|
|
301
|
+
|
|
302
|
+
## Prerequisites
|
|
303
|
+
Explicit checklist of what the user should already know. Numbered. No surprises.
|
|
304
|
+
```
|
|
305
|
+
Before reading this, you should be comfortable with:
|
|
306
|
+
1. {concept A} — we'll use it to build {new concept}
|
|
307
|
+
2. {concept B} — understanding this makes {topic} click faster
|
|
308
|
+
3. {tool/library C} — basic usage required
|
|
281
309
|
|
|
282
|
-
|
|
283
|
-
|
|
310
|
+
Not there yet? Review: {link to prerequisite topic or resource}
|
|
311
|
+
```
|
|
312
|
+
**Be honest here.** If you list something as a prerequisite and it actually isn't needed, you'll scare the user off. If you skip listing something that IS needed, the user will get confused.
|
|
313
|
+
|
|
314
|
+
## Layer 1: The Core Idea (One Level Down)
|
|
315
|
+
|
|
316
|
+
The simplest correct explanation. If you were explaining this to someone who knows the prerequisites but nothing more about this topic.
|
|
317
|
+
|
|
318
|
+
Describe the concept using:
|
|
319
|
+
- An analogy to something familiar (if one exists and is correct)
|
|
320
|
+
- The minimal working example — no edge cases, no error handling
|
|
321
|
+
- The ONE thing that makes this concept different from what the user already knows
|
|
322
|
+
|
|
323
|
+
Use **bold** for new terminology. Define each term inline immediately.
|
|
284
324
|
|
|
285
|
-
|
|
286
|
-
3-5 key concepts explained concisely. Each concept gets 2-3 sentences max. Use **bold** for terminology being introduced.
|
|
287
|
-
- **{Concept 1}**: What it is. Why it exists. How it connects to other concepts here.
|
|
288
|
-
- **{Concept 2}**: ...
|
|
325
|
+
> **Keep it to 1-2 paragraphs max.** If you need more, you're not one level down enough.
|
|
289
326
|
|
|
290
|
-
## How It Works
|
|
291
|
-
|
|
327
|
+
## Layer 2: How It Actually Works
|
|
328
|
+
|
|
329
|
+
Now add real-world constraints. Pick up from Layer 1 and show the same concept with:
|
|
330
|
+
- The actual mechanics (code, system interaction, protocol details)
|
|
331
|
+
- Concrete syntax / implementation patterns
|
|
332
|
+
- How the pieces connect (architecture flow, data flow, call sequence)
|
|
333
|
+
- **Why** each piece exists (not just what it does)
|
|
334
|
+
|
|
335
|
+
For technical topics: include annotated code blocks where every line/block is explained with a comment on WHY it's there.
|
|
292
336
|
|
|
293
337
|
```{language}
|
|
294
|
-
#
|
|
338
|
+
# Line 1: We do X because... (REASON, not description)
|
|
339
|
+
# Line 2: This handles Y edge case because...
|
|
340
|
+
# Line 3: Without this, Z would break because...
|
|
295
341
|
```
|
|
296
342
|
|
|
297
|
-
> **
|
|
343
|
+
> **If the topic isn't code** (e.g., system design, ML theory): use concrete diagrams described in text. "The flow goes: Client → Load Balancer → Service A. The load balancer exists because..." Show the sequence explicitly.
|
|
344
|
+
|
|
345
|
+
## Layer 3: Real-World Production Context
|
|
346
|
+
|
|
347
|
+
Now go deeper. What changes when this runs at scale, in production, with real traffic?
|
|
298
348
|
|
|
299
|
-
|
|
300
|
-
|
|
349
|
+
- **Common Misconceptions** (2-3, proactively addressed):
|
|
350
|
+
| What People Think | What Actually Happens | Why The Confusion |
|
|
351
|
+
|------------------|----------------------|-------------------|
|
|
352
|
+
| "X does Y" | Actually X does Z because..." | "This confusion comes from..." |
|
|
301
353
|
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
354
|
+
- **Edge Cases & Failure Modes**: What breaks and why. How to handle it.
|
|
355
|
+
- **Trade-offs**: What you gain vs what you sacrifice by using this approach.
|
|
356
|
+
- **Performance & Security**: How this behaves under load. Security considerations.
|
|
357
|
+
- **Production Patterns**: How experienced practitioners actually use this (tools, configs, monitoring).
|
|
305
358
|
|
|
306
|
-
|
|
307
|
-
3-5 bullet points on how this is used in production / real-world scenarios. This bridges theory to the assignments.
|
|
359
|
+
> **Don't scare the user.** Frame these as: "Now that you understand the basics, here's how experienced engineers think about this. You don't need to master all of this today, but knowing these patterns will save you hours of debugging."
|
|
308
360
|
|
|
309
|
-
##
|
|
310
|
-
|
|
361
|
+
## Learning Checkpoints
|
|
362
|
+
|
|
363
|
+
Quick verification questions. The user should be able to answer these after reading. They are NOT graded — they're self-checks.
|
|
364
|
+
|
|
365
|
+
```
|
|
366
|
+
1. {Concept name}: In your own words, explain what this does and why it exists.
|
|
367
|
+
2. {Scenario question}: If {situation X} happens, what would {concept} do?
|
|
368
|
+
3. {Compare/contrast}: How is {this concept} different from {similar concept the user might confuse it with}?
|
|
369
|
+
|
|
370
|
+
If you can't answer these, re-read Layer 1 and Layer 2 above. If you're still unsure, ask me to clarify before starting the assignment.
|
|
371
|
+
```
|
|
311
372
|
|
|
312
373
|
## Ready to Practice?
|
|
313
|
-
Brief bridge sentence
|
|
374
|
+
Brief bridge sentence connecting theory to the first assignment. Reference specific concepts from the explanation:
|
|
314
375
|
|
|
315
|
-
|
|
376
|
+
"Now that you understand {concept from Layer 1} and {pattern from Layer 2}, open assignment 01-{name} to apply it. Pay special attention to {specific gotcha from Layer 3}."
|
|
377
|
+
|
|
378
|
+
STEP 4 — Create Assignment 1 (the first one) at:
|
|
316
379
|
{TOPICS_DIR}/{topic}/assignments/01-{concept}/
|
|
317
380
|
|
|
318
381
|
Create these files:
|
|
@@ -334,10 +397,28 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
|
|
|
334
397
|
- Use the simplest possible test setup
|
|
335
398
|
|
|
336
399
|
c) scaffold/ directory with starter files:
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
400
|
+
|
|
401
|
+
GOLDEN RULE: The user must be able to go from `cd scaffold/` to `running the test` in ONE command.
|
|
402
|
+
If the assignment isn't testing setup/environment skills, automate ALL of that.
|
|
403
|
+
|
|
404
|
+
- Include a setup script (`setup.sh` for Unix, `setup.ps1` for Windows) that:
|
|
405
|
+
* Creates virtual environment (Python: `python -m venv .venv`), or installs deps (Node: `npm install`)
|
|
406
|
+
* Installs required packages
|
|
407
|
+
* Prints "Environment ready! Run this command to start: ..."
|
|
408
|
+
- OR include a one-liner in the scaffold README: `python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt`
|
|
409
|
+
- Include `requirements.txt` / `package.json` with ALL needed deps pre-listed
|
|
410
|
+
- Minimal code structure — only the files the user needs to touch
|
|
411
|
+
- Comments marking where to write code // TODO: or # TODO:
|
|
412
|
+
- Import/require statements already in place
|
|
413
|
+
- Cross-skill integration: if the user knows {related_skill}, structure the scaffold to use familiar patterns from it
|
|
414
|
+
- If the topic is NOT a programming topic (e.g., system design), provide templates or worksheets instead
|
|
415
|
+
|
|
416
|
+
ANNOYING THINGS TO NEVER DO:
|
|
417
|
+
- Do NOT make the user manually create a venv or install packages unless the assignment is specifically about that
|
|
418
|
+
- Do NOT leave unlisted imports — if a package is needed, it must be in requirements.txt / package.json
|
|
419
|
+
- Do NOT require the user to set up databases, API keys, or external services without providing clear instructions or a docker-compose.yml
|
|
420
|
+
- Do NOT leave configuration files empty or incomplete — provide working defaults
|
|
421
|
+
- Do NOT make the user hunt for the right Python/Node version — specify it in the scaffold or use `.nvmrc`/`.python-version`
|
|
341
422
|
|
|
342
423
|
d) solution-guide.md — CRITICAL: Must be researched, accurate, and complete.
|
|
343
424
|
|
|
@@ -411,7 +492,7 @@ STEP 5 — Create topic-progress.md at:
|
|
|
411
492
|
- Do NOT create all assignments at once — only the first one. Subsequent assignments are generated on-demand as the user progresses.
|
|
412
493
|
- Do NOT make assignments purely theoretical — use real-world scenarios
|
|
413
494
|
- Do NOT skip the scaffold — the user should be able to start coding immediately
|
|
414
|
-
- Do NOT make topic-explanation.md
|
|
495
|
+
- Do NOT make topic-explanation.md a wall of text — use whitespace, headings, examples, and checkpoints to break it up. Each layer should take 3-5 minutes to read. The full document is a thorough deep-dive, not a skim.
|
|
415
496
|
- Do NOT use any external packages that aren't standard library without noting it
|
|
416
497
|
- Do NOT create assignments that are too easy (basic concept application) or too hard (leaps without foundation)
|
|
417
498
|
- Do NOT leave TODOs in scaffold that require making unrelated architectural decisions
|
|
@@ -425,18 +506,38 @@ STEP 5 — Create topic-progress.md at:
|
|
|
425
506
|
- User experience level: {from preferences}
|
|
426
507
|
- User learning style: {from preferences}
|
|
427
508
|
- Skill conventions (package manager, project structure, deps, testing setup): {from SkillConventions.md — read before generating scaffold}
|
|
509
|
+
- Cross-skill context (other skills user knows, so scaffold can use familiar patterns): {from cross-skill inventory}
|
|
428
510
|
")
|
|
429
511
|
```
|
|
430
512
|
|
|
431
513
|
After completion, verify:
|
|
432
514
|
- topic-roadmap.md exists with proper structure
|
|
433
|
-
- **topic-explanation.md exists with all required sections (
|
|
515
|
+
- **topic-explanation.md exists with all required sections (Why This Matters, Prerequisites, Layer 1, Layer 2, Learning Checkpoints, Ready to Practice)**
|
|
434
516
|
- Assignment 1 exists with all 4 files (question.md, test, scaffold, solution-guide.md)
|
|
435
517
|
- Test script is syntactically valid (run a quick check)
|
|
436
518
|
|
|
437
|
-
If anything is missing, fix via session continuation: `task(task_id="<session_id>", prompt="Fix: {missing element}")
|
|
519
|
+
If anything is missing, fix via session continuation: `task(task_id="<session_id>", prompt="Fix: {missing element}")"
|
|
520
|
+
|
|
521
|
+
## Phase 1.5: READINESS GATE — Teach Before Test
|
|
438
522
|
|
|
439
|
-
**
|
|
523
|
+
**The user MUST read the theory before touching assignments.** This is non-negotiable.
|
|
524
|
+
|
|
525
|
+
1. Present the topic-explanation.md to the user:
|
|
526
|
+
> "Before we jump into coding, let's cover the concepts you need.
|
|
527
|
+
>
|
|
528
|
+
> 📖 **{SKILL_DIR}/topics/{topic}/topic-explanation.md**
|
|
529
|
+
>
|
|
530
|
+
> This covers: Why This Matters → Prerequisites → Layer 1 (Core Idea) → Layer 2 (How It Works) → Layer 3 (Production Context) → Learning Checkpoints → Ready to Practice
|
|
531
|
+
> It should take about 5-10 minutes to read.
|
|
532
|
+
>
|
|
533
|
+
> Let me know when you've finished reading, or ask me questions about anything that's unclear."
|
|
534
|
+
|
|
535
|
+
2. **Wait for the user to confirm they've read it.** Do NOT skip this step.
|
|
536
|
+
- If they ask questions → answer them (using diagnostic task pattern from Phase 3 if needed)
|
|
537
|
+
- If they say "I already know this" → ask 2 quick concept-checking questions to verify. If they pass, skip. If they fail, tell them to read it.
|
|
538
|
+
- If they say "ready" → proceed.
|
|
539
|
+
|
|
540
|
+
3. **Only after confirmation** → proceed to Phase 2.
|
|
440
541
|
|
|
441
542
|
## Phase 2: ASSIGNMENT PRESENTATION
|
|
442
543
|
|
|
@@ -685,9 +786,18 @@ task(category="unspecified-high", run_in_background=false, timeout=300000, promp
|
|
|
685
786
|
- Self-contained and runnable
|
|
686
787
|
|
|
687
788
|
c) scaffold/ — Starter code:
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
789
|
+
|
|
790
|
+
GOLDEN RULE: The user must go from `cd scaffold/` to running tests in ONE command.
|
|
791
|
+
|
|
792
|
+
- Include setup script (`setup.sh` + `setup.ps1`) that auto-creates env + installs deps
|
|
793
|
+
- OR one-liner setup instructions in a README
|
|
794
|
+
- `requirements.txt` / `package.json` with ALL deps pre-listed
|
|
795
|
+
- Minimal boilerplate — only what the user needs to touch
|
|
796
|
+
- TODO markers for user implementation
|
|
797
|
+
- All necessary imports/includes set up
|
|
798
|
+
- If the user knows {related_skill} from SkillConventions.md, use familiar patterns
|
|
799
|
+
- Auto-setup: `python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt`
|
|
800
|
+
- NEVER make the user manually install packages (unless assignment tests that skill)
|
|
691
801
|
|
|
692
802
|
d) solution-guide.md — CRITICAL: Must be researched and accurate.
|
|
693
803
|
|
|
@@ -737,11 +847,12 @@ task(category="unspecified-high", run_in_background=false, timeout=300000, promp
|
|
|
737
847
|
6. CONTEXT:
|
|
738
848
|
- Skill: {skill}
|
|
739
849
|
- Topic: {topic}
|
|
740
|
-
- Assignment number: {n}
|
|
741
|
-
- Difficulty: {
|
|
850
|
+
- Assignment number: {n}
|
|
851
|
+
- Difficulty: {current difficulty level}
|
|
742
852
|
- Previous assignment concepts: {summary}
|
|
743
853
|
- User performance on previous assignment: {observations}
|
|
744
854
|
- Skill conventions (package manager, project structure, deps, testing setup): {from SkillConventions.md — MUST follow these when generating scaffold}
|
|
855
|
+
- Cross-skill context (other skills the user knows): {from cross-skill inventory — integrate these patterns into the scaffold if relevant}
|
|
745
856
|
")
|
|
746
857
|
```
|
|
747
858
|
|
|
@@ -872,8 +983,8 @@ If no git repo: ask if user wants to initialize one (same as /omnilearn-roadmap)
|
|
|
872
983
|
| Skill roadmap exists | 0 | Tell user to run /omnilearn-roadmap first |
|
|
873
984
|
| User preferences read | 0 | Read the files |
|
|
874
985
|
| Topic roadmap exists (if needed) | 1.4 | Create it via deep subagent |
|
|
875
|
-
| topic-explanation.md exists with all sections (
|
|
876
|
-
| topic-explanation.md is
|
|
986
|
+
| topic-explanation.md exists with all sections (Why This Matters, Prerequisites, Layer 1, Layer 2, Layer 3, Learning Checkpoints, Ready to Practice) | 1.4 | Re-generate — topic-explanation.md is mandatory |
|
|
987
|
+
| topic-explanation.md is a proper deep-dive (not shallow, not a wall of text) | 1.4 | Add more depth or break into sections with whitespace and examples |
|
|
877
988
|
| Assignment 1 exists (question, test, scaffold, solution) | 1.4 | Fix incomplete assignment |
|
|
878
989
|
| Assignment tests are syntactically valid | 1.4 | Quick syntax check, fix if broken |
|
|
879
990
|
| topic-progress.md created when topic roadmap is made | 1.4 | Create it with proper structure |
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "omnilearn-workflow",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.11",
|
|
4
4
|
"description": "OmniLearn — AI-powered adaptive learning workflow for OpenCode. Multi-agent orchestration that creates personalized roadmaps, hands-on assignments, and tracks progress across any skill.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"opencode",
|