@rse/ase 0.0.57 → 0.0.59

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.
Files changed (41) hide show
  1. package/dst/ase-getopt.js +28 -2
  2. package/dst/ase-hello.js +5 -5
  3. package/package.json +1 -1
  4. package/plugin/.claude-plugin/plugin.json +1 -1
  5. package/plugin/.github/plugin/plugin.json +1 -1
  6. package/plugin/meta/ase-format-adr.md +199 -0
  7. package/plugin/meta/ase-getopt.md +29 -9
  8. package/plugin/package.json +1 -1
  9. package/plugin/skills/ase-arch-discover/SKILL.md +1 -1
  10. package/plugin/skills/ase-code-craft/SKILL.md +49 -15
  11. package/plugin/skills/ase-code-craft/help.md +24 -8
  12. package/plugin/skills/ase-code-explain/SKILL.md +1 -1
  13. package/plugin/skills/ase-code-insight/SKILL.md +1 -1
  14. package/plugin/skills/ase-code-refactor/SKILL.md +49 -15
  15. package/plugin/skills/ase-code-refactor/help.md +24 -8
  16. package/plugin/skills/ase-code-resolve/SKILL.md +49 -15
  17. package/plugin/skills/ase-code-resolve/help.md +24 -8
  18. package/plugin/skills/ase-meta-changes/SKILL.md +1 -1
  19. package/plugin/skills/ase-meta-chat/SKILL.md +1 -1
  20. package/plugin/skills/ase-meta-diaboli/SKILL.md +152 -0
  21. package/plugin/skills/ase-meta-diaboli/help.md +60 -0
  22. package/plugin/skills/ase-meta-persona/SKILL.md +1 -1
  23. package/plugin/skills/ase-meta-quorum/SKILL.md +1 -1
  24. package/plugin/skills/ase-meta-search/SKILL.md +1 -1
  25. package/plugin/skills/ase-meta-why/SKILL.md +4 -4
  26. package/plugin/skills/ase-task-delete/SKILL.md +2 -2
  27. package/plugin/skills/ase-task-edit/SKILL.md +89 -81
  28. package/plugin/skills/ase-task-edit/help.md +19 -4
  29. package/plugin/skills/ase-task-grill/SKILL.md +275 -0
  30. package/plugin/skills/ase-task-grill/help.md +79 -0
  31. package/plugin/skills/ase-task-id/SKILL.md +1 -1
  32. package/plugin/skills/ase-task-implement/SKILL.md +41 -9
  33. package/plugin/skills/ase-task-implement/help.md +15 -4
  34. package/plugin/skills/ase-task-list/SKILL.md +1 -1
  35. package/plugin/skills/ase-task-preflight/SKILL.md +40 -13
  36. package/plugin/skills/ase-task-preflight/help.md +10 -5
  37. package/plugin/skills/ase-task-reboot/SKILL.md +61 -11
  38. package/plugin/skills/ase-task-reboot/help.md +13 -6
  39. package/plugin/skills/ase-task-rename/SKILL.md +1 -1
  40. package/plugin/skills/ase-task-view/SKILL.md +1 -1
  41. /package/plugin/meta/{ase-plan.md → ase-format-plan.md} +0 -0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: ase-task-implement
3
- argument-hint: "[--help|-h] [--next|-n <option>] [<id>]"
3
+ argument-hint: "[--help|-h] [--next|-n <option>[,...]] [<id>]"
4
4
  description: >
5
5
  Implement current or given task plan.
6
6
  Use when the user calls to "implement", "realize" or "apply" the
@@ -21,7 +21,7 @@ Implement a Task Plan
21
21
 
22
22
  <expand name="getopt"
23
23
  arg1="ase-task-implement"
24
- arg2="--next|-n=(none|DONE|DELETE)">
24
+ arg2="--next|-n=(none|DONE|DELETE)...">
25
25
  $ARGUMENTS
26
26
  </expand>
27
27
 
@@ -30,6 +30,8 @@ Implement a Task Plan
30
30
  with a corresponding, complete *change set*.
31
31
  </objective>
32
32
 
33
+ @${CLAUDE_SKILL_DIR}/../../meta/ase-format-plan.md
34
+
33
35
  Procedure
34
36
  ---------
35
37
 
@@ -129,6 +131,16 @@ explicitly requested by this procedure via outputs based on a <template/>!
129
131
  overrules the implementation draft in the `IMPLEMENTATION DRAFT`
130
132
  section of <content/>.
131
133
 
