awesome-agv 1.2.3 → 2.1.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/README.md +262 -249
- package/bin/awesome-agv.js +12 -5
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<br />
|
|
8
8
|
<a href="#getting-started">Getting Started</a>
|
|
9
9
|
·
|
|
10
|
-
<a href="#usage">View Rules & Skills</a>
|
|
10
|
+
<a href="#usage">View Rules & Skills</a>
|
|
11
11
|
·
|
|
12
12
|
<a href="https://github.com/irahardianto/awesome-agv/issues">Request Feature</a>
|
|
13
13
|
·
|
|
@@ -19,9 +19,9 @@
|
|
|
19
19
|
<!-- ABOUT THE PROJECT -->
|
|
20
20
|
## About Awesome AGV
|
|
21
21
|
|
|
22
|
-
**Awesome AGV** provides a comprehensive
|
|
22
|
+
**Awesome AGV** provides a comprehensive set of standards and practices designed to elevate the capabilities of AI coding agents. It provides a suite of strict rules distilled from software engineering best practices that ensure generated code is secure, defensible, and maintainable. It also provides specialized skills that agents load on demand.
|
|
23
23
|
|
|
24
|
-
Instead of just generating code that works, the rules and skills
|
|
24
|
+
Instead of just generating code that works, the rules and skills ensure agents generate code that **survives**.
|
|
25
25
|
|
|
26
26
|
> **⚠️ Opinionated by design.** Awesome AGV ships with opinionated defaults for specific technology stacks. See [Opinionated Technology Choices](#opinionated-technology-choices) for details and how to customize.
|
|
27
27
|
|
|
@@ -37,12 +37,13 @@ For example, the principles of the [Rugged Software Constitution](.agents/rules/
|
|
|
37
37
|
|
|
38
38
|
### Key Features
|
|
39
39
|
|
|
40
|
-
* 📏 **
|
|
41
|
-
* 🛠️ **
|
|
42
|
-
* 🔄 **
|
|
43
|
-
*
|
|
40
|
+
* 📏 **25 Rules** — covering security, reliability, architecture, and maintainability. Distilled to project-specific decisions only — rules encode *what overrides model defaults*, not what models already know.
|
|
41
|
+
* 🛠️ **53 Skills** — specialized capabilities loaded on demand: language idioms, debugging, design, performance, CI/CD, and more.
|
|
42
|
+
* 🔄 **12 Workflows** — end-to-end development processes from research to ship.
|
|
43
|
+
* 🤖 **16 Agent Personas** — specialized sub-agents for multi-agent orchestration (tech-lead, architect, backend-engineer, security-engineer, etc.).
|
|
44
|
+
* 🏗️ **Three-Tier Loading System** — always-on mandates + contextual principles + on-demand skills for zero-noise enforcement.
|
|
44
45
|
|
|
45
|
-
> **💡 Everything is modular.** Rules and
|
|
46
|
+
> **💡 Everything is modular.** Rules, skills, agents, and workflows work independently — you don't need everything to benefit. Use only what you need, modify anything, or build your own. It's a toolkit, not a framework.
|
|
46
47
|
|
|
47
48
|
<!-- GETTING STARTED -->
|
|
48
49
|
## Getting Started
|
|
@@ -90,7 +91,7 @@ npx awesome-agv --force
|
|
|
90
91
|
```sh
|
|
91
92
|
cp -r /path/to/awesome-agv/.agents ./your-project-root/
|
|
92
93
|
```
|
|
93
|
-
2. Ensure your AI agent is configured to read from the `.agents` directory (most
|
|
94
|
+
2. Ensure your AI agent is configured to read from the `.agents` directory (most well-known AI coding assistants adhere to the `.agents` convention by default, no action needed) or manually ingest the `.agents/rules/**` as part of its system prompt.
|
|
94
95
|
|
|
95
96
|
<!-- USAGE -->
|
|
96
97
|
## Usage
|
|
@@ -99,18 +100,31 @@ Once installed, the rules and skills in this repository become active for your a
|
|
|
99
100
|
|
|
100
101
|
### Rule Architecture
|
|
101
102
|
|
|
102
|
-
The setup uses a **
|
|
103
|
+
The setup uses a **three-tier loading system** to minimize noise while maximizing coverage:
|
|
103
104
|
|
|
104
|
-
| Type
|
|
105
|
-
|
|
|
106
|
-
| **Mandates**
|
|
107
|
-
| **Principles** | `model_decision` | Contextual guidance activated only when working on relevant areas (e.g., database rules activate only when writing queries). |
|
|
105
|
+
| Tier | Type | Trigger | Purpose |
|
|
106
|
+
| --- | --- | --- | --- |
|
|
107
|
+
| **1** | **Mandates** | `always_on` | Non-negotiable constraints loaded in every session (security, logging, code completion, architecture). |
|
|
108
|
+
| **2** | **Principles** | `model_decision` | Contextual guidance activated only when working on relevant areas (e.g., database rules activate only when writing queries). |
|
|
109
|
+
| **3** | **Skills** | `paths:` or rule reference | Deep expertise loaded on demand — language idioms when touching source files, CI/CD when editing pipelines, testability patterns when architectural rules reference them. |
|
|
108
110
|
|
|
109
111
|
Conflicts between rules are resolved by [Rule Priority](.agents/rules/rule-priority.md) — security always wins.
|
|
110
112
|
|
|
113
|
+
### Skill Loading Design
|
|
114
|
+
|
|
115
|
+
Skills use one of three loading mechanisms, chosen by type:
|
|
116
|
+
|
|
117
|
+
| Mechanism | When used | Examples |
|
|
118
|
+
| --- | --- | --- |
|
|
119
|
+
| **`paths:` triggers** | Language-specific idiom skills | `go-idioms` loads on `**/*.go`; `vue-idioms` loads on `**/*.vue`, `**/store/**/*.ts` |
|
|
120
|
+
| **`name:` + `description:` only** | Cross-cutting skills loaded via rule reference | `testability-patterns` (referenced from `architectural-pattern.md`); `logging-implementation` (referenced from `logging-and-observability-mandate.md`) |
|
|
121
|
+
| **Both `paths:` + `name:`/`description:`** | Infrastructure/domain skills | `ci-cd` (Dockerfiles, CI configs); `feature-flags` (feature flag files) |
|
|
122
|
+
|
|
123
|
+
> **Design invariant:** Cross-cutting skills that apply to all languages (testability, logging) are never loaded via language-specific `paths:` triggers. They are always referenced from always-on rules so they load regardless of language.
|
|
124
|
+
|
|
111
125
|
### Rule Dependencies
|
|
112
126
|
|
|
113
|
-
The rules are
|
|
127
|
+
The rules are interconnected to provide comprehensive coverage. You can explore these relationships using the **[Interactive Rule Dependency Graph](https://irahardianto.github.io/awesome-agv/rule_dependency_graph.html)**, or view the static diagram below.
|
|
114
128
|
|
|
115
129
|
<details>
|
|
116
130
|
<summary>View Dependency Graph (Mermaid)</summary>
|
|
@@ -120,12 +134,9 @@ graph TD
|
|
|
120
134
|
accessibility_principles["accessibility-principles.md"]
|
|
121
135
|
api_design_principles["api-design-principles.md"]
|
|
122
136
|
architectural_pattern["architectural-pattern.md"]
|
|
123
|
-
ci_cd_principles["ci-cd-principles.md"]
|
|
124
|
-
code_completion_mandate["code-completion-mandate.md"]
|
|
125
137
|
code_idioms_and_conventions["code-idioms-and-conventions.md"]
|
|
126
138
|
code_organization_principles["code-organization-principles.md"]
|
|
127
139
|
command_execution_principles["command-execution-principles.md"]
|
|
128
|
-
concurrency_and_threading_mandate["concurrency-and-threading-mandate.md"]
|
|
129
140
|
concurrency_and_threading_principles["concurrency-and-threading-principles.md"]
|
|
130
141
|
configuration_management_principles["configuration-management-principles.md"]
|
|
131
142
|
core_design_principles["core-design-principles.md"]
|
|
@@ -134,31 +145,17 @@ graph TD
|
|
|
134
145
|
dependency_management_principles["dependency-management-principles.md"]
|
|
135
146
|
documentation_principles["documentation-principles.md"]
|
|
136
147
|
error_handling_principles["error-handling-principles.md"]
|
|
137
|
-
flutter_idioms_and_patterns["flutter-idioms-and-patterns.md"]
|
|
138
148
|
git_workflow_principles["git-workflow-principles.md"]
|
|
139
|
-
go_idioms_and_patterns["go-idioms-and-patterns.md"]
|
|
140
149
|
logging_and_observability_mandate["logging-and-observability-mandate.md"]
|
|
141
|
-
logging_and_observability_principles["logging-and-observability-principles.md"]
|
|
142
150
|
monitoring_and_alerting_principles["monitoring-and-alerting-principles.md"]
|
|
143
151
|
performance_optimization_principles["performance-optimization-principles.md"]
|
|
144
|
-
project_structure_flutter_mobile["project-structure-flutter-mobile.md"]
|
|
145
|
-
project_structure_go_backend["project-structure-go-backend.md"]
|
|
146
|
-
project_structure_rust_cargo["project-structure-rust-cargo.md"]
|
|
147
|
-
project_structure_vue_frontend["project-structure-vue-frontend.md"]
|
|
148
152
|
project_structure["project-structure.md"]
|
|
149
153
|
resources_and_memory_management_principles["resources-and-memory-management-principles.md"]
|
|
150
154
|
rugged_software_constitution["rugged-software-constitution.md"]
|
|
151
155
|
rule_priority["rule-priority.md"]
|
|
152
|
-
rust_idioms_and_patterns["rust-idioms-and-patterns.md"]
|
|
153
156
|
security_mandate["security-mandate.md"]
|
|
154
157
|
security_principles["security-principles.md"]
|
|
155
158
|
testing_strategy["testing-strategy.md"]
|
|
156
|
-
typescript_idioms_and_patterns["typescript-idioms-and-patterns.md"]
|
|
157
|
-
vue_idioms_and_patterns["vue-idioms-and-patterns.md"]
|
|
158
|
-
python_idioms_and_patterns["python-idioms-and-patterns.md"]
|
|
159
|
-
project_structure_python_backend["project-structure-python-backend.md"]
|
|
160
|
-
feature_flags_principles["feature-flags-principles.md"]
|
|
161
|
-
ci_cd_gitops_kubernetes["ci-cd-gitops-kubernetes.md"]
|
|
162
159
|
accessibility_principles --> core_design_principles
|
|
163
160
|
accessibility_principles --> security_principles
|
|
164
161
|
accessibility_principles --> testing_strategy
|
|
@@ -172,32 +169,15 @@ graph TD
|
|
|
172
169
|
architectural_pattern --> database_design_principles
|
|
173
170
|
architectural_pattern --> project_structure
|
|
174
171
|
architectural_pattern --> testing_strategy
|
|
175
|
-
|
|
176
|
-
ci_cd_principles --> git_workflow_principles
|
|
177
|
-
ci_cd_principles --> project_structure
|
|
178
|
-
ci_cd_principles --> security_mandate
|
|
179
|
-
ci_cd_principles --> testing_strategy
|
|
180
|
-
code_completion_mandate --> code_idioms_and_conventions
|
|
181
|
-
code_completion_mandate --> flutter_idioms_and_patterns
|
|
182
|
-
code_completion_mandate --> go_idioms_and_patterns
|
|
183
|
-
code_completion_mandate --> rugged_software_constitution
|
|
184
|
-
code_completion_mandate --> rust_idioms_and_patterns
|
|
185
|
-
code_completion_mandate --> typescript_idioms_and_patterns
|
|
186
|
-
code_completion_mandate --> vue_idioms_and_patterns
|
|
187
|
-
code_idioms_and_conventions --> code_completion_mandate
|
|
172
|
+
code_idioms_and_conventions --> rugged_software_constitution
|
|
188
173
|
code_idioms_and_conventions --> core_design_principles
|
|
189
|
-
code_idioms_and_conventions --> flutter_idioms_and_patterns
|
|
190
|
-
code_idioms_and_conventions --> go_idioms_and_patterns
|
|
191
|
-
code_idioms_and_conventions --> rust_idioms_and_patterns
|
|
192
|
-
code_idioms_and_conventions --> typescript_idioms_and_patterns
|
|
193
|
-
code_idioms_and_conventions --> vue_idioms_and_patterns
|
|
194
174
|
code_organization_principles --> architectural_pattern
|
|
195
175
|
code_organization_principles --> core_design_principles
|
|
196
176
|
code_organization_principles --> project_structure
|
|
197
177
|
command_execution_principles --> security_mandate
|
|
198
178
|
command_execution_principles --> security_principles
|
|
199
|
-
|
|
200
|
-
|
|
179
|
+
core_design_principles --> concurrency_and_threading_principles
|
|
180
|
+
core_design_principles --> performance_optimization_principles
|
|
201
181
|
concurrency_and_threading_principles --> error_handling_principles
|
|
202
182
|
concurrency_and_threading_principles --> resources_and_memory_management_principles
|
|
203
183
|
concurrency_and_threading_principles --> testing_strategy
|
|
@@ -219,217 +199,224 @@ graph TD
|
|
|
219
199
|
documentation_principles --> code_organization_principles
|
|
220
200
|
documentation_principles --> core_design_principles
|
|
221
201
|
error_handling_principles --> api_design_principles
|
|
222
|
-
error_handling_principles -->
|
|
202
|
+
error_handling_principles --> core_design_principles
|
|
223
203
|
error_handling_principles --> logging_and_observability_mandate
|
|
224
204
|
error_handling_principles --> security_mandate
|
|
225
205
|
error_handling_principles --> security_principles
|
|
226
206
|
error_handling_principles --> testing_strategy
|
|
227
|
-
|
|
228
|
-
flutter_idioms_and_patterns --> code_idioms_and_conventions
|
|
229
|
-
flutter_idioms_and_patterns --> dependency_management_principles
|
|
230
|
-
flutter_idioms_and_patterns --> error_handling_principles
|
|
231
|
-
flutter_idioms_and_patterns --> project_structure_flutter_mobile
|
|
232
|
-
flutter_idioms_and_patterns --> testing_strategy
|
|
233
|
-
git_workflow_principles --> code_completion_mandate
|
|
207
|
+
git_workflow_principles --> code_idioms_and_conventions
|
|
234
208
|
git_workflow_principles --> security_mandate
|
|
235
209
|
git_workflow_principles --> testing_strategy
|
|
236
|
-
go_idioms_and_patterns --> code_idioms_and_conventions
|
|
237
|
-
go_idioms_and_patterns --> concurrency_and_threading_principles
|
|
238
|
-
go_idioms_and_patterns --> dependency_management_principles
|
|
239
|
-
go_idioms_and_patterns --> error_handling_principles
|
|
240
|
-
go_idioms_and_patterns --> logging_and_observability_principles
|
|
241
|
-
go_idioms_and_patterns --> project_structure_go_backend
|
|
242
|
-
go_idioms_and_patterns --> testing_strategy
|
|
243
210
|
logging_and_observability_mandate --> api_design_principles
|
|
244
211
|
logging_and_observability_mandate --> error_handling_principles
|
|
245
|
-
logging_and_observability_mandate --> logging_and_observability_principles
|
|
246
212
|
logging_and_observability_mandate --> monitoring_and_alerting_principles
|
|
247
|
-
logging_and_observability_principles --> api_design_principles
|
|
248
|
-
logging_and_observability_principles --> error_handling_principles
|
|
249
|
-
logging_and_observability_principles --> logging_and_observability_mandate
|
|
250
|
-
logging_and_observability_principles --> monitoring_and_alerting_principles
|
|
251
|
-
logging_and_observability_principles --> security_mandate
|
|
252
|
-
logging_and_observability_principles --> security_principles
|
|
253
|
-
monitoring_and_alerting_principles --> concurrency_and_threading_principles
|
|
254
213
|
monitoring_and_alerting_principles --> error_handling_principles
|
|
255
214
|
monitoring_and_alerting_principles --> logging_and_observability_mandate
|
|
256
|
-
monitoring_and_alerting_principles --> logging_and_observability_principles
|
|
257
215
|
monitoring_and_alerting_principles --> resources_and_memory_management_principles
|
|
258
|
-
performance_optimization_principles -->
|
|
216
|
+
performance_optimization_principles --> core_design_principles
|
|
259
217
|
performance_optimization_principles --> concurrency_and_threading_principles
|
|
260
218
|
performance_optimization_principles --> resources_and_memory_management_principles
|
|
261
|
-
project_structure_flutter_mobile --> flutter_idioms_and_patterns
|
|
262
|
-
project_structure_flutter_mobile --> project_structure
|
|
263
|
-
project_structure_go_backend --> go_idioms_and_patterns
|
|
264
|
-
project_structure_go_backend --> project_structure
|
|
265
|
-
project_structure_rust_cargo --> project_structure
|
|
266
|
-
project_structure_rust_cargo --> rust_idioms_and_patterns
|
|
267
|
-
project_structure_vue_frontend --> project_structure
|
|
268
|
-
project_structure_vue_frontend --> typescript_idioms_and_patterns
|
|
269
|
-
project_structure_vue_frontend --> vue_idioms_and_patterns
|
|
270
219
|
project_structure --> architectural_pattern
|
|
271
220
|
project_structure --> code_organization_principles
|
|
272
|
-
|
|
273
|
-
project_structure --> project_structure_go_backend
|
|
274
|
-
project_structure --> project_structure_rust_cargo
|
|
275
|
-
project_structure --> project_structure_vue_frontend
|
|
276
|
-
resources_and_memory_management_principles --> concurrency_and_threading_mandate
|
|
221
|
+
resources_and_memory_management_principles --> core_design_principles
|
|
277
222
|
resources_and_memory_management_principles --> concurrency_and_threading_principles
|
|
278
223
|
resources_and_memory_management_principles --> error_handling_principles
|
|
279
224
|
rugged_software_constitution --> architectural_pattern
|
|
280
|
-
rugged_software_constitution --> code_idioms_and_conventions
|
|
281
|
-
rugged_software_constitution --> core_design_principles
|
|
282
225
|
rugged_software_constitution --> error_handling_principles
|
|
283
226
|
rugged_software_constitution --> logging_and_observability_mandate
|
|
284
|
-
rugged_software_constitution --> resources_and_memory_management_principles
|
|
285
227
|
rugged_software_constitution --> security_mandate
|
|
286
|
-
rugged_software_constitution --> testing_strategy
|
|
287
228
|
rule_priority --> architectural_pattern
|
|
288
|
-
rule_priority -->
|
|
229
|
+
rule_priority --> code_idioms_and_conventions
|
|
289
230
|
rule_priority --> logging_and_observability_mandate
|
|
290
231
|
rule_priority --> rugged_software_constitution
|
|
291
232
|
rule_priority --> security_mandate
|
|
292
|
-
rust_idioms_and_patterns --> code_idioms_and_conventions
|
|
293
|
-
rust_idioms_and_patterns --> concurrency_and_threading_mandate
|
|
294
|
-
rust_idioms_and_patterns --> concurrency_and_threading_principles
|
|
295
|
-
rust_idioms_and_patterns --> dependency_management_principles
|
|
296
|
-
rust_idioms_and_patterns --> error_handling_principles
|
|
297
|
-
rust_idioms_and_patterns --> performance_optimization_principles
|
|
298
|
-
rust_idioms_and_patterns --> resources_and_memory_management_principles
|
|
299
|
-
rust_idioms_and_patterns --> security_mandate
|
|
300
|
-
rust_idioms_and_patterns --> testing_strategy
|
|
301
233
|
security_mandate --> security_principles
|
|
302
234
|
security_principles --> api_design_principles
|
|
303
235
|
security_principles --> command_execution_principles
|
|
304
236
|
security_principles --> configuration_management_principles
|
|
305
237
|
security_principles --> error_handling_principles
|
|
306
238
|
security_principles --> logging_and_observability_mandate
|
|
307
|
-
security_principles --> logging_and_observability_principles
|
|
308
239
|
testing_strategy --> architectural_pattern
|
|
309
240
|
testing_strategy --> error_handling_principles
|
|
310
241
|
testing_strategy --> project_structure
|
|
311
|
-
typescript_idioms_and_patterns --> code_idioms_and_conventions
|
|
312
|
-
typescript_idioms_and_patterns --> concurrency_and_threading_mandate
|
|
313
|
-
typescript_idioms_and_patterns --> dependency_management_principles
|
|
314
|
-
typescript_idioms_and_patterns --> error_handling_principles
|
|
315
|
-
typescript_idioms_and_patterns --> security_principles
|
|
316
|
-
typescript_idioms_and_patterns --> testing_strategy
|
|
317
|
-
typescript_idioms_and_patterns --> vue_idioms_and_patterns
|
|
318
|
-
vue_idioms_and_patterns --> architectural_pattern
|
|
319
|
-
vue_idioms_and_patterns --> code_idioms_and_conventions
|
|
320
|
-
vue_idioms_and_patterns --> logging_and_observability_principles
|
|
321
|
-
vue_idioms_and_patterns --> project_structure_vue_frontend
|
|
322
|
-
vue_idioms_and_patterns --> testing_strategy
|
|
323
|
-
vue_idioms_and_patterns --> typescript_idioms_and_patterns
|
|
324
|
-
python_idioms_and_patterns --> code_idioms_and_conventions
|
|
325
|
-
python_idioms_and_patterns --> project_structure_python_backend
|
|
326
|
-
python_idioms_and_patterns --> testing_strategy
|
|
327
|
-
python_idioms_and_patterns --> error_handling_principles
|
|
328
|
-
python_idioms_and_patterns --> concurrency_and_threading_mandate
|
|
329
|
-
python_idioms_and_patterns --> logging_and_observability_principles
|
|
330
|
-
python_idioms_and_patterns --> security_principles
|
|
331
|
-
python_idioms_and_patterns --> dependency_management_principles
|
|
332
|
-
project_structure_python_backend --> project_structure
|
|
333
|
-
project_structure_python_backend --> python_idioms_and_patterns
|
|
334
|
-
code_idioms_and_conventions --> python_idioms_and_patterns
|
|
335
|
-
code_completion_mandate --> python_idioms_and_patterns
|
|
336
242
|
```
|
|
337
243
|
|
|
338
244
|
</details>
|
|
339
245
|
|
|
340
|
-
### Comprehensive Rule Suite
|
|
341
|
-
|
|
342
|
-
The
|
|
343
|
-
|
|
344
|
-
####
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
* **[
|
|
366
|
-
* **[
|
|
367
|
-
* **[
|
|
368
|
-
* **[Database Design](.agents/rules/database-design-principles.md)**:
|
|
369
|
-
* **[
|
|
370
|
-
* **[
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
* **[
|
|
374
|
-
* **[
|
|
375
|
-
* **[
|
|
376
|
-
* **[
|
|
377
|
-
* **[
|
|
378
|
-
* **[
|
|
379
|
-
* **[
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
* **[
|
|
387
|
-
* **[
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
* **[
|
|
391
|
-
* **[
|
|
392
|
-
* **[
|
|
393
|
-
* **[
|
|
394
|
-
* **[
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
* **[
|
|
399
|
-
* **[
|
|
400
|
-
* **[
|
|
401
|
-
* **[
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
* **[
|
|
405
|
-
* **[
|
|
406
|
-
|
|
407
|
-
|
|
246
|
+
### Comprehensive Rule Suite (25)
|
|
247
|
+
|
|
248
|
+
The rules encode **project-specific decisions that override model defaults** — not general knowledge the model already knows. Every line of a rule answers: *"What would this model get wrong without this instruction?"*
|
|
249
|
+
|
|
250
|
+
#### 🔒 Always-On Mandates (10)
|
|
251
|
+
|
|
252
|
+
Loaded in every session — non-negotiable constraints that fire regardless of what you're working on.
|
|
253
|
+
|
|
254
|
+
| Rule | What it enforces |
|
|
255
|
+
| --- | --- |
|
|
256
|
+
| **[Rugged Software Constitution](.agents/rules/rugged-software-constitution.md)** | Hostile-environment posture: refuse insecure patterns even if asked, proactively add validation, fail securely |
|
|
257
|
+
| **[Security Mandate](.agents/rules/security-mandate.md)** | Deny by default, trust no input, fail closed — security always wins over convenience |
|
|
258
|
+
| **[Rule Priority](.agents/rules/rule-priority.md)** | Conflict resolution order: Security → Rugged → Completion/Logging → Testability → Idioms → YAGNI |
|
|
259
|
+
| **[Logging & Observability Mandate](.agents/rules/logging-and-observability-mandate.md)** | Every operation entry point must log start/success/failure with correlationId — no exceptions |
|
|
260
|
+
| **[Architectural Pattern](.agents/rules/architectural-pattern.md)** | I/O isolation, pure business logic, dependency inversion — testability-first design |
|
|
261
|
+
| **[Code Idioms & Conventions](.agents/rules/code-idioms-and-conventions.md)** | Language-to-skill routing table + completion workflow: generate → validate → remediate → verify → deliver |
|
|
262
|
+
| **[Code Organization Principles](.agents/rules/code-organization-principles.md)** | Feature-based vertical slices, public API boundaries, no circular dependencies |
|
|
263
|
+
| **[Core Design Principles](.agents/rules/core-design-principles.md)** | Maintainability > UX; Composition > inheritance; Rule of Three for DRY; profile before parallelizing |
|
|
264
|
+
| **[Project Structure](.agents/rules/project-structure.md)** | Single source of truth for directory layout — organize by feature, not by layer |
|
|
265
|
+
| **[Documentation Principles](.agents/rules/documentation-principles.md)** | Code shows WHAT; comments explain WHY; function docs for API contracts |
|
|
266
|
+
|
|
267
|
+
#### 🎯 Contextual Principles (15)
|
|
268
|
+
|
|
269
|
+
Activated by the model only when relevant — zero overhead when not applicable.
|
|
270
|
+
|
|
271
|
+
* **[Security Principles](.agents/rules/security-principles.md)**: Auth, authorization, input validation, cryptographic operations
|
|
272
|
+
* **[Error Handling Principles](.agents/rules/error-handling-principles.md)**: Error types, recovery strategies, resource cleanup
|
|
273
|
+
* **[API Design Principles](.agents/rules/api-design-principles.md)**: REST/HTTP endpoints, handlers, response formatting
|
|
274
|
+
* **[Database Design Principles](.agents/rules/database-design-principles.md)**: Schemas, migrations, queries, transaction boundaries
|
|
275
|
+
* **[Testing Strategy](.agents/rules/testing-strategy.md)**: Pyramid ratios, naming, co-location, test doubles
|
|
276
|
+
* **[Concurrency & Threading Principles](.agents/rules/concurrency-and-threading-principles.md)**: Race prevention, deadlock avoidance, message passing
|
|
277
|
+
* **[Performance Optimization Principles](.agents/rules/performance-optimization-principles.md)**: Profile-first, bottleneck identification
|
|
278
|
+
* **[Configuration Management Principles](.agents/rules/configuration-management-principles.md)**: Environment variables, secrets, settings hierarchy
|
|
279
|
+
* **[Monitoring & Alerting Principles](.agents/rules/monitoring-and-alerting-principles.md)**: Health checks, metrics, SLIs/SLOs
|
|
280
|
+
* **[Resource Management Principles](.agents/rules/resources-and-memory-management-principles.md)**: Files, connections, locks — always clean up
|
|
281
|
+
* **[Data Serialization Principles](.agents/rules/data-serialization-and-interchange-principles.md)**: JSON, Protobuf, validation at boundaries
|
|
282
|
+
* **[Dependency Management Principles](.agents/rules/dependency-management-principles.md)**: Packages, pinning, license compliance
|
|
283
|
+
* **[Command Execution Principles](.agents/rules/command-execution-principles.md)**: Shell commands, injection prevention, non-interactive flags
|
|
284
|
+
* **[Accessibility Principles](.agents/rules/accessibility-principles.md)**: WCAG 2.1 AA, semantic HTML, keyboard navigation
|
|
285
|
+
* **[Git Workflow Principles](.agents/rules/git-workflow-principles.md)**: Conventional commits, branch naming, PR hygiene
|
|
286
|
+
|
|
287
|
+
### Specialized Skills (53)
|
|
288
|
+
|
|
289
|
+
Skills are deep expertise modules loaded on demand — agents only pay the token cost when the skill is relevant.
|
|
290
|
+
|
|
291
|
+
#### 🔧 Core Engineering Skills
|
|
292
|
+
* **[Debugging Protocol](.agents/skills/debugging-protocol/SKILL.md)**: Systematic hypothesis-driven approach to solving errors
|
|
293
|
+
* **[Sequential Thinking](.agents/skills/sequential-thinking/SKILL.md)**: Dynamic, reflective problem-solving through iterative thought chains, adapted from [Sequential Thinking MCP Server](https://github.com/modelcontextprotocol/servers/tree/main/src/sequentialthinking)
|
|
294
|
+
* **[Code Review](.agents/skills/code-review/SKILL.md)**: Structured code review protocol against the full rule set
|
|
295
|
+
* **[Guardrails](.agents/skills/guardrails/SKILL.md)**: Pre-flight checklist and post-implementation self-review
|
|
296
|
+
* **[ADR](.agents/skills/adr/SKILL.md)**: Architecture Decision Records — document significant decisions with context and trade-offs
|
|
297
|
+
* **[Performance Optimization](.agents/skills/perf-optimization/SKILL.md)**: Profile-driven optimization (pprof, Lighthouse, bundle analysis)
|
|
298
|
+
* **[Refactoring Patterns](.agents/skills/refactoring-patterns/SKILL.md)**: Code smell taxonomy, safe transformation techniques, behavior preservation
|
|
299
|
+
* **[Research Methodology](.agents/skills/research-methodology/SKILL.md)**: Structured research protocol for technologies and patterns
|
|
300
|
+
* **[Omni](.agents/skills/omni/SKILL.md)**: Token-efficient communication protocol — opt-in for concise output or agent-to-agent messaging
|
|
301
|
+
|
|
302
|
+
#### 🏛️ Architecture & Infrastructure Skills
|
|
303
|
+
* **[Testability Patterns](.agents/skills/testability-patterns/SKILL.md)**: I/O isolation, pure logic, dependency direction — code examples across Go, TypeScript, Python, Rust, Dart. *Loaded via reference from `architectural-pattern.md`.*
|
|
304
|
+
* **[Logging Implementation](.agents/skills/logging-implementation/SKILL.md)**: Structured logging patterns, log levels, per-language libraries (Go slog, pino, structlog), PII scrubbing. *Loaded via reference from `logging-and-observability-mandate.md`.*
|
|
305
|
+
* **[CI/CD](.agents/skills/ci-cd/SKILL.md)**: Pipeline design, multi-stage Docker builds, image scanning, SBOM attestation, environment promotion (Level 0–2)
|
|
306
|
+
* **[CI/CD GitOps & Kubernetes](.agents/skills/ci-cd/references/gitops-kubernetes.md)**: ArgoCD, Kubernetes deployment patterns — bundled with `ci-cd`
|
|
307
|
+
* **[Feature Flags](.agents/skills/feature-flags/SKILL.md)**: Release flags, kill switches, experiment flags, lifecycle rules — PRD-gated, loaded only when required
|
|
308
|
+
|
|
309
|
+
#### 🎨 Design & UI Skills
|
|
310
|
+
* **[Frontend Design](.agents/skills/frontend-design/SKILL.md)**: Production-grade frontend interfaces, bold aesthetics, typography, motion
|
|
311
|
+
* **[Mobile Design](.agents/skills/mobile-design/SKILL.md)**: Platform-native mobile interfaces for Flutter and React Native
|
|
312
|
+
|
|
313
|
+
#### 🔀 Multi-Agent Orchestration Skills
|
|
314
|
+
* **[Parallel Dispatch](.agents/skills/parallel-dispatch/SKILL.md)**: MECE task decomposition, file ownership enforcement, DAG-based execution, and safe merge protocol for intra-domain parallel dispatch. The safety invariants that prevent merge chaos when multiple agents write in parallel. Applies recursively at every nesting depth.
|
|
315
|
+
* **[Audit Checklist](.agents/skills/audit-checklist/SKILL.md)**: Consolidated audit checklists for code review and verification — loaded by `/audit` workflow and multi-agent review pipelines.
|
|
316
|
+
* **[Acceptance Review](.agents/skills/acceptance-review/SKILL.md)**: Spec adherence and deliverable completeness verification — ensures what was delivered matches what was requested.
|
|
317
|
+
|
|
318
|
+
#### 🌐 Language & Framework Idioms (24)
|
|
319
|
+
|
|
320
|
+
Language-specific patterns, tooling, project layout, and quality commands. Each skill auto-loads via `paths:` triggers when the agent touches files in that language.
|
|
321
|
+
|
|
322
|
+
**Core stacks (with bundled project structure references):**
|
|
323
|
+
|
|
324
|
+
| Skill | Ecosystem | Auto-loads on |
|
|
325
|
+
|---|---|---|
|
|
326
|
+
| [Go Idioms](.agents/skills/go-idioms/SKILL.md) + [layout](./agents/skills/go-idioms/references/project-structure.md) | Go stdlib, error wrapping, table-driven tests, gofumpt | `**/*.go`, `**/go.mod` |
|
|
327
|
+
| [TypeScript Idioms](.agents/skills/typescript-idioms/SKILL.md) + [layout](.agents/skills/typescript-idioms/references/project-structure.md) | Strict mode, type narrowing, Zod, vitest | `**/*.ts`, `**/*.tsx` |
|
|
328
|
+
| [Vue Idioms](.agents/skills/vue-idioms/SKILL.md) + [layout](.agents/skills/vue-idioms/references/project-structure.md) | Vue 3 Composition API, Pinia (Setup Store), composables | `**/*.vue`, `**/store/**/*.ts`, `**/*.store.ts` |
|
|
329
|
+
| [Flutter Idioms](.agents/skills/flutter-idioms/SKILL.md) + [layout](.agents/skills/flutter-idioms/references/project-structure.md) | Riverpod 3, freezed, go_router, const widgets | `**/*.dart`, `**/pubspec.yaml`, `**/analysis_options.yaml` |
|
|
330
|
+
| [Rust Idioms](.agents/skills/rust-idioms/SKILL.md) + [layout](.agents/skills/rust-idioms/references/project-structure.md) | Ownership, tokio, thiserror/anyhow, clippy pedantic | `**/*.rs`, `**/Cargo.toml` |
|
|
331
|
+
| [Python Idioms](.agents/skills/python-idioms/SKILL.md) + [layout](.agents/skills/python-idioms/references/project-structure.md) | Type hints, Protocols, ruff, mypy strict, pytest | `**/*.py`, `**/pyproject.toml` |
|
|
332
|
+
|
|
333
|
+
**Community language skills:**
|
|
334
|
+
|
|
335
|
+
| Skill | Ecosystem |
|
|
336
|
+
|---|---|
|
|
337
|
+
| [Angular](.agents/skills/angular-idioms/SKILL.md) | Angular components, signals, DI, RxJS |
|
|
338
|
+
| [C++](.agents/skills/cpp-idioms/SKILL.md) | Modern C++ (RAII, smart pointers, CMake) |
|
|
339
|
+
| [C#](.agents/skills/csharp-idioms/SKILL.md) | .NET, async/await, LINQ, records |
|
|
340
|
+
| [Django](.agents/skills/django-idioms/SKILL.md) | Django ORM, views, middleware |
|
|
341
|
+
| [.NET](.agents/skills/dotnet-idioms/SKILL.md) | ASP.NET Core, Entity Framework |
|
|
342
|
+
| [Elixir](.agents/skills/elixir-idioms/SKILL.md) | OTP, GenServer, supervision trees |
|
|
343
|
+
| [Java](.agents/skills/java-idioms/SKILL.md) | Streams, records, sealed classes |
|
|
344
|
+
| [JavaScript](.agents/skills/javascript-idioms/SKILL.md) | ES2024+, async patterns, ESM |
|
|
345
|
+
| [Kotlin](.agents/skills/kotlin-idioms/SKILL.md) | Coroutines, sealed classes, Android |
|
|
346
|
+
| [Laravel](.agents/skills/laravel-idioms/SKILL.md) | Eloquent, middleware, queues |
|
|
347
|
+
| [Next.js](.agents/skills/nextjs-idioms/SKILL.md) | App Router, RSC, ISR |
|
|
348
|
+
| [PHP](.agents/skills/php-idioms/SKILL.md) | PHP 8+, type declarations, Composer |
|
|
349
|
+
| [Rails](.agents/skills/rails-idioms/SKILL.md) | ActiveRecord, conventions, RSpec |
|
|
350
|
+
| [React](.agents/skills/react-idioms/SKILL.md) | Hooks, Suspense, Server Components |
|
|
351
|
+
| [Ruby](.agents/skills/ruby-idioms/SKILL.md) | Blocks, modules, metaprogramming |
|
|
352
|
+
| [Spring Boot](.agents/skills/spring-boot-idioms/SKILL.md) | Spring DI, JPA, WebFlux |
|
|
353
|
+
| [SQL](.agents/skills/sql-idioms/SKILL.md) | Query optimization, indexes, migrations |
|
|
354
|
+
| [Swift](.agents/skills/swift-idioms/SKILL.md) | SwiftUI, Combine, async/await |
|
|
355
|
+
|
|
356
|
+
#### 🏢 Domain Skills
|
|
357
|
+
* **[API Documentation](.agents/skills/api-documentation/SKILL.md)**: OpenAPI 3.1 specs, request/response examples, versioning
|
|
358
|
+
* **[Browser Automation](.agents/skills/browser-automation/SKILL.md)**: Playwright MCP-first automation for E2E testing, UI review, and Playwright MCP interactive development
|
|
359
|
+
* **[Chaos Testing](.agents/skills/chaos-testing/SKILL.md)**: Controlled failure injection and resilience verification
|
|
360
|
+
* **[CLI Development](.agents/skills/cli-development/SKILL.md)**: CLI tool design, argument parsing, and distribution
|
|
361
|
+
* **[Data Engineering](.agents/skills/data-engineering/SKILL.md)**: ETL/ELT patterns, data quality, and orchestration
|
|
362
|
+
* **[Embedded Systems](.agents/skills/embedded-systems/SKILL.md)**: Real-time patterns, RTOS, and hardware abstraction
|
|
363
|
+
* **[Incident Response](.agents/skills/incident-response/SKILL.md)**: Severity classification, triage, diagnosis, and blameless postmortem
|
|
364
|
+
* **[ML Engineering](.agents/skills/ml-engineering/SKILL.md)**: ML pipelines, feature engineering, model serving, and MLOps
|
|
365
|
+
* **[Payment Integration](.agents/skills/payment-integration/SKILL.md)**: PCI DSS compliance, tokenization, and webhook reliability
|
|
366
|
+
* **[Supply Chain Security](.agents/skills/supply-chain-security/SKILL.md)**: SBOM generation, CVE scanning, and license compliance
|
|
367
|
+
|
|
368
|
+
### Agent Personas (16)
|
|
369
|
+
|
|
370
|
+
Agent personas are specialized sub-agents designed for multi-agent orchestration. Each agent has an exclusive domain, clear boundaries, and never crosses into another agent's territory — enforcing MECE at the architecture level.
|
|
371
|
+
|
|
372
|
+
#### Layers
|
|
373
|
+
|
|
374
|
+
| Layer | Agents | Purpose |
|
|
375
|
+
|---|---|---|
|
|
376
|
+
| **Orchestration** | `tech-lead` | Anchor persona: elicits requirements, composes primitives, enforces standards, owns all quality gates |
|
|
377
|
+
| **Research** | `scout` | Codebase exploration, pattern discovery, technology research |
|
|
378
|
+
| **Design** | `architect` + optional `ux-reviewer`, `database-expert`, `security-engineer` | System design, ADRs, API contracts |
|
|
379
|
+
| **Build** | `backend-engineer`, `frontend-engineer`, `mobile-engineer`, `database-expert`, `devops-engineer`, `technical-writer`, `test-automation-engineer`, `performance-engineer`, `refactoring-specialist` | Implementation with isolated worktrees |
|
|
380
|
+
| **Review** | `qa-analyst`, `security-engineer`, `ux-reviewer`, `incident-responder` | Quality gates, security audits, UX review |
|
|
381
|
+
|
|
382
|
+
See the [workflow-team](.agents/workflows/workflow-team.md) workflow for the full dispatch protocol, including recursive parallel dispatch with MECE file ownership and DAG-based execution ordering.
|
|
383
|
+
|
|
384
|
+
### Development Workflows (12)
|
|
408
385
|
|
|
409
386
|
The setup includes opinionated, end-to-end workflows that chain rules and skills into structured development processes.
|
|
410
387
|
|
|
411
|
-
#### 🏭 Feature Workflow (`/
|
|
388
|
+
#### 🏭 Feature Workflow — Single Agent (`/workflow-solo`)
|
|
412
389
|
|
|
413
|
-
The primary workflow for
|
|
390
|
+
The primary workflow for a single agent executing all phases sequentially — **no skipping**.
|
|
414
391
|
|
|
415
392
|
```
|
|
416
393
|
Research → Implement (TDD) → Integrate → E2E (conditional) → Verify → Ship
|
|
417
394
|
```
|
|
418
395
|
|
|
419
|
-
| Phase |
|
|
420
|
-
| ------------ |
|
|
421
|
-
| 1. Research | [
|
|
422
|
-
| 2. Implement | [
|
|
423
|
-
| 3. Integrate | [
|
|
424
|
-
| 3.5. E2E | [
|
|
425
|
-
| 4. Verify | [
|
|
426
|
-
| 5. Ship | [
|
|
396
|
+
| Phase | Phase File | Purpose |
|
|
397
|
+
| ------------ | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
|
|
398
|
+
| 1. Research | [`phase-research`](.agents/workflows/phase-research.md) | Understand context, search docs, create ADRs, uses [Qurio](https://github.com/irahardianto/qurio) default to web search |
|
|
399
|
+
| 2. Implement | [`phase-implement`](.agents/workflows/phase-implement.md) | TDD cycle: Red → Green → Refactor |
|
|
400
|
+
| 3. Integrate | [`phase-integrate`](.agents/workflows/phase-integrate.md) | Integration tests with Testcontainers |
|
|
401
|
+
| 3.5. E2E | [`phase-e2e`](.agents/workflows/phase-e2e.md) | End-to-end validation with Playwright |
|
|
402
|
+
| 4. Verify | [`phase-verify`](.agents/workflows/phase-verify.md) | Full lint, test, and build validation |
|
|
403
|
+
| 5. Ship | [`phase-commit`](.agents/workflows/phase-commit.md) | Git commit with conventional format |
|
|
404
|
+
|
|
405
|
+
#### 🤖 Multi-Agent Orchestration (`/workflow-team`)
|
|
406
|
+
|
|
407
|
+
The pipeline manager workflow for dispatching specialized sub-agents across layers. Supports parallel execution via git worktrees with MECE file ownership.
|
|
408
|
+
|
|
409
|
+
```
|
|
410
|
+
SCOUT → DESIGN → PRE-MORTEM → BUILD (parallel) → REVIEW (parallel) → REMEDIATE → VERIFY
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
Includes 11 workflow templates (A-K) for common scenarios: full features, bug fixes, audits, mobile features, security hardening, infrastructure, documentation sprints, incident response, and technical debt.
|
|
427
414
|
|
|
428
415
|
#### 🔧 Specialized Workflows
|
|
429
416
|
|
|
430
417
|
| Workflow | When to Use |
|
|
431
418
|
| ----------------------------------------------- | ---------------------------------------------------- |
|
|
432
|
-
| [`/
|
|
419
|
+
| [`/bugfix`](.agents/workflows/bugfix.md) | Bug fixes — from hotfixes to complex debugging sessions |
|
|
433
420
|
| [`/refactor`](.agents/workflows/refactor.md) | Safely restructure code while preserving behavior |
|
|
434
421
|
| [`/audit`](.agents/workflows/audit.md) | Code review and quality inspection (no new features) |
|
|
435
422
|
| [`/perf-optimize`](.agents/workflows/perf-optimize.md) | Profile-driven performance optimization |
|
|
@@ -439,57 +426,83 @@ Research → Implement (TDD) → Integrate → E2E (conditional) → Verify →
|
|
|
439
426
|
|
|
440
427
|
```
|
|
441
428
|
.agents/
|
|
442
|
-
├──
|
|
443
|
-
│ ├──
|
|
444
|
-
│ ├──
|
|
445
|
-
│ ├──
|
|
446
|
-
│
|
|
447
|
-
├──
|
|
448
|
-
│ ├──
|
|
449
|
-
│
|
|
450
|
-
|
|
451
|
-
│
|
|
429
|
+
├── agents/ # 16 agent personas (multi-agent orchestration)
|
|
430
|
+
│ ├── tech-lead.md # Orchestration anchor — elicits, composes, gates
|
|
431
|
+
│ ├── architect.md
|
|
432
|
+
│ ├── backend-engineer.md
|
|
433
|
+
│ ├── frontend-engineer.md
|
|
434
|
+
│ ├── scout.md
|
|
435
|
+
│ ├── qa-analyst.md
|
|
436
|
+
│ └── ... # 10 more specialized agents
|
|
437
|
+
├── rules/ # 25 rules: 10 always-on mandates + 15 contextual principles
|
|
438
|
+
│ │ # Each rule = project-specific decisions only (not model knowledge)
|
|
439
|
+
│ ├── rugged-software-constitution.md # always_on: hostile-environment posture
|
|
440
|
+
│ ├── security-mandate.md # always_on: deny by default
|
|
441
|
+
│ ├── logging-and-observability-mandate.md # always_on: all ops must log
|
|
442
|
+
│ ├── architectural-pattern.md # always_on: I/O isolation, testability
|
|
443
|
+
│ ├── rule-priority.md # always_on: conflict resolution
|
|
444
|
+
│ └── ... # 5 more always-on + 15 contextual principles
|
|
445
|
+
├── skills/ # 53 specialized skills — loaded on demand, not always
|
|
446
|
+
│ ├── go-idioms/ # paths: **/*.go — includes references/project-structure.md
|
|
447
|
+
│ ├── typescript-idioms/ # paths: **/*.ts, **/*.tsx
|
|
448
|
+
│ ├── vue-idioms/ # paths: **/*.vue, **/store/**/*.ts, **/*.store.ts
|
|
449
|
+
│ ├── flutter-idioms/ # paths: **/*.dart, **/analysis_options.yaml
|
|
450
|
+
│ ├── rust-idioms/ # paths: **/*.rs, **/Cargo.toml
|
|
451
|
+
│ ├── python-idioms/ # paths: **/*.py, **/pyproject.toml
|
|
452
|
+
│ ├── testability-patterns/ # reference-loaded from architectural-pattern.md
|
|
453
|
+
│ ├── logging-implementation/ # reference-loaded from logging-and-observability-mandate.md
|
|
454
|
+
│ ├── ci-cd/ # paths: Dockerfile, .github/workflows/*, Jenkinsfile, ...
|
|
455
|
+
│ ├── feature-flags/ # paths: feature*flag*, feature*toggle* (PRD-gated)
|
|
456
|
+
│ ├── debugging-protocol/ # Core engineering (reference-loaded)
|
|
452
457
|
│ ├── code-review/
|
|
453
458
|
│ ├── guardrails/
|
|
454
|
-
│ ├──
|
|
455
|
-
│
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
├──
|
|
462
|
-
├──
|
|
463
|
-
├──
|
|
464
|
-
├──
|
|
465
|
-
├──
|
|
466
|
-
├──
|
|
467
|
-
|
|
459
|
+
│ ├── parallel-dispatch/ # Multi-agent orchestration — consolidated safety invariants
|
|
460
|
+
│ ├── angular-idioms/ # Community language skills (18 ecosystems)
|
|
461
|
+
│ ├── react-idioms/
|
|
462
|
+
│ ├── java-idioms/
|
|
463
|
+
│ ├── incident-response/ # Domain skills
|
|
464
|
+
│ └── ...
|
|
465
|
+
└── workflows/ # 12 development workflows
|
|
466
|
+
├── workflow-solo.md # Composite: single-agent feature workflow
|
|
467
|
+
├── workflow-team.md # Composite: multi-agent pipeline manager
|
|
468
|
+
├── phase-research.md # Phase: understand context
|
|
469
|
+
├── phase-implement.md # Phase: TDD cycle
|
|
470
|
+
├── phase-integrate.md # Phase: integration tests
|
|
471
|
+
├── phase-verify.md # Phase: full validation
|
|
472
|
+
├── phase-commit.md # Phase: git commit
|
|
473
|
+
├── phase-e2e.md # Phase: E2E testing
|
|
474
|
+
├── bugfix.md # Standalone: bug fixes
|
|
475
|
+
├── refactor.md # Standalone: code restructuring
|
|
476
|
+
├── audit.md # Standalone: code review
|
|
477
|
+
└── perf-optimize.md # Standalone: performance tuning
|
|
468
478
|
```
|
|
469
479
|
|
|
470
480
|
<!-- ROADMAP -->
|
|
471
481
|
## Roadmap
|
|
472
482
|
|
|
473
|
-
- [x] Include more specialized skills to aid development process (
|
|
474
|
-
- [x] Add development workflows for structured feature delivery (
|
|
475
|
-
- [x] Add language-specific idiom
|
|
483
|
+
- [x] Include more specialized skills to aid development process (53 skills shipped).
|
|
484
|
+
- [x] Add development workflows for structured feature delivery (12 workflows shipped).
|
|
485
|
+
- [x] Add language-specific idiom skills (Go, TypeScript, Vue, Flutter, Rust, Python + 18 community language skills).
|
|
476
486
|
- [x] Create a CLI tool for easier installation (`npx awesome-agv`).
|
|
487
|
+
- [x] Add multi-agent orchestration with 16 specialized agent personas (including tech-lead anchor) and consolidated parallel dispatch.
|
|
488
|
+
- [x] Distill rules to decisions-only: strip generic knowledge, keep project-specific overrides (25 rules, -71% from peak).
|
|
489
|
+
- [x] Migrate language idioms from rules to on-demand skills — only load when relevant to the task.
|
|
477
490
|
- [ ] Add automated validation scripts to check if an agent is following the constitution.
|
|
478
491
|
- [x] Publish comprehensive documentation site (GitHub Pages).
|
|
479
492
|
|
|
480
493
|
## Opinionated Technology Choices
|
|
481
494
|
|
|
482
|
-
Awesome AGV ships with **opinionated defaults** for specific technology stacks. Each stack has dedicated idiom files
|
|
495
|
+
Awesome AGV ships with **opinionated defaults** for specific technology stacks. Each stack has a dedicated idiom skill that auto-loads when touching files in that language, providing patterns, tooling, project layout, and quality commands.
|
|
483
496
|
|
|
484
|
-
| Stack | Default Choice | Idiom
|
|
497
|
+
| Stack | Default Choice | Idiom Skill |
|
|
485
498
|
| ---------------- | --------------------------------------------------- | ----------------------------------------------------------------- |
|
|
486
|
-
| **Backend** | Go — vanilla stdlib, minimal deps |
|
|
487
|
-
| **Frontend** | TypeScript + Vue 3 — Composition API, Pinia, Vitest |
|
|
488
|
-
| **Mobile** | Flutter + Riverpod — freezed models, go_router
|
|
489
|
-
| **Systems** | Rust — tokio, thiserror/anyhow, clippy pedantic |
|
|
490
|
-
| **Scripting/AI** | Python — ruff, mypy strict, pytest, Pydantic |
|
|
499
|
+
| **Backend** | Go — vanilla stdlib, minimal deps | [go-idioms](.agents/skills/go-idioms/SKILL.md) |
|
|
500
|
+
| **Frontend** | TypeScript + Vue 3 — Composition API, Pinia, Vitest | [typescript-idioms](.agents/skills/typescript-idioms/SKILL.md) + [vue-idioms](.agents/skills/vue-idioms/SKILL.md) |
|
|
501
|
+
| **Mobile** | Flutter + Riverpod 3 — freezed models, go_router | [flutter-idioms](.agents/skills/flutter-idioms/SKILL.md) |
|
|
502
|
+
| **Systems** | Rust — tokio, thiserror/anyhow, clippy pedantic | [rust-idioms](.agents/skills/rust-idioms/SKILL.md) |
|
|
503
|
+
| **Scripting/AI** | Python — ruff, mypy strict, pytest, Pydantic | [python-idioms](.agents/skills/python-idioms/SKILL.md) |
|
|
491
504
|
|
|
492
|
-
**Using a different framework?** The idiom
|
|
505
|
+
**Using a different framework?** The idiom skills are modular — swap or edit them to match your stack. Community language skills are available for Angular, React, Next.js, Spring Boot, Django, Laravel, Rails, and more. See the [Adapting guide](https://irahardianto.github.io/awesome-agv/adapting) for which files to change.
|
|
493
506
|
|
|
494
507
|
## Project Adaptation Guide
|
|
495
508
|
|
|
@@ -498,12 +511,12 @@ This setup supports different project structures:
|
|
|
498
511
|
| Project Type | Adaptation |
|
|
499
512
|
| ----------------------- | ---------------------------------------------------------------- |
|
|
500
513
|
| **Monorepo** (default) | Use as-is |
|
|
501
|
-
| **Single backend** | Remove frontend
|
|
502
|
-
| **Single frontend** | Remove backend
|
|
514
|
+
| **Single backend** | Remove frontend workflows, keep backend idiom skill |
|
|
515
|
+
| **Single frontend** | Remove backend workflows, keep frontend idiom skills |
|
|
503
516
|
| **Microservices** | Adapt `project-structure.md` per service, add service mesh rules |
|
|
504
|
-
| **Mobile (Flutter/RN)** |
|
|
517
|
+
| **Mobile (Flutter/RN)** | Use flutter-idioms or react-idioms skill |
|
|
505
518
|
|
|
506
|
-
**To adapt:** Edit `project-structure.md`, the relevant idiom
|
|
519
|
+
**To adapt:** Edit `project-structure.md`, the relevant idiom skill's `references/project-structure.md`, and `phase-verify.md` to match your project layout.
|
|
507
520
|
|
|
508
521
|
<!-- CONTRIBUTING -->
|
|
509
522
|
## Contributing
|
package/bin/awesome-agv.js
CHANGED
|
@@ -92,8 +92,9 @@ ${color.bold}EXAMPLES${color.reset}
|
|
|
92
92
|
|
|
93
93
|
${color.bold}WHAT GETS INSTALLED${color.reset}
|
|
94
94
|
${icons.book} 42 Rules — Security, architecture, language idioms, DevOps standards
|
|
95
|
-
${icons.tool}
|
|
96
|
-
${icons.cycle}
|
|
95
|
+
${icons.tool} 43 Skills — Debugging, design, code review, language idioms, and more
|
|
96
|
+
${icons.cycle} 12 Workflows — End-to-end development processes
|
|
97
|
+
🤖 15 Agents — Specialized personas for multi-agent orchestration
|
|
97
98
|
|
|
98
99
|
${color.dim}https://github.com/${REPO_OWNER}/${REPO_NAME}${color.reset}
|
|
99
100
|
`);
|
|
@@ -284,6 +285,7 @@ function printSuccess(targetDir) {
|
|
|
284
285
|
const rulesDir = path.join(agentDir, 'rules');
|
|
285
286
|
const skillsDir = path.join(agentDir, 'skills');
|
|
286
287
|
const workflowsDir = path.join(agentDir, 'workflows');
|
|
288
|
+
const agentsDir = path.join(agentDir, 'agents');
|
|
287
289
|
|
|
288
290
|
const rulesCount = fs.existsSync(rulesDir)
|
|
289
291
|
? fs.readdirSync(rulesDir).filter((f) => f.endsWith('.md')).length
|
|
@@ -294,6 +296,9 @@ function printSuccess(targetDir) {
|
|
|
294
296
|
const workflowsCount = fs.existsSync(workflowsDir)
|
|
295
297
|
? fs.readdirSync(workflowsDir).filter((f) => f.endsWith('.md')).length
|
|
296
298
|
: 0;
|
|
299
|
+
const agentsCount = fs.existsSync(agentsDir)
|
|
300
|
+
? fs.readdirSync(agentsDir).filter((f) => f.endsWith('.md')).length
|
|
301
|
+
: 0;
|
|
297
302
|
const totalFiles = countFiles(agentDir);
|
|
298
303
|
|
|
299
304
|
console.log(`
|
|
@@ -302,16 +307,18 @@ ${color.green}${color.bold} Installation complete! ${icons.rocket}${color.reset
|
|
|
302
307
|
${icons.check} ${color.bold}${totalFiles} files${color.reset} installed to ${color.cyan}${path.relative(process.cwd(), agentDir) || AGENT_DIR}/${color.reset}
|
|
303
308
|
|
|
304
309
|
${icons.book} ${color.bold}${rulesCount}${color.reset} Rules ${color.dim}Security, architecture, testing standards${color.reset}
|
|
305
|
-
${icons.tool} ${color.bold}${skillsCount}${color.reset} Skills ${color.dim}Debugging, design, code review${color.reset}
|
|
310
|
+
${icons.tool} ${color.bold}${skillsCount}${color.reset} Skills ${color.dim}Debugging, design, code review, language idioms${color.reset}
|
|
306
311
|
${icons.cycle} ${color.bold}${workflowsCount}${color.reset} Workflows ${color.dim}End-to-end dev processes${color.reset}
|
|
312
|
+
🤖 ${color.bold}${agentsCount}${color.reset} Agents ${color.dim}Specialized multi-agent personas${color.reset}
|
|
307
313
|
|
|
308
314
|
${icons.arrow} ${color.dim}Your AI agent will automatically pick up the${color.reset}
|
|
309
315
|
${color.dim}${AGENT_DIR}/ directory. No additional configuration needed.${color.reset}
|
|
310
316
|
|
|
311
317
|
💡 ${color.bold}Quick start${color.reset} — open a chat with your agent and try:
|
|
312
|
-
${color.cyan}/
|
|
318
|
+
${color.cyan}/workflow-solo${color.reset} ${color.dim}Build a feature end-to-end (single agent)${color.reset}
|
|
319
|
+
${color.cyan}/workflow-team${color.reset} ${color.dim}Build with multi-agent orchestration${color.reset}
|
|
313
320
|
${color.cyan}/audit${color.reset} ${color.dim}Review code quality${color.reset}
|
|
314
|
-
${color.cyan}/
|
|
321
|
+
${color.cyan}/bugfix${color.reset} ${color.dim}Fix a bug fast${color.reset}
|
|
315
322
|
${color.dim}Rules and skills are modular — use with or without workflows.${color.reset}
|
|
316
323
|
|
|
317
324
|
${icons.shield} ${color.dim}Learn more: ${color.cyan}https://github.com/${REPO_OWNER}/${REPO_NAME}${color.reset}
|