@rse/ase 2.0.6 → 2.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dst/ase-agent-definition-api.d.ts +2 -0
- package/dst/ase-agent-definition-core.js +24 -3
- package/dst/ase-agent-fleet.js +2 -1
- package/dst/ase-agent-runtime-engine.js +22 -4
- package/dst/ase-agent-runtime-tool.js +10 -8
- package/dst/ase-agent-runtime.js +8 -4
- package/dst/ase-man-catalog.js +1 -1
- package/dst/ase-task-store-plugin-gitea.js +3 -3
- package/dst/man/ase-agent-adhoc.md +25 -6
- package/dst/man/ase-agent-condenser.md +7 -0
- package/dst/man/ase-agent-editor.md +7 -0
- package/dst/man/ase-agent-estimator.md +7 -0
- package/dst/man/ase-agent-fleet.md +7 -4
- package/dst/man/ase-agent-implementer.md +7 -0
- package/dst/man/ase-agent-integrator.md +7 -0
- package/dst/man/ase-agent-qualifier.md +7 -0
- package/dst/man/ase-agent-rebooter.md +7 -0
- package/dst/man/ase-agent-researcher.md +7 -0
- package/package.json +5 -5
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/.codex-plugin/plugin.json +1 -1
- package/plugin/.github/plugin/plugin.json +1 -1
- package/plugin/meta/ase-common-task.md +9 -1
- package/plugin/meta/ase-control.md +14 -0
- package/plugin/meta/ase-format-specbook.yaml +9 -9
- package/plugin/meta/ase-skill.md +7 -0
- package/plugin/mods/ase-mods-help-hint.ts +1 -1
- package/plugin/skills/ase-code-edit/SKILL.md +53 -16
- package/plugin/skills/ase-code-edit/help.md +26 -13
- package/plugin/skills/ase-code-lint/SKILL.md +7 -3
- package/plugin/skills/ase-help-intent/data.md +170 -28
- package/plugin/skills/ase-help-skill/catalog.md +1 -0
- package/plugin/skills/ase-meta-workflow/workflow.txt +2 -0
- package/plugin/skills/ase-repo-changelog/SKILL.md +29 -10
- package/plugin/skills/ase-repo-changelog/help.md +5 -1
- package/plugin/skills/ase-repo-commit/SKILL.md +4 -1
- package/plugin/skills/ase-repo-dissect/help.md +2 -1
- package/plugin/skills/ase-repo-stage/SKILL.md +459 -0
- package/plugin/skills/ase-repo-stage/help.md +120 -0
- package/plugin/skills/ase-spec-edit/SKILL.md +20 -12
- package/plugin/skills/ase-spec-edit/help.md +22 -14
|
@@ -227,10 +227,18 @@ related to this MCP call except the following <template/>:
|
|
|
227
227
|
custom dialog according to the expanded `custom-dialog`
|
|
228
228
|
definition. You *MUST* closely follow this definition:
|
|
229
229
|
|
|
230
|
-
<expand name="custom-dialog" arg1="--
|
|
230
|
+
<expand name="custom-dialog" arg1="--other">
|
|
231
231
|
<content/>
|
|
232
232
|
</expand>
|
|
233
233
|
|
|
234
|
+
If <result/> matches `OTHER: <text/>`, the user typed a free-text
|
|
235
|
+
request instead of choosing an option: treat it as an implicit
|
|
236
|
+
`DONE`, i.e., set <result>DONE</result>, and let the calling skill
|
|
237
|
+
finish along its `DONE` dispatch (output its `DONE` template).
|
|
238
|
+
Its *STOP* then ends only the skill, *not* the current turn:
|
|
239
|
+
immediately afterwards, handle <text/> as a regular user request,
|
|
240
|
+
outside of any skill, without re-opening this dialog.
|
|
241
|
+
|
|
234
242
|
</define>
|
|
235
243
|
|
|
236
244
|
<define name="task-next-handoff">
|
|
@@ -187,3 +187,17 @@ Control Flow Constructs
|
|
|
187
187
|
the order of their occurrence in <parallel-body/>. This construct is
|
|
188
188
|
expanded to its <parallel-body/>. Do not output anything else.
|
|
189
189
|
|
|
190
|
+
- *IMPORTANT*: You *MUST* honor the following rule for *all*
|
|
191
|
+
concurrently dispatched sub-agents -- whether invoked through
|
|
192
|
+
<parallel/> or through multiple `Agent` tool invocations emitted in
|
|
193
|
+
one single message:
|
|
194
|
+
|
|
195
|
+
The agent tool may run sub-agents in the *background* (e.g.
|
|
196
|
+
*Anthropic Claude Code CLI* ignores `run_in_background: false`) and
|
|
197
|
+
then notifies you of each returned sub-agent individually. While
|
|
198
|
+
these notifications arrive, you *MUST* *NOT* output anything -- no
|
|
199
|
+
progress messages (like `Batch 3 of 8 is back, 5 still running`),
|
|
200
|
+
no intermediate results, and no waiting notices -- but silently wait
|
|
201
|
+
for the remaining sub-agents. Only once *all* of them have returned,
|
|
202
|
+
continue with the processing which consumes their results.
|
|
203
|
+
|
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
id: DG
|
|
126
126
|
file: 03-REQS-DG-Domain-Glossary.md
|
|
127
127
|
desc: >
|
|
128
|
-
The ubiquitous language of the domain, defining the meaning of each domain term in business language, together with its synonyms, its place in the hierarchy of terms, and the terms it has to be kept apart from, shared consistently across all
|
|
128
|
+
The ubiquitous language of the domain, defining the meaning of each domain term in business language, together with its synonyms, its place in the hierarchy of terms, and the terms it has to be kept apart from, shared consistently across all artifacts.
|
|
129
129
|
optional: true
|
|
130
130
|
children:
|
|
131
131
|
- kind: TERM
|
|
@@ -581,7 +581,7 @@
|
|
|
581
581
|
optional: true
|
|
582
582
|
- name: TRIGGER
|
|
583
583
|
desc: >
|
|
584
|
-
The event that starts the use case, stated as a 1-sentence occurrence (e.g. `The attendee opens the event URL.`), as opposed to the `PRE-CONDITION
|
|
584
|
+
The event that starts the use case, stated as a 1-sentence occurrence (e.g. `The attendee opens the event URL.`), as opposed to the `PRE-CONDITION`, which is a state that has to hold, and matching the `When <trigger>` of the event-driven Functional Requirements the use case exercises.
|
|
585
585
|
optional: true
|
|
586
586
|
- name: POST-CONDITION
|
|
587
587
|
desc: >
|
|
@@ -847,7 +847,7 @@
|
|
|
847
847
|
The kind of the interface, one of:
|
|
848
848
|
- `REST`: HTTP resources addressed by URL paths and HTTP methods.
|
|
849
849
|
- `GraphQL`: A GraphQL schema of queries, mutations, and subscriptions.
|
|
850
|
-
- `gRPC`: Protocol Buffers
|
|
850
|
+
- `gRPC`: Protocol Buffers-based remote procedure calls.
|
|
851
851
|
- `WebSocket`: Messages exchanged over a WebSocket connection.
|
|
852
852
|
- `MQTT`: Messages published to and subscribed from MQTT topics.
|
|
853
853
|
- `MCP`: Tools, resources, and prompts of a Model Context Protocol server.
|
|
@@ -1322,7 +1322,7 @@
|
|
|
1322
1322
|
props:
|
|
1323
1323
|
- name: MAXIMS
|
|
1324
1324
|
desc: >
|
|
1325
|
-
Comma-separated references to the MAXIM objects the principle concretizes (e.g. a `Stateless Services` principle concretizing a `Scale Out over Scale Up` maxim), so that the principles form a hierarchy below the maxims rather than a flat
|
|
1325
|
+
Comma-separated references to the MAXIM objects the principle concretizes (e.g. a `Stateless Services` principle concretizing a `Scale Out over Scale Up` maxim), so that the principles form a hierarchy below the maxims rather than a flat catalog; omitted for a principle standing on its own forces alone.
|
|
1326
1326
|
value: list([[MAXIM:*]])
|
|
1327
1327
|
optional: true
|
|
1328
1328
|
- name: DRIVEN-BY
|
|
@@ -1362,7 +1362,7 @@
|
|
|
1362
1362
|
optional: true
|
|
1363
1363
|
- name: USES
|
|
1364
1364
|
desc: >
|
|
1365
|
-
Comma-separated references to the smaller ARCHITECTURE-PATTERNS objects the pattern is composed of (e.g. a `Saga` using a `Transactional Outbox` for its steps), so that the patterns form a language of related structures rather than a flat
|
|
1365
|
+
Comma-separated references to the smaller ARCHITECTURE-PATTERNS objects the pattern is composed of (e.g. a `Saga` using a `Transactional Outbox` for its steps), so that the patterns form a language of related structures rather than a flat catalog.
|
|
1366
1366
|
value: list([[PATTERN:*]])
|
|
1367
1367
|
optional: true
|
|
1368
1368
|
acyclic: true
|
|
@@ -1663,7 +1663,7 @@
|
|
|
1663
1663
|
desc: >
|
|
1664
1664
|
A single technology component, named with a short (2-5 word) summary (e.g. `UI Framework`, `Web Server`, `Relational Database`) and described in a concise (1-3 sentence) paragraph by how the product is used within the solution and how it fits into the overall technology stack, plus a 1-sentence rationale ("why") for choosing this product over the alternatives.
|
|
1665
1665
|
|
|
1666
|
-
A component states one product in one role on one tier: the product used by several tiers alike belongs to the `Common` tier once, the lock-in
|
|
1666
|
+
A component states one product in one role on one tier: the product used by several tiers alike belongs to the `Common` tier once, the lock-in-carrying trade-off behind the choice is a Design Decisions decision referencing the component through `DECIDES`, and the functional components depending on the product reference it through `USED-BY`.
|
|
1667
1667
|
props:
|
|
1668
1668
|
- name: PRODUCT
|
|
1669
1669
|
desc: >
|
|
@@ -2395,7 +2395,7 @@
|
|
|
2395
2395
|
optional: true
|
|
2396
2396
|
- name: USES
|
|
2397
2397
|
desc: >
|
|
2398
|
-
Comma-separated references to the smaller CODE-PATTERNS objects the pattern is composed of (e.g. an `Endpoint Authorization` using the `Error Propagation` for its rejections), so that the patterns form a language of related shapes rather than a flat
|
|
2398
|
+
Comma-separated references to the smaller CODE-PATTERNS objects the pattern is composed of (e.g. an `Endpoint Authorization` using the `Error Propagation` for its rejections), so that the patterns form a language of related shapes rather than a flat catalog.
|
|
2399
2399
|
value: list([[CODE-PATTERN:*]])
|
|
2400
2400
|
optional: true
|
|
2401
2401
|
acyclic: true
|
|
@@ -2449,8 +2449,8 @@
|
|
|
2449
2449
|
The mandatory, concrete input data or action applied during the test, i.e. the stimulus whose response the `EXPECTED` judges.
|
|
2450
2450
|
- name: EXPECTED
|
|
2451
2451
|
desc: >
|
|
2452
|
-
The mandatory, concrete, observable response of the solution to the `INPUT` (a message shown, a session issued, a submission rejected) that defines a passing test, as opposed to the `POST-CONDITION
|
|
2452
|
+
The mandatory, concrete, observable response of the solution to the `INPUT` (a message shown, a session issued, a submission rejected) that defines a passing test, as opposed to the `POST-CONDITION`, which is the state left behind. When the test case verifies a NON-FUNCTIONAL-REQUIREMENTS object, the expected response restates the `METRIC` threshold of that requirement as the pass criterion (e.g. `p95 latency < 200 ms`) rather than a qualitative phrase (e.g. `remains responsive`).
|
|
2453
2453
|
- name: POST-CONDITION
|
|
2454
2454
|
desc: >
|
|
2455
|
-
The persisted state that must hold after the test completes (e.g. `the authorization token is in state used`), including the state that must not have changed (e.g. `no session token exists`), as opposed to the `EXPECTED
|
|
2455
|
+
The persisted state that must hold after the test completes (e.g. `the authorization token is in state used`), including the state that must not have changed (e.g. `no session token exists`), as opposed to the `EXPECTED`, which is the immediate response, and omitted for a test whose input leaves no state behind.
|
|
2456
2456
|
optional: true
|
package/plugin/meta/ase-skill.md
CHANGED
|
@@ -232,6 +232,13 @@ Skill Identification
|
|
|
232
232
|
⧉ **ASE**: ✪ skill: **<skill-name/>**, ✦ purpose: **<purpose/>**, ▶ status: **skill started**
|
|
233
233
|
</template>
|
|
234
234
|
|
|
235
|
+
You *MUST* output this <template/> *immediately* as the *very first*
|
|
236
|
+
output of the skill, *before* any tool call (including the
|
|
237
|
+
`ase_getopt` call) and *before* any work of the skill, and also when
|
|
238
|
+
the skill was invoked via the `Skill` tool from another skill. Any
|
|
239
|
+
"Do not output anything" instruction of the subsequent steps does
|
|
240
|
+
*NOT* suppress or defer it.
|
|
241
|
+
|
|
235
242
|
Later (but only if ((`$1` is *NOT* equal to `-h` or `--help`) *AND*
|
|
236
243
|
(<ase-guidance-level/> is equal to `normal` or `verbose`))), once
|
|
237
244
|
this skill finally will stop processing, you *MUST* once output the
|
|
@@ -29,7 +29,7 @@ const GROUP = /\[(?:[^[\]]|\[[^\]]*\])*\]|\((?:[^()]|\([^)]*\))*\)|\S+/g
|
|
|
29
29
|
const NBSP = String.fromCodePoint(0xA0)
|
|
30
30
|
const SYNTAX = "gray"
|
|
31
31
|
const REFER = "red"
|
|
32
|
-
const INDENT =
|
|
32
|
+
const INDENT = 2
|
|
33
33
|
const TITLE = "[ ⧉ ASE: Show Skill Synopsis ]"
|
|
34
34
|
|
|
35
35
|
/* a hint band: the scroll state of its frame, the skill command as typed,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: ase-code-edit
|
|
3
|
-
argument-hint: "[--help|-h] [--mode|-m auto|craft|refactor|resolve] [--approach|-a] [--grill|-g] [--grill-rounds|-r <n>] [--grill-until|-u MUST|SHOULD|MAY] [--grill-perspective|-p <perspective>] [--grill-ground|-G] [--verify|-v] [--worktree|-w <name>[:<branch>]] [--loop|-l] [<query>|<issue-id>]"
|
|
3
|
+
argument-hint: "[--help|-h] [--mode|-m auto|craft|refactor|resolve] [--approach|-a] [--grill|-g] [--grill-rounds|-r <n>] [--grill-until|-u MUST|SHOULD|MAY] [--grill-perspective|-p <perspective>] [--grill-ground|-G] [--verify|-v light|none|full] [--worktree|-w <name>[:<branch>]] [--loop|-l] [<query>|<issue-id>]"
|
|
4
4
|
description: >
|
|
5
5
|
Edit Source Code: Use when the user wants to "edit" the code base in
|
|
6
6
|
one shot from a query or a bare analyzer issue id like "P1", fusing
|
|
@@ -22,7 +22,7 @@ Edit Source Code
|
|
|
22
22
|
|
|
23
23
|
<expand name="getopt"
|
|
24
24
|
arg1="ase-code-edit"
|
|
25
|
-
arg2="--mode|-m=(auto|craft|refactor|resolve) --approach|-a --grill|-g --grill-rounds|-r=1 --grill-until|-u=(MUST|SHOULD|MAY) --grill-perspective|-p= --grill-ground|-G --verify|-v --worktree|-w= --loop|-l">
|
|
25
|
+
arg2="--mode|-m=(auto|craft|refactor|resolve) --approach|-a --grill|-g --grill-rounds|-r=1 --grill-until|-u=(MUST|SHOULD|MAY) --grill-perspective|-p= --grill-ground|-G --verify|-v=(light|none|full) --worktree|-w= --loop|-l">
|
|
26
26
|
$ARGUMENTS
|
|
27
27
|
</expand>
|
|
28
28
|
|
|
@@ -238,11 +238,18 @@ empty <todo-what/> or <todo-how/> renders as `(none)`:
|
|
|
238
238
|
arg3="file and directory paths, identifiers, symbols, types, commands, options, configuration keys, and literal values"
|
|
239
239
|
arg4="the code base"
|
|
240
240
|
arg5="">
|
|
241
|
-
<if condition="<getopt-option-verify/> is
|
|
241
|
+
<if condition="<getopt-option-verify/> is equal `none`">
|
|
242
242
|
Raise *no* questions at all of focus area `REGRESSION`
|
|
243
|
-
or `CONFIRMATION`, as
|
|
244
|
-
takes place which could honor their
|
|
245
|
-
|
|
243
|
+
or `CONFIRMATION`, as under `--verify none` no
|
|
244
|
+
verification takes place which could honor their
|
|
245
|
+
decisions.
|
|
246
|
+
</if>
|
|
247
|
+
<elseif condition="<getopt-option-verify/> is equal `light`">
|
|
248
|
+
Raise *no* questions at all of focus area
|
|
249
|
+
`CONFIRMATION`, as under `--verify light` no
|
|
250
|
+
change-specific tests take place which could honor
|
|
251
|
+
their decisions.
|
|
252
|
+
</elseif></expand>
|
|
246
253
|
|
|
247
254
|
If <grill-stop/> is `true`, skip the remaining items of
|
|
248
255
|
this round and all remaining rounds, and continue with
|
|
@@ -388,27 +395,57 @@ empty <todo-what/> or <todo-how/> renders as `(none)`:
|
|
|
388
395
|
|
|
389
396
|
7. **State: verifying:**
|
|
390
397
|
|
|
391
|
-
Enter this state only if <getopt-option-verify/> is equal `
|
|
392
|
-
Otherwise you *MUST* *strictly skip* the entire
|
|
393
|
-
verification: do *NOT* run any build, tests, linter,
|
|
394
|
-
type-checker, and do *NOT* execute the modified program.
|
|
398
|
+
Enter this state only if <getopt-option-verify/> is equal `light` or
|
|
399
|
+
`full`. Otherwise (`none`) you *MUST* *strictly skip* the entire
|
|
400
|
+
state and *any* verification: do *NOT* run any build, tests, linter,
|
|
401
|
+
or type-checker, and do *NOT* execute the modified program.
|
|
395
402
|
|
|
396
403
|
1. Verify whether the implementation fulfills <todo-what/> and
|
|
397
|
-
<todo-how/>
|
|
398
|
-
(build, tests, linter, type-checker)
|
|
404
|
+
<todo-how/>
|
|
399
405
|
<if condition="<worktree-dir/> is not empty">
|
|
400
|
-
,
|
|
401
|
-
|
|
406
|
+
, running every command with <worktree-dir/> as its working
|
|
407
|
+
directory
|
|
408
|
+
</if>:
|
|
409
|
+
|
|
410
|
+
- Under `light` and `full`: run the available lint and build
|
|
411
|
+
commands (including the type-checker) and the already
|
|
412
|
+
existing regression test suite, if any.
|
|
413
|
+
|
|
414
|
+
- Under `full` only: additionally perform *individual*,
|
|
415
|
+
*change-specific* manual tests, which exercise the changed
|
|
416
|
+
behavior through ad-hoc scratch tests and program runs.
|
|
417
|
+
Clean up all scratch test files afterwards, so they never
|
|
418
|
+
become part of the change set.
|
|
402
419
|
|
|
403
420
|
If the verification fails, you *MUST* *adjust* the failing parts
|
|
404
|
-
of the change set and *RE-VERIFY*
|
|
421
|
+
of the change set and *RE-VERIFY* -- for at most *ten* rounds
|
|
422
|
+
in total.
|
|
423
|
+
|
|
424
|
+
2. <if condition="the verification still fails after the last round">
|
|
425
|
+
|
|
426
|
+
Only output the following <template/>, listing one bullet line
|
|
427
|
+
per remaining failure:
|
|
428
|
+
|
|
429
|
+
<template>
|
|
430
|
+
⧉ **ASE**: ✪ skill: **ase-code-edit**, ▶ status: **verification failed**
|
|
405
431
|
|
|
406
|
-
|
|
432
|
+
<ase-tpl-bullet-signal/> **REMAINING FAILURES**:
|
|
433
|
+
|
|
434
|
+
- <failure/>
|
|
435
|
+
[...]
|
|
436
|
+
</template>
|
|
437
|
+
|
|
438
|
+
</if>
|
|
439
|
+
<else>
|
|
440
|
+
|
|
441
|
+
Only output the following <template/>:
|
|
407
442
|
|
|
408
443
|
<template>
|
|
409
444
|
⧉ **ASE**: ✪ skill: **ase-code-edit**, ▶ status: **verification passed**
|
|
410
445
|
</template>
|
|
411
446
|
|
|
447
|
+
</else>
|
|
448
|
+
|
|
412
449
|
8. **Loop or Finish:**
|
|
413
450
|
|
|
414
451
|
<if condition="<getopt-option-loop/> is equal `true`">
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
[`--grill-until`|`-u` `MUST`|`SHOULD`|`MAY`]
|
|
15
15
|
[`--grill-perspective`|`-p` *perspective*]
|
|
16
16
|
[`--grill-ground`|`-G`]
|
|
17
|
-
[`--verify`|`-v`]
|
|
17
|
+
[`--verify`|`-v` `light`|`none`|`full`]
|
|
18
18
|
[`--worktree`|`-w` *name*[`:`*branch*]]
|
|
19
19
|
[`--loop`|`-l`]
|
|
20
20
|
[*query*]
|
|
@@ -34,7 +34,8 @@ parts), *discovering* (read the source artifacts related to the query),
|
|
|
34
34
|
*grilling* (optionally stress-test the query with rounds of questions),
|
|
35
35
|
*implementing* (optionally select an approach, then apply the change
|
|
36
36
|
set in place, honoring the tenet set selected via `--mode`), and
|
|
37
|
-
*verifying* (
|
|
37
|
+
*verifying* (verify the implementation until it passes, unless
|
|
38
|
+
disabled via `--verify none`). The
|
|
38
39
|
*querying* state, every *grilling* round, and the approach selection
|
|
39
40
|
close with an `EDIT TODO` box showing the established `WHAT` and `HOW`
|
|
40
41
|
information.
|
|
@@ -69,8 +70,9 @@ information.
|
|
|
69
70
|
of a round are sorted by descending focus area importance
|
|
70
71
|
(`DOMAIN`, `INTERFACE`, `ARCHITECTURE`, `IMPLEMENTATION`,
|
|
71
72
|
`REGRESSION`, `CONFIRMATION`). Questions of focus area
|
|
72
|
-
`REGRESSION`
|
|
73
|
-
|
|
73
|
+
`REGRESSION` are raised only under `--verify light` or `full`, and
|
|
74
|
+
those of focus area `CONFIRMATION` only under `--verify full`, as
|
|
75
|
+
only then a verification honors their decisions.
|
|
74
76
|
All questions of a round are announced together below a
|
|
75
77
|
`GRILLING ROUND K/L` line (the round numbering is omitted when only
|
|
76
78
|
a single round is performed) as a `QUESTION`/`ANSWERS` table with
|
|
@@ -130,12 +132,17 @@ information.
|
|
|
130
132
|
no usable facts are found, a warning is shown and the grilling falls
|
|
131
133
|
back to model knowledge. Only effective together with `--grill`.
|
|
132
134
|
|
|
133
|
-
- `--verify`|`-v`:
|
|
134
|
-
Verify whether the implementation fulfills the requirements,
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
135
|
+
- `--verify`|`-v` `light`|`none`|`full`:
|
|
136
|
+
Verify whether the implementation fulfills the requirements, and
|
|
137
|
+
adjust the failing parts of the change set until the verification
|
|
138
|
+
passes, for at most ten rounds, listing any failures remaining after
|
|
139
|
+
the last round as `REMAINING FAILURES`. The default `light` runs the
|
|
140
|
+
available lint and build commands (including the type-checker) and
|
|
141
|
+
the already existing regression test suite, if any. The level `full`
|
|
142
|
+
additionally performs individual, change-specific manual tests
|
|
143
|
+
through ad-hoc scratch tests and program runs, which are cleaned up
|
|
144
|
+
afterwards. The level `none` strictly performs no verification at
|
|
145
|
+
all.
|
|
139
146
|
|
|
140
147
|
- `--worktree`|`-w` *name*[`:`*branch*]:
|
|
141
148
|
Apply the change sets inside the dedicated Git worktree
|
|
@@ -176,16 +183,22 @@ information.
|
|
|
176
183
|
|
|
177
184
|
## EXAMPLES
|
|
178
185
|
|
|
179
|
-
Edit in one shot, without any questions
|
|
186
|
+
Edit in one shot, without any questions, but with light verification:
|
|
180
187
|
|
|
181
188
|
```text
|
|
182
189
|
❯ /ase-code-edit add a --verbose option to the CLI
|
|
183
190
|
```
|
|
184
191
|
|
|
185
|
-
|
|
192
|
+
Edit in one shot, without any questions or verification:
|
|
193
|
+
|
|
194
|
+
```text
|
|
195
|
+
❯ /ase-code-edit -v none add a --verbose option to the CLI
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
Grill the query with two rounds first, then implement and fully verify:
|
|
186
199
|
|
|
187
200
|
```text
|
|
188
|
-
❯ /ase-code-edit -g -r 2 -v refactor the config loading into layers
|
|
201
|
+
❯ /ase-code-edit -g -r 2 -v full refactor the config loading into layers
|
|
189
202
|
```
|
|
190
203
|
|
|
191
204
|
Let the user pick one of several resolution approaches first, then
|
|
@@ -10,6 +10,7 @@ effort: high
|
|
|
10
10
|
allowed-tools:
|
|
11
11
|
- "Bash(git rev-parse *)"
|
|
12
12
|
- "Bash(git -C *)"
|
|
13
|
+
- "Bash(find *)"
|
|
13
14
|
---
|
|
14
15
|
|
|
15
16
|
@${CLAUDE_SKILL_DIR}/../../meta/ase-control.md
|
|
@@ -123,8 +124,9 @@ related to a set of code quality aspects.
|
|
|
123
124
|
`<repo-root/>/`. If `<getopt-arguments/>` is not empty, keep only
|
|
124
125
|
those files which lie within the source code referenced by it,
|
|
125
126
|
expanding any directory or wildcard references with the `Glob`
|
|
126
|
-
tool
|
|
127
|
-
|
|
127
|
+
tool (or, if the `Glob` tool is not available, with the `find`
|
|
128
|
+
command via the `Bash` tool). Set <sources/> to the resulting list
|
|
129
|
+
of individual source code files, preserving order.
|
|
128
130
|
|
|
129
131
|
If <sources/> is empty, only output the following <template/>
|
|
130
132
|
and then *SKIP* the rest of this STEP 1 and the remaining steps
|
|
@@ -139,7 +141,9 @@ related to a set of code quality aspects.
|
|
|
139
141
|
|
|
140
142
|
For this, first *silently* resolve `<getopt-arguments/>` to the
|
|
141
143
|
list <sources/> of individual source code files, expanding any
|
|
142
|
-
directory or wildcard references with the `Glob` tool
|
|
144
|
+
directory or wildcard references with the `Glob` tool (or, if the
|
|
145
|
+
`Glob` tool is not available, with the `find` command via the
|
|
146
|
+
`Bash` tool).
|
|
143
147
|
|
|
144
148
|
If <sources/> is empty (no *source-reference* given or none of it
|
|
145
149
|
resolvable), only output the following <template/> and then *STOP*
|