@rse/ase 0.0.60 → 0.0.62
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-diagram.js +34 -41
- package/dst/ase-persona.js +2 -2
- package/dst/ase-statusline.js +2 -2
- 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-code-lint.md +6 -0
- package/plugin/etc/markdownlint.yaml +2 -0
- package/plugin/meta/ase-skill.md +80 -37
- package/plugin/package.json +1 -1
- package/plugin/skills/ase-arch-analyze/SKILL.md +2 -2
- package/plugin/skills/ase-arch-discover/SKILL.md +4 -4
- package/plugin/skills/ase-code-analyze/SKILL.md +1 -1
- package/plugin/skills/ase-code-craft/SKILL.md +2 -2
- package/plugin/skills/ase-code-explain/SKILL.md +6 -6
- package/plugin/skills/ase-code-insight/SKILL.md +4 -4
- package/plugin/skills/ase-code-lint/SKILL.md +9 -9
- package/plugin/skills/ase-code-refactor/SKILL.md +2 -2
- package/plugin/skills/ase-code-resolve/SKILL.md +4 -4
- package/plugin/skills/ase-docs-proofread/SKILL.md +5 -5
- package/plugin/skills/ase-docs-proofread/help.md +1 -1
- package/plugin/skills/ase-meta-brainstorm/SKILL.md +220 -0
- package/plugin/skills/ase-meta-brainstorm/help.md +51 -0
- package/plugin/skills/{ase-meta-changes → ase-meta-changelog}/SKILL.md +7 -7
- package/plugin/skills/{ase-meta-changes → ase-meta-changelog}/help.md +4 -4
- package/plugin/skills/ase-meta-commit/help.md +1 -1
- package/plugin/skills/ase-meta-diaboli/SKILL.md +3 -3
- package/plugin/skills/ase-meta-diff/SKILL.md +301 -0
- package/plugin/skills/ase-meta-diff/help.md +81 -0
- package/plugin/skills/ase-meta-evaluate/SKILL.md +9 -9
- package/plugin/skills/ase-meta-why/SKILL.md +3 -3
- package/plugin/skills/ase-task-edit/SKILL.md +2 -2
- package/plugin/skills/ase-task-grill/SKILL.md +2 -2
- package/plugin/skills/ase-task-view/SKILL.md +2 -2
package/dst/ase-diagram.js
CHANGED
|
@@ -20,6 +20,15 @@ const parseColorMode = (name) => (value) => {
|
|
|
20
20
|
throw new InvalidArgumentError(`${name} must be "none", "ansi16", or "ansi256"`);
|
|
21
21
|
return value;
|
|
22
22
|
};
|
|
23
|
+
/* scan a CSI escape sequence starting at line[i] (where line[i]===ESC and
|
|
24
|
+
line[i+1]==="["); return the index just past the terminating letter, or
|
|
25
|
+
-1 if the sequence is unterminated within the line */
|
|
26
|
+
const scanAnsiSeq = (line, i) => {
|
|
27
|
+
let j = i + 2;
|
|
28
|
+
while (j < line.length && !/[A-Za-z]/.test(line[j]))
|
|
29
|
+
j++;
|
|
30
|
+
return j < line.length ? j + 1 : -1;
|
|
31
|
+
};
|
|
23
32
|
/* truncate a single rendered line to a maximum visible column,
|
|
24
33
|
preserving ANSI escape sequences (CSI ...m) and appending an ANSI
|
|
25
34
|
reset sequence if any styling was active at the truncation point */
|
|
@@ -33,20 +42,15 @@ const truncateAnsiLine = (line, budget) => {
|
|
|
33
42
|
while (i < line.length) {
|
|
34
43
|
const ch = line[i];
|
|
35
44
|
if (ch === "\x1b" && line[i + 1] === "[") {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
j
|
|
39
|
-
if (j < line.length) {
|
|
40
|
-
const seq = line.slice(i, j + 1);
|
|
45
|
+
const j = scanAnsiSeq(line, i);
|
|
46
|
+
if (j >= 0) {
|
|
47
|
+
const seq = line.slice(i, j);
|
|
41
48
|
out += seq;
|
|
42
49
|
if (seq.endsWith("m")) {
|
|
43
50
|
const body = seq.slice(2, -1);
|
|
44
|
-
|
|
45
|
-
styled = false;
|
|
46
|
-
else
|
|
47
|
-
styled = true;
|
|
51
|
+
styled = !(body === "" || body === "0");
|
|
48
52
|
}
|
|
49
|
-
i = j
|
|
53
|
+
i = j;
|
|
50
54
|
continue;
|
|
51
55
|
}
|
|
52
56
|
i++;
|
|
@@ -70,11 +74,9 @@ const visibleWidth = (line) => {
|
|
|
70
74
|
while (i < line.length) {
|
|
71
75
|
const ch = line[i];
|
|
72
76
|
if (ch === "\x1b" && line[i + 1] === "[") {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
j
|
|
76
|
-
if (j < line.length) {
|
|
77
|
-
i = j + 1;
|
|
77
|
+
const j = scanAnsiSeq(line, i);
|
|
78
|
+
if (j >= 0) {
|
|
79
|
+
i = j;
|
|
78
80
|
continue;
|
|
79
81
|
}
|
|
80
82
|
i++;
|
|
@@ -87,39 +89,30 @@ const visibleWidth = (line) => {
|
|
|
87
89
|
};
|
|
88
90
|
/* reusable functionality: Mermaid diagram rendering as Unicode/ASCII art */
|
|
89
91
|
export class Diagram {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
let width = 0;
|
|
92
|
+
static detectTermDimension(envVar, stdoutProp) {
|
|
93
|
+
let value = 0;
|
|
93
94
|
/* attempt 1: query environment variable */
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
95
|
+
const env = process.env[envVar];
|
|
96
|
+
if (env !== undefined) {
|
|
97
|
+
const n = Number.parseInt(env, 10);
|
|
98
|
+
if (Number.isFinite(n) && n > 0)
|
|
99
|
+
value = n;
|
|
98
100
|
}
|
|
99
101
|
/* attempt 2: query stdout */
|
|
100
|
-
if (
|
|
101
|
-
const
|
|
102
|
-
if (typeof
|
|
103
|
-
|
|
102
|
+
if (value === 0 && process.stdout.isTTY) {
|
|
103
|
+
const n = process.stdout[stdoutProp];
|
|
104
|
+
if (typeof n === "number" && n > 0)
|
|
105
|
+
value = n;
|
|
104
106
|
}
|
|
105
|
-
return
|
|
107
|
+
return value;
|
|
108
|
+
}
|
|
109
|
+
/* detect terminal column width */
|
|
110
|
+
static detectTermWidth() {
|
|
111
|
+
return Diagram.detectTermDimension("ASE_TERM_WIDTH", "columns");
|
|
106
112
|
}
|
|
107
113
|
/* detect terminal row height */
|
|
108
114
|
static detectTermHeight() {
|
|
109
|
-
|
|
110
|
-
/* attempt 1: query environment variable */
|
|
111
|
-
if (process.env.ASE_TERM_HEIGHT !== undefined) {
|
|
112
|
-
const rows = Number.parseInt(process.env.ASE_TERM_HEIGHT, 10);
|
|
113
|
-
if (Number.isFinite(rows) && rows > 0)
|
|
114
|
-
height = rows;
|
|
115
|
-
}
|
|
116
|
-
/* attempt 2: query stdout */
|
|
117
|
-
if (height === 0 && process.stdout.isTTY) {
|
|
118
|
-
const rows = process.stdout.rows;
|
|
119
|
-
if (typeof rows === "number" && rows > 0)
|
|
120
|
-
height = rows;
|
|
121
|
-
}
|
|
122
|
-
return height;
|
|
115
|
+
return Diagram.detectTermDimension("ASE_TERM_HEIGHT", "rows");
|
|
123
116
|
}
|
|
124
117
|
/* detect terminal color capability */
|
|
125
118
|
static detectColorMode() {
|
package/dst/ase-persona.js
CHANGED
|
@@ -51,14 +51,14 @@ export default class PersonaMCP {
|
|
|
51
51
|
"If `session` is provided, the operation is scoped to that session, " +
|
|
52
52
|
"otherwise it operates on the strongest/closest scope (user/project cascade). " +
|
|
53
53
|
"Allowed styles: \"writer\" (decorative, eloquent, explaining), " +
|
|
54
|
-
"\"engineer\" (
|
|
54
|
+
"\"engineer\" (concise, factual, accurate), " +
|
|
55
55
|
"\"telegrapher\" (very brief, factual, abbreviating), " +
|
|
56
56
|
"\"caveman\" (ultra brief, rough, stuttering).",
|
|
57
57
|
inputSchema: {
|
|
58
58
|
style: z.enum(Persona.styles).optional()
|
|
59
59
|
.describe("persona style to set; if omitted, the current persona style is returned"),
|
|
60
60
|
session: z.string().optional()
|
|
61
|
-
.describe("session identifier (allowed characters: A-Z, a-z, 0-9, '-'); " +
|
|
61
|
+
.describe("session identifier (allowed characters: A-Z, a-z, 0-9, '.', '_', '-'); " +
|
|
62
62
|
"if omitted, the operation is not scoped to a specific session")
|
|
63
63
|
}
|
|
64
64
|
}, async (args) => {
|
package/dst/ase-statusline.js
CHANGED
|
@@ -346,10 +346,10 @@ export default class StatuslineCommand {
|
|
|
346
346
|
emit(`${prefix("◔", "context")}${bar} ${pct}%`);
|
|
347
347
|
},
|
|
348
348
|
C: () => {
|
|
349
|
-
const
|
|
349
|
+
const pct = Math.floor(data.context_window?.used_percentage ?? 0);
|
|
350
350
|
const tokensCur = (data.context_window?.total_input_tokens ?? 0) +
|
|
351
351
|
(data.context_window?.total_output_tokens ?? 0);
|
|
352
|
-
const tokensLim =
|
|
352
|
+
const tokensLim = pct > 0 && tokensCur > 0 ? Math.round(tokensCur * 100 / pct) : 0;
|
|
353
353
|
if (tokensLim > 0)
|
|
354
354
|
emit(`${prefix("◆", "tokens")}${c.bold(formatTokens(tokensCur) + "/" + formatTokens(tokensLim))}`);
|
|
355
355
|
},
|
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.62",
|
|
10
10
|
"license": "GPL-3.0-only",
|
|
11
11
|
"author": {
|
|
12
12
|
"name": "Dr. Ralf S. Engelschall",
|
|
@@ -269,6 +269,7 @@ Workflow
|
|
|
269
269
|
|
|
270
270
|
<template>
|
|
271
271
|
● **WHAT**: [...]
|
|
272
|
+
|
|
272
273
|
○ **WHY**: [...]
|
|
273
274
|
</template>
|
|
274
275
|
|
|
@@ -279,6 +280,11 @@ Workflow
|
|
|
279
280
|
text with Markdown based on the following <template/>:
|
|
280
281
|
<template>"`<words/>`"</template>.
|
|
281
282
|
|
|
283
|
+
For all code references, always use a relative filename and
|
|
284
|
+
append the related single 1-based line number N as `:N` or the
|
|
285
|
+
related 1-based line number range as `:N-M` to the end of the
|
|
286
|
+
filename.
|
|
287
|
+
|
|
282
288
|
4. Create the change set.
|
|
283
289
|
For this, set <change-set></change-set> (set changes to empty).
|
|
284
290
|
|
package/plugin/meta/ase-skill.md
CHANGED
|
@@ -158,40 +158,83 @@ MCP Tool Calls
|
|
|
158
158
|
Skill Identification
|
|
159
159
|
--------------------
|
|
160
160
|
|
|
161
|
-
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
161
|
+
- *IMPORTANT*: Set <skill></skill> (set to empty)
|
|
162
|
+
and <skill-name></skill-name> (set name to empty).
|
|
163
|
+
|
|
164
|
+
In case <skill/> later becomes *not* empty by defining it as <skill
|
|
165
|
+
name="<name/>"><body/></skill>, set <skill-name><name/></skill-name>
|
|
166
|
+
(set skill name to name), and then (but only if `$1` is *NOT* equal
|
|
167
|
+
to `-h` or `--help`) you *MUST* once output the following output
|
|
168
|
+
<template/>:
|
|
169
|
+
|
|
170
|
+
<template>
|
|
171
|
+
⧉ **ASE**: ✪ skill: **<skill-name/>**, ✦ purpose: **<skill/>**, ▶ status: **skill started**
|
|
172
|
+
</template>
|
|
173
|
+
|
|
174
|
+
Later (but only if `$1` is *NOT* equal to `-h` or `--help`), once
|
|
175
|
+
this skill finally will stop processing, you *MUST* once output the
|
|
176
|
+
following output <template/>:
|
|
177
|
+
|
|
178
|
+
<template>
|
|
179
|
+
⧉ **ASE**: ✪ skill: **<skill-name/>**, status: **skill finished**
|
|
180
|
+
</template>
|
|
181
|
+
|
|
182
|
+
- *IMPORTANT*: Set <objective></objective> (set to empty).
|
|
183
|
+
Then, in case <objective/> later becomes *not* empty,
|
|
184
|
+
you *MUST* once output the following output <template/>:
|
|
185
|
+
|
|
186
|
+
<template>
|
|
187
|
+
⧉ **ASE**: ✪ skill: **<skill-name/>**, ◎ objective: **<objective/>**
|
|
188
|
+
</template>
|
|
189
|
+
|
|
190
|
+
- *IMPORTANT*:
|
|
191
|
+
If `$1` (the first token of the skill arguments) is equal to `-h` or
|
|
192
|
+
`--help`, you *MUST* once output the following output <template/> and
|
|
193
|
+
then *IMMEDIATELY* *STOP* the further skill processing:
|
|
194
|
+
|
|
195
|
+
<template>
|
|
196
|
+
@${CLAUDE_SKILL_DIR}/help.md
|
|
197
|
+
</template>
|
|
198
|
+
|
|
199
|
+
Template Patterns
|
|
200
|
+
-----------------
|
|
201
|
+
|
|
202
|
+
- When `<ase-tpl-head/>` (no title attribute) should be expanded, use:
|
|
203
|
+
|
|
204
|
+
<template>
|
|
205
|
+
╭──────────────────────────────────────────────────────────────────────┈┈┈┈┈┈┈┈┈┈
|
|
206
|
+
</template>
|
|
207
|
+
|
|
208
|
+
- When `<ase-tpl-head title="<title/>"/>` should be expanded, use
|
|
209
|
+
(where <bar/> = "─" x (70 - 8 - length("<title/>")), i.e., <bar/> is
|
|
210
|
+
the "─" character repeated (70 - 16 - length("<title/>")) times):
|
|
211
|
+
|
|
212
|
+
<template>
|
|
213
|
+
╭────━━━━**(** `<title/>` **)**━━━━────<bar/>┈┈┈┈┈┈┈┈┈┈
|
|
214
|
+
</template>
|
|
215
|
+
|
|
216
|
+
- When `<ase-tpl-foot/>` (no title attribute) should be expanded, use:
|
|
217
|
+
|
|
218
|
+
<template>
|
|
219
|
+
╰──────────────────────────────────────────────────────────────────────┈┈┈┈┈┈┈┈┈┈
|
|
220
|
+
</template>
|
|
221
|
+
|
|
222
|
+
- When `<ase-tpl-foot title="<title/>"/>` should be expanded, use
|
|
223
|
+
(where <bar/> = "─" x (70 - 8 - length("<title/>")), i.e., <bar/> is
|
|
224
|
+
the "─" character repeated (70 - 16 - length("<title/>")) times):
|
|
225
|
+
|
|
226
|
+
<template>
|
|
227
|
+
╰────━━━━**(** `<title/>` **)**━━━━────<bar/>┈┈┈┈┈┈┈┈┈┈
|
|
228
|
+
</template>
|
|
229
|
+
|
|
230
|
+
- When `<ase-tpl-bullet-secondary/>` should be expanded, use:
|
|
231
|
+
|
|
232
|
+
<template>⚪</template>
|
|
233
|
+
|
|
234
|
+
- When `<ase-tpl-bullet-normal/>` should be expanded, use:
|
|
235
|
+
|
|
236
|
+
<template>🔵</template>
|
|
237
|
+
|
|
238
|
+
- When `<ase-tpl-bullet-signal/>` should be expanded, use:
|
|
239
|
+
|
|
240
|
+
<template>🟠</template>
|
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.62",
|
|
10
10
|
"license": "GPL-3.0-only",
|
|
11
11
|
"author": {
|
|
12
12
|
"name": "Dr. Ralf S. Engelschall",
|
|
@@ -357,7 +357,7 @@ interface quality, quality attributes, and architecture governance.
|
|
|
357
357
|
Report each unpaired finding with the following <template/>:
|
|
358
358
|
|
|
359
359
|
<template>
|
|
360
|
-
|
|
360
|
+
<ase-tpl-bullet-signal/> **PROBLEM** P<n/> (Severity: <severity/>, Aspect: <aspect-id/>): **<title/>**
|
|
361
361
|
|
|
362
362
|
<description/>
|
|
363
363
|
</template>
|
|
@@ -365,7 +365,7 @@ interface quality, quality attributes, and architecture governance.
|
|
|
365
365
|
Report each paired or clustered finding with the following <template/>:
|
|
366
366
|
|
|
367
367
|
<template>
|
|
368
|
-
|
|
368
|
+
<ase-tpl-bullet-normal/> **TRADEOFF** T<n/> (Severity: <severity/>): **<title/>**
|
|
369
369
|
|
|
370
370
|
- *Focal aspect*: <focal-aspect/> — <focal-state/>
|
|
371
371
|
- *In tension with*: <partner-list/>
|
|
@@ -39,7 +39,7 @@ for the technology stack to *provide* the *needed functionality*
|
|
|
39
39
|
<template/>:
|
|
40
40
|
|
|
41
41
|
<template>
|
|
42
|
-
|
|
42
|
+
<ase-tpl-bullet-normal/> **FUNCTIONALITY**: <functionality/>
|
|
43
43
|
</template>
|
|
44
44
|
</step>
|
|
45
45
|
|
|
@@ -73,7 +73,7 @@ for the technology stack to *provide* the *needed functionality*
|
|
|
73
73
|
following <template/>:
|
|
74
74
|
|
|
75
75
|
<template>
|
|
76
|
-
|
|
76
|
+
<ase-tpl-bullet-normal/> **TECHNOLOGY STACK**: <stack/>
|
|
77
77
|
</template>
|
|
78
78
|
</step>
|
|
79
79
|
|
|
@@ -157,7 +157,7 @@ for the technology stack to *provide* the *needed functionality*
|
|
|
157
157
|
anything else:
|
|
158
158
|
|
|
159
159
|
<template>
|
|
160
|
-
|
|
160
|
+
<ase-tpl-bullet-normal/> **COMPONENT HINTS**:
|
|
161
161
|
|
|
162
162
|
| ⚑ *Component* | ▣ *Package* | ⚖ *Hint* |
|
|
163
163
|
| :----------------- | :------------- | :-------- |
|
|
@@ -170,7 +170,7 @@ for the technology stack to *provide* the *needed functionality*
|
|
|
170
170
|
with just the following <template/>:
|
|
171
171
|
|
|
172
172
|
<template>
|
|
173
|
-
|
|
173
|
+
<ase-tpl-bullet-normal/> **COMPONENT RANKING**:
|
|
174
174
|
|
|
175
175
|
| ⚑ *Component* | ▣ *Package* | ❖ *Version* | ↓ *Downloads* | ⎈ *Stars* | ⏲ *Updated* | ☆ *Created* |
|
|
176
176
|
| :----------------- | :------------- | -----------: | -----------------: | -------------: | :--------------- | :----------- |
|
|
@@ -51,7 +51,7 @@ code, for problems in its *logic* and *semantics* and its related
|
|
|
51
51
|
points.
|
|
52
52
|
|
|
53
53
|
<template>
|
|
54
|
-
|
|
54
|
+
<ase-tpl-bullet-signal/> PROBLEM (Severity: **<severity/>**): **P<n/>**: **<title/>**
|
|
55
55
|
|
|
56
56
|
<description/>
|
|
57
57
|
</template>
|
|
@@ -199,7 +199,7 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
199
199
|
4. Indicate start of reporting by showing the following <template/>:
|
|
200
200
|
|
|
201
201
|
<template>
|
|
202
|
-
|
|
202
|
+
<ase-tpl-head title="APPROACHES"/>
|
|
203
203
|
</template>
|
|
204
204
|
|
|
205
205
|
5. Now report each approach with the following <template/>,
|
|
@@ -240,7 +240,7 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
240
240
|
6. Indicate end of reporting by showing the following <template/>:
|
|
241
241
|
|
|
242
242
|
<template>
|
|
243
|
-
|
|
243
|
+
<ase-tpl-foot title="APPROACHES"/>
|
|
244
244
|
</template>
|
|
245
245
|
|
|
246
246
|
5. **Choose Feature Crafting Approach**:
|
|
@@ -42,12 +42,12 @@ code and *explain* it in a *brief*, *standardized*, and *concise* way.
|
|
|
42
42
|
Output the result with the following <template/>:
|
|
43
43
|
|
|
44
44
|
<template>
|
|
45
|
-
|
|
45
|
+
<ase-tpl-bullet-normal/> **WHAT** (You should know what):
|
|
46
46
|
- [...]
|
|
47
47
|
- [...]
|
|
48
48
|
- [...]
|
|
49
49
|
|
|
50
|
-
|
|
50
|
+
<ase-tpl-bullet-normal/> **WHY** (You should know why):
|
|
51
51
|
- [...]
|
|
52
52
|
- [...]
|
|
53
53
|
- [...]
|
|
@@ -80,12 +80,12 @@ code and *explain* it in a *brief*, *standardized*, and *concise* way.
|
|
|
80
80
|
Output the result with the following <template/>:
|
|
81
81
|
|
|
82
82
|
<template>
|
|
83
|
-
|
|
83
|
+
<ase-tpl-bullet-secondary/> **ANALOGY** (You should imagine):
|
|
84
84
|
- [...]
|
|
85
85
|
- [...]
|
|
86
86
|
- [...]
|
|
87
87
|
|
|
88
|
-
|
|
88
|
+
<ase-tpl-bullet-secondary/> **DIAGRAM** (You should grasp):
|
|
89
89
|
[...]
|
|
90
90
|
</template>
|
|
91
91
|
</step>
|
|
@@ -103,12 +103,12 @@ code and *explain* it in a *brief*, *standardized*, and *concise* way.
|
|
|
103
103
|
Output the result with the following <template/>:
|
|
104
104
|
|
|
105
105
|
<template>
|
|
106
|
-
|
|
106
|
+
<ase-tpl-bullet-signal/> **CRUXES** (You should notice):
|
|
107
107
|
- [...]
|
|
108
108
|
- [...]
|
|
109
109
|
- [...]
|
|
110
110
|
|
|
111
|
-
|
|
111
|
+
<ase-tpl-bullet-signal/> **GOTCHAS** (You should not stumble over):
|
|
112
112
|
- [...]
|
|
113
113
|
- [...]
|
|
114
114
|
- [...]
|
|
@@ -35,7 +35,7 @@ Give *insights* into the project through the source code of $ARGUMENTS.
|
|
|
35
35
|
Display the results with the following <template/>:
|
|
36
36
|
|
|
37
37
|
<template>
|
|
38
|
-
|
|
38
|
+
<ase-tpl-bullet-normal/> **PROJECT ABSTRACT**:
|
|
39
39
|
|
|
40
40
|
<abstract/>
|
|
41
41
|
</template>
|
|
@@ -52,7 +52,7 @@ Give *insights* into the project through the source code of $ARGUMENTS.
|
|
|
52
52
|
...and then display the results with the following <template/>:
|
|
53
53
|
|
|
54
54
|
<template>
|
|
55
|
-
|
|
55
|
+
<ase-tpl-bullet-normal/> **PROJECT AUTHOR**:
|
|
56
56
|
|
|
57
57
|
<author/>
|
|
58
58
|
</template>
|
|
@@ -64,7 +64,7 @@ Give *insights* into the project through the source code of $ARGUMENTS.
|
|
|
64
64
|
Display the following <template/>:
|
|
65
65
|
|
|
66
66
|
<template>
|
|
67
|
-
|
|
67
|
+
<ase-tpl-bullet-normal/> **SOURCE CHURN**:
|
|
68
68
|
</template>
|
|
69
69
|
|
|
70
70
|
Then run the following command...
|
|
@@ -82,7 +82,7 @@ Give *insights* into the project through the source code of $ARGUMENTS.
|
|
|
82
82
|
Display the following <template/>:
|
|
83
83
|
|
|
84
84
|
<template>
|
|
85
|
-
|
|
85
|
+
<ase-tpl-bullet-normal/> **MODULE STRUCTURE**:
|
|
86
86
|
</template>
|
|
87
87
|
|
|
88
88
|
Find all modules (or OOP classes) and build a Mermaid specification
|
|
@@ -36,7 +36,7 @@ related to a set of code quality aspects.
|
|
|
36
36
|
First, use the following <template/> to give a hint on this step:
|
|
37
37
|
|
|
38
38
|
<template>
|
|
39
|
-
|
|
39
|
+
<ase-tpl-bullet-secondary/> **LINT INVESTIGATION**
|
|
40
40
|
</template>
|
|
41
41
|
|
|
42
42
|
Dispatch the investigation to a *sub-agent* via the `Agent`
|
|
@@ -70,10 +70,10 @@ related to a set of code quality aspects.
|
|
|
70
70
|
ordering `A01 - XXX`...`A20 - XXX`.
|
|
71
71
|
|
|
72
72
|
<template>
|
|
73
|
-
|
|
73
|
+
<ase-tpl-bullet-secondary/> **LINT SUMMARY**:
|
|
74
74
|
|
|
75
|
-
|
|
76
|
-
|
|
75
|
+
<ase-tpl-bullet-signal/> **AX - XXX**: N issues
|
|
76
|
+
<ase-tpl-bullet-signal/> **AX - XXX**: N issues
|
|
77
77
|
[...]
|
|
78
78
|
</template>
|
|
79
79
|
|
|
@@ -81,7 +81,7 @@ related to a set of code quality aspects.
|
|
|
81
81
|
output the summary instead:
|
|
82
82
|
|
|
83
83
|
<template>
|
|
84
|
-
|
|
84
|
+
<ase-tpl-bullet-secondary/> **LINT SUMMARY**:
|
|
85
85
|
|
|
86
86
|
*(no problems detected)*
|
|
87
87
|
</template>
|
|
@@ -162,7 +162,7 @@ related to a set of code quality aspects.
|
|
|
162
162
|
4. Report the problem with the following <template/>:
|
|
163
163
|
|
|
164
164
|
<template>
|
|
165
|
-
|
|
165
|
+
<ase-tpl-bullet-signal/> **<aspect/> PROBLEM** (`<severity/>`): <context/>
|
|
166
166
|
|
|
167
167
|
<description/>
|
|
168
168
|
|
|
@@ -173,7 +173,7 @@ related to a set of code quality aspects.
|
|
|
173
173
|
Report the solution with the following <template/>:
|
|
174
174
|
|
|
175
175
|
<template>
|
|
176
|
-
|
|
176
|
+
<ase-tpl-bullet-normal/> **<aspect/> SOLUTION**:
|
|
177
177
|
|
|
178
178
|
```diff
|
|
179
179
|
<diff/>
|
|
@@ -187,7 +187,7 @@ related to a set of code quality aspects.
|
|
|
187
187
|
Report the solution with the following <template/>:
|
|
188
188
|
|
|
189
189
|
<template>
|
|
190
|
-
|
|
190
|
+
<ase-tpl-bullet-normal/> **<aspect/> SOLUTION**:
|
|
191
191
|
|
|
192
192
|
*(corresponding change automatically applied)*
|
|
193
193
|
|
|
@@ -250,7 +250,7 @@ related to a set of code quality aspects.
|
|
|
250
250
|
following final <template/>:
|
|
251
251
|
|
|
252
252
|
<template>
|
|
253
|
-
|
|
253
|
+
<ase-tpl-bullet-secondary/> **LINT FINISHED**
|
|
254
254
|
</template>
|
|
255
255
|
|
|
256
256
|
</step>
|
|
@@ -188,7 +188,7 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
188
188
|
4. Indicate start of reporting by showing the following <template/>:
|
|
189
189
|
|
|
190
190
|
<template>
|
|
191
|
-
|
|
191
|
+
<ase-tpl-head title="APPROACHES"/>
|
|
192
192
|
</template>
|
|
193
193
|
|
|
194
194
|
5. Now report each approach with the following <template/>,
|
|
@@ -230,7 +230,7 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
230
230
|
6. Indicate end of reporting by showing the following <template/>:
|
|
231
231
|
|
|
232
232
|
<template>
|
|
233
|
-
|
|
233
|
+
<ase-tpl-foot title="APPROACHES"/>
|
|
234
234
|
</template>
|
|
235
235
|
|
|
236
236
|
5. **Choose Refactoring Approach**:
|
|
@@ -125,11 +125,11 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
125
125
|
Report those details with the following <template/>:
|
|
126
126
|
|
|
127
127
|
<template>
|
|
128
|
-
|
|
128
|
+
<ase-tpl-bullet-signal/> **PROBLEM CONTEXT**: *<context/>*
|
|
129
129
|
<affected-code-excerpt/>
|
|
130
130
|
<optional-diagram/>
|
|
131
131
|
|
|
132
|
-
|
|
132
|
+
<ase-tpl-bullet-signal/> **PROBLEM DETAILS**: *<summary/>*
|
|
133
133
|
● [...]
|
|
134
134
|
● [...]
|
|
135
135
|
● [...]
|
|
@@ -237,7 +237,7 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
237
237
|
4. Indicate start of reporting by showing the following <template/>:
|
|
238
238
|
|
|
239
239
|
<template>
|
|
240
|
-
|
|
240
|
+
<ase-tpl-head title="APPROACHES"/>
|
|
241
241
|
</template>
|
|
242
242
|
|
|
243
243
|
5. Now report each approach with the following <template/>,
|
|
@@ -279,7 +279,7 @@ permitted way to persist artifacts is via `ase_task_save(...)`.
|
|
|
279
279
|
6. Indicate end of reporting by showing the following <template/>:
|
|
280
280
|
|
|
281
281
|
<template>
|
|
282
|
-
|
|
282
|
+
<ase-tpl-foot title="APPROACHES"/>
|
|
283
283
|
</template>
|
|
284
284
|
|
|
285
285
|
5. **Choose Problem Resolution Approach**:
|