@rse/ase 0.0.55 → 0.0.57
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/agents/ase-meta-search.md +2 -2
- package/plugin/etc/markdownlint.yaml +1 -0
- package/plugin/meta/ase-constitution.md +2 -1
- package/plugin/meta/ase-control.md +6 -6
- package/plugin/meta/ase-dialog.md +2 -2
- package/plugin/meta/ase-getopt.md +18 -15
- package/plugin/meta/ase-skill.md +24 -7
- package/plugin/package.json +1 -1
- package/plugin/skills/ase-arch-analyze/SKILL.md +3 -10
- package/plugin/skills/ase-arch-analyze/help.md +50 -0
- package/plugin/skills/ase-arch-discover/SKILL.md +5 -12
- package/plugin/skills/ase-arch-discover/help.md +48 -0
- package/plugin/skills/ase-code-analyze/SKILL.md +1 -9
- package/plugin/skills/ase-code-analyze/help.md +47 -0
- package/plugin/skills/ase-code-craft/SKILL.md +29 -19
- package/plugin/skills/ase-code-craft/help.md +66 -0
- package/plugin/skills/ase-code-explain/SKILL.md +1 -9
- package/plugin/skills/ase-code-explain/help.md +43 -0
- package/plugin/skills/ase-code-insight/SKILL.md +1 -9
- package/plugin/skills/ase-code-insight/help.md +43 -0
- package/plugin/skills/ase-code-lint/SKILL.md +1 -9
- package/plugin/skills/ase-code-lint/help.md +54 -0
- package/plugin/skills/ase-code-refactor/SKILL.md +29 -19
- package/plugin/skills/ase-code-refactor/help.md +66 -0
- package/plugin/skills/ase-code-resolve/SKILL.md +30 -20
- package/plugin/skills/ase-code-resolve/help.md +73 -0
- package/plugin/skills/ase-docs-proofread/SKILL.md +3 -12
- package/plugin/skills/ase-docs-proofread/help.md +54 -0
- package/plugin/skills/ase-meta-changes/SKILL.md +1 -9
- package/plugin/skills/ase-meta-changes/help.md +33 -0
- package/plugin/skills/ase-meta-chat/SKILL.md +1 -8
- package/plugin/skills/ase-meta-chat/help.md +45 -0
- package/plugin/skills/ase-meta-commit/SKILL.md +1 -8
- package/plugin/skills/ase-meta-commit/help.md +31 -0
- package/plugin/skills/ase-meta-evaluate/SKILL.md +5 -13
- package/plugin/skills/ase-meta-evaluate/help.md +52 -0
- package/plugin/skills/ase-meta-persona/SKILL.md +11 -5
- package/plugin/skills/ase-meta-persona/help.md +50 -0
- package/plugin/skills/ase-meta-quorum/SKILL.md +1 -8
- package/plugin/skills/ase-meta-quorum/help.md +41 -0
- package/plugin/skills/ase-meta-search/SKILL.md +1 -8
- package/plugin/skills/ase-meta-search/help.md +39 -0
- package/plugin/skills/ase-meta-why/SKILL.md +1 -8
- package/plugin/skills/ase-meta-why/help.md +39 -0
- package/plugin/skills/ase-task-delete/SKILL.md +16 -10
- package/plugin/skills/ase-task-delete/help.md +47 -0
- package/plugin/skills/ase-task-edit/SKILL.md +59 -33
- package/plugin/skills/ase-task-edit/help.md +75 -0
- package/plugin/skills/ase-task-id/SKILL.md +7 -6
- package/plugin/skills/ase-task-id/help.md +42 -0
- package/plugin/skills/ase-task-implement/SKILL.md +27 -16
- package/plugin/skills/ase-task-implement/help.md +56 -0
- package/plugin/skills/ase-task-list/SKILL.md +6 -5
- package/plugin/skills/ase-task-list/help.md +43 -0
- package/plugin/skills/ase-task-preflight/SKILL.md +29 -18
- package/plugin/skills/ase-task-preflight/help.md +58 -0
- package/plugin/skills/ase-task-reboot/SKILL.md +47 -32
- package/plugin/skills/ase-task-reboot/help.md +55 -0
- package/plugin/skills/ase-task-rename/SKILL.md +5 -10
- package/plugin/skills/ase-task-rename/help.md +44 -0
- package/plugin/skills/ase-task-view/SKILL.md +15 -9
- package/plugin/skills/ase-task-view/help.md +43 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
|
|
2
|
+
## NAME
|
|
3
|
+
|
|
4
|
+
`ase-task-delete` - Delete a Task Plan
|
|
5
|
+
|
|
6
|
+
## SYNOPSIS
|
|
7
|
+
|
|
8
|
+
`ase-task-delete`
|
|
9
|
+
[`--help`|`-h`]
|
|
10
|
+
[*id*]
|
|
11
|
+
|
|
12
|
+
## DESCRIPTION
|
|
13
|
+
|
|
14
|
+
The `ase-task-delete` skill deletes the *task plan* identified by
|
|
15
|
+
*id*. If *id* is omitted, the *current* task id (inherited from the
|
|
16
|
+
session context) is used. When the deleted task is the current task
|
|
17
|
+
and not the `default` task, the current task id is automatically
|
|
18
|
+
switched back to `default`.
|
|
19
|
+
|
|
20
|
+
The task plan is stored in `.ase/tasks/`*id*`/plan.md` files of the
|
|
21
|
+
project and can be alternatively deleted with the
|
|
22
|
+
"`ase task delete` *id*" command from outside the agent tool.
|
|
23
|
+
|
|
24
|
+
## ARGUMENTS
|
|
25
|
+
|
|
26
|
+
*id*:
|
|
27
|
+
The unique identifier of the task plan to delete. If omitted,
|
|
28
|
+
the current task id is used.
|
|
29
|
+
|
|
30
|
+
## EXAMPLES
|
|
31
|
+
|
|
32
|
+
Delete the current task plan:
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
❯ /ase-task-delete
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Delete a specific task plan:
|
|
39
|
+
|
|
40
|
+
```text
|
|
41
|
+
❯ /ase-task-delete hello
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## SEE ALSO
|
|
45
|
+
|
|
46
|
+
`ase-task-edit`, `ase-task-list`, `ase-task-view`,
|
|
47
|
+
`ase-task-rename`, `ase-task-reboot`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-task-edit
|
|
3
|
-
argument-hint: "[<id> | <id>: <instruction> | <instruction>]"
|
|
3
|
+
argument-hint: "[--help|-h] [--plan|-p <option>] [--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
|
|
@@ -17,9 +17,6 @@ effort: high
|
|
|
17
17
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-dialog.md
|
|
18
18
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-getopt.md
|
|
19
19
|
|
|
20
|
-
Iteratively Edit a Task Plan
|
|
21
|
-
============================
|
|
22
|
-
|
|
23
20
|
<skill name="ase-task-edit">
|
|
24
21
|
Iteratively Edit a Task Plan
|
|
25
22
|
</skill>
|
|
@@ -30,16 +27,12 @@ Iteratively Edit a Task Plan
|
|
|
30
27
|
$ARGUMENTS
|
|
31
28
|
</expand>
|
|
32
29
|
|
|
33
|
-
<
|
|
34
|
-
Your role is an experienced, *expert-level assistant*,
|
|
35
|
-
specialized in the *planning* of changes
|
|
36
|
-
through *iterative conversational refinement*.
|
|
37
|
-
</role>
|
|
38
|
-
|
|
30
|
+
<objective>
|
|
39
31
|
Establish and refine the *task plan* purely through a *chat-driven
|
|
40
|
-
loop*. The user steers each round via interactive dialog that offers
|
|
32
|
+
loop*. The user steers each round via an interactive dialog that offers
|
|
41
33
|
continued refinement, finalization, or hand-off to implementation or
|
|
42
34
|
preflight.
|
|
35
|
+
</objective>
|
|
43
36
|
|
|
44
37
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-plan.md
|
|
45
38
|
|
|
@@ -56,6 +49,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
56
49
|
|
|
57
50
|
1. Set <instruction><getopt-arguments/></instruction> initially.
|
|
58
51
|
Inherit the always existing <ase-task-id/> from the current context.
|
|
52
|
+
Inherit the always existing <ase-session-id/> from the current context.
|
|
59
53
|
Do not output anything.
|
|
60
54
|
|
|
61
55
|
2. React on task and/or instruction:
|
|
@@ -65,8 +59,8 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
65
59
|
">
|
|
66
60
|
Set <ase-task-id><instruction/></ase-task-id> (set task
|
|
67
61
|
id to instruction) and <instruction></instruction> (set
|
|
68
|
-
instruction empty), call the `ase_task_id(id: <ase-task-id
|
|
69
|
-
session: <ase-session-id/>)` tool from the `ase` MCP
|
|
62
|
+
instruction empty), call the `ase_task_id(id: "<ase-task-id/>",
|
|
63
|
+
session: "<ase-session-id/>")` tool from the `ase` MCP
|
|
70
64
|
server to switch the task, and then only output the
|
|
71
65
|
following <template/>:
|
|
72
66
|
|
|
@@ -82,8 +76,8 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
82
76
|
">
|
|
83
77
|
Set <instruction></instruction> (set instruction to empty)
|
|
84
78
|
and <ase-task-id><id/></ase-task-id> (set task id to
|
|
85
|
-
id) and call the `ase_task_id(id: <ase-task-id
|
|
86
|
-
<ase-session-id/>)` tool from the `ase` MCP server to
|
|
79
|
+
id) and call the `ase_task_id(id: "<ase-task-id/>", session:
|
|
80
|
+
"<ase-session-id/>")` tool from the `ase` MCP server to
|
|
87
81
|
switch the task, and then only output the following
|
|
88
82
|
<template/>:
|
|
89
83
|
|
|
@@ -99,8 +93,8 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
99
93
|
">
|
|
100
94
|
Set <instruction><text/></instruction> (set instruction to
|
|
101
95
|
text) and <ase-task-id><id/></ase-task-id> (set task id
|
|
102
|
-
to id) and call the `ase_task_id(id: <ase-task-id
|
|
103
|
-
<ase-session-id/>)` tool from the `ase` MCP server to
|
|
96
|
+
to id) and call the `ase_task_id(id: "<ase-task-id/>", session:
|
|
97
|
+
"<ase-session-id/>")` tool from the `ase` MCP server to
|
|
104
98
|
switch the task, and then only output the following
|
|
105
99
|
<template/>:
|
|
106
100
|
|
|
@@ -133,7 +127,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
133
127
|
|
|
134
128
|
2. **Determine Plan:**
|
|
135
129
|
|
|
136
|
-
1. Call the `ase_task_load(id: <ase-task-id/>)` tool of the `ase` MCP
|
|
130
|
+
1. Call the `ase_task_load(id: "<ase-task-id/>")` tool of the `ase` MCP
|
|
137
131
|
server to load any existing plan content and set <text/> to
|
|
138
132
|
the `text` output field of this `ase_task_load` tool call.
|
|
139
133
|
Do not output anything related to this MCP tool call.
|
|
@@ -235,6 +229,28 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
235
229
|
|
|
236
230
|
Only output the following <template/> and continue processing:
|
|
237
231
|
|
|
232
|
+
<template>
|
|
233
|
+
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan refined**
|
|
234
|
+
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ⇌ instruction: **<instruction/>**, ▶ status: **instruction given**
|
|
235
|
+
</template>
|
|
236
|
+
|
|
237
|
+
- If <result/> matches `OTHER: <text/>`:
|
|
238
|
+
|
|
239
|
+
Set <instruction><instruction/> <text/></instruction> (append
|
|
240
|
+
the user's free-text hint to the existing instruction).
|
|
241
|
+
|
|
242
|
+
Treat the <instruction/> as a *refinement instruction* for
|
|
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>.
|
|
251
|
+
|
|
252
|
+
Only output the following <template/> and continue processing:
|
|
253
|
+
|
|
238
254
|
<template>
|
|
239
255
|
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ✪ plan: **<words/>** words, ▶ status: **plan refined**
|
|
240
256
|
⧉ **ASE**: ◉ task: **<ase-task-id/>**, ⇌ instruction: **<instruction/>**, ▶ status: **instruction given**
|
|
@@ -273,9 +289,9 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
273
289
|
|
|
274
290
|
3. **Iterative Plan Refinement Loop:**
|
|
275
291
|
|
|
276
|
-
*REPEAT* the following steps 3.1 to 3.4 in a
|
|
277
|
-
the user selects `DONE`, `IMPLEMENT`, or `PREFLIGHT`,
|
|
278
|
-
declines/cancels in the dialog of step 3.4:
|
|
292
|
+
*REPEAT* the following steps from 3.1 up to and including 3.4 in a
|
|
293
|
+
*LOOP* until the user selects `DONE`, `IMPLEMENT`, or `PREFLIGHT`,
|
|
294
|
+
or declines/cancels in the dialog of step 3.4:
|
|
279
295
|
|
|
280
296
|
1. *Update timestamp*:
|
|
281
297
|
<if condition="<content/> contains '✎ modified:' AND <content-dirty/> is 'true'">
|
|
@@ -289,7 +305,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
289
305
|
|
|
290
306
|
2. *Persist plan*:
|
|
291
307
|
<if condition="<content-dirty/> is 'true'">
|
|
292
|
-
Call the `ase_task_save(id: <ase-task-id
|
|
308
|
+
Call the `ase_task_save(id: "<ase-task-id/>", text: "<content/>")` tool
|
|
293
309
|
of the `ase` MCP server to persist the current plan, and then
|
|
294
310
|
set <content-dirty>false</content-dirty> again. Calculate the
|
|
295
311
|
number of words <words/> of <content/>. Do not output anything
|
|
@@ -301,11 +317,12 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
301
317
|
</if>
|
|
302
318
|
|
|
303
319
|
3. *Render plan*: Only output the following <template/>, so the user
|
|
304
|
-
can read the plan and react to it. If <content/> is longer
|
|
305
|
-
90 lines and a `※ IMPLEMENTATION DRAFT` section
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
320
|
+
can read the plan and react to it. If <content/> is longer
|
|
321
|
+
than 90 lines and a `※ IMPLEMENTATION DRAFT` section (from the
|
|
322
|
+
companion skill `ase-task-preflight`) exists, replace the entire
|
|
323
|
+
content of the `※ IMPLEMENTATION DRAFT` section with `[...]`.
|
|
324
|
+
Else, do *not* truncate, summarize, or partially show the plan.
|
|
325
|
+
Use the following <template/>:
|
|
309
326
|
|
|
310
327
|
<template>
|
|
311
328
|
⧉ **ASE**: ┈┈┈┈┈┈┈┈────────━━━━━━━━**(** `TASK-PLAN-BEGIN` **)**━━━━━━━━────────┈┈┈┈┈┈┈┈
|
|
@@ -318,8 +335,17 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
318
335
|
- If <getopt-option-next/> matches the regex `^(DONE|IMPLEMENT|PREFLIGHT|REFINE)$`:
|
|
319
336
|
Honor the pre-selection what to do as the next step.
|
|
320
337
|
Set <result><getopt-option-next/></result>.
|
|
321
|
-
|
|
322
|
-
|
|
338
|
+
|
|
339
|
+
Then *clear* <getopt-option-next/> by setting
|
|
340
|
+
<getopt-option-next>none</getopt-option-next> so that
|
|
341
|
+
subsequent loop iterations fall back to the interactive
|
|
342
|
+
dialog.
|
|
343
|
+
|
|
344
|
+
Set <instruction></instruction> (clear the instruction, as
|
|
345
|
+
any instruction carried in via the arguments was already
|
|
346
|
+
applied to the plan in step 2 before this loop), so that a
|
|
347
|
+
pre-selected `REFINE` correctly asks the user for a *fresh*
|
|
348
|
+
refinement instruction below.
|
|
323
349
|
|
|
324
350
|
- If <getopt-option-next/> is equal to `none`:
|
|
325
351
|
Let the *user interactively choose* what to do as the next step.
|
|
@@ -367,9 +393,9 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
367
393
|
|
|
368
394
|
- If <result/> is `REFINE`:
|
|
369
395
|
|
|
370
|
-
Ask the user interactively, without a special tool, for
|
|
371
|
-
|
|
372
|
-
|
|
396
|
+
Ask the user interactively, without a special tool, for the
|
|
397
|
+
refinement instruction with a single question `**What is
|
|
398
|
+
your instruction for further refining the plan?**`. Then set
|
|
373
399
|
<instruction/> to the response of the user.
|
|
374
400
|
|
|
375
401
|
Treat the <instruction/> as a *refinement instruction* for
|
|
@@ -389,7 +415,7 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
389
415
|
|
|
390
416
|
- If <result/> matches `OTHER: <text/>`:
|
|
391
417
|
|
|
392
|
-
Set <instruction><text/></instruction
|
|
418
|
+
Set <instruction><text/></instruction> (replace existing instruction).
|
|
393
419
|
|
|
394
420
|
Treat the <instruction/> as a *refinement instruction* for
|
|
395
421
|
the plan, and update <content/> in-place by *applying* the
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
|
|
2
|
+
## NAME
|
|
3
|
+
|
|
4
|
+
`ase-task-edit` - Iteratively Edit a Task Plan
|
|
5
|
+
|
|
6
|
+
## SYNOPSIS
|
|
7
|
+
|
|
8
|
+
`ase-task-edit`
|
|
9
|
+
[`--help`|`-h`]
|
|
10
|
+
[`--plan`|`-p` *option*]
|
|
11
|
+
[`--next`|`-n` *option*]
|
|
12
|
+
[*id* | *id*: *instruction* | *instruction*]
|
|
13
|
+
|
|
14
|
+
## DESCRIPTION
|
|
15
|
+
|
|
16
|
+
The `ase-task-edit` skill establishes and refines a *task plan* purely
|
|
17
|
+
through a *chat-driven loop*. The user steers each round via an
|
|
18
|
+
interactive dialog that offers continued refinement, finalization, or
|
|
19
|
+
hand-off to implementation or preflight.
|
|
20
|
+
|
|
21
|
+
The task plan is stored in `.ase/tasks/`*id*`/plan.md` files of the
|
|
22
|
+
project and can be alternatively edited with the "`ase task edit` *id*"
|
|
23
|
+
command from outside the agent tool.
|
|
24
|
+
|
|
25
|
+
## OPTIONS
|
|
26
|
+
|
|
27
|
+
`--plan`|`-p` *option*:
|
|
28
|
+
Automatically answer the user dialog for the plan refinement
|
|
29
|
+
with *option*, which can be either `none` (default, interactive
|
|
30
|
+
answer required), `OVERWRITE` (overwrite an existing plan
|
|
31
|
+
with *instruction*), `REFINE` (refine the existing plan with
|
|
32
|
+
*instruction*), or `PRESERVE` (preserve the existing plan by
|
|
33
|
+
ignoring *instruction* and stopping skill processing).
|
|
34
|
+
|
|
35
|
+
`--next`|`-n` *option*:
|
|
36
|
+
Automatically answer the user dialog for the next step (at the end
|
|
37
|
+
of this skill) with *option*, which can be either `none` (default,
|
|
38
|
+
interactive answer required), `DONE` (no next step), `IMPLEMENT`
|
|
39
|
+
(hand-over to `ase-task-implement`), `PREFLIGHT` (hand-over to
|
|
40
|
+
`ase-task-preflight`), or `REFINE` (refine the plan with subsequent
|
|
41
|
+
instruction).
|
|
42
|
+
|
|
43
|
+
## ARGUMENTS
|
|
44
|
+
|
|
45
|
+
*id* | *id*: *instruction* | *instruction*:
|
|
46
|
+
Edit the task with the unique identifier *id* (default: `default`).
|
|
47
|
+
Optionally, *instruction* either gives instructions for creating a
|
|
48
|
+
new task or gives instructions for refining an existing task.
|
|
49
|
+
|
|
50
|
+
## EXAMPLES
|
|
51
|
+
|
|
52
|
+
Edit the current task:
|
|
53
|
+
|
|
54
|
+
```text
|
|
55
|
+
❯ /ase-task-edit
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Create a new task under id `hello`:
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
❯ /ase-task-delete hello
|
|
62
|
+
❯ /ase-task-edit hello: new "ase hello" CLI command which prints
|
|
63
|
+
a nice "Hello World!" to the terminal in color blue.
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Further refine the task under id `hello`:
|
|
67
|
+
|
|
68
|
+
```text
|
|
69
|
+
❯ /ase-task-edit hello: change the color to red.
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## SEE ALSO
|
|
73
|
+
|
|
74
|
+
`ase-task-reboot`, `ase-task-preflight`, `ase-task-implement`,
|
|
75
|
+
`ase-task-view`, `ase-task-list`, `ase-task-rename`, `ase-task-delete`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-task-id
|
|
3
|
-
argument-hint: "[<id>]"
|
|
3
|
+
argument-hint: "[--help|-h] [<id>]"
|
|
4
4
|
description: >
|
|
5
5
|
Get or set unique task id <id>.
|
|
6
6
|
Use when user requests to work on a certain task
|
|
@@ -13,18 +13,19 @@ effort: low
|
|
|
13
13
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-control.md
|
|
14
14
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-skill.md
|
|
15
15
|
|
|
16
|
-
Task Configuration
|
|
17
|
-
==================
|
|
18
|
-
|
|
19
16
|
<skill name="ase-task-id">
|
|
20
17
|
Configure Task Id
|
|
21
18
|
</skill>
|
|
22
19
|
|
|
20
|
+
<objective>
|
|
21
|
+
*Get* or *set* the unique *task id* of the current session.
|
|
22
|
+
</objective>
|
|
23
|
+
|
|
23
24
|
1. Determine request:
|
|
24
25
|
<request>$ARGUMENTS</request>
|
|
25
26
|
|
|
26
27
|
2. <if condition="<request/> is empty">
|
|
27
|
-
- Call the `ase_task_id(session: <ase-session-id/>)`
|
|
28
|
+
- Call the `ase_task_id(session: "<ase-session-id/>")`
|
|
28
29
|
tool from the `ase` MCP server and set
|
|
29
30
|
<ase-task-id/> to its `text` output.
|
|
30
31
|
|
|
@@ -36,7 +37,7 @@ Configure Task Id
|
|
|
36
37
|
|
|
37
38
|
3. <if condition="<request/> is NOT empty">
|
|
38
39
|
- Set <ase-task-id><request/></ase-task-id> and
|
|
39
|
-
call the `ase_task_id(id: <ase-task-id
|
|
40
|
+
call the `ase_task_id(id: "<ase-task-id/>", session: "<ase-session-id/>")`
|
|
40
41
|
tool from the `ase` MCP server.
|
|
41
42
|
|
|
42
43
|
- Output:
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
|
|
2
|
+
## NAME
|
|
3
|
+
|
|
4
|
+
`ase-task-id` - Configure Task Id
|
|
5
|
+
|
|
6
|
+
## SYNOPSIS
|
|
7
|
+
|
|
8
|
+
`ase-task-id`
|
|
9
|
+
[`--help`|`-h`]
|
|
10
|
+
[*id*]
|
|
11
|
+
|
|
12
|
+
## DESCRIPTION
|
|
13
|
+
|
|
14
|
+
The `ase-task-id` skill gets or sets the unique *task id* for the
|
|
15
|
+
current session. Without arguments, it reports the currently active
|
|
16
|
+
task id. With an *id* argument, it switches the session to that
|
|
17
|
+
task id via the `ase_task_id` MCP tool.
|
|
18
|
+
|
|
19
|
+
## ARGUMENTS
|
|
20
|
+
|
|
21
|
+
*id*:
|
|
22
|
+
The new task id to activate. If omitted, the currently active
|
|
23
|
+
task id is reported.
|
|
24
|
+
|
|
25
|
+
## EXAMPLES
|
|
26
|
+
|
|
27
|
+
Show the current task id:
|
|
28
|
+
|
|
29
|
+
```text
|
|
30
|
+
❯ /ase-task-id
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Switch to a specific task:
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
❯ /ase-task-id hello
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## SEE ALSO
|
|
40
|
+
|
|
41
|
+
`ase-task-list`, `ase-task-edit`, `ase-task-view`,
|
|
42
|
+
`ase-task-rename`, `ase-task-delete`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-task-implement
|
|
3
|
-
argument-hint: "[<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
|
|
@@ -15,9 +15,6 @@ effort: xhigh
|
|
|
15
15
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-dialog.md
|
|
16
16
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-getopt.md
|
|
17
17
|
|
|
18
|
-
Implement a Task Plan
|
|
19
|
-
=====================
|
|
20
|
-
|
|
21
18
|
<skill name="ase-task-implement">
|
|
22
19
|
Implement a Task Plan
|
|
23
20
|
</skill>
|
|
@@ -28,13 +25,10 @@ Implement a Task Plan
|
|
|
28
25
|
$ARGUMENTS
|
|
29
26
|
</expand>
|
|
30
27
|
|
|
31
|
-
<
|
|
32
|
-
Your role is an experienced, *expert-level assistant*,
|
|
33
|
-
specialized in the *implementation* of changes.
|
|
34
|
-
</role>
|
|
35
|
-
|
|
28
|
+
<objective>
|
|
36
29
|
*Implement* the task plan by modifying the *artifacts*
|
|
37
30
|
with a corresponding, complete *change set*.
|
|
31
|
+
</objective>
|
|
38
32
|
|
|
39
33
|
Procedure
|
|
40
34
|
---------
|
|
@@ -59,8 +53,8 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
59
53
|
">
|
|
60
54
|
Set <ase-task-id><instruction/></ase-task-id> (set task
|
|
61
55
|
id to instruction) and <instruction></instruction> (set
|
|
62
|
-
instruction empty), call the `ase_task_id(id: <ase-task-id
|
|
63
|
-
session: <ase-session-id/>)` tool from the `ase` MCP
|
|
56
|
+
instruction empty), call the `ase_task_id(id: "<ase-task-id/>",
|
|
57
|
+
session: "<ase-session-id/>")` tool from the `ase` MCP
|
|
64
58
|
server to switch the task, and then only output the
|
|
65
59
|
following <template/>:
|
|
66
60
|
|
|
@@ -76,8 +70,8 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
76
70
|
">
|
|
77
71
|
Set <instruction></instruction> (set instruction to empty)
|
|
78
72
|
and <ase-task-id><id/></ase-task-id> (set task id to
|
|
79
|
-
id) and call the `ase_task_id(id: <ase-task-id
|
|
80
|
-
<ase-session-id/>)` tool from the `ase` MCP server to
|
|
73
|
+
id) and call the `ase_task_id(id: "<ase-task-id/>", session:
|
|
74
|
+
"<ase-session-id/>")` tool from the `ase` MCP server to
|
|
81
75
|
switch the task, and then only output the following
|
|
82
76
|
<template/>:
|
|
83
77
|
|
|
@@ -86,13 +80,30 @@ explicitly requested by this procedure via outputs based on a <template/>!
|
|
|
86
80
|
</template>
|
|
87
81
|
</if>
|
|
88
82
|
|
|
83
|
+
3. else <if condition="<instruction/> is NOT empty">
|
|
84
|
+
The argument is neither empty nor a valid task id. As this
|
|
85
|
+
skill only accepts an optional `[<id>]` argument and *never*
|
|
86
|
+
a free-text instruction, only output the following <template/>
|
|
87
|
+
and then immediately *STOP* processing the entire current skill:
|
|
88
|
+
|
|
89
|
+
<template>
|
|
90
|
+
⧉ **ASE**: ☻ skill: **ase-task-implement**, ▶ ERROR: expected single `[<id>]` argument
|
|
91
|
+
</template>
|
|
92
|
+
</if>
|
|
93
|
+
|
|
89
94
|
2. **Determine Operation**:
|
|
90
95
|
|
|
91
|
-
1. Call the `ase_task_load(id: <ase-task-id/>)` tool of the `ase` MCP
|
|
92
|
-
server to load the current task plan content and set <
|
|
96
|
+
1. Call the `ase_task_load(id: "<ase-task-id/>")` tool of the `ase` MCP
|
|
97
|
+
server to load the current task plan content and set <text/> to
|
|
93
98
|
the `text` output field of the `ase_task_load` tool call.
|
|
94
99
|
|
|
95
|
-
|
|
100
|
+
- If <text/> starts with `ERROR:` or `WARNING:`:
|
|
101
|
+
Set <content></content> (set content to empty).
|
|
102
|
+
Set <words/> to "0".
|
|
103
|
+
|
|
104
|
+
- If <text/> starts NOT with `ERROR:` and NOT with `WARNING:`:
|
|
105
|
+
Set <content><text/></content> (set content to text).
|
|
106
|
+
Calculate the number of words <words/> of <content/>.
|
|
96
107
|
|
|
97
108
|
Only output the following <template/>:
|
|
98
109
|
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
|
|
2
|
+
## NAME
|
|
3
|
+
|
|
4
|
+
`ase-task-implement` - Implement a Task Plan
|
|
5
|
+
|
|
6
|
+
## SYNOPSIS
|
|
7
|
+
|
|
8
|
+
`ase-task-implement`
|
|
9
|
+
[`--help`|`-h`]
|
|
10
|
+
[`--next`|`-n` *option*]
|
|
11
|
+
[*id*]
|
|
12
|
+
|
|
13
|
+
## DESCRIPTION
|
|
14
|
+
|
|
15
|
+
The `ase-task-implement` skill performs the *final implementation*
|
|
16
|
+
of a task plan by modifying the corresponding *artifacts* with a
|
|
17
|
+
complete *change set*. The plan is loaded from
|
|
18
|
+
`.ase/tasks/`*id*`/plan.md`, and any optional `IMPLEMENTATION DRAFT`
|
|
19
|
+
section produced by `ase-task-preflight` is used as a hint — the
|
|
20
|
+
plain plan content always overrules the draft.
|
|
21
|
+
|
|
22
|
+
After implementation, the user is asked whether to preserve or
|
|
23
|
+
delete the task plan, unless `--next` pre-selects this choice.
|
|
24
|
+
|
|
25
|
+
## OPTIONS
|
|
26
|
+
|
|
27
|
+
`--next`|`-n` *option*:
|
|
28
|
+
Automatically answer the user dialog for the next step with
|
|
29
|
+
*option*, which can be either `none` (default, interactive
|
|
30
|
+
answer required), `DONE` (preserve task plan and stop), or
|
|
31
|
+
`DELETE` (hand off to `ase-task-delete`).
|
|
32
|
+
|
|
33
|
+
## ARGUMENTS
|
|
34
|
+
|
|
35
|
+
*id*:
|
|
36
|
+
The unique identifier of the task whose plan should be
|
|
37
|
+
implemented. If omitted, the *current* task id is used.
|
|
38
|
+
|
|
39
|
+
## EXAMPLES
|
|
40
|
+
|
|
41
|
+
Implement the current task plan:
|
|
42
|
+
|
|
43
|
+
```text
|
|
44
|
+
❯ /ase-task-implement
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Implement a specific task and delete the plan when done:
|
|
48
|
+
|
|
49
|
+
```text
|
|
50
|
+
❯ /ase-task-implement --next DELETE hello
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## SEE ALSO
|
|
54
|
+
|
|
55
|
+
`ase-task-edit`, `ase-task-preflight`, `ase-task-reboot`,
|
|
56
|
+
`ase-task-view`, `ase-task-delete`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-task-list
|
|
3
|
-
argument-hint: "[
|
|
3
|
+
argument-hint: "[--help|-h] [--verbose|-v]"
|
|
4
4
|
description: >
|
|
5
5
|
List all available task ids.
|
|
6
6
|
Use when user wants to see all tasks.
|
|
@@ -13,9 +13,6 @@ effort: low
|
|
|
13
13
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-skill.md
|
|
14
14
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-getopt.md
|
|
15
15
|
|
|
16
|
-
Task List
|
|
17
|
-
=========
|
|
18
|
-
|
|
19
16
|
<skill name="ase-task-list">
|
|
20
17
|
List Task Plans
|
|
21
18
|
</skill>
|
|
@@ -26,7 +23,11 @@ List Task Plans
|
|
|
26
23
|
$ARGUMENTS
|
|
27
24
|
</expand>
|
|
28
25
|
|
|
29
|
-
|
|
26
|
+
<objective>
|
|
27
|
+
*List* all available *task plans* of the current project.
|
|
28
|
+
</objective>
|
|
29
|
+
|
|
30
|
+
1. Call the `ase_task_list(verbose: "<getopt-option-verbose/>")` tool from
|
|
30
31
|
the `ase` MCP server. The result is a structured object with a
|
|
31
32
|
`tasks` array where each entry has an `id` field, and -- if
|
|
32
33
|
<getopt-option-verbose/> is `true` -- additionally an `mtime` field
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
|
|
2
|
+
## NAME
|
|
3
|
+
|
|
4
|
+
`ase-task-list` - List Task Plans
|
|
5
|
+
|
|
6
|
+
## SYNOPSIS
|
|
7
|
+
|
|
8
|
+
`ase-task-list`
|
|
9
|
+
[`--help`|`-h`]
|
|
10
|
+
[`--verbose`|`-v`]
|
|
11
|
+
|
|
12
|
+
## DESCRIPTION
|
|
13
|
+
|
|
14
|
+
The `ase-task-list` skill lists all available *task ids* in the
|
|
15
|
+
current project by calling the `ase_task_list` MCP tool. In the
|
|
16
|
+
default mode, only the task ids are rendered as a single-column
|
|
17
|
+
Markdown table. In verbose mode, the last-modified timestamp of
|
|
18
|
+
each task plan is rendered as an additional column.
|
|
19
|
+
|
|
20
|
+
## OPTIONS
|
|
21
|
+
|
|
22
|
+
`--verbose`|`-v`:
|
|
23
|
+
Render an additional `Last Modified` column with the
|
|
24
|
+
`YYYY-MM-DD HH:MM` timestamp of each task plan.
|
|
25
|
+
|
|
26
|
+
## EXAMPLES
|
|
27
|
+
|
|
28
|
+
List all task ids:
|
|
29
|
+
|
|
30
|
+
```text
|
|
31
|
+
❯ /ase-task-list
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
List all task ids together with their last-modified timestamps:
|
|
35
|
+
|
|
36
|
+
```text
|
|
37
|
+
❯ /ase-task-list --verbose
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## SEE ALSO
|
|
41
|
+
|
|
42
|
+
`ase-task-id`, `ase-task-view`, `ase-task-edit`,
|
|
43
|
+
`ase-task-rename`, `ase-task-delete`.
|