eklavya 1.13.0 → 1.13.1
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.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: tutor
|
|
3
|
-
description:
|
|
3
|
+
description: Use when writing or changing non-trivial code in a session where Eklavya is active, when an "[Eklavya checkpoint]" or Stop-hook message asks for a question, or when the developer asks to be quizzed or taught a concept they are learning.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Eklavya tutor
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eklavya",
|
|
3
3
|
"displayName": "Eklavya",
|
|
4
|
-
"version": "1.13.
|
|
4
|
+
"version": "1.13.1",
|
|
5
5
|
"description": "Learn while your agent works. Turns coding-agent generation time into adaptive, Socratic learning grounded in the code being written.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Ajay Kumar"
|
|
@@ -21,6 +21,32 @@ other skill defers to it rather than restating it. `quiz` says "follow the
|
|
|
21
21
|
`tutor` skill for how to ask and grade"; keep it that way. Pedagogy duplicated
|
|
22
22
|
into a command skill is pedagogy that drifts from the one place Cursor reads.
|
|
23
23
|
|
|
24
|
+
## The description is a trigger, not a summary
|
|
25
|
+
|
|
26
|
+
For a model-invocable skill the `description` is the only part always in
|
|
27
|
+
context; the body is read only once the model has decided to load it. So a
|
|
28
|
+
description that summarises the workflow becomes a shortcut the model takes
|
|
29
|
+
*instead of* reading the body — it answers from the summary and never opens the
|
|
30
|
+
file. The body becomes documentation nobody reads.
|
|
31
|
+
|
|
32
|
+
`skills/tutor/SKILL.md` had exactly that shape. It read "Use while implementing
|
|
33
|
+
any non-trivial task (to log the concepts it touches), and whenever quizzing,
|
|
34
|
+
grading, or explaining" — three steps named, and nowhere in it the words *one
|
|
35
|
+
question, mid-task*. Which is the failure the interleaved cadence had to fix:
|
|
36
|
+
questions arriving in a pile at the end of the work.
|
|
37
|
+
|
|
38
|
+
So, for `tutor` and anything else without `disable-model-invocation`:
|
|
39
|
+
**triggering conditions only**, third person, opening "Use when". Never the
|
|
40
|
+
number of questions, never the order of the tool calls, never the grading.
|
|
41
|
+
Those live in the body, which is where the model has to go to get them.
|
|
42
|
+
|
|
43
|
+
The seven slash commands are exempt, and it is not a technicality:
|
|
44
|
+
`disable-model-invocation: true` means the model never matches on their
|
|
45
|
+
description at all. The developer types the command and the description is its
|
|
46
|
+
one line of help, so those should say what they do. `agents/tutor.md` keeps one
|
|
47
|
+
identity clause for the same kind of reason — a subagent is picked from a roster
|
|
48
|
+
by what it is, not loaded by trigger.
|
|
49
|
+
|
|
24
50
|
## Three directories, and why they are not one
|
|
25
51
|
|
|
26
52
|
- **`skills/`** ships inside the plugin. Slash commands plus `tutor`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: tutor
|
|
3
|
-
description:
|
|
3
|
+
description: Use when writing or changing non-trivial code in a session where Eklavya is active, when an "[Eklavya checkpoint]" or Stop-hook message asks for a question, or when the developer asks to be quizzed or taught a concept they are learning.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Eklavya tutor
|
package/package.json
CHANGED