@rse/ase 0.9.45 → 0.9.47
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/dst/ase-compat.js +3 -2
- package/dst/ase-config.js +6 -5
- package/dst/ase-hook.js +22 -17
- package/dst/ase-kv.js +38 -43
- package/dst/ase-log.js +13 -5
- package/dst/ase-markdown.js +12 -2
- package/dst/ase-mcp.js +20 -3
- package/dst/ase-persona.js +1 -3
- package/dst/ase-service.js +15 -25
- package/dst/ase-setup.js +12 -39
- package/dst/ase-statusline.js +14 -28
- package/dst/ase-task.js +14 -23
- package/dst/ase.js +6 -2
- package/package.json +3 -3
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/.codex-plugin/plugin.json +1 -1
- package/plugin/.github/plugin/plugin.json +1 -1
- package/plugin/etc/stx.conf +6 -1
- package/plugin/meta/ase-dialog.md +2 -2
- package/plugin/meta/ase-skill.md +9 -0
- package/plugin/package.json +1 -1
- package/plugin/skills/ase-code-craft/SKILL.md +16 -2
- package/plugin/skills/ase-code-craft/help.md +5 -4
- package/plugin/skills/ase-code-refactor/SKILL.md +16 -2
- package/plugin/skills/ase-code-refactor/help.md +5 -4
- package/plugin/skills/ase-code-resolve/SKILL.md +16 -2
- package/plugin/skills/ase-code-resolve/help.md +6 -5
- package/plugin/skills/ase-help-intent/SKILL.md +157 -0
- package/plugin/skills/ase-help-intent/help.md +57 -0
- package/plugin/skills/ase-help-skill/SKILL.md +203 -0
- package/plugin/skills/ase-help-skill/catalog.md +60 -0
- package/plugin/skills/ase-help-skill/help.md +83 -0
- package/plugin/skills/ase-meta-eli5/SKILL.md +116 -0
- package/plugin/skills/ase-meta-eli5/help.md +61 -0
- package/plugin/skills/ase-meta-proximity/SKILL.md +224 -0
- package/plugin/skills/ase-meta-proximity/help.md +78 -0
- package/plugin/skills/ase-task-condense/help.md +3 -3
- package/plugin/skills/ase-task-reboot/help.md +3 -3
- package/plugin/skills/ase-task-view/help.md +3 -3
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ase-meta-proximity
|
|
3
|
+
argument-hint: "[--help|-h] [--ground|-g] [--loop|-l] <topic>"
|
|
4
|
+
description: >
|
|
5
|
+
Determine the conceptual proximity of a topic -- its parent topic,
|
|
6
|
+
its most relevant sibling topics, and its most relevant child
|
|
7
|
+
topics -- optionally grounded in Internet/Web facts and optionally
|
|
8
|
+
navigable in an interactive loop. Use when the user wants to explore
|
|
9
|
+
the conceptual neighborhood of a topic, or mentions "proximity" or
|
|
10
|
+
"related topics".
|
|
11
|
+
user-invocable: true
|
|
12
|
+
disable-model-invocation: false
|
|
13
|
+
effort: high
|
|
14
|
+
allowed-tools:
|
|
15
|
+
- "Agent"
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
@${CLAUDE_SKILL_DIR}/../../meta/ase-control.md
|
|
19
|
+
@${CLAUDE_SKILL_DIR}/../../meta/ase-skill.md
|
|
20
|
+
@${CLAUDE_SKILL_DIR}/../../meta/ase-dialog.md
|
|
21
|
+
@${CLAUDE_SKILL_DIR}/../../meta/ase-getopt.md
|
|
22
|
+
|
|
23
|
+
<skill name="ase-meta-proximity">
|
|
24
|
+
Determine the Conceptual Proximity of a Topic
|
|
25
|
+
</skill>
|
|
26
|
+
|
|
27
|
+
<expand name="getopt"
|
|
28
|
+
arg1="ase-meta-proximity"
|
|
29
|
+
arg2="--ground|-g --loop|-l">
|
|
30
|
+
$ARGUMENTS
|
|
31
|
+
</expand>
|
|
32
|
+
|
|
33
|
+
<objective>
|
|
34
|
+
*Determine* the *conceptual proximity* of the following topic -- its
|
|
35
|
+
*parent* topic, its most relevant *sibling* topics, and its most
|
|
36
|
+
relevant *child* topics:
|
|
37
|
+
<topic><getopt-arguments/></topic>
|
|
38
|
+
</objective>
|
|
39
|
+
|
|
40
|
+
<define name="gather-facts">
|
|
41
|
+
<if condition="<getopt-option-ground/> is equal `true`">
|
|
42
|
+
Set <prompt>Search the Internet/Web and gather facts about
|
|
43
|
+
<arg1/></prompt>.
|
|
44
|
+
|
|
45
|
+
Then use the `ase-meta-search` skill in a sub-agent to gather facts with
|
|
46
|
+
the following tool call and store the returned facts in the placeholder
|
|
47
|
+
named `<arg2/>`:
|
|
48
|
+
|
|
49
|
+
`Agent(
|
|
50
|
+
description: "Query Web Search Service",
|
|
51
|
+
subagent_type: "ase:ase-meta-search",
|
|
52
|
+
prompt: "<prompt/>",
|
|
53
|
+
run_in_background: false
|
|
54
|
+
)`
|
|
55
|
+
|
|
56
|
+
<if condition="the placeholder named `<arg2/>` contains no usable facts">
|
|
57
|
+
Set the placeholder named `<arg2/>` to empty, so the determination below
|
|
58
|
+
falls back to model knowledge, and output the following <template/>:
|
|
59
|
+
|
|
60
|
+
<template>
|
|
61
|
+
<ase-tpl-bullet-secondary/> **WARNING**: grounding found no usable facts -- falling back to model knowledge.
|
|
62
|
+
</template>
|
|
63
|
+
</if>
|
|
64
|
+
</if>
|
|
65
|
+
<else>
|
|
66
|
+
Use the model's world knowledge and determine facts about <arg1/> and
|
|
67
|
+
store those facts in the placeholder named `<arg2/>`.
|
|
68
|
+
</else>
|
|
69
|
+
</define>
|
|
70
|
+
|
|
71
|
+
<flow>
|
|
72
|
+
|
|
73
|
+
1. <step id="STEP 1: Check Topic">
|
|
74
|
+
|
|
75
|
+
<if condition="<topic/> is empty">
|
|
76
|
+
Only output the following <template/> and then immediately *STOP*
|
|
77
|
+
processing the entire current skill:
|
|
78
|
+
|
|
79
|
+
<template>
|
|
80
|
+
⧉ **ASE**: ✪ skill: **ase-meta-proximity**, ▶ ERROR: expected a `<topic>` argument
|
|
81
|
+
</template>
|
|
82
|
+
</if>
|
|
83
|
+
|
|
84
|
+
</step>
|
|
85
|
+
|
|
86
|
+
2. <step id="STEP 2: Explore Proximity">
|
|
87
|
+
|
|
88
|
+
*REPEAT* the following sub-steps in a *LOOP* until either
|
|
89
|
+
<getopt-option-loop/> is *not* equal `true` (then the loop runs
|
|
90
|
+
exactly *once* and stops after rendering), or the user declines/cancels
|
|
91
|
+
the dialog in sub-step 5:
|
|
92
|
+
|
|
93
|
+
1. *Determine Topic*:
|
|
94
|
+
|
|
95
|
+
Determine the canonical name of the central *topic* which is stored
|
|
96
|
+
in <topic/>.
|
|
97
|
+
|
|
98
|
+
<expand name="gather-facts"
|
|
99
|
+
arg1="the following topic: <topic/>"
|
|
100
|
+
arg2="facts-topic"></expand>
|
|
101
|
+
|
|
102
|
+
Ground the determination of the canonical name of the topic
|
|
103
|
+
<topic/> in the facts of <facts-topic/> and do not contradict
|
|
104
|
+
them. Update <topic/> accordingly.
|
|
105
|
+
|
|
106
|
+
2. *Determine Proximity*:
|
|
107
|
+
|
|
108
|
+
Determine the *conceptual proximity* of the current <topic/>
|
|
109
|
+
along three *dimensions*:
|
|
110
|
+
|
|
111
|
+
- **PARENT**:
|
|
112
|
+
|
|
113
|
+
The single most relevant *parent* topic (the broader topic
|
|
114
|
+
that <topic/> is a specialization of), which will be stored
|
|
115
|
+
in <parent/>.
|
|
116
|
+
|
|
117
|
+
<expand name="gather-facts"
|
|
118
|
+
arg1="the PARENT topic (the broader topic that the given topic is a specialization of) of the following topic: <topic/>"
|
|
119
|
+
arg2="facts-parent"></expand>
|
|
120
|
+
|
|
121
|
+
Ground the determination of the canonical name of the parent
|
|
122
|
+
topic <parent/> in the facts of <facts-parent/> and do not
|
|
123
|
+
contradict them.
|
|
124
|
+
|
|
125
|
+
- **SIBLINGS**:
|
|
126
|
+
|
|
127
|
+
The *four* most relevant *sibling* topics (topics on the
|
|
128
|
+
same level that share the same parent), which will be stored
|
|
129
|
+
in <sibling-1/> to <sibling-4/>.
|
|
130
|
+
|
|
131
|
+
<expand name="gather-facts"
|
|
132
|
+
arg1="the SIBLING topics (topics on the same level that share the same parent) of the following topic: <topic/>"
|
|
133
|
+
arg2="facts-siblings"></expand>
|
|
134
|
+
|
|
135
|
+
Ground the determination of the canonical names of the most
|
|
136
|
+
relevant sibling topics <sibling-1/> to <sibling-4/> in the
|
|
137
|
+
facts of <facts-siblings/> and do not contradict them.
|
|
138
|
+
|
|
139
|
+
- **CHILDREN**:
|
|
140
|
+
|
|
141
|
+
The *four* most relevant *children* topics (narrower topics
|
|
142
|
+
that are specializations of <topic/>), stored in <child-1/>
|
|
143
|
+
to <child-4/>.
|
|
144
|
+
|
|
145
|
+
<expand name="gather-facts"
|
|
146
|
+
arg1="the CHILDREN topics (narrower topics that are specializations) of the following topic: <topic/>"
|
|
147
|
+
arg2="facts-children"></expand>
|
|
148
|
+
|
|
149
|
+
Ground the determination of the canonical names of the most
|
|
150
|
+
relevant children topics <child-1/> to <child-4/> in the
|
|
151
|
+
facts of <facts-children/> and do not contradict them.
|
|
152
|
+
|
|
153
|
+
3. *Render Proximity*:
|
|
154
|
+
|
|
155
|
+
Output the result with the following <template/>, listing each
|
|
156
|
+
proximity topic under its bullet-prefixed section header.
|
|
157
|
+
|
|
158
|
+
<template>
|
|
159
|
+
<ase-tpl-head title="PROXIMITY TOPICS"/>
|
|
160
|
+
|
|
161
|
+
● **PARENT**:
|
|
162
|
+
↑ <parent/>
|
|
163
|
+
|
|
164
|
+
● **TOPIC**:
|
|
165
|
+
○ **<topic/>**
|
|
166
|
+
|
|
167
|
+
● **SIBLINGS**:
|
|
168
|
+
⇄ <sibling-1/>
|
|
169
|
+
⇄ <sibling-2/>
|
|
170
|
+
⇄ <sibling-3/>
|
|
171
|
+
⇄ <sibling-4/>
|
|
172
|
+
|
|
173
|
+
● **CHILDREN**:
|
|
174
|
+
↓ <child-1/>
|
|
175
|
+
↓ <child-2/>
|
|
176
|
+
↓ <child-3/>
|
|
177
|
+
↓ <child-4/>
|
|
178
|
+
|
|
179
|
+
<ase-tpl-foot title="PROXIMITY TOPICS"/>
|
|
180
|
+
</template>
|
|
181
|
+
|
|
182
|
+
4. <if condition="<getopt-option-loop/> is not equal `true`">
|
|
183
|
+
The loop runs only once in non-interactive mode: *break* out of
|
|
184
|
+
the *loop* and stop processing without any further output.
|
|
185
|
+
</if>
|
|
186
|
+
|
|
187
|
+
5. *Navigate Proximity*:
|
|
188
|
+
|
|
189
|
+
In the following, you *MUST* *NOT* use your built-in
|
|
190
|
+
<user-dialog-tool/> tool! Instead, you *MUST* just show a custom
|
|
191
|
+
dialog according to the expanded `custom-dialog` definition. You
|
|
192
|
+
*MUST* closely follow this definition.
|
|
193
|
+
|
|
194
|
+
Let the user pick one of the nine proximity topics to navigate
|
|
195
|
+
to by raising a question with the following custom dialog:
|
|
196
|
+
|
|
197
|
+
<expand name="custom-dialog" arg1="--no-other">
|
|
198
|
+
Navigate: Which proximity topic would you like to navigate to?
|
|
199
|
+
PARENT: ↑ <parent/>
|
|
200
|
+
SIBLING-1: ⇄ <sibling-1/>
|
|
201
|
+
SIBLING-2: ⇄ <sibling-2/>
|
|
202
|
+
SIBLING-3: ⇄ <sibling-3/>
|
|
203
|
+
SIBLING-4: ⇄ <sibling-4/>
|
|
204
|
+
CHILD-1: ↓ <child-1/>
|
|
205
|
+
CHILD-2: ↓ <child-2/>
|
|
206
|
+
CHILD-3: ↓ <child-3/>
|
|
207
|
+
CHILD-4: ↓ <child-4/>
|
|
208
|
+
</expand>
|
|
209
|
+
|
|
210
|
+
Check the tool <result/> and dispatch accordingly:
|
|
211
|
+
|
|
212
|
+
- If <result/> is `CANCEL`:
|
|
213
|
+
*Break* out of the *loop* and stop processing without any
|
|
214
|
+
further output.
|
|
215
|
+
|
|
216
|
+
- Otherwise: Set <topic/> to the proximity topic corresponding
|
|
217
|
+
to the selected <result/> (the <parent/>, <sibling-K/>, or
|
|
218
|
+
<child-K/> value behind the chosen label).
|
|
219
|
+
|
|
220
|
+
Then you *MUST* *continue* the *loop* at step **2.1**.
|
|
221
|
+
|
|
222
|
+
</step>
|
|
223
|
+
|
|
224
|
+
</flow>
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
|
|
2
|
+
## NAME
|
|
3
|
+
|
|
4
|
+
`ase-meta-proximity` - Determine the Conceptual Proximity of a Topic
|
|
5
|
+
|
|
6
|
+
## SYNOPSIS
|
|
7
|
+
|
|
8
|
+
`ase-meta-proximity`
|
|
9
|
+
[`--help`|`-h`]
|
|
10
|
+
[`--ground`|`-g`]
|
|
11
|
+
[`--loop`|`-l`]
|
|
12
|
+
*topic*
|
|
13
|
+
|
|
14
|
+
## DESCRIPTION
|
|
15
|
+
|
|
16
|
+
The `ase-meta-proximity` skill determines the *conceptual proximity* of
|
|
17
|
+
the supplied *topic* along three dimensions and reports the neighboring
|
|
18
|
+
topics grouped into three labeled sections: *PARENT* (the single broader
|
|
19
|
+
topic that *topic* specializes), *SIBLINGS* (the four most relevant
|
|
20
|
+
topics on the same level, sharing the same parent), and *CHILDREN* (the
|
|
21
|
+
four most relevant narrower topics that specialize *topic*).
|
|
22
|
+
|
|
23
|
+
By default the proximity is derived from model knowledge only. With the
|
|
24
|
+
`--ground`/`-g` option, the skill first searches the Internet/Web for
|
|
25
|
+
facts about the topic via the `ase-meta-search` skill (dispatched in a
|
|
26
|
+
sub-agent, querying all available search backends) and grounds the
|
|
27
|
+
determination in the found facts.
|
|
28
|
+
|
|
29
|
+
Without the `--loop`/`-l` option, the skill determines and prints the
|
|
30
|
+
proximity of the given topic once and then stops. With the `--loop`/`-l`
|
|
31
|
+
option, the skill instead presents the nine neighboring topics in an
|
|
32
|
+
interactive dialog; selecting one of them makes it the new *current
|
|
33
|
+
topic* and restarts the determination from the beginning, so the user
|
|
34
|
+
can *navigate* the topic taxonomy up (parent), sideways (siblings), and
|
|
35
|
+
down (children). Cancelling the dialog exits the loop. When `--loop` is
|
|
36
|
+
combined with `--ground`, each newly selected topic is re-grounded via
|
|
37
|
+
the `ase-meta-search` sub-agent before its proximity is re-determined.
|
|
38
|
+
|
|
39
|
+
## OPTIONS
|
|
40
|
+
|
|
41
|
+
`--ground`|`-g`:
|
|
42
|
+
Ground the determination in Internet/Web facts gathered via the
|
|
43
|
+
`ase-meta-search` skill before determining the proximity. Without
|
|
44
|
+
this option, the determination is derived from model knowledge only.
|
|
45
|
+
When combined with `--loop`, every newly navigated-to topic is
|
|
46
|
+
re-grounded.
|
|
47
|
+
|
|
48
|
+
`--loop`|`-l`:
|
|
49
|
+
Present the neighboring topics in an interactive dialog and, upon
|
|
50
|
+
selection, adopt the picked topic as the new current topic and
|
|
51
|
+
restart the determination. Without this option, the proximity of the
|
|
52
|
+
given topic is printed once and the skill stops.
|
|
53
|
+
|
|
54
|
+
## ARGUMENTS
|
|
55
|
+
|
|
56
|
+
*topic*:
|
|
57
|
+
The topic whose conceptual proximity is to be determined. It may be
|
|
58
|
+
a technical concept, a phenomenon, or any other subject; the skill
|
|
59
|
+
determines its parent, sibling, and child topics.
|
|
60
|
+
|
|
61
|
+
## EXAMPLES
|
|
62
|
+
|
|
63
|
+
Determine the proximity of a topic from model knowledge:
|
|
64
|
+
|
|
65
|
+
```text
|
|
66
|
+
❯ /ase-meta-proximity Fourier transform
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Interactively navigate the conceptual neighborhood, grounded in
|
|
70
|
+
Internet/Web facts:
|
|
71
|
+
|
|
72
|
+
```text
|
|
73
|
+
❯ /ase-meta-proximity --ground --loop Agentic Software Engineering
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## SEE ALSO
|
|
77
|
+
|
|
78
|
+
[`ase-meta-eli5`](../ase-meta-eli5/help.md), [`ase-meta-search`](../ase-meta-search/help.md), [`ase-code-explain`](../ase-code-explain/help.md).
|
|
@@ -47,9 +47,9 @@ After condensing, the user is asked whether to stop or hand off to
|
|
|
47
47
|
Recognized tokens at this skill: `none` (default, interactive
|
|
48
48
|
answer required), `DONE` (stop), `EDIT` (hand off to
|
|
49
49
|
`ase-task-edit`), `IMPLEMENT` (hand off to `ase-task-implement`),
|
|
50
|
-
or `PREFLIGHT` (hand off to `ase-task-preflight`). Example:
|
|
51
|
-
EDIT,DONE` condenses, hands off to editing, and the editing
|
|
52
|
-
exit immediately.
|
|
50
|
+
or `PREFLIGHT` (hand off to `ase-task-preflight`). Example:
|
|
51
|
+
`--next EDIT,DONE` condenses, hands off to editing, and the editing
|
|
52
|
+
loop will exit immediately.
|
|
53
53
|
|
|
54
54
|
## ARGUMENTS
|
|
55
55
|
|
|
@@ -33,9 +33,9 @@ unless `--next` pre-selects this choice.
|
|
|
33
33
|
Recognized tokens at this skill: `none` (default, interactive
|
|
34
34
|
answer required), `DONE` (stop), `EDIT` (hand off to
|
|
35
35
|
`ase-task-edit`), `IMPLEMENT` (hand off to `ase-task-implement`),
|
|
36
|
-
or `PREFLIGHT` (hand off to `ase-task-preflight`). Example:
|
|
37
|
-
EDIT,DONE` reboots, hands off to editing, and the editing
|
|
38
|
-
exit immediately.
|
|
36
|
+
or `PREFLIGHT` (hand off to `ase-task-preflight`). Example:
|
|
37
|
+
`--next EDIT,DONE` reboots, hands off to editing, and the editing
|
|
38
|
+
loop will exit immediately.
|
|
39
39
|
|
|
40
40
|
## ARGUMENTS
|
|
41
41
|
|
|
@@ -26,9 +26,9 @@ the plan in full, without any truncation or summarization.
|
|
|
26
26
|
## OPTIONS
|
|
27
27
|
|
|
28
28
|
`--full`|`-f`:
|
|
29
|
-
Render the plan in full, without collapsing the
|
|
30
|
-
DRAFT` section. By default, that section is
|
|
31
|
-
for plans longer than 90 lines.
|
|
29
|
+
Render the plan in full, without collapsing the
|
|
30
|
+
`IMPLEMENTATION DRAFT` section. By default, that section is
|
|
31
|
+
replaced with `[...]` for plans longer than 90 lines.
|
|
32
32
|
|
|
33
33
|
## ARGUMENTS
|
|
34
34
|
|