@fernado03/zoo-flow 0.7.14 → 0.7.16
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.
- package/package.json +1 -1
- package/templates/full/.roo/commands/teach.md +8 -0
- package/templates/full/.roo/rules-code-tweaker/01-completion.md +19 -5
- package/templates/full/.roo/rules-system-architect/02-completion.md +18 -2
- package/templates/full/.roo/skills/{in-progress → productivity}/teach/SKILL.md +35 -6
- /package/templates/full/.roo/skills/{in-progress → productivity}/teach/glossary-format.md +0 -0
- /package/templates/full/.roo/skills/{in-progress → productivity}/teach/learning-record-format.md +0 -0
- /package/templates/full/.roo/skills/{in-progress → productivity}/teach/mission-format.md +0 -0
- /package/templates/full/.roo/skills/{in-progress → productivity}/teach/resources-format.md +0 -0
package/package.json
CHANGED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: "Teach a topic over multiple stateful sessions. Tracks mission, glossary, resources, and learning records. Use when user asks to be taught a topic, wants to learn something, or mentions ongoing study."
|
|
3
|
+
argument-hint: "What would you like to learn about?"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Skill: `.roo/skills/productivity/teach/SKILL.md`
|
|
7
|
+
|
|
8
|
+
$ARGUMENTS
|
|
@@ -11,7 +11,21 @@ If you entered this window via `switch_mode` (you are mid-chain, not the entry p
|
|
|
11
11
|
|
|
12
12
|
Before any `attempt_completion`, re-read the command body and confirm no later phase is assigned to another mode. If one is, `switch_mode` instead.
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
## How to call attempt_completion
|
|
15
|
+
|
|
16
|
+
`attempt_completion` is a tool call with a `result` parameter. You MUST call it as a tool, not as plain text. Example:
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
attempt_completion(result="Done. Changed X in file Y. Status: complete. Next: /verify")
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Do NOT:
|
|
23
|
+
- Use `ask_followup_question` to present results (this keeps the subtask alive)
|
|
24
|
+
- Write the result as plain text without calling the tool
|
|
25
|
+
- Use `switch_mode` to return to the orchestrator (use `attempt_completion` instead)
|
|
26
|
+
- Stop without calling any completion tool
|
|
27
|
+
|
|
28
|
+
## What attempt_completion must include
|
|
15
29
|
|
|
16
30
|
- what was done (exact scope)
|
|
17
31
|
- files changed or inspected (paths)
|
|
@@ -20,10 +34,10 @@ Before any `attempt_completion`, re-read the command body and confirm no later p
|
|
|
20
34
|
- remaining risk (what was not checked or is uncertain)
|
|
21
35
|
- recommended next command (one only, no auto-launch)
|
|
22
36
|
|
|
23
|
-
Write long output (verification report, diff summary) to `.scratch/` with a descriptive path. `attempt_completion` must include: file path where output was saved, brief status, and recommended next command. The user will open the file to see full details.
|
|
24
|
-
|
|
25
|
-
Before running `git commit` or `git push`, halt and wait for explicit user approval. Never push unless explicitly asked.
|
|
26
|
-
|
|
37
|
+
Write long output (verification report, diff summary) to `.scratch/` with a descriptive path. `attempt_completion` must include: file path where output was saved, brief status, and recommended next command. The user will open the file to see full details.
|
|
38
|
+
|
|
39
|
+
Before running `git commit` or `git push`, halt and wait for explicit user approval. Never push unless explicitly asked.
|
|
40
|
+
|
|
27
41
|
For non-trivial `/tdd`, `/fix`, `/feature`, `/refactor`, or R3+ `/tweak` work, recommend `/verify` before `/review` before `/commit-and-document`. Do not auto-launch those commands.
|
|
28
42
|
|
|
29
43
|
If the user explicitly says to remember a project rule, or the same mistake has repeated, ask before appending a short lesson to `.zoo-flow/LESSONS.md`. Do not read or write lessons by default.
|
|
@@ -11,10 +11,26 @@ If you entered this window via `switch_mode` (you are mid-chain, not the entry p
|
|
|
11
11
|
|
|
12
12
|
Before any `attempt_completion`, re-read the command body and confirm no later phase is assigned to another mode. If one is, `switch_mode` instead.
|
|
13
13
|
|
|
14
|
+
## How to call attempt_completion
|
|
15
|
+
|
|
16
|
+
`attempt_completion` is a tool call with a `result` parameter. You MUST call it as a tool, not as plain text. Example:
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
attempt_completion(result="Done. Explored X. Status: complete. Next: /feature")
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Do NOT:
|
|
23
|
+
- Use `ask_followup_question` to present results (this keeps the subtask alive)
|
|
24
|
+
- Write the result as plain text without calling the tool
|
|
25
|
+
- Use `switch_mode` to return to the orchestrator (use `attempt_completion` instead)
|
|
26
|
+
- Stop without calling any completion tool
|
|
27
|
+
|
|
28
|
+
## What attempt_completion must include
|
|
29
|
+
|
|
14
30
|
Do not use `attempt_completion` to avoid required implementation work. Write the full output (review findings, exploration map, diagnosis, plan) to `.scratch/` with a descriptive path. `attempt_completion` must include: file path where output was saved, brief status, and recommended next command. The user will open the file to see full details.
|
|
15
31
|
|
|
16
|
-
Halt for explicit user approval before testing a bug hypothesis, finalizing an architecture plan, publishing issues, or making irreversible decisions.
|
|
17
|
-
|
|
32
|
+
Halt for explicit user approval before testing a bug hypothesis, finalizing an architecture plan, publishing issues, or making irreversible decisions.
|
|
33
|
+
|
|
18
34
|
For non-trivial completed plans or reviews, recommend the next command only. Typical chain: implementation command -> `/verify` -> `/review` -> `/commit-and-document`. Do not auto-launch those commands.
|
|
19
35
|
|
|
20
36
|
If the user explicitly says to remember a project rule, or the same mistake has repeated, ask before appending a short lesson to `.zoo-flow/LESSONS.md`. Do not read or write lessons by default.
|
|
@@ -26,22 +26,47 @@ Stateful. Treat current directory as the teaching workspace.
|
|
|
26
26
|
|
|
27
27
|
Topic mix varies: theoretical → knowledge-heavy; practical → skills-heavy.
|
|
28
28
|
|
|
29
|
+
### Fluency vs Storage Strength
|
|
30
|
+
|
|
31
|
+
You should be careful to split between two types of learning:
|
|
32
|
+
|
|
33
|
+
- **Fluency strength**: in-the-moment retrieval of knowledge
|
|
34
|
+
- **Storage strength**: long-term retention of knowledge
|
|
35
|
+
|
|
36
|
+
Fluency can give the user an illusory sense of mastery, but storage strength is the real goal. Try to design lessons which build long-term retention by desirable difficulty:
|
|
37
|
+
|
|
38
|
+
- Using retrieval practice (recall from memory)
|
|
39
|
+
- Spacing (distributing practice over time)
|
|
40
|
+
- Interleaving (mixing up different but related topics in practice - for skill practice only)
|
|
41
|
+
|
|
29
42
|
## Lessons
|
|
30
43
|
|
|
31
44
|
A lesson is the main thing you produce — the unit in which knowledge and skills reach the user. Each lesson is one self-contained HTML file, saved to `./lessons/` and titled `0001-<dash-case-name>.html`, where the number increments each time.
|
|
32
45
|
|
|
33
|
-
A lesson should be beautiful
|
|
46
|
+
A lesson should be **beautiful** - clean, readable typography and layout since the user will return to these later to review. Think Tufte.
|
|
47
|
+
|
|
48
|
+
The lesson should be short, and completable very quickly. Learners' working memory is very small, and we need to stay within it. But each lesson should give the user a single tangible win that they can build on. It should be directly tied to the mission, and should be in the user's zone of proximal development.
|
|
49
|
+
|
|
50
|
+
If possible, open the lesson file for the user by running a CLI command.
|
|
34
51
|
|
|
35
|
-
|
|
52
|
+
Each lesson should link via HTML anchors to other lessons and reference documents.
|
|
36
53
|
|
|
37
|
-
|
|
54
|
+
Each lesson should recommend a primary source for the user to read or watch. This should be the most high-quality, high-trust resource you found on the topic.
|
|
55
|
+
|
|
56
|
+
Each lesson should contain a reminder to ask followup questions to the agent. The agent is their teacher, and can assist with anything that's unclear.
|
|
38
57
|
|
|
39
58
|
## Mission first
|
|
40
59
|
|
|
41
60
|
If `MISSION.md` missing or vague, interview before teaching. No mission = no grounding, abstract exercises, no signal for what's next.
|
|
42
61
|
|
|
62
|
+
Missions may change as the user develops more skills and knowledge. This is normal - make sure to update the `MISSION.md` and add a learning record to capture the change. Confirm with the user before changing the mission.
|
|
63
|
+
|
|
43
64
|
## Zone of proximal development
|
|
44
65
|
|
|
66
|
+
The user may specify an exact thing they want to learn. If they don't, figure out their zone of proximal development.
|
|
67
|
+
|
|
68
|
+
Each lesson, the user should always feel as if they are being challenged 'just enough'.
|
|
69
|
+
|
|
45
70
|
Pick next topic by:
|
|
46
71
|
1. Read `learning-records/`.
|
|
47
72
|
2. Align to `MISSION.md`.
|
|
@@ -49,10 +74,12 @@ Pick next topic by:
|
|
|
49
74
|
|
|
50
75
|
User says "I already know X" → record in `learning-records/`.
|
|
51
76
|
|
|
52
|
-
## Knowledge
|
|
77
|
+
## Knowledge
|
|
53
78
|
|
|
54
79
|
Knowledge should first be gathered from trusted resources. Use `RESOURCES.md` to keep track of them. Lessons should be littered with citations - links to external resources to back up any claim made. This increases the trustworthiness of the lesson, and gives the user a path to acquire more knowledge if they want to go deeper.
|
|
55
80
|
|
|
81
|
+
For acquiring knowledge, difficulty is the enemy. It eats working memory you need for understanding.
|
|
82
|
+
|
|
56
83
|
1. Pull from `RESOURCES.md`.
|
|
57
84
|
2. Write HTML explainer to local file. Beautiful, glossary-correct. Litter with citations linking external resources backing every claim. Interactive: "try this" callouts to apply the knowledge.
|
|
58
85
|
3. Give one-line CLI command to open it.
|
|
@@ -61,13 +88,15 @@ Knowledge should first be gathered from trusted resources. Use `RESOURCES.md` to
|
|
|
61
88
|
|
|
62
89
|
## Skills
|
|
63
90
|
|
|
64
|
-
Skills should be taught through interactive lessons. There are several tools at your disposal:
|
|
91
|
+
For skill acquisition, difficulty is the tool. Effortful retrieval is what builds storage strength. Skills should be taught through interactive lessons. There are several tools at your disposal:
|
|
65
92
|
|
|
66
93
|
- Interactive lessons, using quizzes and light in-browser tasks
|
|
67
94
|
- Lessons which guide the user through a list of real-world steps to take (for instance, yoga poses)
|
|
68
95
|
- In-agent quizzes, where you ask the user scenario-based questions about what they've learned
|
|
69
96
|
|
|
70
|
-
|
|
97
|
+
Each of these should be based on a **feedback loop**, where the user receives feedback on their performance. This feedback loop should be as tight as possible, giving feedback immediately - and ideally automatically.
|
|
98
|
+
|
|
99
|
+
For quizzes, each answer should be exactly the same number of words (and characters, if possible). Don't give the user any clues about the answer through formatting.
|
|
71
100
|
|
|
72
101
|
## Wisdom
|
|
73
102
|
|
|
File without changes
|
/package/templates/full/.roo/skills/{in-progress → productivity}/teach/learning-record-format.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|