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
|
-
├──
|
|
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.
|
|
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",
|