Skip to content

Commit 3bba84e

Browse files
committed
feat: 🎉 prepare for major version release with service architecture
BREAKING CHANGE: Complete refactoring from helper-based to service-based architecture. Service files are now in cli/services/ instead of cli/utils/
1 parent 01c7cba commit 3bba84e

2 files changed

Lines changed: 138 additions & 14 deletions

File tree

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
---
2+
description:
3+
globs:
4+
alwaysApply: false
5+
---
6+
# Commit Conventions
7+
8+
This document outlines the commit conventions used in the Agent Rules Kit project. We use **semantic-release** for automated versioning and CHANGELOG generation.
9+
10+
## Language
11+
12+
**All commits must be written in English**, regardless of your native language. This ensures consistency throughout the project, as all code, documentation, and rules are maintained in English.
13+
14+
## Commit Format
15+
16+
We follow the [Conventional Commits](mdc:https:/www.conventionalcommits.org) specification with emojis:
17+
18+
```
19+
<emoji> <type>[(scope)]!: <description>
20+
21+
[optional body]
22+
23+
[optional footer(s)]
24+
```
25+
26+
## Emojis and Types
27+
28+
Always include an appropriate emoji as the first character of your commit message, followed by the type.
29+
30+
### Versioning Commits (affect semver)
31+
32+
When your changes affect the semantic versioning of the package, use these types:
33+
34+
| Emoji | Type | Description | Versioning Impact |
35+
|-------|------|-------------|------------------|
36+
| ✨ | feat | New feature | MINOR |
37+
| 🐛 | fix | Bug fix | PATCH |
38+
| 🎉 | feat! or fix! | Breaking change (with exclamation mark) | MAJOR |
39+
40+
For major version bumps (BREAKING CHANGES), you MUST:
41+
1. Add an exclamation mark `!` before the colon
42+
2. Include a `BREAKING CHANGE:` section in the footer
43+
44+
Example:
45+
```
46+
🎉 feat!: redesign user authentication system
47+
48+
Complete overhaul of authentication flow and API
49+
50+
BREAKING CHANGE: The auth token format has changed and all clients will need to be updated
51+
```
52+
53+
### Non-versioning Commits
54+
55+
For changes that don't affect the version number:
56+
57+
| Emoji | Type | Description |
58+
|-------|------|-------------|
59+
| 📝 | docs | Documentation changes |
60+
| 🔧 | chore | Maintenance tasks |
61+
| ♻️ | refactor | Code changes that neither fix bugs nor add features |
62+
| 🎨 | style | Code style/formatting changes |
63+
| ⚡️ | perf | Performance improvements |
64+
| ✅ | test | Adding or correcting tests |
65+
| 🔨 | build | Build system changes |
66+
| 🚀 | ci | CI configuration changes |
67+
68+
Example:
69+
```
70+
📝 docs: update README with new architecture documentation
71+
```
72+
73+
## Best Practices
74+
75+
1. Keep the first line (subject) under 72 characters
76+
2. Use the imperative mood ("add" not "added" or "adds")
77+
3. Don't capitalize the first letter after the type
78+
4. No period at the end of the subject line
79+
5. Separate subject from body with a blank line
80+
6. Use the body to explain what and why vs. how
81+
82+
## Branch Naming
83+
84+
Follow a similar convention for branch names:
85+
- `feature/short-description` - For new features
86+
- `fix/issue-description` - For bug fixes
87+
- `docs/update-area` - For documentation updates
88+
- `refactor/component-name` - For refactoring

README.md

Lines changed: 50 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Agent Rules Kit
1+
# Agent Rules Kit v1.0
22

33
<p align="center">
44
<img src="assets/banner_agent_rules_kit.jpg" alt="Agent Rules Kit Logo" width="729" />
@@ -10,13 +10,26 @@
1010

1111
Agent Rules Kit is a CLI tool that facilitates the installation and configuration of rules for Cursor AI, the AI-powered IDE. The rules help AI agents better understand the structure, patterns, and best practices of different technology stacks.
1212

13-
## Main Features
13+
## 🎉 New Architecture
14+
15+
We've completely redesigned the internal architecture to provide a more maintainable and extensible system:
16+
17+
- **Service-Based Architecture**: Replaced the helper-based system with a clean service-oriented architecture
18+
- **Automatic Backups**: Automatically creates backups of existing rules before overwriting
19+
- **Enhanced Debug Mode**: Better visibility into the rule generation process
20+
- **Improved Testing Framework**: More robust testing with better mocking
21+
- **React Architecture Options**: Now includes support for atomic design and feature-sliced design
22+
- **Better State Management Support**: Enhanced support for various state management libraries
23+
24+
## 🎉 New Features in Version 1.0
1425

1526
- 🚀 Quick setup of rules for different frameworks and stacks
1627
- 🔍 Automatic framework version detection
1728
- 🏗️ Support for multiple architectural styles
1829
- 📚 Mirror documentation generation for human reference
1930
- 🧩 Modular system for easy expansion to new frameworks
31+
- 💾 Automatic backups of existing rules
32+
- 🔄 Version-specific rule overlays
2033

2134
## Supported Stacks
2235

