@rse/ase 0.0.38 → 0.0.39
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/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/.github/plugin/plugin.json +1 -1
- package/plugin/package.json +1 -1
- package/plugin/skills/ase-code-craft/SKILL.md +66 -95
- package/plugin/skills/ase-code-refactor/SKILL.md +69 -98
- package/plugin/skills/ase-code-resolve/SKILL.md +73 -101
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"homepage": "http://github.com/rse/ase",
|
|
7
7
|
"repository": { "url": "git+https://github.com/rse/ase.git", "type": "git" },
|
|
8
8
|
"bugs": { "url": "http://github.com/rse/ase/issues" },
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.39",
|
|
10
10
|
"license": "GPL-3.0-only",
|
|
11
11
|
"author": {
|
|
12
12
|
"name": "Dr. Ralf S. Engelschall",
|
package/plugin/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"homepage": "http://github.com/rse/ase",
|
|
7
7
|
"repository": { "url": "git+https://github.com/rse/ase.git", "type": "git" },
|
|
8
8
|
"bugs": { "url": "http://github.com/rse/ase/issues" },
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.39",
|
|
10
10
|
"license": "GPL-3.0-only",
|
|
11
11
|
"author": {
|
|
12
12
|
"name": "Dr. Ralf S. Engelschall",
|
|
@@ -74,7 +74,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
74
74
|
<feature><text/></feature> and <ase-task-id><id/></ase-task-id>
|
|
75
75
|
and call the `task_id(id: <ase-task-id/>, session:
|
|
76
76
|
<ase-session-id/>)` tool from the `ase` MCP service to
|
|
77
|
-
implicitly switch the task.
|
|
77
|
+
implicitly switch the task. Do not output anything.
|
|
78
78
|
|
|
79
79
|
3. If <feature/> is empty,
|
|
80
80
|
ask the user interactively, without a special tool, for the
|
|
@@ -92,7 +92,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
92
92
|
which consists of two lower-case words concatenated with a
|
|
93
93
|
`-` character. Then call the `task_id(id: <ase-task-id/>,
|
|
94
94
|
session: <ase-session-id/>)` tool from the `ase` MCP service to
|
|
95
|
-
implicitly switch the task.
|
|
95
|
+
implicitly switch the task. Do not output anything.
|
|
96
96
|
</if>
|
|
97
97
|
|
|
98
98
|
5. Report the task and feature with the following <template/>:
|
|
@@ -119,40 +119,12 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
119
119
|
|
|
120
120
|
3. Do not output anything in this step.
|
|
121
121
|
|
|
122
|
-
3. **
|
|
122
|
+
3. **Internalize Crafting Tenets**:
|
|
123
123
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
2. Annotate the approach you recommend with an <annotation/> of
|
|
128
|
-
` ⚝ **RECOMMENDATION** ⚝`.
|
|
129
|
-
|
|
130
|
-
3. Report each approach with the following <template/>:
|
|
131
|
-
|
|
132
|
-
<template>
|
|
133
|
-
🔵 **APPROACH A<n/>**<annotation/>: *<summary/>*
|
|
134
|
-
- [...]
|
|
135
|
-
- [...]
|
|
136
|
-
- [...]
|
|
137
|
-
<optional-diagram/>
|
|
138
|
-
</template>
|
|
139
|
-
|
|
140
|
-
Hints:
|
|
141
|
-
|
|
142
|
-
- Give a short one-sentence <summary/> of the feature approach plus
|
|
143
|
-
*precise* and *brief* feature information. Try to keep the
|
|
144
|
-
number of bullet points in the range of 1-4.
|
|
145
|
-
|
|
146
|
-
- In case of a *complex feature situation* only, visualize it with
|
|
147
|
-
an optional diagram <optional-diagram/> by invoking the
|
|
148
|
-
`ase-meta-diagram` skill via the `Skill` tool. For *current vs.
|
|
149
|
-
proposed* comparisons, render each side as a *separate*
|
|
150
|
-
`ase-meta-diagram` invocation and stack the rendered blocks
|
|
151
|
-
*vertically* (labels `**Before:**` / `**After:**`); never
|
|
152
|
-
side-by-side. Omit <optional-diagram/> entirely for simple or
|
|
153
|
-
purely local situation.
|
|
124
|
+
Internalize and honor the following tenets.
|
|
125
|
+
Do not output anything.
|
|
154
126
|
|
|
155
|
-
|
|
127
|
+
1. *Recommended* Tenets (generic):
|
|
156
128
|
|
|
157
129
|
- **Surgical Changes**:
|
|
158
130
|
Keep source code changes always as small as possible.
|
|
@@ -170,20 +142,69 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
170
142
|
Strictly align with the existing code base by exactly following its
|
|
171
143
|
coding style, its structure, its naming conventions, etc.
|
|
172
144
|
|
|
173
|
-
|
|
145
|
+
2. *Essential* Tenets (feature crafting specific):
|
|
174
146
|
|
|
175
147
|
- **High Cohesion, Low Coupling**:
|
|
176
148
|
Strike for a set of small, focused parts (high cohesion) connected by
|
|
177
149
|
thin, explicit wires (low coupling).
|
|
178
150
|
|
|
179
|
-
4. **
|
|
151
|
+
4. **Find Feature Crafting Approaches**:
|
|
152
|
+
|
|
153
|
+
You *MUST* perform the following sub-steps *internally* and *without
|
|
154
|
+
any output* until and including the recommendation decision. Only
|
|
155
|
+
sub-step 4 below is allowed to produce output.
|
|
156
|
+
|
|
157
|
+
1. *Propose* corresponding *feature approach*, including optionally,
|
|
158
|
+
some *alternative* feature approaches. Do *not* output anything
|
|
159
|
+
in this sub-step.
|
|
160
|
+
|
|
161
|
+
2. *Reflect* on and *critique* the proposed approaches by deriving,
|
|
162
|
+
per approach, a small set of concrete *pros* and *cons*. Do
|
|
163
|
+
*not* output anything in this sub-step.
|
|
164
|
+
|
|
165
|
+
3. Based on the reflection, *decide* which approach to recommend
|
|
166
|
+
and annotate it with an <annotation/> of
|
|
167
|
+
` ⚝ **RECOMMENDATION** ⚝`. All other approaches receive an
|
|
168
|
+
empty <annotation/>. Do *not* output anything in this sub-step.
|
|
169
|
+
|
|
170
|
+
4. *Now* report each approach with the following <template/>,
|
|
171
|
+
inlining its pros/cons derived in sub-step 2:
|
|
172
|
+
|
|
173
|
+
<template>
|
|
174
|
+
🔵 **APPROACH A<n/>**<annotation/>: *<summary/>*
|
|
175
|
+
● [...]
|
|
176
|
+
● [...]
|
|
177
|
+
● [...]
|
|
178
|
+
⊕ *pro*: [...]
|
|
179
|
+
⊖ *con*: [...]
|
|
180
|
+
<optional-diagram/>
|
|
181
|
+
</template>
|
|
182
|
+
|
|
183
|
+
Hints:
|
|
184
|
+
|
|
185
|
+
- Give a short one-sentence <summary/> of the feature approach plus
|
|
186
|
+
*precise* and *brief* feature information. Try to keep the
|
|
187
|
+
number of bullet points (●) in the range of 1-4.
|
|
188
|
+
|
|
189
|
+
- In case of a *complex feature situation* only, visualize it with
|
|
190
|
+
an optional diagram <optional-diagram/> by invoking the
|
|
191
|
+
`ase-meta-diagram` skill via the `Skill` tool. For *current vs.
|
|
192
|
+
proposed* comparisons, render each side as a *separate*
|
|
193
|
+
`ase-meta-diagram` invocation and stack the rendered blocks
|
|
194
|
+
*vertically* (labels `**Before:**` / `**After:**`); never
|
|
195
|
+
side-by-side. Omit <optional-diagram/> entirely for simple or
|
|
196
|
+
purely local situation.
|
|
197
|
+
|
|
198
|
+
5. **Choose Feature Crafting Approach**:
|
|
180
199
|
|
|
181
200
|
1. If <getopt-option-auto/> is equal `false`:
|
|
182
201
|
Let the *user interactively choose* the preferred feature
|
|
183
202
|
approach A<n/> with the help of the <user-dialog-tool/> tool.
|
|
184
|
-
Use the header `Select Approach`
|
|
185
|
-
|
|
186
|
-
|
|
203
|
+
Use the header `Select Approach`, use `A<n/>: <short-summary/>`
|
|
204
|
+
for the option (where <short-summary/> is an ultra brief summary
|
|
205
|
+
of the approach A<n/>), and *single-selection* only and provide
|
|
206
|
+
small *code change previews*. Mark your recommended feature
|
|
207
|
+
approach with ` ⚝ **RECOMMENDATION** ⚝` here again.
|
|
187
208
|
|
|
188
209
|
2. If <getopt-option-auto/> is equal `true`:
|
|
189
210
|
Set <n/> to the number of the feature approach A<n/> you recommend.
|
|
@@ -193,7 +214,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
193
214
|
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ▶ status: **auto-chosen approach A<n/>**
|
|
194
215
|
</template>
|
|
195
216
|
|
|
196
|
-
|
|
217
|
+
6. **Compose Feature Crafting Plan**:
|
|
197
218
|
|
|
198
219
|
1. *Compose a feature plan* for the chosen feature A<n/> by
|
|
199
220
|
closely aligning to the existing architecture and the existing
|
|
@@ -220,59 +241,9 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
220
241
|
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan created**
|
|
221
242
|
</template>
|
|
222
243
|
|
|
223
|
-
5.
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
- If <getopt-option-next/> is equal to `none`:
|
|
230
|
-
Let the *user interactively choose* what to do as the next step.
|
|
231
|
-
|
|
232
|
-
<expand name="user-dialog">
|
|
233
|
-
Next Step: How would you like to proceed with the plan?
|
|
234
|
-
DONE: Stop processing.
|
|
235
|
-
EDIT: Hand processing off to editing.
|
|
236
|
-
PREFLIGHT: Hand processing off to preflighting.
|
|
237
|
-
IMPLEMENT: Hand processing off to implementation.
|
|
238
|
-
</expand>
|
|
239
|
-
|
|
240
|
-
6. Check the tool <result/> and dispatch accordingly:
|
|
241
|
-
|
|
242
|
-
- If <result/> is `DONE` or `CANCEL`:
|
|
243
|
-
Only output the following <template/> and then *STOP*.
|
|
244
|
-
|
|
245
|
-
<template>
|
|
246
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **done**
|
|
247
|
-
</template>
|
|
248
|
-
|
|
249
|
-
- If <result/> is `EDIT`:
|
|
250
|
-
Only output the following <template/> and then use the
|
|
251
|
-
`Skill` tool to invoke the `ase:ase-task-edit` skill in
|
|
252
|
-
order to edit the plan. Immediately stop processing the
|
|
253
|
-
current skill once the `Skill` tool was used.
|
|
254
|
-
|
|
255
|
-
<template>
|
|
256
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to edit**
|
|
257
|
-
</template>
|
|
258
|
-
|
|
259
|
-
- If <result/> is `PREFLIGHT`:
|
|
260
|
-
Only output the following <template/> and then use the
|
|
261
|
-
`Skill` tool to invoke the `ase:ase-task-preflight` skill in
|
|
262
|
-
order to preflight the plan. Immediately stop processing the
|
|
263
|
-
current skill once the `Skill` tool was used.
|
|
264
|
-
|
|
265
|
-
<template>
|
|
266
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to preflight**
|
|
267
|
-
</template>
|
|
268
|
-
|
|
269
|
-
- If <result/> is `IMPLEMENT`:
|
|
270
|
-
Only output the following <template/> and then use the
|
|
271
|
-
`Skill` tool to invoke the `ase:ase-task-implement` skill in
|
|
272
|
-
order to implement the plan. Immediately stop processing the
|
|
273
|
-
current skill once the `Skill` tool was used.
|
|
274
|
-
|
|
275
|
-
<template>
|
|
276
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to implement**
|
|
277
|
-
</template>
|
|
244
|
+
5. Directly pass-through control to the `ase:ase-task-edit` skill.
|
|
245
|
+
Set <args></args> (set args to empty). If <getopt-option-next/>
|
|
246
|
+
is not equal `none`, set <args><args/> --next
|
|
247
|
+
<getopt-option-next/></args> (append to args). Then call the
|
|
248
|
+
tool `Skill(skill: "ase:ase-task-edit", args: <args/>)`.
|
|
278
249
|
|
|
@@ -74,7 +74,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
74
74
|
<request><text/></request> and <ase-task-id><id/></ase-task-id>
|
|
75
75
|
and call the `task_id(id: <ase-task-id/>, session:
|
|
76
76
|
<ase-session-id/>)` tool from the `ase` MCP service to
|
|
77
|
-
implicitly switch the task.
|
|
77
|
+
implicitly switch the task. Do not output anything.
|
|
78
78
|
|
|
79
79
|
3. If <request/> is empty,
|
|
80
80
|
ask the user interactively, without a special tool, for the
|
|
@@ -92,7 +92,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
92
92
|
which consists of two lower-case words concatenated with a
|
|
93
93
|
`-` character. Then call the `task_id(id: <ase-task-id/>,
|
|
94
94
|
session: <ase-session-id/>)` tool from the `ase` MCP service to
|
|
95
|
-
implicitly switch the task.
|
|
95
|
+
implicitly switch the task. Do not output anything.
|
|
96
96
|
</if>
|
|
97
97
|
|
|
98
98
|
5. Report the task and request with the following <template/>:
|
|
@@ -119,41 +119,12 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
119
119
|
|
|
120
120
|
3. Do not output anything in this step.
|
|
121
121
|
|
|
122
|
-
3. **
|
|
122
|
+
3. **Internalize Refactoring Tenets**:
|
|
123
123
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
2. Annotate the approach you recommend with an <annotation/> of
|
|
128
|
-
` ⚝ **RECOMMENDATION** ⚝`.
|
|
124
|
+
Internalize and honor the following tenets.
|
|
125
|
+
Do not output anything.
|
|
129
126
|
|
|
130
|
-
|
|
131
|
-
and do not output anything else in this step:
|
|
132
|
-
|
|
133
|
-
<template>
|
|
134
|
-
🔵 **APPROACH A<n/>**<annotation/>: *<summary/>*
|
|
135
|
-
- [...]
|
|
136
|
-
- [...]
|
|
137
|
-
- [...]
|
|
138
|
-
<optional-diagram/>
|
|
139
|
-
</template>
|
|
140
|
-
|
|
141
|
-
Hints:
|
|
142
|
-
|
|
143
|
-
- Give a short one-sentence <summary/> of the refactoring approach plus
|
|
144
|
-
*precise* and *brief* refactoring information. Try to keep the
|
|
145
|
-
number of bullet points in the range of 1-4.
|
|
146
|
-
|
|
147
|
-
- In case of a *complex refactoring situation* only, visualize it with
|
|
148
|
-
an optional diagram <optional-diagram/> by invoking the
|
|
149
|
-
`ase-meta-diagram` skill via the `Skill` tool. For *current vs.
|
|
150
|
-
proposed* comparisons, render each side as a *separate*
|
|
151
|
-
`ase-meta-diagram` invocation and stack the rendered blocks
|
|
152
|
-
*vertically* (labels `**Before:**` / `**After:**`); never
|
|
153
|
-
side-by-side. Omit <optional-diagram/> entirely for simple or
|
|
154
|
-
purely local situation.
|
|
155
|
-
|
|
156
|
-
*Recommended* Tenets (generic):
|
|
127
|
+
1. *Recommended* Tenets (generic):
|
|
157
128
|
|
|
158
129
|
- **Surgical Changes**:
|
|
159
130
|
Keep source code changes always as small as possible.
|
|
@@ -171,7 +142,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
171
142
|
Strictly align with the existing code base by exactly following its
|
|
172
143
|
coding style, its structure, its naming conventions, etc.
|
|
173
144
|
|
|
174
|
-
|
|
145
|
+
2. *Essential* Tenets (refactoring specific):
|
|
175
146
|
|
|
176
147
|
- **Boy Scout Rule**:
|
|
177
148
|
After the refactoring, leave the code base cleaner than you found it.
|
|
@@ -180,16 +151,65 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
180
151
|
Strike for a set of small, focused parts (high cohesion) connected by
|
|
181
152
|
thin, explicit wires (low coupling).
|
|
182
153
|
|
|
183
|
-
4. **
|
|
154
|
+
4. **Find Refactoring Approaches**:
|
|
155
|
+
|
|
156
|
+
You *MUST* perform the following sub-steps *internally* and *without
|
|
157
|
+
any output* until and including the recommendation decision. Only
|
|
158
|
+
sub-step 4 below is allowed to produce output.
|
|
159
|
+
|
|
160
|
+
1. *Propose* corresponding *refactoring approach*, including
|
|
161
|
+
optionally, some *alternative* refactoring approaches. Do *not*
|
|
162
|
+
output anything in this sub-step.
|
|
163
|
+
|
|
164
|
+
2. *Reflect* on and *critique* the proposed approaches by deriving,
|
|
165
|
+
per approach, a small set of concrete *pros* and *cons*. Do
|
|
166
|
+
*not* output anything in this sub-step.
|
|
167
|
+
|
|
168
|
+
3. Based on the reflection, *decide* which approach to recommend
|
|
169
|
+
and annotate it with an <annotation/> of
|
|
170
|
+
` ⚝ **RECOMMENDATION** ⚝`. All other approaches receive an
|
|
171
|
+
empty <annotation/>. Do *not* output anything in this sub-step.
|
|
172
|
+
|
|
173
|
+
4. *Now* report each approach with the following <template/>,
|
|
174
|
+
inlining its pros/cons derived in sub-step 2, and do not output
|
|
175
|
+
anything else in this step:
|
|
176
|
+
|
|
177
|
+
<template>
|
|
178
|
+
🔵 **APPROACH A<n/>**<annotation/>: *<summary/>*
|
|
179
|
+
● [...]
|
|
180
|
+
● [...]
|
|
181
|
+
● [...]
|
|
182
|
+
⊕ *pro*: [...]
|
|
183
|
+
⊖ *con*: [...]
|
|
184
|
+
<optional-diagram/>
|
|
185
|
+
</template>
|
|
186
|
+
|
|
187
|
+
Hints:
|
|
188
|
+
|
|
189
|
+
- Give a short one-sentence <summary/> of the refactoring approach plus
|
|
190
|
+
*precise* and *brief* refactoring information. Try to keep the
|
|
191
|
+
number of bullet points (●) in the range of 1-4.
|
|
192
|
+
|
|
193
|
+
- In case of a *complex refactoring situation* only, visualize it with
|
|
194
|
+
an optional diagram <optional-diagram/> by invoking the
|
|
195
|
+
`ase-meta-diagram` skill via the `Skill` tool. For *current vs.
|
|
196
|
+
proposed* comparisons, render each side as a *separate*
|
|
197
|
+
`ase-meta-diagram` invocation and stack the rendered blocks
|
|
198
|
+
*vertically* (labels `**Before:**` / `**After:**`); never
|
|
199
|
+
side-by-side. Omit <optional-diagram/> entirely for simple or
|
|
200
|
+
purely local situation.
|
|
201
|
+
|
|
202
|
+
5. **Choose Refactoring Approach**:
|
|
184
203
|
|
|
185
204
|
1. If <getopt-option-auto/> is equal `false`:
|
|
186
205
|
Let the *user interactively choose* the preferred refactoring
|
|
187
206
|
approach A<n/> with the help of the <user-dialog-tool/> tool.
|
|
188
|
-
Use the header `Select Approach`
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
207
|
+
Use the header `Select Approach`, use `A<n/>: <short-summary/>`
|
|
208
|
+
for the option (where <short-summary/> is an ultra brief summary
|
|
209
|
+
of the approach A<n/>), and *single-selection* only and provide
|
|
210
|
+
small *code change previews*. Mark your recommended refactoring
|
|
211
|
+
approach with ` ⚝ **RECOMMENDATION** ⚝` here again. Except for
|
|
212
|
+
the interactive selection, do not output anything in this step.
|
|
193
213
|
|
|
194
214
|
2. If <getopt-option-auto/> is equal `true`:
|
|
195
215
|
Set <n/> to the number of the refactoring approach A<n/> you recommend.
|
|
@@ -199,7 +219,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
199
219
|
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ▶ status: **auto-chosen approach A<n/>**
|
|
200
220
|
</template>
|
|
201
221
|
|
|
202
|
-
|
|
222
|
+
6. **Compose Refactoring Plan**:
|
|
203
223
|
|
|
204
224
|
1. *Compose a refactoring plan* for the chosen refactoring A<n/> by
|
|
205
225
|
closely aligning to the existing architecture and the existing
|
|
@@ -226,58 +246,9 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
226
246
|
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan created**
|
|
227
247
|
</template>
|
|
228
248
|
|
|
229
|
-
5.
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
- If <getopt-option-next/> is equal to `none`:
|
|
236
|
-
Let the *user interactively choose* what to do as the next step.
|
|
237
|
-
|
|
238
|
-
<expand name="user-dialog">
|
|
239
|
-
Next Step: How would you like to proceed with the plan?
|
|
240
|
-
DONE: Stop processing.
|
|
241
|
-
EDIT: Hand processing off to editing.
|
|
242
|
-
PREFLIGHT: Hand processing off to preflighting.
|
|
243
|
-
IMPLEMENT: Hand processing off to implementation.
|
|
244
|
-
</expand>
|
|
245
|
-
|
|
246
|
-
6. Check the tool <result/> and dispatch accordingly:
|
|
247
|
-
|
|
248
|
-
- If <result/> is `DONE` or `CANCEL`:
|
|
249
|
-
Only output the following <template/> and then *STOP*.
|
|
250
|
-
|
|
251
|
-
<template>
|
|
252
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **done**
|
|
253
|
-
</template>
|
|
254
|
-
|
|
255
|
-
- If <result/> is `EDIT`:
|
|
256
|
-
Only output the following <template/> and then use the
|
|
257
|
-
`Skill` tool to invoke the `ase:ase-task-edit` skill in
|
|
258
|
-
order to edit the plan. Immediately stop processing the
|
|
259
|
-
current skill once the `Skill` tool was used.
|
|
260
|
-
|
|
261
|
-
<template>
|
|
262
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to edit**
|
|
263
|
-
</template>
|
|
264
|
-
|
|
265
|
-
- If <result/> is `PREFLIGHT`:
|
|
266
|
-
Only output the following <template/> and then use the
|
|
267
|
-
`Skill` tool to invoke the `ase:ase-task-preflight` skill in
|
|
268
|
-
order to preflight the plan. Immediately stop processing the
|
|
269
|
-
current skill once the `Skill` tool was used.
|
|
270
|
-
|
|
271
|
-
<template>
|
|
272
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to preflight**
|
|
273
|
-
</template>
|
|
274
|
-
|
|
275
|
-
- If <result/> is `IMPLEMENT`:
|
|
276
|
-
Only output the following <template/> and then use the
|
|
277
|
-
`Skill` tool to invoke the `ase:ase-task-implement` skill in
|
|
278
|
-
order to implement the plan. Immediately stop processing the
|
|
279
|
-
current skill once the `Skill` tool was used.
|
|
280
|
-
|
|
281
|
-
<template>
|
|
282
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to implement**
|
|
283
|
-
</template>
|
|
249
|
+
5. Directly pass-through control to the `ase:ase-task-edit` skill.
|
|
250
|
+
Set <args></args> (set args to empty). If <getopt-option-next/>
|
|
251
|
+
is not equal `none`, set <args><args/> --next
|
|
252
|
+
<getopt-option-next/></args> (append to args). Then call the
|
|
253
|
+
tool `Skill(skill: "ase:ase-task-edit", args: <args/>)`.
|
|
254
|
+
|
|
@@ -86,7 +86,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
86
86
|
<problem><text/></problem> and <ase-task-id><id/></ase-task-id>
|
|
87
87
|
and call the `task_id(id: <ase-task-id/>, session:
|
|
88
88
|
<ase-session-id/>)` tool from the `ase` MCP service to
|
|
89
|
-
implicitly switch the task.
|
|
89
|
+
implicitly switch the task. Do not output anything.
|
|
90
90
|
|
|
91
91
|
4. If <problem/> is empty,
|
|
92
92
|
ask the user interactively, without a special tool, for the
|
|
@@ -104,7 +104,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
104
104
|
which consists of two lower-case words concatenated with a
|
|
105
105
|
`-` character. Then call the `task_id(id: <ase-task-id/>,
|
|
106
106
|
session: <ase-session-id/>)` tool from the `ase` MCP service to
|
|
107
|
-
implicitly switch the task.
|
|
107
|
+
implicitly switch the task. Do not output anything.
|
|
108
108
|
</if>
|
|
109
109
|
|
|
110
110
|
6. Report the task and problem with the following <template/>:
|
|
@@ -130,9 +130,9 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
130
130
|
<optional-diagram/>
|
|
131
131
|
|
|
132
132
|
🟠 **PROBLEM DETAILS**: *<summary/>*
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
133
|
+
● [...]
|
|
134
|
+
● [...]
|
|
135
|
+
● [...]
|
|
136
136
|
</template>
|
|
137
137
|
|
|
138
138
|
Hints:
|
|
@@ -142,7 +142,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
142
142
|
|
|
143
143
|
- Give a short one-sentence <summary/> of the <problem/> plus *precise*
|
|
144
144
|
but *brief* code processing information to understand the problem.
|
|
145
|
-
Try to keep the number of bullet points in the range of 1-4.
|
|
145
|
+
Try to keep the number of bullet points (●) in the range of 1-4.
|
|
146
146
|
|
|
147
147
|
- In case of a *complex context situation* with complex *structure*
|
|
148
148
|
(layout, components, dependencies, etc), complex *control flow*
|
|
@@ -163,22 +163,66 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
163
163
|
|
|
164
164
|
3. Do not output anything in this step.
|
|
165
165
|
|
|
166
|
-
3. **
|
|
166
|
+
3. **Internalize Problem Resolution Tenets**:
|
|
167
|
+
|
|
168
|
+
Internalize and honor the following tenets.
|
|
169
|
+
Do not output anything.
|
|
170
|
+
|
|
171
|
+
1. *Recommended* Tenets (generic):
|
|
172
|
+
|
|
173
|
+
- **Surgical Changes**:
|
|
174
|
+
Keep source code changes always as small as possible.
|
|
175
|
+
|
|
176
|
+
- **Separation of Concerns**:
|
|
177
|
+
Clearly separate all individual concerns as good as possible.
|
|
178
|
+
|
|
179
|
+
- **Single Responsibility Principle**:
|
|
180
|
+
Every module, class, or function should have only one reason to change.
|
|
181
|
+
|
|
182
|
+
- **Behavior Preservation**:
|
|
183
|
+
Refactoring changes only re-structure, never change any observable behavior.
|
|
184
|
+
|
|
185
|
+
- **Align with Code Base**:
|
|
186
|
+
Strictly align with the existing code base by exactly following its
|
|
187
|
+
coding style, its structure, its naming conventions, etc.
|
|
188
|
+
|
|
189
|
+
2. *Essential* Tenets (problem resolving specific):
|
|
190
|
+
|
|
191
|
+
- **No Cleanups**:
|
|
192
|
+
Strictly focus on resolving the problem and do not mix this task
|
|
193
|
+
with any other necessary code cleanups, except they are really
|
|
194
|
+
necessary for resolving the task.
|
|
195
|
+
|
|
196
|
+
4. **Find Problem Resolution Approaches**:
|
|
197
|
+
|
|
198
|
+
You *MUST* perform the following sub-steps *internally* and *without
|
|
199
|
+
any output* until and including the recommendation decision. Only
|
|
200
|
+
sub-step 4 below is allowed to produce output.
|
|
167
201
|
|
|
168
202
|
1. *Propose* corresponding *resolution approach*, including optionally,
|
|
169
|
-
some *alternative* resolution approaches.
|
|
203
|
+
some *alternative* resolution approaches. Do *not* output anything
|
|
204
|
+
in this sub-step.
|
|
170
205
|
|
|
171
|
-
2.
|
|
172
|
-
|
|
206
|
+
2. *Reflect* on and *critique* the proposed approaches by deriving,
|
|
207
|
+
per approach, a small set of concrete *pros* and *cons*. Do
|
|
208
|
+
*not* output anything in this sub-step.
|
|
173
209
|
|
|
174
|
-
3.
|
|
175
|
-
and
|
|
210
|
+
3. Based on the reflection, *decide* which approach to recommend
|
|
211
|
+
and annotate it with an <annotation/> of
|
|
212
|
+
` ⚝ **RECOMMENDATION** ⚝`. All other approaches receive an
|
|
213
|
+
empty <annotation/>. Do *not* output anything in this sub-step.
|
|
214
|
+
|
|
215
|
+
4. *Now* report each approach with the following <template/>,
|
|
216
|
+
inlining its pros/cons derived in sub-step 2, and do not output
|
|
217
|
+
anything else in this step:
|
|
176
218
|
|
|
177
219
|
<template>
|
|
178
220
|
🔵 **APPROACH A<n/>**<annotation/>: *<summary/>*
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
221
|
+
● [...]
|
|
222
|
+
● [...]
|
|
223
|
+
● [...]
|
|
224
|
+
⊕ *pro*: [...]
|
|
225
|
+
⊖ *con*: [...]
|
|
182
226
|
<optional-diagram/>
|
|
183
227
|
</template>
|
|
184
228
|
|
|
@@ -186,7 +230,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
186
230
|
|
|
187
231
|
- Give a short one-sentence <summary/> of the resolution approach plus
|
|
188
232
|
*precise* and *brief* resolution information. Try to keep the
|
|
189
|
-
number of bullet points in the range of 1-4.
|
|
233
|
+
number of bullet points (●) in the range of 1-4.
|
|
190
234
|
|
|
191
235
|
- Focus on resolution approaches for *practically relevant* cases and do *not*
|
|
192
236
|
investigate on theoretical or fictive cases. This is especially the case
|
|
@@ -208,39 +252,16 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
208
252
|
side-by-side. Omit <optional-diagram/> entirely for simple or
|
|
209
253
|
purely local situation.
|
|
210
254
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
- **Surgical Changes**:
|
|
214
|
-
Keep source code changes always as small as possible.
|
|
215
|
-
|
|
216
|
-
- **Separation of Concerns**:
|
|
217
|
-
Clearly separate all individual concerns as good as possible.
|
|
218
|
-
|
|
219
|
-
- **Single Responsibility Principle**:
|
|
220
|
-
Every module, class, or function should have only one reason to change.
|
|
221
|
-
|
|
222
|
-
- **Behavior Preservation**:
|
|
223
|
-
Refactoring changes only re-structure, never change any observable behavior.
|
|
224
|
-
|
|
225
|
-
- **Align with Code Base**:
|
|
226
|
-
Strictly align with the existing code base by exactly following its
|
|
227
|
-
coding style, its structure, its naming conventions, etc.
|
|
228
|
-
|
|
229
|
-
*Essential* Tenets (specific):
|
|
230
|
-
|
|
231
|
-
- **No Cleanups**:
|
|
232
|
-
Strictly focus on resolving the problem and do not mix this task
|
|
233
|
-
with any other necessary code cleanups, except they are really
|
|
234
|
-
necessary for resolving the task.
|
|
235
|
-
|
|
236
|
-
4. **Choose Problem Resolution Approach**:
|
|
255
|
+
5. **Choose Problem Resolution Approach**:
|
|
237
256
|
|
|
238
257
|
1. If <getopt-option-auto/> is equal `false`:
|
|
239
258
|
Let the *user interactively choose* the preferred resolution
|
|
240
259
|
approach A<n/> with the help of the <user-dialog-tool/> tool.
|
|
241
|
-
Use the header `Select Approach`
|
|
242
|
-
|
|
243
|
-
|
|
260
|
+
Use the header `Select Approach`, use `A<n/>: <short-summary/>`
|
|
261
|
+
for the option (where <short-summary/> is an ultra brief summary
|
|
262
|
+
of the approach A<n/>), and *single-selection* only and provide
|
|
263
|
+
small *code change previews*. Mark your recommended resolution
|
|
264
|
+
approach with ` ⚝ **RECOMMENDATION** ⚝` here again.
|
|
244
265
|
|
|
245
266
|
2. If <getopt-option-auto/> is equal `true`:
|
|
246
267
|
Set <n/> to the number of the resolution approach A<n/> you recommend.
|
|
@@ -250,7 +271,7 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
250
271
|
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ▶ status: **auto-chosen approach A<n/>**
|
|
251
272
|
</template>
|
|
252
273
|
|
|
253
|
-
|
|
274
|
+
6. **Compose Problem Resolution Plan**:
|
|
254
275
|
|
|
255
276
|
1. *Compose a plan* with code references, a precise description of the
|
|
256
277
|
problem, the chosen resolution approach, a preview of the *unified
|
|
@@ -284,58 +305,9 @@ permitted way to persist artifacts is via `task_save(...)`.
|
|
|
284
305
|
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan created**
|
|
285
306
|
</template>
|
|
286
307
|
|
|
287
|
-
6.
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
- If <getopt-option-next/> is equal to `none`:
|
|
294
|
-
Let the *user interactively choose* what to do as the next step.
|
|
295
|
-
|
|
296
|
-
<expand name="user-dialog">
|
|
297
|
-
Next Step: How would you like to proceed with the plan?
|
|
298
|
-
DONE: Stop processing.
|
|
299
|
-
EDIT: Hand processing off to editing.
|
|
300
|
-
PREFLIGHT: Hand processing off to preflighting.
|
|
301
|
-
IMPLEMENT: Hand processing off to implementation.
|
|
302
|
-
</expand>
|
|
303
|
-
|
|
304
|
-
7. Check the tool <result/> and dispatch accordingly:
|
|
305
|
-
|
|
306
|
-
- If <result/> is `DONE` or `CANCEL`:
|
|
307
|
-
Only output the following <template/> and then *STOP*.
|
|
308
|
-
|
|
309
|
-
<template>
|
|
310
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **done**
|
|
311
|
-
</template>
|
|
312
|
-
|
|
313
|
-
- If <result/> is `EDIT`:
|
|
314
|
-
Only output the following <template/> and then use the
|
|
315
|
-
`Skill` tool to invoke the `ase:ase-task-edit` skill in
|
|
316
|
-
order to edit the plan. Immediately stop processing the
|
|
317
|
-
current skill once the `Skill` tool was used.
|
|
318
|
-
|
|
319
|
-
<template>
|
|
320
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to edit**
|
|
321
|
-
</template>
|
|
322
|
-
|
|
323
|
-
- If <result/> is `PREFLIGHT`:
|
|
324
|
-
Only output the following <template/> and then use the
|
|
325
|
-
`Skill` tool to invoke the `ase:ase-task-preflight` skill in
|
|
326
|
-
order to preflight the plan. Immediately stop processing the
|
|
327
|
-
current skill once the `Skill` tool was used.
|
|
328
|
-
|
|
329
|
-
<template>
|
|
330
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to preflight**
|
|
331
|
-
</template>
|
|
332
|
-
|
|
333
|
-
- If <result/> is `IMPLEMENT`:
|
|
334
|
-
Only output the following <template/> and then use the
|
|
335
|
-
`Skill` tool to invoke the `ase:ase-task-implement` skill in
|
|
336
|
-
order to implement the plan. Immediately stop processing the
|
|
337
|
-
current skill once the `Skill` tool was used.
|
|
338
|
-
|
|
339
|
-
<template>
|
|
340
|
-
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **hand off to implement**
|
|
341
|
-
</template>
|
|
308
|
+
6. Directly pass-through control to the `ase:ase-task-edit` skill.
|
|
309
|
+
Set <args></args> (set args to empty). If <getopt-option-next/>
|
|
310
|
+
is not equal `none`, set <args><args/> --next
|
|
311
|
+
<getopt-option-next/></args> (append to args). Then call the
|
|
312
|
+
tool `Skill(skill: "ase:ase-task-edit", args: <args/>)`.
|
|
313
|
+
|