@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.
Files changed (34) hide show
  1. package/dst/ase-diagram.js +34 -41
  2. package/dst/ase-persona.js +2 -2
  3. package/dst/ase-statusline.js +2 -2
  4. package/package.json +1 -1
  5. package/plugin/.claude-plugin/plugin.json +1 -1
  6. package/plugin/.github/plugin/plugin.json +1 -1
  7. package/plugin/agents/ase-code-lint.md +6 -0
  8. package/plugin/etc/markdownlint.yaml +2 -0
  9. package/plugin/meta/ase-skill.md +80 -37
  10. package/plugin/package.json +1 -1
  11. package/plugin/skills/ase-arch-analyze/SKILL.md +2 -2
  12. package/plugin/skills/ase-arch-discover/SKILL.md +4 -4
  13. package/plugin/skills/ase-code-analyze/SKILL.md +1 -1
  14. package/plugin/skills/ase-code-craft/SKILL.md +2 -2
  15. package/plugin/skills/ase-code-explain/SKILL.md +6 -6
  16. package/plugin/skills/ase-code-insight/SKILL.md +4 -4
  17. package/plugin/skills/ase-code-lint/SKILL.md +9 -9
  18. package/plugin/skills/ase-code-refactor/SKILL.md +2 -2
  19. package/plugin/skills/ase-code-resolve/SKILL.md +4 -4
  20. package/plugin/skills/ase-docs-proofread/SKILL.md +5 -5
  21. package/plugin/skills/ase-docs-proofread/help.md +1 -1
  22. package/plugin/skills/ase-meta-brainstorm/SKILL.md +220 -0
  23. package/plugin/skills/ase-meta-brainstorm/help.md +51 -0
  24. package/plugin/skills/{ase-meta-changes → ase-meta-changelog}/SKILL.md +7 -7
  25. package/plugin/skills/{ase-meta-changes → ase-meta-changelog}/help.md +4 -4
  26. package/plugin/skills/ase-meta-commit/help.md +1 -1
  27. package/plugin/skills/ase-meta-diaboli/SKILL.md +3 -3
  28. package/plugin/skills/ase-meta-diff/SKILL.md +301 -0
  29. package/plugin/skills/ase-meta-diff/help.md +81 -0
  30. package/plugin/skills/ase-meta-evaluate/SKILL.md +9 -9
  31. package/plugin/skills/ase-meta-why/SKILL.md +3 -3
  32. package/plugin/skills/ase-task-edit/SKILL.md +2 -2
  33. package/plugin/skills/ase-task-grill/SKILL.md +2 -2
  34. package/plugin/skills/ase-task-view/SKILL.md +2 -2
@@ -36,7 +36,7 @@ Analyze documents for spelling, punctuation, or grammar errors
36
36
  First, use the following <template/> to give a hint on this step:
37
37
 
38
38
  <template>
39
- &#x26AA; **PROOFREADING INVESTIGATION**
39
+ <ase-tpl-bullet-secondary/> **PROOFREADING INVESTIGATION**
40
40
  </template>
41
41
 
42
42
  Dispatch the investigation to a *sub-agent* via the `Agent`
@@ -69,7 +69,7 @@ Analyze documents for spelling, punctuation, or grammar errors
69
69
  problems in <problems/>:
70
70
 
71
71
  <template>
72
- &#x26AA; **PROOFREADING SUMMARY**:
72
+ <ase-tpl-bullet-secondary/> **PROOFREADING SUMMARY**:
73
73
 
74
74
  | *Proofread Type* | *Proofread Result* |
75
75
  | ---------------- | ----------------------- |
@@ -109,7 +109,7 @@ Analyze documents for spelling, punctuation, or grammar errors
109
109
  2. Report the problem with the following <template/>:
110
110
 
111
111
  <template>
112
- &#x1F7E0; **<type/> PROBLEM**: `<file/>`:<line/>:
112
+ <ase-tpl-bullet-signal/> **<type/> PROBLEM**: `<file/>`:<line/>:
113
113
 
114
114
  <description/>
115
115
  </template>
@@ -121,7 +121,7 @@ Analyze documents for spelling, punctuation, or grammar errors
121
121
 
122
122
  <template>
123
123
 
124
- &#x1F535; **<type/> CORRECTION**:
124
+ <ase-tpl-bullet-normal/> **<type/> CORRECTION**:
125
125
 
