omnilearn-workflow 1.0.9 → 1.0.10

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.
@@ -265,10 +265,11 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
265
265
 
266
266
  ### 2. ...
267
267
 
268
- ## Assignment Structure
269
- - N assignments with progressive difficulty: Basic Intermediate Real-World
270
- - Each builds on the previous. More than 3 can be created if the user needs extra practice or the topic is deep.
271
- - Final assignment should be a mini-project or real-world scenario
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
@@ -334,10 +335,28 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
334
335
  - Use the simplest possible test setup
335
336
 
336
337
  c) scaffold/ directory with starter files:
337
- - Minimal code structure to get started
338
- - Comments marking where to write code // TODO: or # TODO:
339
- - Import/require statements already in place
340
- - Can be empty scaffold if topic is conceptual
338
+
339
+ GOLDEN RULE: The user must be able to go from `cd scaffold/` to `running the test` in ONE command.
340
+ If the assignment isn't testing setup/environment skills, automate ALL of that.
341
+
342
+ - Include a setup script (`setup.sh` for Unix, `setup.ps1` for Windows) that:
343
+ * Creates virtual environment (Python: `python -m venv .venv`), or installs deps (Node: `npm install`)
344
+ * Installs required packages
345
+ * Prints "Environment ready! Run this command to start: ..."
346
+ - OR include a one-liner in the scaffold README: `python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt`
347
+ - Include `requirements.txt` / `package.json` with ALL needed deps pre-listed
348
+ - Minimal code structure — only the files the user needs to touch
349
+ - Comments marking where to write code // TODO: or # TODO:
350
+ - Import/require statements already in place
351
+ - Cross-skill integration: if the user knows {related_skill}, structure the scaffold to use familiar patterns from it
352
+ - If the topic is NOT a programming topic (e.g., system design), provide templates or worksheets instead
353
+
354
+ ANNOYING THINGS TO NEVER DO:
355
+ - Do NOT make the user manually create a venv or install packages unless the assignment is specifically about that
356
+ - Do NOT leave unlisted imports — if a package is needed, it must be in requirements.txt / package.json
357
+ - Do NOT require the user to set up databases, API keys, or external services without providing clear instructions or a docker-compose.yml
358
+ - Do NOT leave configuration files empty or incomplete — provide working defaults
359
+ - Do NOT make the user hunt for the right Python/Node version — specify it in the scaffold or use `.nvmrc`/`.python-version`
341
360
 
342
361
  d) solution-guide.md — CRITICAL: Must be researched, accurate, and complete.
343
362
 
@@ -425,6 +444,7 @@ STEP 5 — Create topic-progress.md at:
425
444
  - User experience level: {from preferences}
426
445
  - User learning style: {from preferences}
427
446
  - Skill conventions (package manager, project structure, deps, testing setup): {from SkillConventions.md — read before generating scaffold}
447
+ - Cross-skill context (other skills user knows, so scaffold can use familiar patterns): {from cross-skill inventory}
428
448
  ")
429
449
  ```
430
450
 
@@ -434,9 +454,28 @@ After completion, verify:
434
454
  - Assignment 1 exists with all 4 files (question.md, test, scaffold, solution-guide.md)
435
455
  - Test script is syntactically valid (run a quick check)
436
456
 
437
- If anything is missing, fix via session continuation: `task(task_id="<session_id>", prompt="Fix: {missing element}")`
457
+ If anything is missing, fix via session continuation: `task(task_id="<session_id>", prompt="Fix: {missing element}")"
458
+
459
+ ## Phase 1.5: READINESS GATE — Teach Before Test
460
+
461
+ **The user MUST read the theory before touching assignments.** This is non-negotiable.
462
+
463
+ 1. Present the topic-explanation.md to the user:
464
+ > "Before we jump into coding, let's cover the concepts you need.
465
+ >
466
+ > 📖 **{SKILL_DIR}/topics/{topic}/topic-explanation.md**
467
+ >
468
+ > This covers: TL;DR → Core Concepts → Examples → Pitfalls → Best Practices
469
+ > It should take about 5-10 minutes to read.
470
+ >
471
+ > Let me know when you've finished reading, or ask me questions about anything that's unclear."
472
+
473
+ 2. **Wait for the user to confirm they've read it.** Do NOT skip this step.
474
+ - If they ask questions → answer them (using diagnostic task pattern from Phase 3 if needed)
475
+ - 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.
476
+ - If they say "ready" → proceed.
438
477
 
439
- **Then proceed to Phase 2.**
478
+ 3. **Only after confirmation** → proceed to Phase 2.
440
479
 
441
480
  ## Phase 2: ASSIGNMENT PRESENTATION
442
481
 
@@ -685,9 +724,18 @@ task(category="unspecified-high", run_in_background=false, timeout=300000, promp
685
724
  - Self-contained and runnable
686
725
 
687
726
  c) scaffold/ — Starter code:
688
- - Minimal boilerplate
689
- - TODO markers for user implementation
690
- - All necessary imports/includes set up
727
+
728
+ GOLDEN RULE: The user must go from `cd scaffold/` to running tests in ONE command.
729
+
730
+ - Include setup script (`setup.sh` + `setup.ps1`) that auto-creates env + installs deps
731
+ - OR one-liner setup instructions in a README
732
+ - `requirements.txt` / `package.json` with ALL deps pre-listed
733
+ - Minimal boilerplate — only what the user needs to touch
734
+ - TODO markers for user implementation
735
+ - All necessary imports/includes set up
736
+ - If the user knows {related_skill} from SkillConventions.md, use familiar patterns
737
+ - Auto-setup: `python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt`
738
+ - NEVER make the user manually install packages (unless assignment tests that skill)
691
739
 
692
740
  d) solution-guide.md — CRITICAL: Must be researched and accurate.
693
741
 
@@ -737,11 +785,12 @@ task(category="unspecified-high", run_in_background=false, timeout=300000, promp
737
785
  6. CONTEXT:
738
786
  - Skill: {skill}
739
787
  - Topic: {topic}
740
- - Assignment number: {n}/3
741
- - Difficulty: {basic/intermediate/real-world}
788
+ - Assignment number: {n}
789
+ - Difficulty: {current difficulty level}
742
790
  - Previous assignment concepts: {summary}
743
791
  - User performance on previous assignment: {observations}
744
792
  - Skill conventions (package manager, project structure, deps, testing setup): {from SkillConventions.md — MUST follow these when generating scaffold}
793
+ - Cross-skill context (other skills the user knows): {from cross-skill inventory — integrate these patterns into the scaffold if relevant}
745
794
  ")
746
795
  ```
747
796
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omnilearn-workflow",
3
- "version": "1.0.9",
3
+ "version": "1.0.10",
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",