134
+ <if condition="<content/> does NOT contain a `## ※ VERIFICATION` section heading">
135
+ The task plan deliberately *omits* the `## ※ VERIFICATION`
136
+ section. You *MUST* therefore *strictly skip* the entire
137
+ verification phase after modifying the source files: do *NOT*
138
+ run any build, do *NOT* run any tests, do *NOT* run any linter,
139
+ do *NOT* run any type-checker, do *NOT* execute the modified
140
+ program, and do *NOT* otherwise verify the change set in any
141
+ way.
142
+ </if>
143
+
132
144
  2. Only output the following <template/>:
133
145
 
134
146
  <template>
@@ -139,9 +151,24 @@ explicitly requested by this procedure via outputs based on a <template/>!
139
151
 
140
152
  1. *Determine next step*:
141
153
 
142
- - If <getopt-option-next/> matches the regex `^(DONE|DELETE)$`:
143
- Honor the pre-selection what to do as the next step.
144
- Set <result><getopt-option-next/></result>.
154
+ - If <getopt-option-next/> is not equal to `none`:
155
+ Treat <getopt-option-next/> as a comma-separated chronological
156
+ list of pre-selected next-step tokens. *Split* it on `,`,
157
+ take the *first* token as <head/>, and store the remaining
158
+ tokens (joined back with `,`, or `none` if empty) into
159
+ <getopt-option-next/> so downstream skills can consume the tail.
160
+
161
+ - If <head/> matches the regex `^(DONE|DELETE)$`:
162
+ Honor the pre-selected token.
163
+ Set <result><head/></result>.
164
+
165
+ - else:
166
+ Only output the following <template/> and then immediately
167
+ *STOP* processing the entire current skill:
168
+
169
+ <template>
170
+ ⧉ **ASE**: ☻ skill: **ase-task-implement**, ▶ ERROR: invalid `--next` token: **<head/>**
171
+ </template>
145
172
 
146
173
  - If <getopt-option-next/> is equal to `none`:
147
174
  Let the *user interactively choose* what to do as the next step.
@@ -162,11 +189,16 @@ explicitly requested by this procedure via outputs based on a <template/>!
162
189
  </template>
163
190
 
164
191
  - If <result/> is `DELETE`:
192
+ Set <args></args> (empty).
193
+ <if condition="<getopt-option-next/> is not equal `none`">
194
+ Set <args>--next <getopt-option-next/></args> (forward
195
+ remaining list tokens to the downstream skill).
196
+ </if>
165
197
  Only output the following <template/> and then call the
166
- tool `Skill(skill: "ase:ase-task-delete")` to invoke the
167
- `ase:ase-task-delete` skill in order to *delete* the updated
168
- plan. Immediately stop processing the current skill once the
169
- `Skill` tool was used.
198
+ tool `Skill(skill: "ase:ase-task-delete", args: <args/>)`
199
+ to invoke the `ase:ase-task-delete` skill in order to
200
+ *delete* the updated plan. Immediately stop processing the
201
+ current skill once the `Skill` tool was used.
170
202
 
171
203
  <template>
172
204
  ⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan implemented -- hand-off to delete task**
@@ -7,7 +7,7 @@
7
7
 
8
8
  `ase-task-implement`
9
9
  [`--help`|`-h`]
10
- [`--next`|`-n` *option*]
10
+ [`--next`|`-n` *option*[,...]]
11
11
  [*id*]
12
12
 
13
13
  ## DESCRIPTION
@@ -19,14 +19,25 @@ 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
 
25
32
  ## OPTIONS
26
33
 