126
126
  ```diff
127
127
  --- <file/> (original)
@@ -201,7 +201,7 @@ Analyze documents for spelling, punctuation, or grammar errors
201
201
  following final <template/>:
202
202
 
203
203
  <template>
204
- &#x26AA; **PROOFREAD FINISHED**
204
+ <ase-tpl-bullet-secondary/> **PROOFREAD FINISHED**
205
205
  </template>
206
206
 
207
207
  </step>
@@ -51,4 +51,4 @@ Proofread an entire documentation directory automatically:
51
51
 
52
52
  ## SEE ALSO
53
53
 
54
- `ase-code-lint`, `ase-meta-changes`.
54
+ `ase-code-lint`, `ase-meta-changelog`.
@@ -0,0 +1,220 @@
1
+ ---
2
+ name: ase-meta-brainstorm
3
+ argument-hint: "[--help|-h] <topic>"
4
+ description: >
5
+ Collaboratively brainstorm a topic by diverging on ideas, converging
6
+ through clustering and scoring, and distilling a shortlist with
7
+ a recommended direction. Use when the user wants to brainstorm,
8
+ explore ideas, ideate, or figure out *what* to build before *how* to
9
+ build it.
10
+ user-invocable: true
11
+ disable-model-invocation: false
12
+ effort: high
13
+ ---
14
+
15
+ @${CLAUDE_SKILL_DIR}/../../meta/ase-control.md
16
+ @${CLAUDE_SKILL_DIR}/../../meta/ase-skill.md
17
+ @${CLAUDE_SKILL_DIR}/../../meta/ase-dialog.md
18
+
19
+ <skill name="ase-meta-brainstorm">
20
+ Collaboratively Brainstorm a Topic
21
+ </skill>
22
+
23
+ <objective>
24
+ Collaboratively brainstorm the topic <topic>$ARGUMENTS</topic> by first
25
+ *diverging* into a broad space of candidate ideas, then *converging*
26
+ through clustering and scoring, and finally distilling a *shortlist*
27
+ with a single recommended direction.
28
+ </objective>
29
+
30
+ Guiding Tenets
31
+ --------------
32
+
33
+ Honor the following tenets throughout the brainstorming:
34
+
35
+ - **No Assumption of Simplicity**:
36
+ Every topic goes through the full process — a one-line config
37
+ change as much as a new subsystem — because the simplest-looking
38
+ topics often hide the most harmful assumptions.
39
+
40
+ - **Explore Intent First**:
41
+ Understand the *purpose*, *constraints*, and *success criteria*
42
+ behind the topic before generating ideas, because ideas that
43
+ optimize the wrong goal are worse than no ideas.
44
+
45
+ - **Diverge Before Converge**:
46
+ Generate many candidate ideas without judging them first, because
47
+ premature evaluation collapses the space before the good ideas have
48
+ a chance to surface.
49
+
50
+ - **One Question at a Time**:
51
+ Ask a single, preferably multiple-choice question per dialog round,
52
+ because a wall of open questions overwhelms and yields shallow
53
+ answers.
54
+
55
+ - **YAGNI Ruthlessly**:
56
+ Actively prune ideas that serve speculative future needs rather
57
+ than the stated purpose, because unbuilt features still cost
58
+ clarity now.
59
+
60
+ - **Ground in Reality**:
61
+ Cross-check ideas against the existing code base, documented
62
+ context, and your world knowledge, because an idea that contradicts
63
+ what already exists is a defect, not an option.
64
+
65
+ - **Incremental Validation**:
66
+ Seek the user's confirmation at each phase boundary before
67
+ advancing, because converging on a misunderstanding wastes the
68
+ entire downstream effort.
69
+
70
+ <flow>
71
+
72
+ 1. <step id="STEP 1: Restate Topic">
73
+
74
+ Restate the topic to be brainstormed by output the following <template/>:
75
+
76
+ <template>
77
+ <ase-tpl-bullet-secondary/> **TOPIC**: <topic/>
78
+ </template>
79
+
80
+ </step>
81
+
82
+ 2. <step id="STEP 2: Clarify Intent">
83
+
84
+ Before generating any ideas, *explore the project context* (review
85
+ relevant existing files, documentation, and recent changes) and
86
+ determine the <m/> *essential unknowns* about the topic — the
87
+ purpose, constraints, scope boundaries, and success criteria that
88
+ must be pinned down for the brainstorming to be reasonably grounded.
89
+
90
+ For each essential unknown, derive a short 1-3 word facet <facet-M/>
91
+ and a corresponding question <question-M/> whose answer materially
92
+ changes which ideas make sense at all.
93
+
94
+ 1. For each <question-M/> in the iteration cycle <M/> (<M/>=1...<m/>):
95
+
96
+ 1. Output the following <template/>:
97
+
98
+ <template>
99
+ <ase-tpl-bullet-signal/> FACET <M/>/<m/>: **<facet-M/>**, QUESTION: **<question-M/>**
100
+ </template>
101
+
102
+ 2. Determine *up to 4* grounded candidate answers
103
+ <answer-M-K/> (K={1,2,3,4}) from the code base, the documented
104
+ context, and your world knowledge.
105
+
106
+ 3. Use an interactive user dialog with header <facet-M/> and
107
+ question <question-M/>, and let the user select the
108
+ <answer-M/> out of the candidate answers <answer-M-K/> (just
109
+ leave out all answers in case you have determined less than
110
+ 4 potential answers)
111
+
112
+ <expand name="user-dialog">
113
+ <facet-M/>: <question-M/>
114
+ <answer-M-1/>: (first grounded candidate answer)
115
+ <answer-M-2/>: (second grounded candidate answer)
116
+ <answer-M-3/>: (third grounded candidate answer)
117
+ <answer-M-4/>: (forth grounded candidate answer)
118
+ </expand>
119
+
120
+ 4. Output the following <template/>:
121
+
122
+ <template>
123
+ <ase-tpl-bullet-normal/> FACET <M/>/<m/>: **<facet-M/>**, ANSWER: **<answer-M/>**
124
+ </template>
125
+
126
+ 2. If at any point <result/> is `CANCEL`:
127
+ Only output the following <template/> and then immediately *STOP*
128
+ processing the entire current skill:
129
+
130
+ <template>
131
+ ⧉ **ASE**: ✪ skill: **ase-meta-brainstorm**, ▶ status: **brainstorm cancelled**
132
+ </template>
133
+
134
+ </step>
135
+
136
+ 3. <step id="STEP 3: Diverge Idea Space">
137
+
138
+ Generate a *broad* space of candidate ideas that address the
139
+ <topic/> within the constraints established by the answers
140
+ <answer-M/>.
141
+
142
+ Deliberately pursue *diverse angles* — e.g. the minimal/MVP-first
143
+ angle, the robustness/risk-first angle, the user-experience-first
144
+ angle, the reuse-existing-machinery angle, the coolness angle, and
145
+ the unconventional/wildcard angle — because variety in origin yields
146
+ variety in outcome.
147
+
148
+ Do still *not* judge, rank, or prune ideas in this step. Generate
149
+ ideas until you either reach at least 12 distinct candidate ideas or
150
+ have clearly exhausted the meaningfully distinct space.
151
+
152
+ Store each candidate idea in <idea-N/> with the format
153
+ `**<idea-name-N/>**: <idea-statement-N/>` (where <idea-name-N/> is a
154
+ short 1-4 word summary and <idea-statement-N/> is a single-sentence
155
+ statement of not more than 40 words), and output the following
156
+ <template/>:
157
+
158
+ <template>
159
+ <ase-tpl-bullet-normal/> **IDEA <N/>**: <idea-N/>
160
+ </template>
161
+
162
+ </step>
163
+
164
+ 4. <step id="STEP 4: Converge Idea Space">
165
+
166
+ Converge the candidate ideas <idea-N/> into a smaller, structured
167
+ sets and finally into a recommendation.
168
+
169
+ 1. *Cluster*: group the candidate ideas into <c/> coherent clusters
170
+ <cluster-C/> (a short 1-4 word label, C=1...</c>), collapsing
171
+ near-duplicates and discarding ideas pruned by *You Aren't Gonna
172
+ Need It (YAGNI)* (speculative, out-of-scope, or contradicting
173
+ documented context).
174
+
175
+ For each cluster and its contained retained ideas, output the
176
+ following <template/> (<cluster-summary-C/> is a single-sentence
177
+ statement of not more than 40 words):
178
+
179
+ <template>
180
+ <ase-tpl-bullet-secondary/> **IDEA CLUSTER <C/>/<c/>**: <cluster-C/> — <cluster-summary-C/>,
181
+ **IDEAS**: <N/>, <M/>[, ...]
182
+ </template>
183
+
184
+ 2. *Score*: for each retained idea <idea-N/> in the clusters, rank its *fit* against the
185
+ purpose and constraints on a Likert scale of 0 (poor) to 10
186
+ (excellent), considering *value*, *uniqueness*, *risk*, and
187
+ *alignment with the existing code base*. Keep only ideas in the
188
+ clusters with a rank of at least 7.
189
+
190
+ 3. From the scored ideas <idea-N/>, distill a *shortlist* of the top
191
+ 3-4 options, sorted by rank from highest to lowest.
192
+
193
+ For this, draw the shortlist from *distinct* clusters <cluster-C/>
194
+ wherever possible — prefer a diverse shortlist spanning different
195
+ clusters over several high-ranked variations of the same cluster,
196
+ unless one cluster clearly dominates on rank.
197
+
198
+ Store each distilled option in <option-N/> with the format
199
+ `**<option-name-N/>** (rank: <option-rank-N/>/10, cluster:
200
+ <option-cluster-N/>): <option-statement-N/>` (where the statement is
201
+ a single sentence of not more than 40 words capturing the direction
202
+ and its primary trade-off), and output the following <template/>:
203
+
204
+ <template>
205
+ <ase-tpl-bullet-normal/> **DISTILLED IDEA <N/>**: <option-N/>
206
+ </template>
207
+
208
+ 4. Finally, derive a single *recommended idea* — the highest-ranked
209
+ option, or a principled synthesis of the option shortlist that preserves
210
+ what is strongest in each — store its one-sentence rationale (not
211
+ more than 40 words) in <recommendation/>, and output the following
212
+ <template/>:
213
+
214
+ <template>
215
+ <ase-tpl-bullet-signal/> **RECOMMENDED IDEA**: <recommendation/>
216
+ </template>
217
+
218
+ </step>
219
+
220
+ </flow>
@@ -0,0 +1,51 @@
1
+
2
+ ## NAME
3
+
4
+ `ase-meta-brainstorm` - Collaboratively Brainstorm a Topic
5
+
6
+ ## SYNOPSIS
7
+
8
+ `ase-meta-brainstorm`
9
+ [`--help`|`-h`]
10
+ *topic*
11
+
12
+ ## DESCRIPTION
13
+
14
+ The `ase-meta-brainstorm` skill guides a collaborative ideation
15
+ session on a *topic* *before* any implementation begins. It first
16
+ *clarifies intent* by exploring the project context and interviewing
17
+ the user — one grounded, multiple-choice question at a time — about
18
+ purpose, constraints, scope, and success criteria. It then *diverges*
19
+ into a broad space of candidate ideas pursued from deliberately diverse
20
+ angles (MVP-first, risk-first, UX-first, reuse-first, and wildcard),
21
+ without judging them.
22
+
23
+ Next it *converges* by clustering the ideas into coherent themes,
24
+ pruning speculative or out-of-scope ones via *YAGNI*, and scoring the
25
+ survivors on a 0-10 fit scale (keeping only those ranked 7 or higher).
26
+ Finally it distills a *shortlist* of the top 3-4 directions — drawn from
27
+ distinct clusters wherever possible — and derives a single
28
+ *RECOMMENDATION*, being either the highest-ranked option or a principled
29
+ synthesis of the shortlist.
30
+
31
+ On completion the skill offers a *next step*: stop, or hand the
32
+ recommended direction off to the `ase-task-edit`, `ase-code-craft`, or
33
+ `ase-task-preflight` skills.
34
+
35
+ ## ARGUMENTS
36
+
37
+ *topic*:
38
+ The subject to brainstorm — a feature, component, behavior, or
39
+ design question to explore *what* to build before *how*.
40
+
41
+ ## EXAMPLES
42
+
43
+ Brainstorm an approach for a new feature:
44
+
45
+ ```text
46
+ ❯ /ase-meta-brainstorm an offline-first sync layer for the mobile app
47
+ ```
48
+
49
+ ## SEE ALSO
50
+
51
+ `ase-meta-evaluate`, `ase-meta-quorum`, `ase-meta-diaboli`
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: ase-meta-changes
2
+ name: ase-meta-changelog
3
3
  argument-hint: "[--help|-h]"
4
4
  description: >
5
5
  Update changes entries in CHANGELOG.md files
@@ -17,7 +17,7 @@ allowed-tools:
17
17
  @${CLAUDE_SKILL_DIR}/../../meta/ase-control.md
18
18
  @${CLAUDE_SKILL_DIR}/../../meta/ase-skill.md
19
19
 
20
- <skill name="ase-meta-changes">
20
+ <skill name="ase-meta-changelog">
21
21
  Update ChangeLog Entries
22
22
  </skill>
23
23
 
@@ -63,7 +63,7 @@ Processing
63
63
  following <template/>:
64
64
 
65
65
  <template>
66
- &#x1F535; **CHANGELOG FILE:** `<filename/>`
66
+ <ase-tpl-bullet-normal/> **CHANGELOG FILE:** `<filename/>`
67
67
  </template>
68
68
 
69
69
  </step>
@@ -74,7 +74,7 @@ Processing
74
74
  operation with an output based on the following <template/>:
75
75
 
76
76
  <template>
77
- &#x1F535; **DETERMINE ARTIFACT CHANGES:**
77
+ <ase-tpl-bullet-normal/> **DETERMINE ARTIFACT CHANGES:**
78
78
  </template>
79
79
 
80
80
  To update to entries of the most recent *ChangeLog* section, consult
@@ -102,7 +102,7 @@ Processing
102
102
  operation with an output based on the following <template/>:
103
103
 
104
104
  <template>
105
- &#x1F535; **COMPLETE ENTRIES:**
105
+ <ase-tpl-bullet-normal/> **COMPLETE ENTRIES:**
106
106
  </template>
107
107
 
108
108
  Without immediately modifying the `CHANGELOG.md` file, *complete*
@@ -127,7 +127,7 @@ Processing
127
127
  operation with an output based on the following <template/>:
128
128
 
129
129
  <template>
130
- &#x1F535; **CONSOLIDATE ENTRIES:**
130
+ <ase-tpl-bullet-normal/> **CONSOLIDATE ENTRIES:**
131
131
  </template>
132
132
 
133
133
  Without immediately modifying the `CHANGELOG.md` file, *consolidate*
@@ -147,7 +147,7 @@ Processing
147
147
  operation with an output based on the following <template/>:
148
148
 
149
149
  <template>
150
- &#x1F7E0; **UPDATING CHANGELOG:**
150
+ <ase-tpl-bullet-signal/> **UPDATING CHANGELOG:**
151
151
  </template>
152
152
 
153
153
  Finally, *update* the `CHANGELOG.md` file with the completed,
@@ -1,16 +1,16 @@
1
1
 
2
2
  ## NAME
3
3
 
4
- `ase-meta-changes` - Update ChangeLog Entries
4
+ `ase-meta-changelog` - Update ChangeLog Entries
5
5
 
6
6
  ## SYNOPSIS
7
7
 
8
- `ase-meta-changes`
8
+ `ase-meta-changelog`
9
9
  [`--help`|`-h`]
10
10
 
11
11
  ## DESCRIPTION
12
12
 
13
- The `ase-meta-changes` skill helps to *complete*, *consolidate*, and
13
+ The `ase-meta-changelog` skill helps to *complete*, *consolidate*, and
14
14
  *sort* the entries of the most recent section of a `CHANGELOG.md`
15
15
  file, based on the underlying *Git* commits and the currently staged
16
16
  changes in the Git *index*.
@@ -25,7 +25,7 @@ date in the section header is also updated to the current date.
25
25
  Update the most recent ChangeLog section:
26
26
 
27
27
  ```text