@@ -40,7 +53,7 @@ Agent Rules Kit is a CLI tool that facilitates the installation and configuratio
4053
| <img src="https://img.shields.io/badge/Next.js-000000?style=for-the-badge&logo=nextdotjs&logoColor=white" alt="Next.js" width="100"/> | ![80%](https://progress-bar.dev/80) | App & Pages router support, version detection, testing docs |
4154
| <img src="https://img.shields.io/badge/Angular-DD0031?style=for-the-badge&logo=angular&logoColor=white" alt="Angular" width="100"/> | ![55%](https://progress-bar.dev/55) | Signals support, base project structure |
4255
| <img src="https://img.shields.io/badge/NestJS-E0234E?style=for-the-badge&logo=nestjs&logoColor=white" alt="NestJS" width="100"/> | ![45%](https://progress-bar.dev/45) | Base project structure, patterns documentation |
43-
| <img src="https://img.shields.io/badge/React-61DAFB?style=for-the-badge&logo=react&logoColor=black" alt="React" width="100"/> | ![65%](https://progress-bar.dev/65) | Architecture options, state management, testing guidelines |
56+
| <img src="https://img.shields.io/badge/React-61DAFB?style=for-the-badge&logo=react&logoColor=black" alt="React" width="100"/> | ![80%](https://progress-bar.dev/80) | Architecture options, state management, testing guidelines |
4457
| <img src="https://img.shields.io/badge/Vue-4FC08D?style=for-the-badge&logo=vue.js&logoColor=white" alt="Vue" width="100"/> | ![45%](https://progress-bar.dev/45) | Testing guidelines, architecture concepts |
4558
| <img src="https://img.shields.io/badge/Nuxt-00DC82?style=for-the-badge&logo=nuxt.js&logoColor=white" alt="Nuxt" width="100"/> | ![40%](https://progress-bar.dev/40) | Testing guidelines, architecture concepts |
4659
| <img src="https://img.shields.io/badge/Astro-0D0D0D?style=for-the-badge&logo=astro&logoColor=white" alt="Astro" width="100"/> | ![20%](https://progress-bar.dev/20) | Basic configuration |
@@ -75,8 +88,8 @@ agent-rules-kit
7588
```bash
7689
git clone https://github.com/tecnomanu/agent-rules-kit.git
7790
cd agent-rules-kit
78-
npm install
79-
npm start
91+
pnpm install
92+
pnpm start
8093
```
8194

8295
## Basic Usage
@@ -96,6 +109,7 @@ Follow the interactive instructions to select the stack, architecture, and other
96109
- **Cursor Directory**: Specify the location of the Cursor directory
97110
- **Project Path**: Define the relative path if the project is not in the root
98111
- **Mirror Documentation**: Generate .md files that reflect the rules for human reference
112+
- **Debug Mode**: Enable detailed logging for troubleshooting
99113

100114
### Supported Architectures
101115

@@ -143,6 +157,25 @@ docs/
143157
└── [stack]/
144158
```
145159

160+
## Project Architecture
161+
162+
The codebase is organized using a service-oriented architecture:
163+
164+
```
165+
cli/
166+
├── index.js # Entry point
167+
├── services/ # Services directory
168+
│ ├── base-service.js # Base functionality for all services
169+
│ ├── cli-service.js # CLI interface management
170+
│ ├── config-service.js # Configuration management
171+
│ ├── file-service.js # File operations
172+
│ ├── stack-service.js # Common stack functionality
173+
│ ├── laravel-service.js # Laravel-specific service
174+
│ ├── nextjs-service.js # Next.js-specific service
175+
│ └── react-service.js # React-specific service
176+
└── version-detector.js # Framework version detection
177+
```
178+
146179
## Advanced Configuration
147180

148181
### Template Files
@@ -155,9 +188,11 @@ templates/
155188
└── stacks/
156189
├── laravel/
157190
│ ├── base/ # Laravel base rules
158-
│ ├── v8-9/ # Laravel 8-9 specific rules
159-
│ ├── v10-11/ # Laravel 10-11 specific rules
160-
│ └── v12/ # Laravel 12 specific rules
191+
│ ├── architectures/
192+
│ │ ├── standard/ # Standard architecture rules
193+
│ │ ├── ddd/ # DDD architecture rules
194+
│ │ └── hexagonal/ # Hexagonal architecture rules
195+
│ └── v10-11/ # Laravel 10-11 specific rules
161196
├── nextjs/
162197
│ └── ...
163198
└── ...
@@ -175,23 +210,24 @@ The main configuration is in `templates/kit-config.json`, where it defines:
175210

176211
### Prerequisites
177212

178-
- Node.js 14+
179-
- npm or pnpm
213+
- Node.js 16+
214+
- pnpm (preferred) or npm
180215

181216
### Development Installation
182217

183218
```bash
184219
git clone https://github.com/tecnomanu/agent-rules-kit.git
185220
cd agent-rules-kit
186-
npm install
221+
pnpm install
187222
```
188223

189224
### Available Commands
190225

191226
```bash
192-
npm start # Run the CLI
193-
npm test # Run tests
194-
npm run test -- --update # Update snapshots
227+
pnpm start # Run the CLI
228+
pnpm test # Run tests
229+
pnpm run lint # Lint code
230+
pnpm run test -- --update # Update snapshots
195231
```
196232

197233
## License

0 commit comments

Comments
 (0)