omnilearn-workflow 1.0.5 → 1.0.7
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,6 +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 foundation (updated if refined)
|
|
42
43
|
├── assignments/ ← May be added to if needed
|
|
43
44
|
└── runs/
|
|
44
45
|
```
|
|
@@ -75,6 +75,7 @@ This command performs the same rigorous research-backed process as `/omnilearn-r
|
|
|
75
75
|
│ └── new-roadmap-draft.md ← Draft of updated roadmap
|
|
76
76
|
└── topics/ ← MUST be preserved — never delete or alter topic-progress.md, assignments/, or runs/
|
|
77
77
|
└── <topic-name>/
|
|
78
|
+
├── topic-explanation.md ← Theory foundation (read before assignments)
|
|
78
79
|
├── topic-progress.md ← 🔑 THE source of truth for what the user has done
|
|
79
80
|
├── assignments/ ← All assignment work the user has completed
|
|
80
81
|
└── runs/ ← Learning session logs
|
|
@@ -32,6 +32,7 @@ description: Create a comprehensive, real-world-ready learning roadmap for any s
|
|
|
32
32
|
└── topics/ ← Topics in the roadmap (populated during learning)
|
|
33
33
|
└── <topic-name>/ ← Each topic has its own progress tracking
|
|
34
34
|
├── topic-roadmap.md ← Detailed subtopic roadmap (created on-demand)
|
|
35
|
+
├── **topic-explanation.md** ← ← 🔑 THEORY: TL;DR → concepts → examples → pitfalls (read this first)
|
|
35
36
|
├── topic-progress.md ← Per-topic progress: assignments status, sessions
|
|
36
37
|
├── assignments/ ← Hands-on assignments (generated during learning)
|
|
37
38
|
│ ├── 01-<concept>/
|
|
@@ -15,12 +15,26 @@ description: Start an interactive learning session. Generates hands-on assignmen
|
|
|
15
15
|
|
|
16
16
|
## Core Learning Philosophy
|
|
17
17
|
|
|
18
|
-
**
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
18
|
+
**Learning happens in the Zone of Proximal Development (ZPD)**: just beyond what the user can do alone, but achievable with scaffolding. The goal is NOT to test them — it's to TEACH them through calibrated challenge.
|
|
19
|
+
|
|
20
|
+
### Key Principles (Backed by Research)
|
|
21
|
+
|
|
22
|
+
| Principle | What It Means |
|
|
23
|
+
|-----------|---------------|
|
|
24
|
+
| **Zone of Proximal Development** | Tasks should be just above current ability + supported by hints, scaffolds, and guidance. Never drop someone into the deep end alone. |
|
|
25
|
+
| **Desirable Difficulty** | Productive struggle grows skills — but only when scaffolding exists. Challenge without support = frustration. |
|
|
26
|
+
| **85% Rule** | Optimal learning happens when ~85% of the task is familiar and ~15% is new. Calibrate so the user succeeds most of the time but has to stretch. |
|
|
27
|
+
| **Flow State** | Challenge must match skill level. Too easy → boredom. Too hard → anxiety. The agent's job is to keep the user in flow by adjusting difficulty dynamically. |
|
|
28
|
+
| **Scaffolding & Fading** | Start with strong support (detailed hints, guided steps). Fade support as the user gains competence. |
|
|
29
|
+
| **Immediate Feedback** | Automated tests give instant signal. Use test results to detect struggle early and adjust. |
|
|
30
|
+
|
|
31
|
+
### What Every Topic Produces
|
|
32
|
+
|
|
33
|
+
1. **`topic-explanation.md`** — Concise theory: TL;DR → core concepts → annotated examples → common pitfalls → best practices. The minimum viable theory before touching code.
|
|
34
|
+
2. **Hands-on assignments** — calibrated difficulty: baseline → adjusted based on performance. NOT a fixed ladder.
|
|
35
|
+
3. **Test scripts** — immediate feedback so the user knows if they're on track.
|
|
36
|
+
4. **Scaffold code** — starter files so they jump straight into coding, not boilerplate.
|
|
37
|
+
5. **Solution guides** — reference implementations with explanation.
|
|
24
38
|
|
|
25
39
|
The goal metric: **Can the user apply what they learned to real-world problems they haven't seen before?**
|
|
26
40
|
|
|
@@ -44,6 +58,7 @@ The goal metric: **Can the user apply what they learned to real-world problems t
|
|
|
44
58
|
└── topics/
|
|
45
59
|
└── <topic-name>/ ← e.g., "error-handling", "neural-networks"
|
|
46
60
|
├── topic-roadmap.md ← Detailed subtopic roadmap (created on-demand)
|
|
61
|
+
├── **topic-explanation.md** ← ← 🔑 THEORY: concise concept explanation (TL;DR → concepts → examples → pitfalls → best practices)
|
|
47
62
|
├── topic-progress.md ← 🔑 PROGRESS LIVES HERE: assignment status, sessions, skills demonstrated
|
|
48
63
|
├── assignments/
|
|
49
64
|
│ ├── 01-<concept-basics>/
|
|
@@ -255,7 +270,49 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
|
|
|
255
270
|
- Each builds on the previous. More than 3 can be created if the user needs extra practice or the topic is deep.
|
|
256
271
|
- Final assignment should be a mini-project or real-world scenario
|
|
257
272
|
|
|
258
|
-
STEP 3 — Create
|
|
273
|
+
STEP 3 — Create topic-explanation.md at:
|
|
274
|
+
{TOPICS_DIR}/{topic}/topic-explanation.md
|
|
275
|
+
|
|
276
|
+
This is the THEORETICAL FOUNDATION the user reads BEFORE attempting assignments.
|
|
277
|
+
It must be concise but complete — the minimum viable theory to understand the topic.
|
|
278
|
+
Use this proven format (based on Diátaxis framework + developer learning research):
|
|
279
|
+
|
|
280
|
+
# {topic}
|
|
281
|
+
|
|
282
|
+
## TL;DR
|
|
283
|
+
One paragraph. What this is and why it matters in the real world. Assume the user is scanning.
|
|
284
|
+
|
|
285
|
+
## Core Concepts
|
|
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}**: ...
|
|
289
|
+
|
|
290
|
+
## How It Works (with Examples)
|
|
291
|
+
Annotated code/example blocks showing the concept in action. Use the Diátaxis "Explanation" quadrant — explain WHY each line matters, not just WHAT it does.
|
|
292
|
+
|
|
293
|
+
```{language}
|
|
294
|
+
# Annotated example with numbered comments
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
> **Note:** If the topic isn't code (e.g., system design, ML theory), use diagrams described in text or real-world analogies.
|
|
298
|
+
|
|
299
|
+
## Common Pitfalls
|
|
300
|
+
Table format for scannability:
|
|
301
|
+
|
|
302
|
+
| Pitfall | Why It Happens | How to Avoid |
|
|
303
|
+
|---------|---------------|--------------|
|
|
304
|
+
| {mistake} | {root cause} | {solution} |
|
|
305
|
+
|
|
306
|
+
## Best Practices
|
|
307
|
+
3-5 bullet points on how this is used in production / real-world scenarios. This bridges theory to the assignments.
|
|
308
|
+
|
|
309
|
+
## Key Takeaways
|
|
310
|
+
3-5 bullet points the user should remember after reading. These are memory anchors for the assignments.
|
|
311
|
+
|
|
312
|
+
## Ready to Practice?
|
|
313
|
+
Brief bridge sentence to Assignment 1: "Now that you understand {concept}, open assignment 01-{name} to apply it."
|
|
314
|
+
|
|
315
|
+
STEP 4 — Create Assignment 1 (the first one) at:
|
|
259
316
|
{TOPICS_DIR}/{topic}/assignments/01-{concept}/
|
|
260
317
|
|
|
261
318
|
Create these files:
|
|
@@ -290,9 +347,9 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
|
|
|
290
347
|
- Common mistakes and how to avoid them
|
|
291
348
|
- Real-world connections
|
|
292
349
|
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
350
|
+
STEP 5 — Create topic-progress.md at:
|
|
351
|
+
{TOPICS_DIR}/{topic}/topic-progress.md
|
|
352
|
+
|
|
296
353
|
This is the AUTHORITATIVE progress tracker for this topic. Structure:
|
|
297
354
|
|
|
298
355
|
# Progress: {topic}
|
|
@@ -318,9 +375,10 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
|
|
|
318
375
|
- Add topic entry with status 🔵 In Progress and a link to topic-progress.md
|
|
319
376
|
|
|
320
377
|
5. MUST NOT DO:
|
|
321
|
-
- Do NOT create all assignments at once — only
|
|
378
|
+
- Do NOT create all assignments at once — only the first one. Subsequent assignments are generated on-demand as the user progresses.
|
|
322
379
|
- Do NOT make assignments purely theoretical — use real-world scenarios
|
|
323
380
|
- Do NOT skip the scaffold — the user should be able to start coding immediately
|
|
381
|
+
- Do NOT make topic-explanation.md too verbose — keep it scannable. If a section takes more than 2 minutes to read, it's too long.
|
|
324
382
|
- Do NOT use any external packages that aren't standard library without noting it
|
|
325
383
|
- Do NOT create assignments that are too easy (basic concept application) or too hard (leaps without foundation)
|
|
326
384
|
- Do NOT leave TODOs in scaffold that require making unrelated architectural decisions
|
|
@@ -337,6 +395,7 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
|
|
|
337
395
|
|
|
338
396
|
After completion, verify:
|
|
339
397
|
- topic-roadmap.md exists with proper structure
|
|
398
|
+
- **topic-explanation.md exists with all required sections (TL;DR, Core Concepts, Examples, Pitfalls, Best Practices, Takeaways)**
|
|
340
399
|
- Assignment 1 exists with all 4 files (question.md, test, scaffold, solution-guide.md)
|
|
341
400
|
- Test script is syntactically valid (run a quick check)
|
|
342
401
|
|
|
@@ -362,7 +421,10 @@ Read the assignment files for the current topic:
|
|
|
362
421
|
│ │
|
|
363
422
|
│ {brief description of the assignment} │
|
|
364
423
|
│ │
|
|
424
|
+
│ 📖 Start here: topic-explanation.md — read the theory first │
|
|
425
|
+
│ │
|
|
365
426
|
│ Files: │
|
|
427
|
+
│ • Theory: {SKILL_DIR}/topics/{topic}/topic-explanation.md │
|
|
366
428
|
│ • Question: {SKILL_DIR}/topics/{topic}/assignments/ │
|
|
367
429
|
│ 01-{name}/question.md │
|
|
368
430
|
│ • Scaffold: (same directory)/scaffold/ │
|
|
@@ -370,7 +432,8 @@ Read the assignment files for the current topic:
|
|
|
370
432
|
│ • Solution guide: (same directory)/solution-guide.md │
|
|
371
433
|
│ │
|
|
372
434
|
│ To work on this: │
|
|
373
|
-
│ 1. Read
|
|
435
|
+
│ 1. Read topic-explanation.md for the concepts │
|
|
436
|
+
│ 2. Read the question.md carefully │
|
|
374
437
|
│ 2. Use the scaffold to write your solution │
|
|
375
438
|
│ 3. Run the test to verify your solution │
|
|
376
439
|
│ 4. Ask me questions if you're stuck │
|
|
@@ -409,15 +472,17 @@ task(category="unspecified-high", run_in_background=false, prompt="
|
|
|
409
472
|
|
|
410
473
|
4. MUST DO:
|
|
411
474
|
- **CURRENT DATE: {CURRENT_DATE}** — ONLY research current information. Check for deprecation warnings. If a library/framework has a newer standard (e.g. CRA → Vite, pip → uv), reference the current approach.
|
|
475
|
+
- **ZPD calibration**: The user is struggling with this concept. The micro-exercise must be EASIER than the main assignment — it fills the gap, not adds more difficulty. ~90% familiar / 10% new.
|
|
412
476
|
- Read the current assignment: {ASSIGNMENT_DIR}/question.md (to understand context without giving away the solution)
|
|
413
477
|
- Research the concept online to find the MOST COMMON confusion points
|
|
414
478
|
- Design a micro-exercise that:
|
|
415
479
|
* ISOLATES the confusing concept — removes unrelated complexity
|
|
416
480
|
* Is a real-world-ish scenario (NOT 'write a function that...' — frame it as solving a problem)
|
|
417
|
-
* Can be solved in 5-15 minutes
|
|
481
|
+
* Can be solved in 5-15 minutes (if it takes longer, it's outside ZPD — add more scaffolding)
|
|
418
482
|
* Requires the user to WRITE CODE / PRODUCE SOMETHING to complete
|
|
419
483
|
* Has a CLEAR RIGHT ANSWER that can be verified
|
|
420
|
-
|
|
484
|
+
* INCLUDES built-in scaffolding: starter code, inline hints (commented), or step guidance
|
|
485
|
+
- DO NOT write academic explanations. The exercise IS the teaching tool.
|
|
421
486
|
- Include in the exercise brief:
|
|
422
487
|
* A short scenario (1-2 sentences)
|
|
423
488
|
* What to build
|
|
@@ -438,6 +503,7 @@ task(category="unspecified-high", run_in_background=false, prompt="
|
|
|
438
503
|
- Concept: {concept}
|
|
439
504
|
- User's confusion: {their exact question}
|
|
440
505
|
- User experience level: {from preferences}
|
|
506
|
+
- ZPD directive: This micro-exercise must be EASIER than the main assignment. The user is struggling — your job is to fill the gap, not stretch further. ~90% familiar / 10% new.
|
|
441
507
|
")
|
|
442
508
|
```
|
|
443
509
|
|
|
@@ -450,27 +516,39 @@ task(category="unspecified-high", run_in_background=false, prompt="
|
|
|
450
516
|
|
|
451
517
|
3. When the user completes the micro-exercise, verify their solution and discuss what they learned. THEN connect it back to the main assignment.
|
|
452
518
|
|
|
453
|
-
4. If the user still doesn't understand after the micro-exercise
|
|
519
|
+
4. If the user still doesn't understand after the micro-exercise:
|
|
520
|
+
- Do NOT make the second one harder. Make it EASIER with MORE scaffolding.
|
|
521
|
+
- Break the concept into smaller sub-concepts and target just one.
|
|
522
|
+
- Provide more starter code, more inline hints, more step-by-step guidance.
|
|
523
|
+
- Only after 2 failed task attempts AND regressed scaffolding, provide a brief direct explanation followed by an even simpler task.
|
|
524
|
+
- If the user is clearly out of their depth, suggest reviewing prerequisites from topic-roadmap.md.
|
|
454
525
|
|
|
455
526
|
**For solution review** (user says "check my solution" or "I'm done"):
|
|
456
527
|
1. Read the user's solution from the scaffold directory.
|
|
457
528
|
2. Do NOT use a subagent — review it yourself (it's quick).
|
|
458
529
|
3. Check:
|
|
459
|
-
- Does it pass the tests?
|
|
530
|
+
- Does it pass the tests? (If not, this tells you they're outside ZPD — offer easier variant)
|
|
460
531
|
- Is the code clean and idiomatic?
|
|
461
532
|
- Are there edge cases not handled?
|
|
462
533
|
- Could it be more efficient?
|
|
463
|
-
4. Provide structured feedback.
|
|
464
|
-
5.
|
|
465
|
-
-
|
|
466
|
-
-
|
|
467
|
-
-
|
|
534
|
+
4. Provide structured feedback. Be encouraging — the goal is teaching, not grading.
|
|
535
|
+
5. **Calibrate next step based on performance:**
|
|
536
|
+
- **Passed easily (no hints, fast, clean code)** → great. Flag for next level: skip easier variants, go straight to stretch.
|
|
537
|
+
- **Passed with some hints or minor issues** → perfect ZPD. Proceed to next level normally.
|
|
538
|
+
- **Passed but needed significant help** → they're at the edge of ZPD. Consider an intermediate bridging assignment before the next difficulty level.
|
|
539
|
+
- **Did NOT pass tests** → **do NOT proceed.** They're outside ZPD. Offer a regressed easier variant or more scaffolding. Create an intermediate exercise that bridges the gap.
|
|
540
|
+
6. Update topic-progress.md with the result and your calibration assessment.
|
|
468
541
|
|
|
469
542
|
**For "I'm stuck" / "give me a hint"**:
|
|
470
543
|
1. Read their current work (if any exists).
|
|
471
|
-
2. Identify where they're stuck.
|
|
472
|
-
3.
|
|
473
|
-
4.
|
|
544
|
+
2. Identify where they're stuck. Is it the core concept or a tangential detail? This tells you if they need ZPD regression.
|
|
545
|
+
3. **First response**: provide a minimal hint that nudges, not solves. See if they can proceed.
|
|
546
|
+
4. **Second response** (still stuck): increase scaffolding. Give more specific guidance, a partial code snippet, or break the next step down.
|
|
547
|
+
5. **Third response** (still stuck): **the assignment is outside their ZPD.** Do NOT keep pushing. Offer to:
|
|
548
|
+
- Create an easier variant of the same assignment with more scaffolding
|
|
549
|
+
- Switch to a bridging micro-exercise that targets the prerequisite they're missing
|
|
550
|
+
- Review the relevant section of topic-explanation.md together
|
|
551
|
+
6. Log the struggle pattern in topic-progress.md so the next agent knows this was a sticking point.
|
|
474
552
|
|
|
475
553
|
**For deeper practice requests** (e.g., "I need more practice with this"):
|
|
476
554
|
```typescript
|
|
@@ -482,14 +560,17 @@ task(category="writing", run_in_background=false, prompt="
|
|
|
482
560
|
|
|
483
561
|
4. MUST DO:
|
|
484
562
|
- **CURRENT DATE: {CURRENT_DATE}** — Use current, real-world examples. Avoid outdated patterns or deprecated APIs.
|
|
563
|
+
- **ZPD calibration**: These exercises should be EASIER than the main assignment — they're bridging exercises, not harder challenges.
|
|
485
564
|
- Read the current assignment to understand what's been covered
|
|
486
|
-
-
|
|
487
|
-
-
|
|
488
|
-
-
|
|
565
|
+
- Identify the SPECIFIC sub-concept the user is struggling with (from their interaction history)
|
|
566
|
+
- Create 2-3 smaller exercises that target ONLY that sub-concept
|
|
567
|
+
- Each should be solvable in 5-15 minutes (if longer, add more scaffolding)
|
|
568
|
+
- Include: brief description, expected output, hints, and partial starter code
|
|
489
569
|
- Save as markdown with code blocks to: {CURRENT_RUN}/interaction-{n}-practice-exercises.md
|
|
490
570
|
|
|
491
571
|
5. MUST NOT:
|
|
492
572
|
- Do NOT repeat the same problems from the main assignment
|
|
573
|
+
- Do NOT make these harder than the main assignment — they bridge the gap, they don't add difficulty
|
|
493
574
|
")
|
|
494
575
|
```
|
|
495
576
|
|
|
@@ -723,6 +804,8 @@ If no git repo: ask if user wants to initialize one (same as /omnilearn-roadmap)
|
|
|
723
804
|
| Skill roadmap exists | 0 | Tell user to run /omnilearn-roadmap first |
|
|
724
805
|
| User preferences read | 0 | Read the files |
|
|
725
806
|
| Topic roadmap exists (if needed) | 1.4 | Create it via deep subagent |
|
|
807
|
+
| topic-explanation.md exists with all sections (TL;DR, Concepts, Examples, Pitfalls, Best Practices, Takeaways) | 1.4 | Re-generate — topic-explanation.md is mandatory |
|
|
808
|
+
| topic-explanation.md is scannable (not verbose) | 1.4 | Trim to essential theory only |
|
|
726
809
|
| Assignment 1 exists (question, test, scaffold, solution) | 1.4 | Fix incomplete assignment |
|
|
727
810
|
| Assignment tests are syntactically valid | 1.4 | Quick syntax check, fix if broken |
|
|
728
811
|
| topic-progress.md created when topic roadmap is made | 1.4 | Create it with proper structure |
|
|
@@ -733,15 +816,32 @@ If no git repo: ask if user wants to initialize one (same as /omnilearn-roadmap)
|
|
|
733
816
|
| SkillPreferences.md updated | 5 | Update with new observations |
|
|
734
817
|
| Git commit made | 6 | Commit or ask user |
|
|
735
818
|
|
|
736
|
-
## Assignment Difficulty
|
|
819
|
+
## Assignment Difficulty Calibration (ZPD + Flow)
|
|
820
|
+
|
|
821
|
+
### The 85% Rule
|
|
822
|
+
Each assignment should be roughly **85% familiar / 15% new**. If the user is struggling with more than ~30% of an assignment, it's outside their ZPD — provide more scaffolding or offer an easier variant.
|
|
823
|
+
|
|
824
|
+
### Difficulty Progression (NOT Fixed)
|
|
825
|
+
|
|
826
|
+
| Phase | Focus | Scaffolding Level | Success Rate Target |
|
|
827
|
+
|-------|-------|-------------------|---------------------|
|
|
828
|
+
| **Baseline** | Establish floor. One straightforward task to gauge current level. | High — detailed hints, guided steps | Should complete easily (>90%) |
|
|
829
|
+
| **Stretch 1** | Core concept + one new twist. First real learning step. | Medium — key hints available | Should complete with some struggle (~80%) |
|
|
830
|
+
| **Stretch 2** | Combine concepts, handle edge cases. Defensible difficulty. | Low — minimal hints, fading support | Productive struggle (~70%) |
|
|
831
|
+
| **Real-World** | Full scenario, multiple concerns, best practices. Maximum stretch. | Minimal — just success criteria | Challenge zone (~60% initial, improve with iteration) |
|
|
832
|
+
|
|
833
|
+
> **If the user succeeds at Baseline too easily** → skip Stretch 1, start at Stretch 2.
|
|
834
|
+
> **If the user fails at Stretch 2** → drop back, provide more scaffolding, or create an intermediate variant.
|
|
835
|
+
> **The goal is never to make the user fail.** It's to keep them in flow — challenged but supported.
|
|
737
836
|
|
|
738
|
-
|
|
739
|
-
|-------|-------|---------------|
|
|
740
|
-
| 01-basic | Core concept application | Can the user apply the fundamental concept correctly? |
|
|
741
|
-
| 02-intermediate | Combined concepts + edge cases | Can the user handle complexity and edge cases? |
|
|
742
|
-
| 03-real-world | Full scenario + best practices | Can the user deliver production-quality code? |
|
|
837
|
+
### Dynamic Adjustment Rules
|
|
743
838
|
|
|
744
|
-
|
|
839
|
+
1. **After each assignment completion**, assess: Did they need hints? How many? How long did it take?
|
|
840
|
+
2. **Passed too easily** (no hints, fast) → skip one difficulty level or add a harder twist.
|
|
841
|
+
3. **Passed with some hints** → perfect. Proceed to next level with similar calibration.
|
|
842
|
+
4. **Failed or excessive struggle** → **do NOT push forward.** Regress: offer an easier variant with more scaffolding, or provide a bridging exercise.
|
|
843
|
+
5. **After 2 consecutive failures on the same level** → the topic is too advanced. Recommend reviewing prerequisites from topic-roadmap.md before continuing.
|
|
844
|
+
6. **The number of assignments per topic is NOT fixed at 3.** Add extra intermediate assignments if the user needs them. Remove levels that are too easy. The goal is learning, not completing a checklist.
|
|
745
845
|
|
|
746
846
|
## Error Recovery
|
|
747
847
|
|
|
@@ -759,12 +859,17 @@ Each level should feel meaningfully harder. The jump from 02 to 03 should be the
|
|
|
759
859
|
|
|
760
860
|
## What You MUST Do
|
|
761
861
|
|
|
862
|
+
- ✅ **Teach, don't test** — The goal is learning, not assessment. Every assignment is a teaching tool.
|
|
863
|
+
- ✅ **Calibrate to ZPD** — First assignment should be baseline (easy, ~90% success). Adjust difficulty based on performance. Never start with max difficulty.
|
|
864
|
+
- ✅ **Follow the 85% Rule** — ~85% familiar, ~15% new. If the user struggles with >30% of the task, it's outside ZPD — provide scaffolding or regress.
|
|
865
|
+
- ✅ **Scaffold then fade** — Start with strong support (detailed hints, starter code, guided steps). Remove scaffolding as competence grows.
|
|
866
|
+
- ✅ **Detect frustration early** — If user says "I'm stuck" 3+ times, the task is outside ZPD. Create an easier variant or bridge exercise.
|
|
762
867
|
- ✅ **Check roadmap exists before starting** — validate the skill is set up
|
|
763
868
|
- ✅ **Read progress before each session** — know where the user left off
|
|
764
869
|
- ✅ **Generate assignments on-demand** — only create what's needed now
|
|
765
870
|
- ✅ **Create topic roadmaps via deep subagent** — autonomous research + structure
|
|
766
871
|
- ✅ **Progress lives in topic-progress.md** — assignment status, sessions, skills demonstrated. Runs/ contains only action logs.
|
|
767
|
-
- ✅ **When user has a doubt, generate a diagnostic micro-task** —
|
|
872
|
+
- ✅ **When user has a doubt, generate a diagnostic micro-task** — but make it EASIER than the main assignment (fills the ZPD gap)
|
|
768
873
|
- ✅ **Update topic-progress.md after every state change** — never batch updates. Then sync progress-index.md (the overview)
|
|
769
874
|
- ✅ **Log all interactions in runs/** — create interaction task files for Q&A, agent-log.md for session actions
|
|
770
875
|
- ✅ **Update user preferences** — when you have clear signal
|
|
@@ -775,10 +880,15 @@ Each level should feel meaningfully harder. The jump from 02 to 03 should be the
|
|
|
775
880
|
## What You MUST NOT Do
|
|
776
881
|
|
|
777
882
|
- ❌ Do NOT create all assignments upfront — generate on-demand as user progresses
|
|
883
|
+
- ❌ Do NOT start with max difficulty — always baseline first, then calibrate
|
|
884
|
+
- ❌ Do NOT push the user beyond ZPD — if they're failing, regress and scaffold more
|
|
885
|
+
- ❌ Do NOT keep the same difficulty after failure — if tests fail, offer an easier variant
|
|
778
886
|
- ❌ Do NOT write explanations when user has a doubt — generate a diagnostic task instead
|
|
779
887
|
- ❌ Do NOT give away solutions when the user is stuck — give them tasks that lead to the answer
|
|
780
888
|
- ❌ Do NOT skip scaffold files — the user needs a starting point
|
|
889
|
+
- ❌ Do NOT skip fading scaffolding — as competence grows, reduce support
|
|
781
890
|
- ❌ Do NOT make all assignments the same difficulty — progression is critical. Each should be noticeably harder than the last.
|
|
891
|
+
- ❌ Do NOT fix the number of assignments — add more if the user needs intermediate steps, remove if they're too easy
|
|
782
892
|
- ❌ Do NOT let runs/ contain progress state — runs/ is for action logs only, topic-progress.md is the source of truth
|
|
783
893
|
- ❌ Do NOT skip updating topic-progress.md — it's the authoritative progress record per topic
|
|
784
894
|
- ❌ Do NOT lose the user's work or progress — always read topic-progress.md before acting
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "omnilearn-workflow",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
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",
|