28
- ❯ /ase-meta-changes
28
+ ❯ /ase-meta-changelog
29
29
  ```
30
30
 
31
31
  ## SEE ALSO
@@ -28,4 +28,4 @@ Craft a commit message for the currently staged changes:
28
28
 
29
29
  ## SEE ALSO
30
30
 
31
- `ase-meta-changes`.
31
+ `ase-meta-changelog`.
@@ -27,7 +27,7 @@ effort: xhigh
27
27
  Output the thesis with the following <template/>:
28
28
 
29
29
  <template>
30
- &#x26AA; **THESIS**: <thesis/>
30
+ <ase-tpl-bullet-secondary/> **THESIS**: <thesis/>
31
31
  </template>
32
32
 
33
33
  2. **Determine Anti-Thesis**:
@@ -117,7 +117,7 @@ effort: xhigh
117
117
  <template/>:
118
118
 
119
119
  <template>
120
- &#x1F7E0; **ANTITHESIS**: <antithesis-N/>
120
+ <ase-tpl-bullet-signal/> **ANTITHESIS**: <antithesis-N/>
121
121
  </template>
122
122
 
123
123
  3. **Dialectical Reasoning**:
@@ -147,6 +147,6 @@ effort: xhigh
147
147
  in <synthesis/>, and then finally output the following <template/>:
148
148
 
149
149
  <template>
150
- &#x1F535; **SYNTHESIS**: <synthesis/>
150
+ <ase-tpl-bullet-normal/> **SYNTHESIS**: <synthesis/>
151
151
  </template>
152
152