27
- `--next`|`-n` *option*:
28
- Automatically answer the user dialog for the next step with
29
- *option*, which can be either `none` (default, interactive
34
+ `--next`|`-n` *option*[,...]:
35
+ Automatically answer the user dialog for the next step. *option*
36
+ is a single token or a *comma-separated chronological list* of
37
+ tokens; the *first* token is consumed by this skill, and any
38
+ remaining tokens are *forwarded* (via `--next`) to the downstream
39
+ skill so an entire pipeline can be pre-scripted in one shot.
40
+ Recognized tokens at this skill: `none` (default, interactive
30
41
  answer required), `DONE` (preserve task plan and stop), or
31
42
  `DELETE` (hand off to `ase-task-delete`).
32
43
 
@@ -6,7 +6,7 @@ description: >
6
6
  Use when user wants to see all tasks.
7
7
  user-invocable: true
8
8
  disable-model-invocation: false
9
- effort: low
9
+ effort: high
10
10
  ---
11
11
 
12
12
  @${CLAUDE_SKILL_DIR}/../../meta/ase-control.md
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: ase-task-preflight
3
- argument-hint: "[--help|-h] [--next|-n <option>] [<id>]"
3
+ argument-hint: "[--help|-h] [--next|-n <option>[,...]] [<id>]"
4
4
  description: >
5
5
  Preflight the implementation of current or given task plan.
6
6
  Use when the user calls to "preflight", "dry-run" or "test-drive"
@@ -21,7 +21,7 @@ Preflight a Task Plan
21
21
 
22
22
  <expand name="getopt"
23
23
  arg1="ase-task-preflight"
24
- arg2="--next|-n=(none|DONE|EDIT|IMPLEMENT)">
24
+ arg2="--next|-n=(none|DONE|EDIT|IMPLEMENT)...">
25
25
  $ARGUMENTS
26
26
  </expand>
27
27
 
@@ -30,6 +30,8 @@ Preflight a Task Plan
30
30
  for a corresponding, *complete source code change set*.
31
31
  </objective>
32
32
 
33
+ @${CLAUDE_SKILL_DIR}/../../meta/ase-format-plan.md
34
+
33
35
  Procedure
34
36
  ---------
35
37
 
@@ -161,9 +163,24 @@ explicitly requested by this procedure via outputs based on a <template/>!
161
163
 
162
164
  1. *Determine next step*:
163
165
 
164
- - If <getopt-option-next/> matches the regex `^(DONE|EDIT|IMPLEMENT)$`:
165
- Honor the pre-selection what to do as the next step.
166
- Set <result><getopt-option-next/></result>.
166
+ - If <getopt-option-next/> is not equal to `none`:
167
+ Treat <getopt-option-next/> as a comma-separated chronological
168
+ list of pre-selected next-step tokens. *Split* it on `,`,
169
+ take the *first* token as <head/>, and store the remaining
170
+ tokens (joined back with `,`, or `none` if empty) into
171
+ <getopt-option-next/> so downstream skills can consume the tail.
172
+
173
+ - If <head/> matches the regex `^(DONE|EDIT|IMPLEMENT)$`:
174
+ Honor the pre-selected token.
175
+ Set <result><head/></result>.
176
+
177
+ - else:
178
+ Only output the following <template/> and then immediately
179
+ *STOP* processing the entire current skill:
180
+
181
+ <template>
182
+ ⧉ **ASE**: ☻ skill: **ase-task-preflight**, ▶ ERROR: invalid `--next` token: **<head/>**
183
+ </template>
167
184
 
168
185
  - If <getopt-option-next/> is equal to `none`:
169
186
  Let the *user interactively choose* what to do as the next step.
@@ -185,22 +202,32 @@ explicitly requested by this procedure via outputs based on a <template/>!
185
202
  </template>
186
203
 
187
204
  - If <result/> is `EDIT`:
205
+ Set <args></args> (empty).
206
+ <if condition="<getopt-option-next/> is not equal `none`">
207
+ Set <args>--next <getopt-option-next/></args> (forward
208
+ remaining list tokens to the downstream skill).
209
+ </if>
188
210
  Only output the following <template/> and then call the
189
- tool `Skill(skill: "ase:ase-task-edit")` to invoke the
190
- `ase:ase-task-edit` skill in order to *edit* the updated
191
- plan. Immediately stop processing the current skill once the
192
- `Skill` tool was used.
211
+ tool `Skill(skill: "ase:ase-task-edit", args: <args/>)`
212
+ to invoke the `ase:ase-task-edit` skill in order to *edit*
213
+ the updated plan. Immediately stop processing the current
214
+ skill once the `Skill` tool was used.
193
215
 
194
216
  <template>
195
217
  ⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan updated -- hand-off to edit**
196
218
  </template>
197
219
 
198
220
  - If <result/> is `IMPLEMENT`:
221
+ Set <args></args> (empty).
222
+ <if condition="<getopt-option-next/> is not equal `none`">
223
+ Set <args>--next <getopt-option-next/></args> (forward
224
+ remaining list tokens to the downstream skill).
225
+ </if>
199
226
  Only output the following <template/> and then call the
200
- tool `Skill(skill: "ase:ase-task-implement")` to invoke the
201
- `ase:ase-task-implement` skill in order to *implement* the
202
- updated plan. Immediately stop processing the current skill
203
- once the `Skill` tool was used.
227
+ tool `Skill(skill: "ase:ase-task-implement", args: <args/>)`
228
+ to invoke the `ase:ase-task-implement` skill in order to
229
+ *implement* the updated plan. Immediately stop processing
230
+ the current skill once the `Skill` tool was used.
204
231
 
205
232
  <template>
206
233
  ⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan updated -- hand-off to implement**
@@ -7,7 +7,7 @@
7
7
 
8
8
  `ase-task-preflight`
9
9
  [`--help`|`-h`]
10
- [`--next`|`-n` *option*]
10
+ [`--next`|`-n` *option*[,...]]
11
11
  [*id*]
12
12
 
13
13
  ## DESCRIPTION
@@ -25,12 +25,17 @@ unless `--next` pre-selects this choice.
25
25
 
26
26
  ## OPTIONS
27
27
 
28
- `--next`|`-n` *option*:
29
- Automatically answer the user dialog for the next step with
30
- *option*, which can be either `none` (default, interactive
28
+ `--next`|`-n` *option*[,...]:
29
+ Automatically answer the user dialog for the next step. *option*
30
+ is a single token or a *comma-separated chronological list* of
31
+ tokens; the *first* token is consumed by this skill, and any
32
+ remaining tokens are *forwarded* (via `--next`) to the downstream
33
+ skill so an entire pipeline can be pre-scripted in one shot.
34
+ Recognized tokens at this skill: `none` (default, interactive
31
35
  answer required), `DONE` (stop), `EDIT` (hand off to
32
36
  `ase-task-edit`), or `IMPLEMENT` (hand off to
33
- `ase-task-implement`).
37
+ `ase-task-implement`). Example: `--next IMPLEMENT,DONE` runs the
38
+ preflight, hands off to implementation, then exits without asking.
34
39
 
35
40
  ## ARGUMENTS
36
41
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: ase-task-reboot
3
- argument-hint: "[--help|-h] [--next|-n <option>] [<id>]"
3
+ argument-hint: "[--help|-h] [--next|-n <option>[,...]] [<id>]"
4
4
  description: >
5
5
  Reboot the current or given task plan by re-creating it from scratch.
6
6
  Use when the user calls to "reboot", "recreate" or "refresh"
@@ -21,7 +21,7 @@ Reboot a Task Plan
21
21
 
22
22
  <expand name="getopt"
23
23
  arg1="ase-task-reboot"
24
- arg2="--next|-n=(none|DONE|EDIT)">
24
+ arg2="--next|-n=(none|DONE|EDIT)...">
25
25
  $ARGUMENTS
26
26
  </expand>
27
27
 
@@ -30,7 +30,7 @@ Reboot a Task Plan
30
30
  based on the existing *WHAT* and *WHY*.
31
31
  </objective>
32
32
 
33
- @${CLAUDE_SKILL_DIR}/../../meta/ase-plan.md
33
+ @${CLAUDE_SKILL_DIR}/../../meta/ase-format-plan.md
34
34
 
35
35
  Procedure
36
36
  ---------
@@ -158,9 +158,24 @@ explicitly requested by this procedure via outputs based on a <template/>!
158
158
 
159
159
  1. *Determine next step*:
160
160
 
161
- - If <getopt-option-next/> matches the regex `^(DONE|EDIT)$`:
162
- Honor the pre-selection what to do as the next step.
163
- Set <result><getopt-option-next/></result>.
161
+ - If <getopt-option-next/> is not equal to `none`:
162
+ Treat <getopt-option-next/> as a comma-separated chronological
163
+ list of pre-selected next-step tokens. *Split* it on `,`,
164
+ take the *first* token as <head/>, and store the remaining
165
+ tokens (joined back with `,`, or `none` if empty) into
166
+ <getopt-option-next/> so downstream skills can consume the tail.
167
+
168
+ - If <head/> matches the regex `^(DONE|EDIT|IMPLEMENT|PREFLIGHT)$`:
169
+ Honor the pre-selected token.
170
+ Set <result><head/></result>.
171
+
172
+ - else:
173
+ Only output the following <template/> and then immediately
174
+ *STOP* processing the entire current skill:
175
+
176
+ <template>
177
+ ⧉ **ASE**: ☻ skill: **ase-task-reboot**, ▶ ERROR: invalid `--next` token: **<head/>**
178
+ </template>
164
179
 
165
180
  - If <getopt-option-next/> is equal to `none`:
166
181
  Let the *user interactively choose* what to do as the next step.
@@ -168,7 +183,9 @@ explicitly requested by this procedure via outputs based on a <template/>!
168
183
  <expand name="user-dialog">
169
184
  Next Step: How would you like to proceed with the plan?
170
185
  DONE: Stop processing.
171
- EDIT: Hand processing off to editing.
186
+ EDIT: Hand off plan to editing.
187
+ IMPLEMENT: Hand off plan to implementation.
188
+ PREFLIGHT: Hand off plan to pre-flighting.
172
189
  </expand>
173
190
 
174
191
  2. Check the tool <result/> and dispatch accordingly:
@@ -181,13 +198,46 @@ explicitly requested by this procedure via outputs based on a <template/>!
181
198
  </template>
182
199
 
183
200
  - If <result/> is `EDIT`:
201
+ Set <args></args> (empty).
202
+ <if condition="<getopt-option-next/> is not equal `none`">
203
+ Set <args>--next <getopt-option-next/></args> (forward
204
+ remaining list tokens to the downstream skill).
205
+ </if>
184
206
  Only output the following <template/> and then call the
185
- tool `Skill(skill: "ase:ase-task-edit")` to invoke the
186
- `ase:ase-task-edit` skill in order to *edit* the updated
187
- plan. Immediately stop processing the current skill once the
188
- `Skill` tool was used.
207
+ tool `Skill(skill: "ase:ase-task-edit", args: <args/>)`
208
+ to invoke the `ase:ase-task-edit` skill in order to *edit*
209
+ the updated plan. Immediately stop processing the current
210
+ skill once the `Skill` tool was used.
189
211
 
190
212
  <template>
191
213
  ⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan updated -- hand-off to edit**
192
214
  </template>
193
215
 
216
+ - If <result/> is `IMPLEMENT`:
217
+ Set <args></args> (empty).
218
+ <if condition="<getopt-option-next/> is not equal `none`">
219
+ Set <args>--next <getopt-option-next/></args> (forward
220
+ remaining list tokens to the downstream skill).
221
+ </if>
222
+ Only output the following <template/> and then call the
223
+ `Skill(skill: "ase:ase-task-implement", args: <args/>)` tool
224
+ to *apply* the plan.
225
+
226
+ <template>
227
+ ⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan updated -- hand-off to implementation**
228
+ </template>
229
+
230
+ - If <result/> is `PREFLIGHT`:
231
+ Set <args></args> (empty).
232
+ <if condition="<getopt-option-next/> is not equal `none`">
233
+ Set <args>--next <getopt-option-next/></args> (forward
234
+ remaining list tokens to the downstream skill).
235
+ </if>
236
+ Only output the following <template/> and then call the
237
+ `Skill(skill: "ase:ase-task-preflight", args: <args/>)` tool
238
+ to *apply* the plan.
239
+
240
+ <template>
241
+ ⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan updated -- hand-off to pre-flight**
242
+ </template>
243
+
@@ -7,7 +7,7 @@
7
7
 
8
8
  `ase-task-reboot`
9
9
  [`--help`|`-h`]
10
- [`--next`|`-n` *option*]
10
+ [`--next`|`-n` *option*[,...]]
11
11
  [*id*]
12
12
 
13
13
  ## DESCRIPTION
@@ -23,11 +23,18 @@ After the reboot, the user is asked whether to stop or hand off to
23
23
 
24
24
  ## OPTIONS
25
25
 
26
- `--next`|`-n` *option*:
27
- Automatically answer the user dialog for the next step with
28
- *option*, which can be either `none` (default, interactive
29
- answer required), `DONE` (stop), or `EDIT` (hand off to
30
- `ase-task-edit`).
26
+ `--next`|`-n` *option*[,...]:
27
+ Automatically answer the user dialog for the next step. *option*
28
+ is a single token or a *comma-separated chronological list* of
29
+ tokens; the *first* token is consumed by this skill, and any
30
+ remaining tokens are *forwarded* (via `--next`) to the downstream
31
+ skill so an entire pipeline can be pre-scripted in one shot.
32
+ Recognized tokens at this skill: `none` (default, interactive
33
+ answer required), `DONE` (stop), `EDIT` (hand off to
34
+ `ase-task-edit`), `IMPLEMENT` (hand off to `ase-task-implement`),
35
+ or `PREFLIGHT` (hand off to `ase-task-preflight`). Example: `--next
36
+ EDIT,DONE` reboots, hands off to editing, and the editing loop will
37
+ exit immediately.
31
38
 
32
39
  ## ARGUMENTS
33
40
 
@@ -7,7 +7,7 @@ description: >
7
7
  "task", "plan", "spec", or "specification".
8
8
  user-invocable: true
9
9
  disable-model-invocation: false
10
- effort: low
10
+ effort: high
11
11
  ---
12
12
 
13
13
  @${CLAUDE_SKILL_DIR}/../../meta/ase-control.md
@@ -7,7 +7,7 @@ description: >
7
7
  "task", "plan", "spec", or "specification".
8
8
  user-invocable: true
9
9
  disable-model-invocation: false
10
- effort: low
10
+ effort: high
11
11
  ---
12
12
 
13
13
  @${CLAUDE_SKILL_DIR}/../../meta/ase-control.md
File without changes