awesome-agv 1.0.0 → 1.0.4
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 +266 -0
- package/bin/awesome-agv.js +38 -4
- package/package.json +1 -1
package/README.md
ADDED
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
<img src="banner.png" alt="Awesome AGV" width="800" />
|
|
3
|
+
<h3 align="center">Awesome AGV</h3>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
A rugged, high-quality configuration suite for AI Agents.
|
|
7
|
+
<br />
|
|
8
|
+
<a href="#usage">View Rules & Skills</a>
|
|
9
|
+
·
|
|
10
|
+
<a href="https://github.com/irahardianto/awesome-agv/issues">Report Bug</a>
|
|
11
|
+
·
|
|
12
|
+
<a href="https://github.com/irahardianto/awesome-agv/issues">Request Feature</a>
|
|
13
|
+
<br />
|
|
14
|
+
<br />
|
|
15
|
+
</p>
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<!-- ABOUT THE PROJECT -->
|
|
19
|
+
## About Awesome AGV
|
|
20
|
+
|
|
21
|
+
**Awesome AGV** provides a comprehensive sets 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 will help throughout software development.
|
|
22
|
+
|
|
23
|
+
Instead of just generating code that works, the rules and skills ensures agents generate code that **survives**.
|
|
24
|
+
|
|
25
|
+
While this configuration is originally designed for **Antigravity**, it is built on standard markdown-based context protocols that are easily portable to other AI coding tools. As a matter of fact, the original form [Technical Constitution](https://github.com/irahardianto/technical-constitution/blob/main/technical-constitution-full.md) was first created for **Gemini CLI**
|
|
26
|
+
|
|
27
|
+
You can drop this configuration into the context or custom rule settings of:
|
|
28
|
+
|
|
29
|
+
* **Roo Code**
|
|
30
|
+
* **Claude Code**
|
|
31
|
+
* Any other agentic tool that supports custom system prompts or context loading.
|
|
32
|
+
|
|
33
|
+
For example, the principles of the [Rugged Software Constitution](.agent/rules/rugged-software-constitution.md) which is based on [Rugged Software Manifesto](https://ruggedsoftware.org/) are universal and will improve the output of any LLM-based coding assistant.
|
|
34
|
+
|
|
35
|
+
### Key Features
|
|
36
|
+
|
|
37
|
+
* 📏 **30 Rules** — covering security, reliability, architecture, maintainability, and DevOps.
|
|
38
|
+
* 🛠️ **7 Skills** — specialized capabilities for debugging, design, code review, and more.
|
|
39
|
+
* 🔄 **10 Workflows** — end-to-end development processes from research to ship.
|
|
40
|
+
* 🏗️ **Two-Tier Rule System** — always-on mandates + contextual principles for zero-noise enforcement.
|
|
41
|
+
|
|
42
|
+
> **💡 Everything is modular.** Rules and skills work independently — you don't need workflows to benefit from them. Use only what you need, modify anything, or build your own workflows. It's a toolkit, not a framework.
|
|
43
|
+
|
|
44
|
+
<!-- GETTING STARTED -->
|
|
45
|
+
## Getting Started
|
|
46
|
+
|
|
47
|
+
To equip your AI agent with these superpowers, follow these steps.
|
|
48
|
+
|
|
49
|
+
### Prerequisites
|
|
50
|
+
|
|
51
|
+
* An AI Coding Assistant (Antigravity, Roo Code, Cline, etc.)
|
|
52
|
+
* A project where you want to enforce high standards.
|
|
53
|
+
|
|
54
|
+
### Installation
|
|
55
|
+
|
|
56
|
+
**Quick Install (recommended):**
|
|
57
|
+
```sh
|
|
58
|
+
npx awesome-agv
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
This downloads and installs the latest `.agent/` directory into your current project. Your AI agent will automatically pick it up — no additional configuration needed.
|
|
62
|
+
|
|
63
|
+
**Options:**
|
|
64
|
+
|
|
65
|
+
| Flag | Description |
|
|
66
|
+
| -------------- | ---------------------------------------------- |
|
|
67
|
+
| `[target-dir]` | Directory to install into (default: `./`) |
|
|
68
|
+
| `--force, -f` | Overwrite existing `.agent/` without prompting |
|
|
69
|
+
| `--help, -h` | Show help |
|
|
70
|
+
|
|
71
|
+
### Examples
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
# Install into current directory
|
|
75
|
+
npx awesome-agv
|
|
76
|
+
|
|
77
|
+
# Install into a specific project
|
|
78
|
+
npx awesome-agv ./my-project
|
|
79
|
+
|
|
80
|
+
# Overwrite existing installation without prompting
|
|
81
|
+
npx awesome-agv --force
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Manual Install:**
|
|
85
|
+
|
|
86
|
+
1. Clone this repository or copy the `.agent` folder into the root of your project.
|
|
87
|
+
```sh
|
|
88
|
+
cp -r /path/to/awesome-agv/.agent ./your-project-root/
|
|
89
|
+
```
|
|
90
|
+
2. Ensure your AI agent is configured to read from the `.agent` directory (most of well-known AI coding assistant are adhering to the `.agent` convention by default, no action needed) or manually ingest the `.agent/rules/**` as part of its system prompt.
|
|
91
|
+
|
|
92
|
+
<!-- USAGE -->
|
|
93
|
+
## Usage
|
|
94
|
+
|
|
95
|
+
Once installed, the rules and skills in this repository become active for your agent.
|
|
96
|
+
|
|
97
|
+
### Rule Architecture
|
|
98
|
+
|
|
99
|
+
The setup uses a **two-tier rule system** to minimize noise while maximizing coverage:
|
|
100
|
+
|
|
101
|
+
| Type | Trigger | Purpose |
|
|
102
|
+
| -------------- | ---------------- | ---------------------------------------------------------------------------------------------------------------------------- |
|
|
103
|
+
| **Mandates** | `always_on` | Non-negotiable constraints loaded in every session (security, logging, code completion). |
|
|
104
|
+
| **Principles** | `model_decision` | Contextual guidance activated only when working on relevant areas (e.g., database rules activate only when writing queries). |
|
|
105
|
+
|
|
106
|
+
Conflicts between rules are resolved by [Rule Priority](.agent/rules/rule-priority.md) — security always wins.
|
|
107
|
+
|
|
108
|
+
### Comprehensive Rule Suite
|
|
109
|
+
|
|
110
|
+
The power of the setup comes from its extensive collection of rules covering every aspect of software engineering.
|
|
111
|
+
|
|
112
|
+
#### 🛡️ Security & Integrity
|
|
113
|
+
* **[Rugged Software Constitution](.agent/rules/rugged-software-constitution.md)**: The core philosophy of defensible coding.
|
|
114
|
+
* **[Security Mandate](.agent/rules/security-mandate.md)**: Non-negotiable security requirements.
|
|
115
|
+
* **[Security Principles](.agent/rules/security-principles.md)**: Best practices for secure design.
|
|
116
|
+
|
|
117
|
+
#### ⚡ Reliability & Performance
|
|
118
|
+
* **[Error Handling Principles](.agent/rules/error-handling-principles.md)**: Techniques for robust error management.
|
|
119
|
+
* **[Concurrency & Threading](.agent/rules/concurrency-and-threading-principles.md)**: Safe parallel execution and deadlock prevention.
|
|
120
|
+
* **[Concurrency & Threading Mandate](.agent/rules/concurrency-and-threading-mandate.md)**: When to use (and not use) concurrency.
|
|
121
|
+
* **[Performance Optimization](.agent/rules/performance-optimization-principles.md)**: Writing efficient and scalable code.
|
|
122
|
+
* **[Resource Management](.agent/rules/resources-and-memory-management-principles.md)**: Handling memory and system resources responsibly.
|
|
123
|
+
* **[Monitoring & Alerting](.agent/rules/monitoring-and-alerting-principles.md)**: Health checks, metrics, and graceful degradation.
|
|
124
|
+
* **[Configuration Management](.agent/rules/configuration-management-principles.md)**: Environment variables, secrets, and config hierarchy.
|
|
125
|
+
|
|
126
|
+
#### 🏗️ Architecture & Design
|
|
127
|
+
* **[Core Design Principles](.agent/rules/core-design-principles.md)**: Fundamental software design rules (SOLID, DRY, etc.).
|
|
128
|
+
* **[API Design Principles](.agent/rules/api-design-principles.md)**: Creating clean, intuitive, and versionable APIs.
|
|
129
|
+
* **[Architectural Pattern](.agent/rules/architectural-pattern.md)**: Testability-first design with I/O isolation.
|
|
130
|
+
* **[Project Structure](.agent/rules/project-structure.md)**: Feature-based organization (the single source of truth for layout).
|
|
131
|
+
* **[Database Design](.agent/rules/database-design-principles.md)**: Schema design, migrations, and query safety.
|
|
132
|
+
* **[Data Serialization](.agent/rules/data-serialization-and-interchange-principles.md)**: Safe data handling and formats.
|
|
133
|
+
* **[Command Execution](.agent/rules/command-execution-principles.md)**: Principles for running system commands securely.
|
|
134
|
+
* **[Avoid Circular Dependencies](.agent/rules/avoid-circular-dependencies.md)**: Preventing module import cycles.
|
|
135
|
+
|
|
136
|
+
#### 🧩 Maintainability & Quality
|
|
137
|
+
* **[Code Organization](.agent/rules/code-organization-principles.md)**: Structuring projects for readability.
|
|
138
|
+
* **[Code Idioms](.agent/rules/code-idioms-and-conventions.md)**: Following language-specific best practices.
|
|
139
|
+
* **[Testing Strategy](.agent/rules/testing-strategy.md)**: Ensuring code is verifiable and tested.
|
|
140
|
+
* **[Dependency Management](.agent/rules/dependency-management-principles.md)**: Managing external libraries safely.
|
|
141
|
+
* **[Documentation Principles](.agent/rules/documentation-principles.md)**: Writing clear and helpful documentation.
|
|
142
|
+
* **[Logging & Observability](.agent/rules/logging-and-observability-principles.md)**: Ensuring system visibility.
|
|
143
|
+
* **[Logging & Observability Mandate](.agent/rules/logging-and-observability-mandate.md)**: All operations must be logged — no exceptions.
|
|
144
|
+
* **[Accessibility Principles](.agent/rules/accessibility-principles.md)**: WCAG 2.1 AA compliance for UIs.
|
|
145
|
+
* **[Git Workflow](.agent/rules/git-workflow-principles.md)**: Conventional commits, branch naming, and PR hygiene.
|
|
146
|
+
|
|
147
|
+
#### 🔄 DevOps & Operations
|
|
148
|
+
* **[CI/CD Principles](.agent/rules/ci-cd-principles.md)**: Pipeline design, Docker, and GitHub Actions.
|
|
149
|
+
* **[Code Completion Mandate](.agent/rules/code-completion-mandate.md)**: Automated quality checks before every delivery.
|
|
150
|
+
* **[Rule Priority](.agent/rules/rule-priority.md)**: Conflict resolution when rules contradict each other.
|
|
151
|
+
|
|
152
|
+
### Specialized Skills
|
|
153
|
+
|
|
154
|
+
* **[Debugging Protocol](.agent/skills/debugging-protocol/SKILL.md)**: Systematic approach to solving errors.
|
|
155
|
+
* **[Frontend Design](.agent/skills/frontend-design/SKILL.md)**: Guidelines for creating visually appealing UIs, based on [Anthropic Frontend-Design Skills](https://github.com/anthropics/skills/tree/main/skills/frontend-design)
|
|
156
|
+
* **[Mobile Design](.agent/skills/mobile-design/SKILL.md)**: Production-grade mobile interfaces for Flutter and React Native.
|
|
157
|
+
* **[Sequential Thinking](.agent/skills/sequential-thinking/SKILL.md)**: A tool for breaking down complex problems, an adaptation from [Sequential Thinking MCP Server](https://github.com/modelcontextprotocol/servers/tree/main/src/sequentialthinking)
|
|
158
|
+
* **[Code Review](.agent/skills/code-review/SKILL.md)**: Structured code review protocol against the full rule set.
|
|
159
|
+
* **[Guardrails](.agent/skills/guardrails/SKILL.md)**: Pre-flight checklist and post-implementation self-review.
|
|
160
|
+
* **[ADR (Architecture Decision Records)](.agent/skills/adr/SKILL.md)**: Document significant architectural decisions with context and trade-offs.
|
|
161
|
+
|
|
162
|
+
### Development Workflows
|
|
163
|
+
|
|
164
|
+
The setup includes opinionated, end-to-end workflows that chain rules and skills into structured development processes.
|
|
165
|
+
|
|
166
|
+
#### 🏭 Feature Workflow (`/orchestrator`)
|
|
167
|
+
|
|
168
|
+
The primary workflow for building features. Phases execute sequentially — **no skipping**.
|
|
169
|
+
|
|
170
|
+
```
|
|
171
|
+
Research → Implement (TDD) → Integrate → E2E (conditional) → Verify → Ship
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
| Phase | Workflow | Purpose |
|
|
175
|
+
| ------------ | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
|
|
176
|
+
| 1. Research | [`/1-research`](.agent/workflows/1-research.md) | Understand context, search docs, create ADRs, uses [Qurio](https://github.com/irahardianto/qurio) default to web search |
|
|
177
|
+
| 2. Implement | [`/2-implement`](.agent/workflows/2-implement.md) | TDD cycle: Red → Green → Refactor |
|
|
178
|
+
| 3. Integrate | [`/3-integrate`](.agent/workflows/3-integrate.md) | Integration tests with Testcontainers |
|
|
179
|
+
| 3.5. E2E | [`/e2e-test`](.agent/workflows/e2e-test.md) | End-to-end validation with Playwright |
|
|
180
|
+
| 4. Verify | [`/4-verify`](.agent/workflows/4-verify.md) | Full lint, test, and build validation |
|
|
181
|
+
| 5. Ship | [`/5-commit`](.agent/workflows/5-commit.md) | Git commit with conventional format |
|
|
182
|
+
|
|
183
|
+
#### 🔧 Specialized Workflows
|
|
184
|
+
|
|
185
|
+
| Workflow | When to Use |
|
|
186
|
+
| --------------------------------------------- | ---------------------------------------------------- |
|
|
187
|
+
| [`/quick-fix`](.agent/workflows/quick-fix.md) | Bug fixes with known root cause (<50 lines) |
|
|
188
|
+
| [`/refactor`](.agent/workflows/refactor.md) | Safely restructure code while preserving behavior |
|
|
189
|
+
| [`/audit`](.agent/workflows/audit.md) | Code review and quality inspection (no new features) |
|
|
190
|
+
|
|
191
|
+
<!-- DIRECTORY STRUCTURE -->
|
|
192
|
+
## Directory Structure
|
|
193
|
+
|
|
194
|
+
```
|
|
195
|
+
.agent/
|
|
196
|
+
├── rules/ # 30 rules (mandates + principles)
|
|
197
|
+
│ ├── rugged-software-constitution.md
|
|
198
|
+
│ ├── security-mandate.md
|
|
199
|
+
│ ├── rule-priority.md
|
|
200
|
+
│ └── ...
|
|
201
|
+
├── skills/ # 7 specialized skills
|
|
202
|
+
│ ├── debugging-protocol/
|
|
203
|
+
│ ├── frontend-design/
|
|
204
|
+
│ ├── mobile-design/
|
|
205
|
+
│ ├── sequential-thinking/
|
|
206
|
+
│ ├── code-review/
|
|
207
|
+
│ ├── guardrails/
|
|
208
|
+
│ └── adr/
|
|
209
|
+
└── workflows/ # 10 development workflows
|
|
210
|
+
├── orchestrator.md
|
|
211
|
+
├── 1-research.md
|
|
212
|
+
├── 2-implement.md
|
|
213
|
+
├── 3-integrate.md
|
|
214
|
+
├── 4-verify.md
|
|
215
|
+
├── 5-commit.md
|
|
216
|
+
├── quick-fix.md
|
|
217
|
+
├── refactor.md
|
|
218
|
+
├── audit.md
|
|
219
|
+
└── e2e-test.md
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
<!-- ROADMAP -->
|
|
223
|
+
## Roadmap
|
|
224
|
+
|
|
225
|
+
- [x] Include more specialized skills to aid development process (7 skills shipped).
|
|
226
|
+
- [x] Add development workflows for structured feature delivery (10 workflows shipped).
|
|
227
|
+
- [ ] Add more language-specific security rules (Python, Go, Rust).
|
|
228
|
+
- [x] Create a CLI tool for easier installation (`npx awesome-agv`).
|
|
229
|
+
- [ ] Add automated validation scripts to check if an agent is following the constitution.
|
|
230
|
+
- [x] Publish comprehensive documentation site (GitHub Pages).
|
|
231
|
+
|
|
232
|
+
## Project Adaptation Guide
|
|
233
|
+
|
|
234
|
+
This setup supports different project structures:
|
|
235
|
+
|
|
236
|
+
| Project Type | Adaptation |
|
|
237
|
+
| ----------------------- | ---------------------------------------------------------------- |
|
|
238
|
+
| **Monorepo** (default) | Use as-is |
|
|
239
|
+
| **Single backend** | Remove frontend rules/workflows, keep backend paths |
|
|
240
|
+
| **Single frontend** | Remove backend rules/workflows, keep frontend paths |
|
|
241
|
+
| **Microservices** | Adapt `project-structure.md` per service, add service mesh rules |
|
|
242
|
+
| **Mobile (Flutter/RN)** | Adapt frontend rules, add mobile-specific accessibility/testing |
|
|
243
|
+
|
|
244
|
+
**To adapt:** Edit `project-structure.md` and `4-verify.md` to match your project layout.
|
|
245
|
+
|
|
246
|
+
<!-- CONTRIBUTING -->
|
|
247
|
+
## Contributing
|
|
248
|
+
|
|
249
|
+
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
|
|
250
|
+
|
|
251
|
+
1. Fork the Project
|
|
252
|
+
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
|
|
253
|
+
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
|
|
254
|
+
4. Push to the Branch (`git push origin feature/AmazingFeature`)
|
|
255
|
+
5. Open a Pull Request
|
|
256
|
+
|
|
257
|
+
<!-- LICENSE -->
|
|
258
|
+
## License
|
|
259
|
+
|
|
260
|
+
Distributed under the MIT License. See the [LICENSE](LICENSE) file for details.
|
|
261
|
+
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
<p align="center">
|
|
265
|
+
Built with ❤️ for the Developer Community
|
|
266
|
+
</p>
|
package/bin/awesome-agv.js
CHANGED
|
@@ -242,11 +242,39 @@ function countFiles(dirPath) {
|
|
|
242
242
|
function printBanner() {
|
|
243
243
|
// Load version from package.json
|
|
244
244
|
const { version } = require('../package.json');
|
|
245
|
+
|
|
246
|
+
const boxWidth = 44; // inner width between ║ and ║
|
|
247
|
+
const border = '═'.repeat(boxWidth);
|
|
248
|
+
|
|
249
|
+
const titleText = `awesome-agv v${version}`;
|
|
250
|
+
const subtitleText = 'Awesome AGV AI Agent Configuration';
|
|
251
|
+
|
|
252
|
+
// Center-pad a visible string inside the box
|
|
253
|
+
function padCenter(text, width) {
|
|
254
|
+
const pad = width - text.length;
|
|
255
|
+
const left = Math.floor(pad / 2);
|
|
256
|
+
const right = pad - left;
|
|
257
|
+
return ' '.repeat(left) + text + ' '.repeat(right);
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
const titlePadded = padCenter(titleText, boxWidth);
|
|
261
|
+
const subtitlePadded = padCenter(subtitleText, boxWidth);
|
|
262
|
+
|
|
263
|
+
// Build colored title: split at the version part for coloring
|
|
264
|
+
const titleColored = titlePadded.replace(
|
|
265
|
+
titleText,
|
|
266
|
+
`${color.magenta}awesome-agv${color.cyan}${color.bold} ${color.dim}v${version}${color.cyan}${color.bold}`
|
|
267
|
+
);
|
|
268
|
+
const subtitleColored = subtitlePadded.replace(
|
|
269
|
+
subtitleText,
|
|
270
|
+
`${color.reset}${color.dim}${subtitleText}${color.cyan}${color.bold}`
|
|
271
|
+
);
|
|
272
|
+
|
|
245
273
|
console.log(`
|
|
246
|
-
${color.bold}${color.cyan}
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
274
|
+
${color.bold}${color.cyan} ╔${border}╗
|
|
275
|
+
║${titleColored}║
|
|
276
|
+
║${subtitleColored}║
|
|
277
|
+
╚${border}╝${color.reset}
|
|
250
278
|
`);
|
|
251
279
|
}
|
|
252
280
|
|
|
@@ -280,6 +308,12 @@ ${color.green}${color.bold} Installation complete! ${icons.rocket}${color.reset
|
|
|
280
308
|
${icons.arrow} ${color.dim}Your AI agent will automatically pick up the${color.reset}
|
|
281
309
|
${color.dim}${AGENT_DIR}/ directory. No additional configuration needed.${color.reset}
|
|
282
310
|
|
|
311
|
+
💡 ${color.bold}Quick start${color.reset} — open a chat with your agent and try:
|
|
312
|
+
${color.cyan}/orchestrator${color.reset} ${color.dim}Build a feature end-to-end${color.reset}
|
|
313
|
+
${color.cyan}/audit${color.reset} ${color.dim}Review code quality${color.reset}
|
|
314
|
+
${color.cyan}/quick-fix${color.reset} ${color.dim}Fix a bug fast${color.reset}
|
|
315
|
+
${color.dim}Rules and skills are modular — use with or without workflows.${color.reset}
|
|
316
|
+
|
|
283
317
|
${icons.shield} ${color.dim}Learn more: ${color.cyan}https://github.com/${REPO_OWNER}/${REPO_NAME}${color.reset}
|
|
284
318
|
`);
|
|
285
319
|
}
|