omnilearn-workflow 1.0.0 → 1.0.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.
@@ -28,6 +28,7 @@ Both scenarios follow the same core flow: research → analyze → produce struc
28
28
  .omnilearn/<skill>/
29
29
  ├── roadmap.md
30
30
  ├── SkillPreferences.md
31
+ ├── SkillConventions.md ← 🔑 Setup conventions read for consistent diagnostic tasks
31
32
  ├── progress-index.md
32
33
  ├── runs/
33
34
  │ └── YYYY-MM-DD-HHMMSS-refine-<topic>/
@@ -42,12 +43,43 @@ Both scenarios follow the same core flow: research → analyze → produce struc
42
43
  └── runs/
43
44
  ```
44
45
 
46
+ ## Current Date Context
47
+
48
+ ```bash
49
+ CURRENT_DATE=$(date +%Y-%m-%d)
50
+ CURRENT_YEAR=$(date +%Y)
51
+ ```
52
+
53
+ **Every subagent that does research or content generation MUST receive the current date and be told to prioritize current information over deprecated or outdated resources.**
54
+
55
+ ## MCP Tool Call Semantics (CRITICAL — Subagents Frequently Get This Wrong)
56
+
57
+ All subagents that use MCP tools MUST follow these exact calling conventions:
58
+
59
+ ### `context7_resolve-library-id` + `context7_query_docs`
60
+ 1. **ALWAYS call `context7_resolve-library-id` FIRST** with the library name to get the correct library ID.
61
+ 2. Use the returned library ID (format: `/org/package`) as the `libraryId` parameter in `context7_query_docs`.
62
+ 3. Do NOT guess or hardcode library IDs.
63
+ 4. Max 3 calls per question.
64
+
65
+ ### `google_search` / `websearch_web_search_exa`
66
+ - Use specific, well-formed queries — not keywords, but what you want to find.
67
+ - Good: `"best practices for error handling in Rust 2024"`
68
+ - Bad: `"Rust error handling"`
69
+ - Pass the `query` parameter as a string, not an object.
70
+
71
+ ### General Rules
72
+ - Match tool call parameter names EXACTLY as specified in the tool definitions.
73
+ - Do NOT wrap string parameters in objects.
74
+ - Do NOT nest tool calls unless required by the API.
75
+ - If a tool call fails, check parameter names and types before retrying.
76
+
45
77
  ## MANDATORY TOOLS
46
78
 
47
79
  | Tool | When | Why |
48
80
  |------|------|-----|
49
81
  | `google_search` / `websearch_web_search_exa` | Research | Topic research, answer questions, validate changes |
50
- | `context7_query_docs` | Tech topics | Official documentation for precise answers |
82
+ | `context7_resolve-library-id` + `context7_query_docs` | Tech topics | Official documentation for precise answers — MUST call resolve first |
51
83
  | `task(category="unspecified-high", background)` | Heavy work | Research, analysis, topic updates |
52
84
  | `read`, `write`, `edit`, `bash`, `grep`, `glob` | All phases | File operations |
53
85
 
@@ -12,6 +12,37 @@ description: Edit an existing learning roadmap with full research-backed revisio
12
12
  /omnilearn-roadmap-edit Python I want to add web scraping and automation
13
13
  ```
14
14
 
15
+ ## Current Date Context
16
+
17
+ ```bash
18
+ CURRENT_DATE=$(date +%Y-%m-%d)
19
+ CURRENT_YEAR=$(date +%Y)
20
+ ```
21
+
22
+ **All subagents that do research or content generation MUST receive the current date and prioritize current information over deprecated or outdated resources.**
23
+
24
+ ## MCP Tool Call Semantics (CRITICAL — Subagents Frequently Get This Wrong)
25
+
26
+ All subagents that use MCP tools MUST follow these exact calling conventions:
27
+
28
+ ### `context7_resolve-library-id` + `context7_query_docs`
29
+ 1. **ALWAYS call `context7_resolve-library-id` FIRST** with the library name to get the correct library ID.
30
+ 2. Use the returned library ID (format: `/org/package`) as the `libraryId` parameter in `context7_query_docs`.
31
+ 3. Do NOT guess or hardcode library IDs.
32
+ 4. Max 3 calls per question.
33
+
34
+ ### `google_search` / `websearch_web_search_exa`
35
+ - Use specific, well-formed queries — not keywords, but describe the ideal page.
36
+ - Good: `"current best practices for REST API design 2025"`
37
+ - Bad: `"REST API"`
38
+ - Pass `query` as a plain string, not wrapped in an object.
39
+
40
+ ### General Rules
41
+ - Match tool call parameter names EXACTLY as defined in the tool schema.
42
+ - Do NOT wrap string parameters in extra objects or arrays.
43
+ - Do NOT nest tool calls unless the API explicitly requires it.
44
+ - If a tool call fails, verify parameter names match before retrying.
45
+
15
46
  ## Core Behavior
