@rse/ase 0.0.57 → 0.0.58
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/meta/ase-getopt.md +19 -6
- package/plugin/package.json +1 -1
- package/plugin/skills/ase-code-craft/SKILL.md +14 -2
- package/plugin/skills/ase-code-craft/help.md +8 -0
- package/plugin/skills/ase-code-refactor/SKILL.md +14 -2
- package/plugin/skills/ase-code-refactor/help.md +8 -0
- package/plugin/skills/ase-code-resolve/SKILL.md +14 -2
- package/plugin/skills/ase-code-resolve/help.md +8 -0
- package/plugin/skills/ase-task-edit/SKILL.md +49 -60
- package/plugin/skills/ase-task-edit/help.md +9 -0
- package/plugin/skills/ase-task-implement/SKILL.md +10 -0
- package/plugin/skills/ase-task-implement/help.md +7 -0
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.58",
|
|
10
10
|
"license": "GPL-3.0-only",
|
|
11
11
|
"author": {
|
|
12
12
|
"name": "Dr. Ralf S. Engelschall",
|
|
@@ -10,14 +10,27 @@ set placeholders into the context as a side-effect.
|
|
|
10
10
|
1. **Determine Parameters**:
|
|
11
11
|
Set <getopt-skill><arg1/></getopt-skill>.
|
|
12
12
|
Set <getopt-spec>--help|-h <arg2/></getopt-spec>.
|
|
13
|
-
Set <getopt-opts><arg3/></getopt-opts>.
|
|
14
13
|
Set <getopt-args><content/></getopt-args>.
|
|
15
14
|
|
|
16
|
-
2. **Short-Circuit
|
|
17
|
-
If <getopt-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
15
|
+
2. **Short-Circuit Processing**:
|
|
16
|
+
If <getopt-args/> does *NOT* match the regexp `(^|\s)-` (i.e.
|
|
17
|
+
contains no options at all):
|
|
18
|
+
|
|
19
|
+
For each option token in <getopt-spec/> of the form
|
|
20
|
+
`--<long/>[|-<short/>][=<default/>|=(<c1/>|<c2/>|...)]`, set
|
|
21
|
+
<getopt-option-<long/>/> to <default/> (for `=<default/>`
|
|
22
|
+
form), or to <c1/> (the first choice, for `=(<c1/>|<c2>/|...)`
|
|
23
|
+
form), or to `false` (for value-less options). Then set
|
|
24
|
+
<getopt-arguments><getopt-args/></getopt-arguments>.
|
|
25
|
+
|
|
26
|
+
Additionally, simulate <getopt-info/> as a comma-separated
|
|
27
|
+
markdown rendering of the parsed options in the form `<longN/>:
|
|
28
|
+
**<valueN/>**, [...]` (joined with `, `, with each value
|
|
29
|
+
shell-quoted if value contains spaces or special characters, and
|
|
30
|
+
excluding the `help` option).
|
|
31
|
+
|
|
32
|
+
Then silently *SKIP* only the following steps 3-6
|
|
33
|
+
and proceed directly to step 7 to display the results.
|
|
21
34
|
|
|
22
35
|
3. **MCP Call**:
|
|
23
36
|
Call the `ase_getopt(name: "<getopt-skill/>", spec:
|
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.58",
|
|
10
10
|
"license": "GPL-3.0-only",
|
|
11
11
|
"author": {
|
|
12
12
|
"name": "Dr. Ralf S. Engelschall",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-code-craft
|
|
3
|
-
argument-hint: "[--help|-h] [--auto|-a] [--next|-n <option>] [<task-id>:] <feature>"
|
|
3
|
+
argument-hint: "[--help|-h] [--auto|-a] [--dry|-d] [--next|-n <option>] [<task-id>:] <feature>"
|
|
4
4
|
description: >
|
|
5
5
|
Craft Source Code:
|
|
6
6
|
Use when user wants to create or craft a new feature from scratch.
|
|
@@ -23,7 +23,7 @@ Craft Source Code
|
|
|
23
23
|
|
|
24
24
|
<expand name="getopt"
|
|
25
25
|
arg1="ase-code-craft"
|
|
26
|
-
arg2="--auto|-a --next|-n=(none|DONE|EDIT|PREFLIGHT|IMPLEMENT)">
|
|
26
|
+
arg2="--auto|-a --dry|-d --next|-n=(none|DONE|EDIT|PREFLIGHT|IMPLEMENT)">
|
|
27
27
|
$ARGUMENTS
|
|
28
28
|
</expand>
|
|
29
29
|
|
|
@@ -261,6 +261,18 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
261
261
|
the information from feature A<n/> and all derived realization
|
|
262
262
|
decisions into it. Store the resulting task plan in <content/>.
|
|
263
263
|
|
|
264
|
+
If a `CHANGELOG.md` file exists in the project (or in any
|
|
265
|
+
affected sub-package), the plan *MUST* include, as part of its
|
|
266
|
+
`## ※ CHANGES` section, an explicit bullet point describing
|
|
267
|
+
the addition of a corresponding new entry to that `CHANGELOG.md`
|
|
268
|
+
file, aligned with its existing style and conventions.
|
|
269
|
+
|
|
270
|
+
<if condition="<getopt-option-dry/> is equal `true`">
|
|
271
|
+
You *MUST* completely omit the `## ※ VERIFICATION` section
|
|
272
|
+
(including its heading and all of its bullet points) from
|
|
273
|
+
<content/>.
|
|
274
|
+
</if>
|
|
275
|
+
|
|
264
276
|
You *MUST* *NOT* call `Edit`, `Write`, `NotebookEdit`, or any
|
|
265
277
|
filesystem-modifying tool during this step.
|
|
266
278
|
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
`ase-code-craft`
|
|
9
9
|
[`--help`|`-h`]
|
|
10
10
|
[`--auto`|`-a`]
|
|
11
|
+
[`--dry`|`-d`]
|
|
11
12
|
[`--next`|`-n` *option*]
|
|
12
13
|
[*task-id*:] *feature*
|
|
13
14
|
|
|
@@ -31,6 +32,13 @@ plan via `ase_task_save` and then hands off to `ase-task-edit`,
|
|
|
31
32
|
Automatically pick the recommended feature approach without
|
|
32
33
|
asking the user via the interactive dialog.
|
|
33
34
|
|
|
35
|
+
`--dry`|`-d`:
|
|
36
|
+
Compose the plan *without* the `※ VERIFICATION` section. When
|
|
37
|
+
`ase-task-implement` later applies such a plan, it strictly skips
|
|
38
|
+
the entire verification phase (no build, tests, linter,
|
|
39
|
+
type-checker, or program execution) once the source files have
|
|
40
|
+
been modified.
|
|
41
|
+
|
|
34
42
|
`--next`|`-n` *option*:
|
|
35
43
|
Automatically choose the next step after composing the plan,
|
|
36
44
|
where *option* is either `none` (default, hand-off to
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-code-refactor
|
|
3
|
-
argument-hint: "[--help|-h] [--auto|-a] [--next|-n <option>] [<task-id>:] <request>"
|
|
3
|
+
argument-hint: "[--help|-h] [--auto|-a] [--dry|-d] [--next|-n <option>] [<task-id>:] <request>"
|
|
4
4
|
description: >
|
|
5
5
|
Refactor Code Base:
|
|
6
6
|
Use when user wants to refactor the code base.
|
|
@@ -23,7 +23,7 @@ Refactor Artifacts
|
|
|
23
23
|
|
|
24
24
|
<expand name="getopt"
|
|
25
25
|
arg1="ase-code-refactor"
|
|
26
|
-
arg2="--auto|-a --next|-n=(none|DONE|EDIT|PREFLIGHT|IMPLEMENT)">
|
|
26
|
+
arg2="--auto|-a --dry|-d --next|-n=(none|DONE|EDIT|PREFLIGHT|IMPLEMENT)">
|
|
27
27
|
$ARGUMENTS
|
|
28
28
|
</expand>
|
|
29
29
|
|
|
@@ -252,6 +252,18 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
252
252
|
the information from refactoring A<n/> and all derived realization
|
|
253
253
|
decisions into it. Store the resulting task plan in <content/>.
|
|
254
254
|
|
|
255
|
+
If a `CHANGELOG.md` file exists in the project (or in any
|
|
256
|
+
affected sub-package), the plan *MUST* include, as part of its
|
|
257
|
+
`## ※ CHANGES` section, an explicit bullet point describing
|
|
258
|
+
the addition of a corresponding new entry to that `CHANGELOG.md`
|
|
259
|
+
file, aligned with its existing style and conventions.
|
|
260
|
+
|
|
261
|
+
<if condition="<getopt-option-dry/> is equal `true`">
|
|
262
|
+
You *MUST* completely omit the `## ※ VERIFICATION` section
|
|
263
|
+
(including its heading and all of its bullet points) from
|
|
264
|
+
<content/>.
|
|
265
|
+
</if>
|
|
266
|
+
|
|
255
267
|
You *MUST* *NOT* call `Edit`, `Write`, `NotebookEdit`, or any
|
|
256
268
|
filesystem-modifying tool during this step.
|
|
257
269
|
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
`ase-code-refactor`
|
|
9
9
|
[`--help`|`-h`]
|
|
10
10
|
[`--auto`|`-a`]
|
|
11
|
+
[`--dry`|`-d`]
|
|
11
12
|
[`--next`|`-n` *option*]
|
|
12
13
|
[*task-id*:] *request*
|
|
13
14
|
|
|
@@ -31,6 +32,13 @@ plan via `ase_task_save` and then hands off to `ase-task-edit`,
|
|
|
31
32
|
Automatically pick the recommended refactoring approach without
|
|
32
33
|
asking the user via the interactive dialog.
|
|
33
34
|
|
|
35
|
+
`--dry`|`-d`:
|
|
36
|
+
Compose the plan *without* the `※ VERIFICATION` section. When
|
|
37
|
+
`ase-task-implement` later applies such a plan, it strictly skips
|
|
38
|
+
the entire verification phase (no build, tests, linter,
|
|
39
|
+
type-checker, or program execution) once the source files have
|
|
40
|
+
been modified.
|
|
41
|
+
|
|
34
42
|
`--next`|`-n` *option*:
|
|
35
43
|
Automatically choose the next step after composing the plan,
|
|
36
44
|
where *option* is either `none` (default, hand-off to
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-code-resolve
|
|
3
|
-
argument-hint: "[--help|-h] [--auto|-a] [--next|-n <option>] [<task-id>:] <problem>"
|
|
3
|
+
argument-hint: "[--help|-h] [--auto|-a] [--dry|-d] [--next|-n <option>] [<task-id>:] <problem>"
|
|
4
4
|
description: >
|
|
5
5
|
Resolve Problem:
|
|
6
6
|
Use when user wants a bug fixed or problem resolved.
|
|
@@ -23,7 +23,7 @@ Resolve Problem
|
|
|
23
23
|
|
|
24
24
|
<expand name="getopt"
|
|
25
25
|
arg1="ase-code-resolve"
|
|
26
|
-
arg2="--auto|-a --next|-n=(none|DONE|EDIT|PREFLIGHT|IMPLEMENT)">
|
|
26
|
+
arg2="--auto|-a --dry|-d --next|-n=(none|DONE|EDIT|PREFLIGHT|IMPLEMENT)">
|
|
27
27
|
$ARGUMENTS
|
|
28
28
|
</expand>
|
|
29
29
|
|
|
@@ -300,6 +300,18 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
300
300
|
the success of the resolution, by using the <format/> defined for a
|
|
301
301
|
task plan. Store the resulting task plan in <content/>.
|
|
302
302
|
|
|
303
|
+
If a `CHANGELOG.md` file exists in the project (or in any
|
|
304
|
+
affected sub-package), the plan *MUST* include, as part of its
|
|
305
|
+
`## ※ CHANGES` section, an explicit bullet point describing
|
|
306
|
+
the addition of a corresponding new entry to that `CHANGELOG.md`
|
|
307
|
+
file, aligned with its existing style and conventions.
|
|
308
|
+
|
|
309
|
+
<if condition="<getopt-option-dry/> is equal `true`">
|
|
310
|
+
You *MUST* completely omit the `## ※ VERIFICATION` section
|
|
311
|
+
(including its heading and all of its bullet points) from
|
|
312
|
+
<content/>.
|
|
313
|
+
</if>
|
|
314
|
+
|
|
303
315
|
You *MUST* *NOT* call `Edit`, `Write`, `NotebookEdit`, or any
|
|
304
316
|
filesystem-modifying tool during this step.
|
|
305
317
|
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
`ase-code-resolve`
|
|
9
9
|
[`--help`|`-h`]
|
|
10
10
|
[`--auto`|`-a`]
|
|
11
|
+
[`--dry`|`-d`]
|
|
11
12
|
[`--next`|`-n` *option*]
|
|
12
13
|
[*task-id*:] *problem*
|
|
13
14
|
|
|
@@ -36,6 +37,13 @@ plan via `ase_task_save` and then hands off to `ase-task-edit`,
|
|
|
36
37
|
Automatically pick the recommended resolution approach without
|
|
37
38
|
asking the user via the interactive dialog.
|
|
38
39
|
|
|
40
|
+
`--dry`|`-d`:
|
|
41
|
+
Compose the plan *without* the `※ VERIFICATION` section. When
|
|
42
|
+
`ase-task-implement` later applies such a plan, it strictly skips
|
|
43
|
+
the entire verification phase (no build, tests, linter,
|
|
44
|
+
type-checker, or program execution) once the source files have
|
|
45
|
+
been modified.
|
|
46
|
+
|
|
39
47
|
`--next`|`-n` *option*:
|
|
40
48
|
Automatically choose the next step after composing the plan,
|
|
41
49
|
where *option* is either `none` (default, hand-off to
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-task-edit
|
|
3
|
-
argument-hint: "[--help|-h] [--plan|-p <option>] [--next|-n <option>] [<id> | <id>: <instruction> | <instruction>]"
|
|
3
|
+
argument-hint: "[--help|-h] [--plan|-p <option>] [--dry|-d] [--next|-n <option>] [<id> | <id>: <instruction> | <instruction>]"
|
|
4
4
|
description: >
|
|
5
5
|
Iteratively edit and refine a named plan for a task through a
|
|
6
6
|
conversational loop. Each round, the current plan is shown and the
|
|
@@ -23,7 +23,7 @@ Iteratively Edit a Task Plan
|
|
|
23
23
|
|
|
24
24
|
<expand name="getopt"
|
|
25
25
|
arg1="ase-task-edit"
|
|
26
|
-
arg2="--plan|-p=(none|OVERWRITE|REFINE|PRESERVE) --next|-n=(none|DONE|IMPLEMENT|PREFLIGHT|REFINE)">
|
|
26
|
+
arg2="--plan|-p=(none|OVERWRITE|REFINE|PRESERVE) --dry|-d --next|-n=(none|DONE|IMPLEMENT|PREFLIGHT|REFINE)">
|
|
27
27
|
$ARGUMENTS
|
|
28
28
|
</expand>
|
|
29
29
|
|
|
@@ -45,6 +45,47 @@ You *MUST* not skip any numbered item during processing!
|
|
|
45
45
|
You *MUST* *NOT* output anything in this entire procedure, *except* when
|
|
46
46
|
explicitly requested by this procedure via outputs based on a <template/>!
|
|
47
47
|
|
|
48
|
+
<define name="apply-refinement">
|
|
49
|
+
Treat the <instruction/> as a *refinement instruction* for
|
|
50
|
+
the plan, and update <content/> in-place by *applying* the
|
|
51
|
+
requested <instruction/> to the *plan*. When refining the
|
|
52
|
+
plan this way, preserve the overall structure of the plan
|
|
53
|
+
and only modify what the user actually requested. Do *not*
|
|
54
|
+
rewrite unrelated sections of the plan.
|
|
55
|
+
|
|
56
|
+
Calculate the number of words <words/> of <content/>.
|
|
57
|
+
Set <content-dirty>true</content-dirty>.
|
|
58
|
+
</define>
|
|
59
|
+
|
|
60
|
+
<define name="generate-plan">
|
|
61
|
+
Create a new plan from scratch and store the result as
|
|
62
|
+
<content/> by closely following the defined plan format
|
|
63
|
+
<format/> and injecting into it all the information from
|
|
64
|
+
the <instruction/> and all decisions you derived from the
|
|
65
|
+
<instruction/>.
|
|
66
|
+
|
|
67
|
+
If a `CHANGELOG.md` file exists in the project (or in any
|
|
68
|
+
affected sub-package), the plan *MUST* include, as part of
|
|
69
|
+
its `## ※ CHANGES` section, an explicit bullet point
|
|
70
|
+
describing the addition of a corresponding new entry to
|
|
71
|
+
that `CHANGELOG.md` file, aligned with its existing style
|
|
72
|
+
and conventions.
|
|
73
|
+
|
|
74
|
+
<if condition="<getopt-option-dry/> is equal `true`">
|
|
75
|
+
You *MUST* completely omit the `## ※ VERIFICATION` section
|
|
76
|
+
(including its heading and all of its bullet points) from
|
|
77
|
+
<content/>.
|
|
78
|
+
</if>
|
|
79
|
+
|
|
80
|
+
Call the `ase_timestamp(format: "yyyy-LL-dd HH:mm")` tool of the
|
|
81
|
+
`ase` MCP server and use the `text` field of its response
|
|
82
|
+
for fresh <timestamp-created/> and <timestamp-modified/>
|
|
83
|
+
information. Then insert the current <ase-task-id/>,
|
|
84
|
+
<timestamp-created/>, and <timestamp-modified/> information
|
|
85
|
+
and calculate the number of words <words/> of <content/>.
|
|
86
|
+
Set <content-dirty>true</content-dirty>.
|
|
87
|
+
</define>
|
|
88
|
+
|
|
48
89
|
1. **Determine Task and Instruction:**
|
|
49
90
|
|
|
50
91
|
1. Set <instruction><getopt-arguments/></instruction> initially.
|
|
@@ -194,19 +235,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
194
235
|
|
|
195
236
|
- If <result/> is `OVERWRITE`:
|
|
196
237
|
|
|
197
|
-
|
|
198
|
-
<content/> by closely following the defined plan format
|
|
199
|
-
<format/> and injecting into it all the information from
|
|
200
|
-
the <instruction/> and all decisions you derived from the
|
|
201
|
-
<instruction/>.
|
|
202
|
-
|
|
203
|
-
Call the `ase_timestamp(format: "yyyy-LL-dd HH:mm")` tool of the
|
|
204
|
-
`ase` MCP server and use the `text` field of its response
|
|
205
|
-
for fresh <timestamp-created/> and <timestamp-modified/>
|
|
206
|
-
information. Then insert the current <ase-task-id/>,
|
|
207
|
-
<timestamp-created/>, and <timestamp-modified/> information
|
|
208
|
-
and calculate the number of words <words/> of <content/>.
|
|
209
|
-
Set <content-dirty>true</content-dirty>.
|
|
238
|
+
<expand name="generate-plan"/>
|
|
210
239
|
|
|
211
240
|
Only output the following <template/> and continue processing:
|
|
212
241
|
|
|
@@ -217,15 +246,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
217
246
|
|
|
218
247
|
- If <result/> is `REFINE`:
|
|
219
248
|
|
|
220
|
-
|
|
221
|
-
the plan, and update <content/> in-place by *applying* the
|
|
222
|
-
requested <instruction/> to the *plan*. When refining the
|
|
223
|
-
plan this way, preserve the overall structure of the plan
|
|
224
|
-
and only modify what the user actually requested. Do *not*
|
|
225
|
-
rewrite unrelated sections of the plan.
|
|
226
|
-
|
|
227
|
-
Calculate the number of words <words/> of <content/>.
|
|
228
|
-
Set <content-dirty>true</content-dirty>.
|
|
249
|
+
<expand name="apply-refinement"/>
|
|
229
250
|
|
|
230
251
|
Only output the following <template/> and continue processing:
|
|
231
252
|
|
|
@@ -239,15 +260,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
239
260
|
Set <instruction><instruction/> <text/></instruction> (append
|
|
240
261
|
the user's free-text hint to the existing instruction).
|
|
241
262
|
|
|
242
|
-
|
|
243
|
-
the plan, and update <content/> in-place by *applying* the
|
|
244
|
-
requested <instruction/> to the *plan*. When refining the
|
|
245
|
-
plan this way, preserve the overall structure of the plan
|
|
246
|
-
and only modify what the user actually requested. Do *not*
|
|
247
|
-
rewrite unrelated sections of the plan.
|
|
248
|
-
|
|
249
|
-
Calculate the number of words <words/> of <content/>.
|
|
250
|
-
Set <content-dirty>true</content-dirty>.
|
|
263
|
+
<expand name="apply-refinement"/>
|
|
251
264
|
|
|
252
265
|
Only output the following <template/> and continue processing:
|
|
253
266
|
|
|
@@ -265,19 +278,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
265
278
|
</if>
|
|
266
279
|
|
|
267
280
|
5. <if condition="<content/> is empty AND <instruction/> is not empty">
|
|
268
|
-
|
|
269
|
-
<content/> by closely following the defined plan format
|
|
270
|
-
<format/> and injecting into it all the information from
|
|
271
|
-
the <instruction/> and all decisions you derived from the
|
|
272
|
-
<instruction/>.
|
|
273
|
-
|
|
274
|
-
Call the `ase_timestamp(format: "yyyy-LL-dd HH:mm")` tool of the
|
|
275
|
-
`ase` MCP server and use the `text` field of its response
|
|
276
|
-
for fresh <timestamp-created/> and <timestamp-modified/>
|
|
277
|
-
information. Then insert the current <ase-task-id/>,
|
|
278
|
-
<timestamp-created/>, and <timestamp-modified/> information
|
|
279
|
-
and calculate the number of words <words/> of <content/>.
|
|
280
|
-
Set <content-dirty>true</content-dirty>.
|
|
281
|
+
<expand name="generate-plan"/>
|
|
281
282
|
|
|
282
283
|
Only output the following <template/> and continue processing:
|
|
283
284
|
|
|
@@ -398,13 +399,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
398
399
|
your instruction for further refining the plan?**`. Then set
|
|
399
400
|
<instruction/> to the response of the user.
|
|
400
401
|
|
|
401
|
-
|
|
402
|
-
the plan, and update <content/> in-place by *applying* the
|
|
403
|
-
requested <instruction/> to the *plan*. When refining the
|
|
404
|
-
plan this way, preserve the overall structure of the plan
|
|
405
|
-
and only modify what the user actually requested. Do *not*
|
|
406
|
-
rewrite unrelated sections of the plan.
|
|
407
|
-
Set <content-dirty>true</content-dirty>.
|
|
402
|
+
<expand name="apply-refinement"/>
|
|
408
403
|
|
|
409
404
|
Finally, only output the following <template/> and then
|
|
410
405
|
*continue* the *loop* at step **3.1**!
|
|
@@ -417,13 +412,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
417
412
|
|
|
418
413
|
Set <instruction><text/></instruction> (replace existing instruction).
|
|
419
414
|
|
|
420
|
-
|
|
421
|
-
the plan, and update <content/> in-place by *applying* the
|
|
422
|
-
requested <instruction/> to the *plan*. When refining the
|
|
423
|
-
plan this way, preserve the overall structure of the plan
|
|
424
|
-
and only modify what the user actually requested. Do *not*
|
|
425
|
-
rewrite unrelated sections of the plan.
|
|
426
|
-
Set <content-dirty>true</content-dirty>.
|
|
415
|
+
<expand name="apply-refinement"/>
|
|
427
416
|
|
|
428
417
|
Finally, only output the following <template/> and then
|
|
429
418
|
*continue* the *loop* at step **3.1**!
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
`ase-task-edit`
|
|
9
9
|
[`--help`|`-h`]
|
|
10
10
|
[`--plan`|`-p` *option*]
|
|
11
|
+
[`--dry`|`-d`]
|
|
11
12
|
[`--next`|`-n` *option*]
|
|
12
13
|
[*id* | *id*: *instruction* | *instruction*]
|
|
13
14
|
|
|
@@ -32,6 +33,14 @@ command from outside the agent tool.
|
|
|
32
33
|
*instruction*), or `PRESERVE` (preserve the existing plan by
|
|
33
34
|
ignoring *instruction* and stopping skill processing).
|
|
34
35
|
|
|
36
|
+
`--dry`|`-d`:
|
|
37
|
+
Generate any *new* plan *without* the `※ VERIFICATION` section.
|
|
38
|
+
Applies only to freshly generated plans, not to existing plans
|
|
39
|
+
loaded from disk. When `ase-task-implement` later applies such
|
|
40
|
+
a plan, it strictly skips the entire verification phase (no
|
|
41
|
+
build, tests, linter, type-checker, or program execution) once
|
|
42
|
+
the source files have been modified.
|
|
43
|
+
|
|
35
44
|
`--next`|`-n` *option*:
|
|
36
45
|
Automatically answer the user dialog for the next step (at the end
|
|
37
46
|
of this skill) with *option*, which can be either `none` (default,
|
|
@@ -129,6 +129,16 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
129
129
|
overrules the implementation draft in the `IMPLEMENTATION DRAFT`
|
|
130
130
|
section of <content/>.
|
|
131
131
|
|
|
132
|
+
<if condition="<content/> does NOT contain a `## ※ VERIFICATION` section heading">
|
|
133
|
+
The task plan deliberately *omits* the `## ※ VERIFICATION`
|
|
134
|
+
section. You *MUST* therefore *strictly skip* the entire
|
|
135
|
+
verification phase after modifying the source files: do *NOT*
|
|
136
|
+
run any build, do *NOT* run any tests, do *NOT* run any linter,
|
|
137
|
+
do *NOT* run any type-checker, do *NOT* execute the modified
|
|
138
|
+
program, and do *NOT* otherwise verify the change set in any
|
|
139
|
+
way.
|
|
140
|
+
</if>
|
|
141
|
+
|
|
132
142
|
2. Only output the following <template/>:
|
|
133
143
|
|
|
134
144
|
<template>
|
|
@@ -19,6 +19,13 @@ complete *change set*. The plan is loaded from
|
|
|
19
19
|
section produced by `ase-task-preflight` is used as a hint — the
|
|
20
20
|
plain plan content always overrules the draft.
|
|
21
21
|
|
|
22
|
+
If the task plan deliberately *omits* the `※ VERIFICATION` section
|
|
23
|
+
(as produced by `ase-code-craft`, `ase-code-refactor`,
|
|
24
|
+
`ase-code-resolve`, or `ase-task-edit` when invoked with `--dry`),
|
|
25
|
+
the entire verification phase is strictly skipped: no build, tests,
|
|
26
|
+
linter, type-checker, or program execution is performed once the
|
|
27
|
+
source files have been modified.
|
|
28
|
+
|
|
22
29
|
After implementation, the user is asked whether to preserve or
|
|
23
30
|
delete the task plan, unless `--next` pre-selects this choice.
|
|
24
31
|
|