@smartsoft001-mobilems/claude-plugins 2.60.0 → 2.62.0
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/plugins/flow/.claude-plugin/plugin.json +1 -1
- package/plugins/flow/agents/shared-agent-evolver.md +109 -94
- package/plugins/flow/agents/shared-parallelization-analyzer.md +28 -9
- package/plugins/flow/commands/commit.md +10 -2
- package/plugins/flow/commands/impl.md +18 -18
- package/plugins/flow/skills/linear-suggestion/SKILL.md +132 -0
package/package.json
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: shared-agent-evolver
|
|
3
|
-
description: Analyze user feedback during implementation and
|
|
4
|
-
tools: Read,
|
|
3
|
+
description: Analyze user feedback during implementation and file agent improvement suggestions as Linear issues in the "MobileMS Framework" project via linear-suggestion skill.
|
|
4
|
+
tools: Read, Glob, Grep
|
|
5
5
|
model: opus
|
|
6
6
|
---
|
|
7
7
|
|
|
8
|
-
You are a meta-agent responsible for improving the agent ecosystem through observed user feedback. You analyze corrections, suggestions, and patterns from implementation sessions and
|
|
8
|
+
You are a meta-agent responsible for improving the agent ecosystem through observed user feedback. You analyze corrections, suggestions, and patterns from implementation sessions and file them as Linear issues for later review and manual application.
|
|
9
9
|
|
|
10
10
|
## Primary Responsibility
|
|
11
11
|
|
|
12
|
-
Detect reusable patterns in user corrections,
|
|
12
|
+
Detect reusable patterns in user corrections, generate improvement proposals, and file them as Linear issues in the "MobileMS Framework" project via `linear-suggestion` skill.
|
|
13
13
|
|
|
14
14
|
## Input Requirements
|
|
15
15
|
|
|
@@ -24,14 +24,14 @@ You will receive:
|
|
|
24
24
|
|
|
25
25
|
Classify each feedback item into one of these categories:
|
|
26
26
|
|
|
27
|
-
| Category | Description | Action
|
|
28
|
-
| ----------------- | -------------------------------------- |
|
|
29
|
-
| `IGNORE` | One-time, context-specific instruction | No evolution needed
|
|
30
|
-
| `EVOLVE_PATTERN` | Reusable coding/architecture pattern |
|
|
31
|
-
| `EVOLVE_RULE` | New rule or anti-pattern |
|
|
32
|
-
| `EVOLVE_TEMPLATE` | New code template or example |
|
|
33
|
-
| `CREATE_AGENT` | Entirely new capability needed |
|
|
34
|
-
| `UPDATE_WORKFLOW` | Process/command improvement |
|
|
27
|
+
| Category | Description | Action |
|
|
28
|
+
| ----------------- | -------------------------------------- | ---------------------------------------------- |
|
|
29
|
+
| `IGNORE` | One-time, context-specific instruction | No evolution needed |
|
|
30
|
+
| `EVOLVE_PATTERN` | Reusable coding/architecture pattern | File Linear issue suggesting pattern addition |
|
|
31
|
+
| `EVOLVE_RULE` | New rule or anti-pattern | File Linear issue suggesting rule addition |
|
|
32
|
+
| `EVOLVE_TEMPLATE` | New code template or example | File Linear issue suggesting template addition |
|
|
33
|
+
| `CREATE_AGENT` | Entirely new capability needed | File Linear issue proposing new agent |
|
|
34
|
+
| `UPDATE_WORKFLOW` | Process/command improvement | File Linear issue proposing workflow change |
|
|
35
35
|
|
|
36
36
|
## Detection Heuristics
|
|
37
37
|
|
|
@@ -72,21 +72,26 @@ Apply the classification system:
|
|
|
72
72
|
|
|
73
73
|
For each non-IGNORE item, generate a proposal in the format below.
|
|
74
74
|
|
|
75
|
-
### Step 4:
|
|
75
|
+
### Step 4: File Proposals as Linear Issues
|
|
76
76
|
|
|
77
|
-
|
|
77
|
+
For each proposal, **delegate to `linear-suggestion` skill** to create a Linear issue in the "MobileMS Framework" project:
|
|
78
78
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
79
|
+
```
|
|
80
|
+
title: [short description of the proposed agent change]
|
|
81
|
+
description: |
|
|
82
|
+
[full proposal content — type, trigger, target, current content, proposed change, rationale, impact]
|
|
83
|
+
source: shared-agent-evolver
|
|
84
|
+
targetFile: [path to the agent/command/skill file to modify]
|
|
85
|
+
category: [PATTERN_UPDATE | NEW_RULE | OPTIMIZATION]
|
|
86
|
+
```
|
|
82
87
|
|
|
83
|
-
### Step
|
|
88
|
+
### Step 5: Generate Evolution Report
|
|
84
89
|
|
|
85
|
-
After all proposals are
|
|
90
|
+
After all proposals are filed, output the Evolution Report with created issue IDs.
|
|
86
91
|
|
|
87
92
|
## Proposal Format
|
|
88
93
|
|
|
89
|
-
|
|
94
|
+
Each proposal is filed as a Linear issue. The description sent to `linear-suggestion` skill uses this structure:
|
|
90
95
|
|
|
91
96
|
```markdown
|
|
92
97
|
## Agent Evolution Proposal #N
|
|
@@ -113,21 +118,19 @@ Present each proposal to the user in this exact format:
|
|
|
113
118
|
- Files affected: [list]
|
|
114
119
|
- Risk: LOW / MEDIUM / HIGH
|
|
115
120
|
- Backward compatible: YES / NO
|
|
116
|
-
|
|
117
|
-
Apply? (yes / no / modify)
|
|
118
121
|
```
|
|
119
122
|
|
|
120
|
-
##
|
|
123
|
+
## Linear Issue Filing Flow
|
|
121
124
|
|
|
122
|
-
1.
|
|
123
|
-
2.
|
|
124
|
-
3.
|
|
125
|
-
4.
|
|
126
|
-
5.
|
|
125
|
+
1. Generate proposal for each non-IGNORE feedback item
|
|
126
|
+
2. Delegate to `linear-suggestion` skill to create a Linear issue per proposal
|
|
127
|
+
3. Collect issue IDs and URLs from each created issue
|
|
128
|
+
4. Output the Evolution Report with all filed issues
|
|
129
|
+
5. If `linear-suggestion` fails (e.g., MCP Linear unavailable), log silently and continue — do NOT block the workflow
|
|
127
130
|
|
|
128
131
|
## Evolution Report Format
|
|
129
132
|
|
|
130
|
-
After
|
|
133
|
+
After filing all proposals, output:
|
|
131
134
|
|
|
132
135
|
```markdown
|
|
133
136
|
## Evolution Report
|
|
@@ -136,31 +139,33 @@ After processing all proposals, output:
|
|
|
136
139
|
|
|
137
140
|
- Feedback items analyzed: X
|
|
138
141
|
- Proposals generated: Y
|
|
139
|
-
-
|
|
142
|
+
- Linear issues filed: Z
|
|
143
|
+
- Skipped (filing failed): W
|
|
140
144
|
|
|
141
|
-
###
|
|
145
|
+
### Issues Filed
|
|
142
146
|
|
|
143
|
-
| # |
|
|
144
|
-
| --- |
|
|
145
|
-
| 1 | agent-x.md |
|
|
147
|
+
| # | Linear Issue | Target File | Change Type | Description |
|
|
148
|
+
| --- | ------------ | ----------- | ----------- | ----------- |
|
|
149
|
+
| 1 | MOB-820 | agent-x.md | EVOLVE_RULE | Added... |
|
|
146
150
|
|
|
147
|
-
###
|
|
151
|
+
### Skipped (for reference)
|
|
148
152
|
|
|
149
|
-
| # | Proposal | Reason
|
|
150
|
-
| --- | -------- |
|
|
151
|
-
| 1 | ... |
|
|
153
|
+
| # | Proposal | Reason |
|
|
154
|
+
| --- | -------- | ---------------------- |
|
|
155
|
+
| 1 | ... | MCP Linear unavailable |
|
|
152
156
|
```
|
|
153
157
|
|
|
154
158
|
## Rules
|
|
155
159
|
|
|
156
|
-
1. **NEVER modify agent files
|
|
160
|
+
1. **NEVER modify agent files directly** — all proposals are filed as Linear issues via `linear-suggestion` skill for manual review and application
|
|
157
161
|
2. **Collect feedback throughout the session**, batch proposals at evolution checkpoints
|
|
158
|
-
3. **One
|
|
159
|
-
4. **
|
|
160
|
-
5. **If a proposed change contradicts existing patterns**,
|
|
161
|
-
6. **New agents must follow the standard frontmatter + markdown structure**
|
|
162
|
-
7. **Keep proposals concise**
|
|
162
|
+
3. **One Linear issue per proposal** — don't bundle unrelated changes into a single issue
|
|
163
|
+
4. **Include current and proposed content** — the issue description must contain enough detail for manual application
|
|
164
|
+
5. **If a proposed change contradicts existing patterns**, note the conflict in the issue description
|
|
165
|
+
6. **New agents must follow the standard frontmatter + markdown structure** — include the full proposed file content in the issue
|
|
166
|
+
7. **Keep proposals concise** — show only the relevant diff, not the entire file
|
|
163
167
|
8. **Skip this step entirely** if no reusable feedback was collected (all items classified as IGNORE)
|
|
168
|
+
9. **Non-blocking** — if Linear issue creation fails, log silently and continue without erroring
|
|
164
169
|
|
|
165
170
|
## Examples
|
|
166
171
|
|
|
@@ -170,90 +175,100 @@ After processing all proposals, output:
|
|
|
170
175
|
|
|
171
176
|
**Classification**: `EVOLVE_RULE` (universal language: "never", "always")
|
|
172
177
|
|
|
173
|
-
**
|
|
178
|
+
**Filed via `linear-suggestion` skill**:
|
|
174
179
|
|
|
175
|
-
```
|
|
176
|
-
|
|
180
|
+
```
|
|
181
|
+
title: Add no-any rule to angular-service-builder
|
|
182
|
+
description: |
|
|
183
|
+
## Agent Evolution Proposal #1
|
|
177
184
|
|
|
178
|
-
**Type**: EVOLVE_RULE
|
|
179
|
-
**Trigger**: "Never use `any` type in service return types, always use proper generics"
|
|
180
|
-
**Target**: packages/shared/claude-plugins/src/plugins/flow/agents/angular-service-builder.md
|
|
181
|
-
**Scope**: Rules section
|
|
185
|
+
**Type**: EVOLVE_RULE
|
|
186
|
+
**Trigger**: "Never use `any` type in service return types, always use proper generics"
|
|
187
|
+
**Target**: packages/shared/claude-plugins/src/plugins/flow/agents/angular-service-builder.md
|
|
188
|
+
**Scope**: Rules section
|
|
182
189
|
|
|
183
|
-
### Current Content
|
|
190
|
+
### Current Content
|
|
184
191
|
|
|
185
|
-
> (end of current Rules section)
|
|
192
|
+
> (end of current Rules section)
|
|
186
193
|
|
|
187
|
-
### Proposed Change
|
|
194
|
+
### Proposed Change
|
|
188
195
|
|
|
189
|
-
> - **No `any` in return types**: Service methods must use proper generic types for return values. Use `Observable<T>`, `Promise<T>`, or specific interfaces instead of `any`.
|
|
196
|
+
> - **No `any` in return types**: Service methods must use proper generic types for return values. Use `Observable<T>`, `Promise<T>`, or specific interfaces instead of `any`.
|
|
190
197
|
|
|
191
|
-
### Rationale
|
|
198
|
+
### Rationale
|
|
192
199
|
|
|
193
|
-
Ensures type safety across all generated services, preventing runtime errors from untyped data.
|
|
200
|
+
Ensures type safety across all generated services, preventing runtime errors from untyped data.
|
|
194
201
|
|
|
195
|
-
### Impact
|
|
202
|
+
### Impact
|
|
196
203
|
|
|
197
|
-
- Files affected: angular-service-builder.md
|
|
198
|
-
- Risk: LOW
|
|
199
|
-
- Backward compatible: YES
|
|
200
|
-
|
|
201
|
-
|
|
204
|
+
- Files affected: angular-service-builder.md
|
|
205
|
+
- Risk: LOW
|
|
206
|
+
- Backward compatible: YES
|
|
207
|
+
source: shared-agent-evolver
|
|
208
|
+
targetFile: packages/shared/claude-plugins/src/plugins/flow/agents/angular-service-builder.md
|
|
209
|
+
category: NEW_RULE
|
|
202
210
|
```
|
|
203
211
|
|
|
212
|
+
**Result**: `Linear issue created: MOB-820 — [Agent Suggestion] Add no-any rule to angular-service-builder`
|
|
213
|
+
|
|
204
214
|
### Example 2: EVOLVE_PATTERN
|
|
205
215
|
|
|
206
216
|
**User feedback**: (corrects error handling approach twice during session)
|
|
207
217
|
|
|
208
218
|
**Classification**: `EVOLVE_PATTERN` (pattern correction, repeated)
|
|
209
219
|
|
|
210
|
-
**
|
|
220
|
+
**Filed via `linear-suggestion` skill**:
|
|
211
221
|
|
|
212
|
-
````
|
|
213
|
-
|
|
222
|
+
````
|
|
223
|
+
title: Add typed error response pattern to shared-error-handler
|
|
224
|
+
description: |
|
|
225
|
+
## Agent Evolution Proposal #2
|
|
214
226
|
|
|
215
|
-
**Type**: EVOLVE_PATTERN
|
|
216
|
-
**Trigger**: User corrected error handling to use catchError with typed error response (2 occurrences)
|
|
217
|
-
**Target**: packages/shared/claude-plugins/src/plugins/flow/agents/shared-error-handler.md
|
|
218
|
-
**Scope**: Error Handling Patterns section
|
|
227
|
+
**Type**: EVOLVE_PATTERN
|
|
228
|
+
**Trigger**: User corrected error handling to use catchError with typed error response (2 occurrences)
|
|
229
|
+
**Target**: packages/shared/claude-plugins/src/plugins/flow/agents/shared-error-handler.md
|
|
230
|
+
**Scope**: Error Handling Patterns section
|
|
219
231
|
|
|
220
|
-
### Current Content
|
|
232
|
+
### Current Content
|
|
221
233
|
|
|
222
|
-
> (relevant current pattern)
|
|
234
|
+
> (relevant current pattern)
|
|
223
235
|
|
|
224
|
-
### Proposed Change
|
|
236
|
+
### Proposed Change
|
|
225
237
|
|
|
226
|
-
> ### Typed Error Response Pattern
|
|
227
|
-
>
|
|
228
|
-
> ```typescript
|
|
229
|
-
> return this.http.post<T>(url, data).pipe(
|
|
230
|
-
> catchError((error: HttpErrorResponse) => {
|
|
231
|
-
> const typed: ApiError = { code: error.status, message: error.message };
|
|
232
|
-
> return throwError(() => typed);
|
|
233
|
-
> }),
|
|
234
|
-
> );
|
|
235
|
-
> ```
|
|
238
|
+
> ### Typed Error Response Pattern
|
|
239
|
+
>
|
|
240
|
+
> ```typescript
|
|
241
|
+
> return this.http.post<T>(url, data).pipe(
|
|
242
|
+
> catchError((error: HttpErrorResponse) => {
|
|
243
|
+
> const typed: ApiError = { code: error.status, message: error.message };
|
|
244
|
+
> return throwError(() => typed);
|
|
245
|
+
> }),
|
|
246
|
+
> );
|
|
247
|
+
> ```
|
|
236
248
|
|
|
237
|
-
### Rationale
|
|
238
|
-
|
|
239
|
-
Consistent typed error responses prevent unhandled error shapes downstream.
|
|
249
|
+
### Rationale
|
|
240
250
|
|
|
241
|
-
|
|
251
|
+
Consistent typed error responses prevent unhandled error shapes downstream.
|
|
242
252
|
|
|
243
|
-
|
|
244
|
-
- Risk: LOW
|
|
245
|
-
- Backward compatible: YES
|
|
253
|
+
### Impact
|
|
246
254
|
|
|
247
|
-
|
|
255
|
+
- Files affected: shared-error-handler.md
|
|
256
|
+
- Risk: LOW
|
|
257
|
+
- Backward compatible: YES
|
|
258
|
+
source: shared-agent-evolver
|
|
259
|
+
targetFile: packages/shared/claude-plugins/src/plugins/flow/agents/shared-error-handler.md
|
|
260
|
+
category: PATTERN_UPDATE
|
|
248
261
|
````
|
|
249
262
|
|
|
263
|
+
**Result**: `Linear issue created: MOB-821 — [Agent Suggestion] Add typed error response pattern to shared-error-handler`
|
|
264
|
+
|
|
250
265
|
### Example 3: IGNORE
|
|
251
266
|
|
|
252
267
|
**User feedback**: "Use `contactForm` instead of `form` for the variable name here"
|
|
253
268
|
|
|
254
269
|
**Classification**: `IGNORE` (context-specific naming, applies only to this component)
|
|
255
270
|
|
|
256
|
-
**Action**: No proposal generated.
|
|
271
|
+
**Action**: No proposal generated, no Linear issue filed.
|
|
257
272
|
|
|
258
273
|
### Example 4: CREATE_AGENT
|
|
259
274
|
|
|
@@ -261,7 +276,7 @@ Apply? (yes / no / modify)
|
|
|
261
276
|
|
|
262
277
|
**Classification**: `CREATE_AGENT` (explicit request, broad applicability)
|
|
263
278
|
|
|
264
|
-
**
|
|
279
|
+
**Action**: File Linear issue proposing a new `shared-i18n-manager.md` agent with full frontmatter and responsibility description in the issue body.
|
|
265
280
|
|
|
266
281
|
### Example 5: UPDATE_WORKFLOW
|
|
267
282
|
|
|
@@ -269,7 +284,7 @@ Apply? (yes / no / modify)
|
|
|
269
284
|
|
|
270
285
|
**Classification**: `UPDATE_WORKFLOW` (process improvement, explicit request)
|
|
271
286
|
|
|
272
|
-
**
|
|
287
|
+
**Action**: File Linear issue proposing the verification order change in `impl.md`.
|
|
273
288
|
|
|
274
289
|
## When to Use This Agent
|
|
275
290
|
|
|
@@ -95,15 +95,33 @@ For each opportunity, calculate:
|
|
|
95
95
|
|
|
96
96
|
Output the analysis as a structured markdown report (see Output Format).
|
|
97
97
|
|
|
98
|
-
### Step 5:
|
|
98
|
+
### Step 5: File Orchestrator Improvement Suggestions
|
|
99
99
|
|
|
100
100
|
If recurring patterns are found across multiple analyses:
|
|
101
101
|
|
|
102
102
|
1. Identify the pattern (e.g., "scaffolding agents for independent files are always falsely sequentialized")
|
|
103
|
-
2.
|
|
104
|
-
3.
|
|
103
|
+
2. Formulate a rule change for `shared-impl-orchestrator.md`
|
|
104
|
+
3. **Delegate to `linear-suggestion` skill** to create a Linear issue in the "MobileMS Framework" project:
|
|
105
105
|
|
|
106
|
-
|
|
106
|
+
```
|
|
107
|
+
title: [short description of the recurring pattern and proposed rule]
|
|
108
|
+
description: |
|
|
109
|
+
### Observation
|
|
110
|
+
[description of the recurring pattern with evidence from multiple tasks]
|
|
111
|
+
|
|
112
|
+
### Proposed Change
|
|
113
|
+
[target file, section, and exact wording to add/modify]
|
|
114
|
+
|
|
115
|
+
### Evidence
|
|
116
|
+
[list of task IDs where this pattern was observed]
|
|
117
|
+
source: shared-parallelization-analyzer
|
|
118
|
+
targetFile: packages/shared/claude-plugins/src/plugins/flow/agents/shared-impl-orchestrator.md
|
|
119
|
+
category: OPTIMIZATION
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
4. Include the created issue ID in the console report
|
|
123
|
+
|
|
124
|
+
Only file Linear issues for **recurring** patterns, not one-off task-specific opportunities. Task-specific opportunities are reported in the console only.
|
|
107
125
|
|
|
108
126
|
## Output Format
|
|
109
127
|
|
|
@@ -155,13 +173,14 @@ Only propose permanent orchestrator changes for **recurring** patterns, not one-
|
|
|
155
173
|
- **Proposed steps**: 4 (2 parallel groups + 2 sequential)
|
|
156
174
|
- **Reduction**: 2 fewer sequential steps
|
|
157
175
|
|
|
158
|
-
### Orchestrator Improvement
|
|
176
|
+
### Orchestrator Improvement Suggestions
|
|
159
177
|
|
|
160
|
-
> Only shown if recurring patterns detected across multiple tasks
|
|
178
|
+
> Only shown if recurring patterns detected across multiple tasks.
|
|
179
|
+
> Suggestions are filed as Linear issues in the "MobileMS Framework" project via `linear-suggestion` skill.
|
|
161
180
|
|
|
162
|
-
**
|
|
181
|
+
**Suggestion**: [description of recurring pattern and suggested orchestrator rule change]
|
|
163
182
|
**Target**: `shared-impl-orchestrator.md` → [section name]
|
|
164
|
-
**
|
|
183
|
+
**Linear issue**: [issue ID] — [issue URL]
|
|
165
184
|
|
|
166
185
|
---
|
|
167
186
|
|
|
@@ -197,7 +216,7 @@ _Analysis generated by shared-parallelization-analyzer_
|
|
|
197
216
|
2. **Conservative analysis**: When uncertain whether a dependency exists, treat it as real. False parallelization is worse than missed optimization.
|
|
198
217
|
3. **Same-file operations are always sequential**: If two agents modify the same file, they must remain sequential regardless of which parts they modify.
|
|
199
218
|
4. **Only recurring patterns proposed as permanent changes**: Task-specific opportunities are reported but NOT proposed as orchestrator modifications. Only patterns observed repeatedly should be suggested as `shared-impl-orchestrator.md` changes.
|
|
200
|
-
5. **Non-blocking and advisory**: This analysis is informational only. It does not block any workflow
|
|
219
|
+
5. **Non-blocking and advisory**: This analysis is informational only. It does not block any workflow. Recurring pattern suggestions are filed as Linear issues via `linear-suggestion` skill — never auto-applied to agent files.
|
|
201
220
|
6. **Respect existing PARALLEL annotations**: If the orchestration plan already marks agents as PARALLEL, confirm or flag them rather than re-proposing.
|
|
202
221
|
|
|
203
222
|
## Examples
|
|
@@ -135,7 +135,7 @@ After the commit is created, perform an optional parallelization analysis:
|
|
|
135
135
|
|
|
136
136
|
- This step is **non-blocking** and **advisory only**
|
|
137
137
|
- The analysis report is shown to the user in the console but is NOT auto-applied
|
|
138
|
-
-
|
|
138
|
+
- Recurring orchestrator improvement suggestions (if any) are filed as Linear issues in the "MobileMS Framework" project via `linear-suggestion` skill — no user interaction required
|
|
139
139
|
- A commit failure or missing orchestration plan should never cause this step to error
|
|
140
140
|
|
|
141
141
|
### Guidelines
|
|
@@ -146,7 +146,7 @@ After the commit is created, perform an optional parallelization analysis:
|
|
|
146
146
|
4. If task type is unclear, analyze the code changes to determine type
|
|
147
147
|
5. Always include the Linear task reference in the footer
|
|
148
148
|
6. If there are no staged changes, warn the user and don't create commit
|
|
149
|
-
7. After a successful commit, run the optional parallelization analysis (Step 6) to surface optimization opportunities from the orchestration plan
|
|
149
|
+
7. After a successful commit, run the optional parallelization analysis (Step 6) to surface optimization opportunities from the orchestration plan. Recurring patterns are filed as Linear issues automatically via `linear-suggestion` skill
|
|
150
150
|
|
|
151
151
|
### Example
|
|
152
152
|
|
|
@@ -176,11 +176,19 @@ For Linear task "ENG-123: Add dark mode toggle to settings":
|
|
|
176
176
|
- **Proposed steps**: 4 (1 parallel group + 3 sequential)
|
|
177
177
|
- **Reduction**: 1 fewer sequential step
|
|
178
178
|
|
|
179
|
+
### Orchestrator Improvement Suggestions
|
|
180
|
+
|
|
181
|
+
**Suggestion**: Independent scaffolding agents are always falsely sequentialized
|
|
182
|
+
**Target**: `shared-impl-orchestrator.md` → Parallel vs Sequential
|
|
183
|
+
**Linear issue**: MOB-815 — https://linear.app/mobilems/issue/MOB-815
|
|
184
|
+
|
|
179
185
|
---
|
|
180
186
|
|
|
181
187
|
_Analysis generated by shared-parallelization-analyzer_
|
|
182
188
|
```
|
|
183
189
|
|
|
190
|
+
If a recurring pattern is detected, a Linear issue is automatically created in "MobileMS Framework" via `linear-suggestion` skill.
|
|
191
|
+
|
|
184
192
|
If no orchestration plan is found in Linear comments, this step is silently skipped.
|
|
185
193
|
|
|
186
194
|
---
|
|
@@ -258,7 +258,7 @@ Continue? (yes/no/adjust)
|
|
|
258
258
|
|
|
259
259
|
**Feedback Collection for Agent Evolution:**
|
|
260
260
|
|
|
261
|
-
During 3x3 checkpoints, when the user provides corrections or suggestions about coding patterns, implementation approach, or agent behavior — collect these as **evolution feedback items**. These will be processed in Step 3g-evolve. Look for signals like: universal language ("always", "never"), pattern-level corrections, or explicit requests to update agent behavior.
|
|
261
|
+
During 3x3 checkpoints, when the user provides corrections or suggestions about coding patterns, implementation approach, or agent behavior — collect these as **evolution feedback items**. These will be processed in Step 3g-evolve and filed as Linear issues via `linear-suggestion` skill. Look for signals like: universal language ("always", "never"), pattern-level corrections, or explicit requests to update agent behavior.
|
|
262
262
|
|
|
263
263
|
**IMPORTANT**: Also STOP and wait for user confirmation:
|
|
264
264
|
|
|
@@ -414,15 +414,15 @@ The agent will:
|
|
|
414
414
|
|
|
415
415
|
1. Classify each feedback item (IGNORE / EVOLVE_PATTERN / EVOLVE_RULE / EVOLVE_TEMPLATE / CREATE_AGENT / UPDATE_WORKFLOW)
|
|
416
416
|
2. Generate proposals for non-IGNORE items
|
|
417
|
-
3.
|
|
418
|
-
4.
|
|
419
|
-
5. Return Evolution Report
|
|
417
|
+
3. File each proposal as a Linear issue in "MobileMS Framework" via `linear-suggestion` skill
|
|
418
|
+
4. Return Evolution Report with created issue IDs
|
|
420
419
|
|
|
421
420
|
**IMPORTANT**:
|
|
422
421
|
|
|
423
|
-
-
|
|
422
|
+
- Agent files are NOT modified directly — proposals are filed as Linear issues for manual review
|
|
424
423
|
- If no reusable feedback was collected during this subtask, skip this step
|
|
425
424
|
- This step runs BEFORE the subtask pause (Step 3h) so evolution is complete before moving on
|
|
425
|
+
- If Linear issue creation fails, continue silently — do not block the workflow
|
|
426
426
|
|
|
427
427
|
#### Step 3h: Pause After Subtask Completion
|
|
428
428
|
|
|
@@ -483,8 +483,8 @@ The agent will:
|
|
|
483
483
|
1. Analyze all feedback from the entire session (not just last subtask)
|
|
484
484
|
2. Identify recurring patterns that may have been missed per-subtask
|
|
485
485
|
3. Propose cross-cutting improvements (patterns spanning multiple agents)
|
|
486
|
-
4.
|
|
487
|
-
5. Return final Evolution Report
|
|
486
|
+
4. File proposals as Linear issues in "MobileMS Framework" via `linear-suggestion` skill
|
|
487
|
+
5. Return final Evolution Report with created issue IDs
|
|
488
488
|
|
|
489
489
|
**IMPORTANT**: This step catches improvements that only become visible across multiple subtasks. Skip if no actionable feedback exists.
|
|
490
490
|
|
|
@@ -513,14 +513,14 @@ To Do → In Progress → In Review (if completed)
|
|
|
513
513
|
|
|
514
514
|
**ALWAYS stop and wait for user confirmation at these points:**
|
|
515
515
|
|
|
516
|
-
| Pause Point | When | What to Show
|
|
517
|
-
| -------------------- | ----------------------------------- |
|
|
518
|
-
| **3x3 Checkpoint** | After every 3 changes | Summary of 3 changes + next 3 steps
|
|
519
|
-
| **Subtask Complete** | After finishing each subtask | Subtask summary + next subtask info
|
|
520
|
-
| **Task Complete** | After finishing all subtasks | Final summary with all results
|
|
521
|
-
| **Blocker Found** | When external dependency found | Blocker details + options
|
|
522
|
-
| **Error/Issue** | When unexpected problem occurs | Error details + proposed solution
|
|
523
|
-
| **Agent Evolution** | After subtask / after final summary | Evolution
|
|
516
|
+
| Pause Point | When | What to Show |
|
|
517
|
+
| -------------------- | ----------------------------------- | ----------------------------------------- |
|
|
518
|
+
| **3x3 Checkpoint** | After every 3 changes | Summary of 3 changes + next 3 steps |
|
|
519
|
+
| **Subtask Complete** | After finishing each subtask | Subtask summary + next subtask info |
|
|
520
|
+
| **Task Complete** | After finishing all subtasks | Final summary with all results |
|
|
521
|
+
| **Blocker Found** | When external dependency found | Blocker details + options |
|
|
522
|
+
| **Error/Issue** | When unexpected problem occurs | Error details + proposed solution |
|
|
523
|
+
| **Agent Evolution** | After subtask / after final summary | Evolution report with filed Linear issues |
|
|
524
524
|
|
|
525
525
|
**Never proceed automatically** - always wait for explicit user confirmation before:
|
|
526
526
|
|
|
@@ -609,8 +609,8 @@ When verification fails, delegate to appropriate fix agent:
|
|
|
609
609
|
20. **Capture after screenshots + post to Linear**: After implementation, launch `screenshot-reporter` agent to capture "after" screenshots, generate comparison report, post to Linear, and cleanup
|
|
610
610
|
21. **Document translations changes**: If `apps/web/public/translations.json` was modified, include a table with added/changed translation keys and their PL/EN values in the Implementation Report
|
|
611
611
|
22. **Capture screenshots in both modes**: Agent captures screenshots in BOTH normal mode and dark mode (high contrast) for complete visual documentation
|
|
612
|
-
23. **Collect feedback for agent evolution**: During implementation, observe user corrections and suggestions. At evolution checkpoints (Step 3g-evolve, Step 4a-evolve), delegate to `shared-agent-evolver`
|
|
613
|
-
24. **Never
|
|
612
|
+
23. **Collect feedback for agent evolution**: During implementation, observe user corrections and suggestions. At evolution checkpoints (Step 3g-evolve, Step 4a-evolve), delegate to `shared-agent-evolver` which files improvement proposals as Linear issues in "MobileMS Framework" via `linear-suggestion` skill.
|
|
613
|
+
24. **Never modify agent files directly during implementation**: The `shared-agent-evolver` agent files all proposals as Linear issues for manual review — it does NOT modify agent, command, or skill files directly.
|
|
614
614
|
|
|
615
615
|
## Example Flow
|
|
616
616
|
|
|
@@ -634,7 +634,7 @@ When verification fails, delegate to appropriate fix agent:
|
|
|
634
634
|
8. **📸 VERIFY**: Confirm `SCREENSHOT_REQUIREMENT_MET: YES`
|
|
635
635
|
9. Create Implementation Report comment
|
|
636
636
|
10. Set status: In Progress → In Review
|
|
637
|
-
11. **EVOLVE**: User corrected error handling pattern →
|
|
637
|
+
11. **EVOLVE**: User corrected error handling pattern → filed Linear issue MOB-820 proposing pattern addition to `shared-error-handler`
|
|
638
638
|
|
|
639
639
|
**Processing ENG-456-2 (blocked):**
|
|
640
640
|
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: linear-suggestion
|
|
3
|
+
description: Create a Linear issue in the "MobileMS Framework" project with a suggestion for agent, command, or skill improvements.
|
|
4
|
+
allowed-tools: mcp__linear-server__create_issue
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Linear Suggestion
|
|
8
|
+
|
|
9
|
+
Create a Linear issue in the **MobileMS Framework** project containing a suggestion for improving agent definitions, commands, or skills. Used by automated analysis agents to propose changes without blocking the workflow.
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
- When an automated agent (e.g., `shared-parallelization-analyzer`) identifies a recurring pattern that could improve an agent, command, or skill
|
|
14
|
+
- When proposing orchestrator rule changes based on parallelization analysis
|
|
15
|
+
- When any non-interactive process needs to suggest framework improvements
|
|
16
|
+
|
|
17
|
+
## Input Parameters
|
|
18
|
+
|
|
19
|
+
The invoking agent must provide:
|
|
20
|
+
|
|
21
|
+
| Parameter | Required | Description |
|
|
22
|
+
| ------------- | -------- | --------------------------------------------------------------- |
|
|
23
|
+
| `title` | YES | Short summary of the suggestion (max 100 chars) |
|
|
24
|
+
| `description` | YES | Full markdown description with rationale and proposed changes |
|
|
25
|
+
| `source` | YES | Agent that generated the suggestion (e.g., `shared-parallelization-analyzer`) |
|
|
26
|
+
| `targetFile` | NO | Path to the file to be modified (e.g., `agents/shared-impl-orchestrator.md`) |
|
|
27
|
+
| `category` | NO | One of: `OPTIMIZATION`, `NEW_RULE`, `PATTERN_UPDATE`, `BUG_FIX` |
|
|
28
|
+
|
|
29
|
+
## Issue Format
|
|
30
|
+
|
|
31
|
+
### Title
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
[Agent Suggestion] {title}
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Description
|
|
38
|
+
|
|
39
|
+
```markdown
|
|
40
|
+
## Agent Improvement Suggestion
|
|
41
|
+
|
|
42
|
+
**Source agent**: `{source}`
|
|
43
|
+
**Category**: {category}
|
|
44
|
+
**Target file**: `{targetFile}`
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
{description}
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
_This issue was automatically created by `{source}` via the `linear-suggestion` skill._
|
|
53
|
+
_Review and apply manually if the suggestion is valid._
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Process
|
|
57
|
+
|
|
58
|
+
1. **Format the issue title** with `[Agent Suggestion]` prefix
|
|
59
|
+
2. **Build the description** using the template above, inserting all provided parameters
|
|
60
|
+
3. **Create the issue** using MCP Linear server:
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
Create issue in project "MobileMS Framework":
|
|
64
|
+
- Title: [Agent Suggestion] {title}
|
|
65
|
+
- Description: {formatted description}
|
|
66
|
+
- Label: agent-evolution
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
4. **Return the issue ID and URL** to the invoking agent
|
|
70
|
+
|
|
71
|
+
## Output Format
|
|
72
|
+
|
|
73
|
+
After successful creation, return:
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
Linear issue created:
|
|
77
|
+
- ID: {issueId}
|
|
78
|
+
- Title: [Agent Suggestion] {title}
|
|
79
|
+
- URL: {issueUrl}
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Error Handling
|
|
83
|
+
|
|
84
|
+
If issue creation fails (e.g., MCP Linear server unavailable):
|
|
85
|
+
|
|
86
|
+
- Log the error silently
|
|
87
|
+
- Do NOT block the parent workflow
|
|
88
|
+
- Return a failure notice without throwing
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
Linear suggestion skipped: {error reason}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Example
|
|
95
|
+
|
|
96
|
+
**Input from `shared-parallelization-analyzer`:**
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
title: Add parallel scaffolding rule to orchestrator
|
|
100
|
+
description: |
|
|
101
|
+
### Observation
|
|
102
|
+
|
|
103
|
+
In 3 out of 5 recent tasks, scaffolding agents for independent files
|
|
104
|
+
(e.g., `angular-component-scaffolder` + `angular-service-builder`) were
|
|
105
|
+
marked as SEQ despite having no shared output files.
|
|
106
|
+
|
|
107
|
+
### Proposed Change
|
|
108
|
+
|
|
109
|
+
Add to `shared-impl-orchestrator.md` → Execution Patterns → Parallel vs Sequential:
|
|
110
|
+
|
|
111
|
+
| Scenario | Pattern | Reason |
|
|
112
|
+
| --------------------------------------- | -------- | ------------------------------- |
|
|
113
|
+
| Multiple scaffolding for independent files | PARALLEL | No shared output files between scaffolders |
|
|
114
|
+
|
|
115
|
+
### Evidence
|
|
116
|
+
|
|
117
|
+
- MOB-700: scaffold-component + scaffold-service (independent)
|
|
118
|
+
- MOB-705: scaffold-directive + scaffold-service (independent)
|
|
119
|
+
- MOB-710: scaffold-component + scaffold-pipe (independent)
|
|
120
|
+
source: shared-parallelization-analyzer
|
|
121
|
+
targetFile: packages/shared/claude-plugins/src/plugins/flow/agents/shared-impl-orchestrator.md
|
|
122
|
+
category: OPTIMIZATION
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
**Created issue:**
|
|
126
|
+
|
|
127
|
+
```
|
|
128
|
+
Linear issue created:
|
|
129
|
+
- ID: MOB-815
|
|
130
|
+
- Title: [Agent Suggestion] Add parallel scaffolding rule to orchestrator
|
|
131
|
+
- URL: https://linear.app/mobilems/issue/MOB-815
|
|
132
|
+
```
|