16
47
 
17
48
  This command performs the same rigorous research-backed process as `/omnilearn-roadmap`, but operates on an EXISTING roadmap. It:
@@ -32,6 +63,7 @@ This command performs the same rigorous research-backed process as `/omnilearn-r
32
63
  ├── UserPreferences.md
33
64
  └── <skill-name>/
34
65
  ├── SkillPreferences.md
66
+ ├── SkillConventions.md ← Preserved during edits
35
67
  ├── roadmap.md ← Will be updated
36
68
  ├── progress-index.md ← Must be preserved & updated
37
69
  ├── runs/
@@ -228,6 +260,7 @@ task(category="unspecified-high", run_in_background=true, prompt="
228
260
  3. REQUIRED TOOLS: google_search, websearch_web_search_exa, context7_resolve-library-id, context7_query_docs, read, write
229
261
 
230
262
  4. MUST DO:
263
+ - **CURRENT DATE: {CURRENT_DATE}** — ONLY research current information. Check for deprecation warnings. Prioritize resources from the last 1-2 years. Prefer latest stable versions of any library/framework/tool.
231
264
  - Analyze the user's change request: '{user_change_request}'
232
265
  - Use google_search / websearch_web_search_exa to research:
233
266
  * The specific topics/areas the user wants to add or modify
@@ -19,6 +19,7 @@ description: Create a comprehensive, real-world-ready learning roadmap for any s
19
19
  ├── UserPreferences.md ← Global user preferences (auto-read + updated)
20
20
  └── <skill-name>/ ← Normalized skill folder (e.g., "Rust", "Machine-Learning")
21
21
  ├── SkillPreferences.md ← Per-skill learning preferences
22
+ ├── SkillConventions.md ← 🔑 Setup conventions: package manager, project structure, deps, testing (auto-learned)
22
23
  ├── roadmap.md ← Master roadmap (the main deliverable)
23
24
  ├── progress-index.md ← Progress log — index of all runs
24
25
  ├── runs/ ← Research & execution logs
@@ -88,6 +89,37 @@ echo "Using learning directory: $LEARNING_DIR"
88
89
 
89
90
  All subsequent paths in this command use `$OMNILEARN_DIR` as the base.
90
91
 
92
+ ## Current Date Context (CRITICAL — Must Pass to ALL Subagents)
93
+
94
+ ```bash
95
+ CURRENT_DATE=$(date +%Y-%m-%d)
96
+ CURRENT_YEAR=$(date +%Y)
97
+ ```
98
+
99
+ **Every subagent that does research or content generation MUST receive the current date and be told to prioritize current information.**
100
+
101
+ ## MCP Tool Call Semantics (CRITICAL — Subagents Frequently Get This Wrong)
102
+
103
+ All subagents that use MCP tools MUST follow these exact calling conventions:
104
+
105
+ ### `context7_resolve-library-id` + `context7_query_docs`
106
+ 1. **ALWAYS call `context7_resolve-library-id` FIRST** with the library name to get the correct library ID.
107
+ 2. Use the returned library ID (format: `/org/package`) as the `libraryId` parameter in `context7_query_docs`.
108
+ 3. Do NOT guess or hardcode library IDs.
109
+ 4. Max 3 calls per question.
110
+
111
+ ### `google_search` / `websearch_web_search_exa`
112
+ - Use specific, well-formed queries — not keywords, but describe the ideal page.
113
+ - Good: `"blog post comparing Rust error handling patterns 2024"`
114
+ - Bad: `"Rust error handling"`
115
+ - Pass `query` as a plain string, not wrapped in an object.
116
+
117
+ ### General Rules
118
+ - Match tool call parameter names EXACTLY as defined in the tool schema.
119
+ - Do NOT wrap string parameters in extra objects or arrays.
120
+ - Do NOT nest tool calls unless the API explicitly requires it.
121
+ - If a tool call fails, verify parameter names match before retrying.
122
+
91
123
  ## MANDATORY TOOLS
92
124
 
93
125
  | Tool | When | Why |
@@ -196,6 +228,7 @@ task(category="unspecified-high", run_in_background=true, prompt="
196
228
  3. REQUIRED TOOLS: google_search, websearch_web_search_exa, context7_resolve-library-id, context7_query_docs, read, write
197
229
 
198
230
  4. MUST DO:
231
+ - **CURRENT DATE: {CURRENT_DATE}** — ONLY search for and reference current information. Prioritize resources from the last 1-2 years. Check for deprecation warnings on any library/framework/tool. Prefer latest stable versions. If something has been superseded (e.g. Create React App → Vite, npm → pnpm/uv), flag it.
199
232
 
200
233
  FIRST — Consider the user's level and existing knowledge:
201
234
  - User's stated experience with {skill}: {user level}
@@ -255,6 +288,7 @@ task(category="unspecified-high", run_in_background=true, prompt="
255
288
  3. REQUIRED TOOLS: google_search, websearch_web_search_exa, read, write
256
289
 
257
290
  4. MUST DO:
291
+ - **CURRENT DATE: {CURRENT_DATE}** — ONLY search for and reference current information. Prioritize resources from the last 1-2 years. Check for deprecation warnings on any library/framework/tool. Prefer latest stable versions. If something has been superseded (e.g. Create React App → Vite, npm → pnpm/uv), flag it.
258
292
 
259
293
  FIRST — Consider the user's level:
260
294
  - User's experience with {skill}: {user level}
@@ -336,11 +370,12 @@ task(category="unspecified-high", run_in_background=false, timeout=300000, promp
336
370
  3. REQUIRED TOOLS: google_search, websearch_web_search_exa, context7_query_docs, read, write, grep
337
371
 
338
372
  4. MUST DO:
373
+ - **CURRENT DATE: {CURRENT_DATE}** — ONLY reference current information. If you do additional online research, prioritize resources from the last 1-2 years. Check for deprecation warnings. Prefer latest stable versions of any library/framework/tool mentioned.
339
374
  - Read BOTH research files:
340
375
  * Content research: {RUNS_DIR}/research-content.md
341
376
  * Learning path research: {RUNS_DIR}/research-learning.md
342
377
  - Read cross-skill context: existing skills the user has
343
- - If there are gaps or contradictions, do additional research online
378
+ - If there are gaps or contradictions, do additional research online (using current date context)
344
379
 
345
380
  CRITICAL — Personalization rules:
346
381
  - **Do NOT include topics the user already knows.** If the user is experienced in Python and learning FastAPI, skip Python fundamentals entirely.
@@ -30,7 +30,8 @@ The goal metric: **Can the user apply what they learned to real-world problems t
30
30
  .omnilearn/<skill>/
31
31
  ├── roadmap.md
32
32
  ├── SkillPreferences.md
33
- ├── progress-index.md Overview index: links to topic-progress.md per topic
33
+ ├── SkillConventions.md 🔑 Setup conventions: package manager, project structure, deps, testing preferences (auto-learned)
34
+ ├── progress-index.md ← Overview index: links to topic-progress.md per topic
34
35
  ├── runs/ ← Skill-level run logs (action logs only, NOT progress)
35
36
  │ └── YYYY-MM-DD-HHMMSS-learning-<topic>/
36
37
  │ ├── agent-log.md ← What happened this run: decisions, actions taken
@@ -57,6 +58,37 @@ The goal metric: **Can the user apply what they learned to real-world problems t
57
58
  └── ...
58
59
  ```
59
60
 
61
+ ## Current Date Context (CRITICAL — Must Pass to ALL Subagents)
62
+
63
+ ```bash
64
+ CURRENT_DATE=$(date +%Y-%m-%d)
65
+ CURRENT_YEAR=$(date +%Y)
66
+ ```
67
+
68
+ **Every subagent that does research or content generation MUST receive the current date and be told to prioritize current information over deprecated or outdated resources.**
69
+
70
+ ## MCP Tool Call Semantics (CRITICAL — Subagents Frequently Get This Wrong)
71
+
72
+ All subagents that use MCP tools MUST follow these exact calling conventions:
73
+
74
+ ### `context7_resolve-library-id` + `context7_query_docs`
75
+ 1. **ALWAYS call `context7_resolve-library-id` FIRST** with the library name to get the correct library ID.
76
+ 2. Use the returned library ID (format: `/org/package`) as the `libraryId` parameter in `context7_query_docs`.
77
+ 3. Do NOT guess or hardcode library IDs.
78
+ 4. Max 3 calls per question.
79
+
80
+ ### `google_search` / `websearch_web_search_exa`
81
+ - Use specific, well-formed queries — not keywords, but describe the ideal page.
82
+ - Good: `"current state of Rust async patterns 2025"`
83
+ - Bad: `"Rust async"`
84
+ - Pass `query` as a plain string, not wrapped in an object.
85
+
86
+ ### General Rules
87
+ - Match tool call parameter names EXACTLY as defined in the tool schema.
88
+ - Do NOT wrap string parameters in extra objects or arrays.
89
+ - Do NOT nest tool calls unless the API explicitly requires it.
90
+ - If a tool call fails, verify parameter names match before retrying.
91
+
60
92
  ## MANDATORY TOOLS
61
93
 
62
94
  | Tool | When | Why |
@@ -111,11 +143,12 @@ if [ ! -d "$SKILL_DIR" ] || [ ! -f "$ROADMAP" ]; then
111
143
  fi
112
144
  ```
113
145
 
114
- ### 0.3 Read Progress, Preferences & Cross-Skill Inventory
146
+ ### 0.3 Read Progress, Preferences, Conventions & Cross-Skill Inventory
115
147
 
116
148
  Read these files to understand the current state:
117
149
  - `UserPreferences.md` (if exists) — learning style, experience level, goals
118
150
  - `SkillPreferences.md` — per-skill state, preferences
151
+ - **`SkillConventions.md`** (if exists) — 🔑 **Setup conventions: package manager, project structure, deps, testing preferences. Read this BEFORE generating any scaffold or assignment — it ensures consistency.**
119
152
  - `progress-index.md` — overview of topic statuses
120
153
 
121
154
  **For any topics marked 🔵 In Progress**, read their `topic-progress.md` files to get the detailed state:
@@ -181,6 +214,7 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
181
214
  3. REQUIRED TOOLS: google_search, websearch_web_search_exa, context7_resolve-library-id, context7_query_docs, read, write, bash, grep
182
215
 
183
216
  4. MUST DO — Step-by-Step:
217
+ - **CURRENT DATE: {CURRENT_DATE}** — ONLY research current information. Prioritize resources from the last 1-2 years. Check for deprecation warnings. Prefer latest stable versions of any library/framework/tool. If older resources reference superseded tools (e.g. CRA → Vite, pip → uv), flag and use the current standard.
184
218
 
185
219
  STEP 1 — Research:
186
220
  - Read the main roadmap to understand how this topic fits: {ROADMAP}
@@ -293,6 +327,7 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
293
327
  - Topics directory: {TOPICS_DIR}/{topic}/
294
328
  - User experience level: {from preferences}
295
329
  - User learning style: {from preferences}
330
+ - Skill conventions (package manager, project structure, deps, testing setup): {from SkillConventions.md — read before generating scaffold}
296
331
  ")
297
332
  ```
298
333
 
@@ -369,6 +404,7 @@ task(category="unspecified-high", run_in_background=false, prompt="
369
404
  3. REQUIRED TOOLS: google_search, websearch_web_search_exa, context7_query_docs, read, write
370
405
 
371
406
  4. MUST DO:
407
+ - **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.
372
408
  - Read the current assignment: {ASSIGNMENT_DIR}/question.md (to understand context without giving away the solution)
373
409
  - Research the concept online to find the MOST COMMON confusion points
374
410
  - Design a micro-exercise that:
@@ -441,6 +477,7 @@ task(category="writing", run_in_background=false, prompt="
441
477
  3. REQUIRED TOOLS: read, write
442
478
 
443
479
  4. MUST DO:
480
+ - **CURRENT DATE: {CURRENT_DATE}** — Use current, real-world examples. Avoid outdated patterns or deprecated APIs.
444
481
  - Read the current assignment to understand what's been covered
445
482
  - Create 2-3 smaller exercises that target the specific area the user is struggling with
446
483
  - Each should be solvable in 5-15 minutes
@@ -452,6 +489,8 @@ task(category="writing", run_in_background=false, prompt="
452
489
  ")
453
490
  ```
454
491
 
492
+ ```
493
+
455
494
  ### 3.2 Track All Interactions
456
495
 
457
496
  For each user interaction during the session:
@@ -499,6 +538,7 @@ task(category="unspecified-high", run_in_background=false, timeout=300000, promp
499
538
  3. REQUIRED TOOLS: google_search, websearch_web_search_exa, context7_query_docs, read, write
500
539
 
501
540
  4. MUST DO:
541
+ - **CURRENT DATE: {CURRENT_DATE}** — ONLY use current, real-world scenarios. Avoid outdated APIs, deprecated libraries, or superseded best practices. Research what's current in the industry for this topic.
502
542
  - Read the topic-roadmap.md: {TOPICS_DIR}/{topic}/topic-roadmap.md
503
543
  - Read the previous assignment(s) to ensure progression: {ASSIGNMENT_DIR}
504
544
  - Read the user's learning preferences and history from {SKILL_PREFS}
@@ -547,6 +587,7 @@ task(category="unspecified-high", run_in_background=false, timeout=300000, promp
547
587
  - Difficulty: {basic/intermediate/real-world}
548
588
  - Previous assignment concepts: {summary}
549
589
  - User performance on previous assignment: {observations}
590
+ - Skill conventions (package manager, project structure, deps, testing setup): {from SkillConventions.md — MUST follow these when generating scaffold}
550
591
  ")
551
592
  ```
552
593
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omnilearn-workflow",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
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",