namnam-skills 2.2.2 → 2.3.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 +3 -0
- package/package.json +5 -2
- package/src/cli.js +34 -1
- package/src/templates/platforms/roocode/roorules-template.md +226 -0
package/README.md
CHANGED
|
@@ -41,11 +41,13 @@ npx namnam-skills platforms
|
|
|
41
41
|
| Cursor | `.cursorrules` | ✅ | - |
|
|
42
42
|
| Windsurf | `.windsurfrules` | ✅ | - |
|
|
43
43
|
| Cline | `.clinerules` | ✅ | - |
|
|
44
|
+
| **Roo Code** | `.roo/rules/` | ✅ | - |
|
|
44
45
|
| Aider | `.aider.conf.yml` | ✅ | - |
|
|
45
46
|
| OpenAI Codex | `codex.md` | ✅ | - |
|
|
46
47
|
| Google Gemini | `GEMINI.md` | ✅ | - |
|
|
47
48
|
| Universal | `AGENTS.md` | ✅ | - |
|
|
48
49
|
|
|
50
|
+
|
|
49
51
|
## Available Categories
|
|
50
52
|
|
|
51
53
|
| Category | Description | Files |
|
|
@@ -169,6 +171,7 @@ your-project/
|
|
|
169
171
|
├── .cursorrules # For Cursor AI
|
|
170
172
|
├── .windsurfrules # For Windsurf
|
|
171
173
|
├── .clinerules # For Cline
|
|
174
|
+
├── .roo/rules/ # For Roo Code (5 rule files)
|
|
172
175
|
├── codex.md # For OpenAI Codex
|
|
173
176
|
├── GEMINI.md # For Google Gemini
|
|
174
177
|
└── .aider.conf.yml # For Aider
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "namnam-skills",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"description": "Ultimate AI Skills Installer - Universal support for Claude, Codex, Cursor, Windsurf, Cline, Aider, Gemini, and Antigravity. 2000+ agents, workflows, and skills with auto-integration.",
|
|
3
|
+
"version": "2.3.0",
|
|
4
|
+
"description": "Ultimate AI Skills Installer - Universal support for Claude, Codex, Cursor, Windsurf, Cline, Roo Code, Aider, Gemini, and Antigravity. 2000+ agents, workflows, and skills with auto-integration.",
|
|
5
5
|
"author": "NamNam",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"keywords": [
|
|
@@ -15,6 +15,9 @@
|
|
|
15
15
|
"cursor",
|
|
16
16
|
"windsurf",
|
|
17
17
|
"cline",
|
|
18
|
+
"roo",
|
|
19
|
+
"roocode",
|
|
20
|
+
"roo-code",
|
|
18
21
|
"aider",
|
|
19
22
|
"anthropic",
|
|
20
23
|
"bmad",
|
package/src/cli.js
CHANGED
|
@@ -134,6 +134,7 @@ const AI_PLATFORMS = {
|
|
|
134
134
|
cursor: { file: '.cursorrules', name: 'Cursor' },
|
|
135
135
|
windsurf: { file: '.windsurfrules', name: 'Windsurf' },
|
|
136
136
|
cline: { file: '.clinerules', name: 'Cline' },
|
|
137
|
+
roocode: { file: '.roo/rules/', name: 'Roo Code' },
|
|
137
138
|
aider: { file: '.aider.conf.yml', name: 'Aider' },
|
|
138
139
|
codex: { file: 'codex.md', name: 'OpenAI Codex' },
|
|
139
140
|
gemini: { file: 'GEMINI.md', name: 'Google Gemini' },
|
|
@@ -142,7 +143,7 @@ const AI_PLATFORMS = {
|
|
|
142
143
|
|
|
143
144
|
program
|
|
144
145
|
.name('namnam')
|
|
145
|
-
.description('Universal AI Skills Installer - Supports Claude, Codex, Cursor, Windsurf, Cline, Aider, Gemini')
|
|
146
|
+
.description('Universal AI Skills Installer - Supports Claude, Codex, Cursor, Windsurf, Cline, Roo Code, Aider, Gemini')
|
|
146
147
|
.version('2.0.0');
|
|
147
148
|
|
|
148
149
|
program
|
|
@@ -502,6 +503,38 @@ async function generatePlatformFiles(cwd, templatesDir, force = false) {
|
|
|
502
503
|
}
|
|
503
504
|
}
|
|
504
505
|
}
|
|
506
|
+
|
|
507
|
+
// Generate .roo/rules/ for Roo Code
|
|
508
|
+
const rooSrc = path.join(platformsDir, 'roocode', 'roorules-template.md');
|
|
509
|
+
const rooDir = path.join(cwd, '.roo', 'rules');
|
|
510
|
+
if (await fs.pathExists(rooSrc)) {
|
|
511
|
+
if (force || !(await fs.pathExists(rooDir))) {
|
|
512
|
+
await fs.ensureDir(rooDir);
|
|
513
|
+
const content = await fs.readFile(rooSrc, 'utf-8');
|
|
514
|
+
|
|
515
|
+
// Extract and create individual rule files
|
|
516
|
+
const ruleFiles = {
|
|
517
|
+
'001-core.md': /### File: \.roo\/rules\/001-core\.md\s*\n\n```markdown\n([\s\S]*?)```/,
|
|
518
|
+
'002-code-style.md': /### File: \.roo\/rules\/002-code-style\.md\s*\n\n```markdown\n([\s\S]*?)```/,
|
|
519
|
+
'003-security.md': /### File: \.roo\/rules\/003-security\.md\s*\n\n```markdown\n([\s\S]*?)```/,
|
|
520
|
+
'004-debugging.md': /### File: \.roo\/rules\/004-debugging\.md\s*\n\n```markdown\n([\s\S]*?)```/,
|
|
521
|
+
'005-communication.md': /### File: \.roo\/rules\/005-communication\.md\s*\n\n```markdown\n([\s\S]*?)```/
|
|
522
|
+
};
|
|
523
|
+
|
|
524
|
+
let createdCount = 0;
|
|
525
|
+
for (const [filename, regex] of Object.entries(ruleFiles)) {
|
|
526
|
+
const match = content.match(regex);
|
|
527
|
+
if (match && match[1]) {
|
|
528
|
+
await fs.writeFile(path.join(rooDir, filename), match[1].trim());
|
|
529
|
+
createdCount++;
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
if (createdCount > 0) {
|
|
534
|
+
console.log(chalk.green(` ✓ .roo/rules/ (Roo Code) - ${createdCount} files`));
|
|
535
|
+
}
|
|
536
|
+
}
|
|
537
|
+
}
|
|
505
538
|
}
|
|
506
539
|
|
|
507
540
|
// ========================================
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
# Roo Code Rules - Industry-Grade Configuration
|
|
2
|
+
|
|
3
|
+
> Powered by NamNam Skills - Universal AI Skills Installer
|
|
4
|
+
> Roo Code (formerly Roo Cline) - Open-source AI coding assistant
|
|
5
|
+
|
|
6
|
+
## Directory: .roo/rules/
|
|
7
|
+
|
|
8
|
+
Place rules files in `.roo/rules/` directory. Roo Code reads all `.md` and `.txt` files recursively.
|
|
9
|
+
|
|
10
|
+
### File: .roo/rules/001-core.md
|
|
11
|
+
|
|
12
|
+
```markdown
|
|
13
|
+
# Core Development Rules
|
|
14
|
+
|
|
15
|
+
## Identity
|
|
16
|
+
You are an expert software engineer with extensive knowledge in many languages and frameworks.
|
|
17
|
+
Be agentic - complete tasks autonomously before yielding to user.
|
|
18
|
+
|
|
19
|
+
## Core Philosophy
|
|
20
|
+
- Research before modifying - NEVER guess
|
|
21
|
+
- Read files before editing
|
|
22
|
+
- Verify success before proceeding
|
|
23
|
+
- Handle errors gracefully
|
|
24
|
+
- Complete tasks autonomously
|
|
25
|
+
- Ask only when genuinely blocked
|
|
26
|
+
|
|
27
|
+
## Tool Usage
|
|
28
|
+
- Use one tool per message
|
|
29
|
+
- Wait for confirmation before proceeding
|
|
30
|
+
- Analyze results before next action
|
|
31
|
+
- Each step informed by previous results
|
|
32
|
+
- Never assume tool success
|
|
33
|
+
|
|
34
|
+
## File Editing
|
|
35
|
+
- Default to replace_in_file for small changes
|
|
36
|
+
- Use write_to_file for new files or complete rewrites
|
|
37
|
+
- Match content EXACTLY including whitespace
|
|
38
|
+
- Include enough context for uniqueness
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### File: .roo/rules/002-code-style.md
|
|
42
|
+
|
|
43
|
+
```markdown
|
|
44
|
+
# Code Style Guidelines
|
|
45
|
+
|
|
46
|
+
## TypeScript/JavaScript
|
|
47
|
+
- Use async/await over Promise chains
|
|
48
|
+
- Handle errors with try-catch
|
|
49
|
+
- Add all necessary imports
|
|
50
|
+
- Follow existing conventions
|
|
51
|
+
- Functional components for React
|
|
52
|
+
|
|
53
|
+
## Never
|
|
54
|
+
- Use `any` types without justification
|
|
55
|
+
- Leave console.log in production
|
|
56
|
+
- Use inline styles (prefer CSS modules/Tailwind)
|
|
57
|
+
- Use magic numbers (use named constants)
|
|
58
|
+
- Direct state mutation
|
|
59
|
+
- `var` declarations (use const/let)
|
|
60
|
+
|
|
61
|
+
## Naming Conventions
|
|
62
|
+
- Components: PascalCase
|
|
63
|
+
- Functions: camelCase
|
|
64
|
+
- Constants: SCREAMING_SNAKE_CASE
|
|
65
|
+
- Files: kebab-case
|
|
66
|
+
- Types/Interfaces: PascalCase
|
|
67
|
+
- Hooks: camelCase with `use` prefix
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### File: .roo/rules/003-security.md
|
|
71
|
+
|
|
72
|
+
```markdown
|
|
73
|
+
# Security Guidelines
|
|
74
|
+
|
|
75
|
+
## Never
|
|
76
|
+
- Expose API keys in code
|
|
77
|
+
- Commit secrets to repository
|
|
78
|
+
- Log sensitive information
|
|
79
|
+
- Skip input validation
|
|
80
|
+
- Use eval() or similar dangerous functions
|
|
81
|
+
|
|
82
|
+
## Always
|
|
83
|
+
- Validate user input
|
|
84
|
+
- Use parameterized queries for databases
|
|
85
|
+
- Sanitize HTML output
|
|
86
|
+
- Implement proper authentication
|
|
87
|
+
- Use environment variables for secrets
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### File: .roo/rules/004-debugging.md
|
|
91
|
+
|
|
92
|
+
```markdown
|
|
93
|
+
# Debugging Strategy
|
|
94
|
+
|
|
95
|
+
1. Understand the error fully
|
|
96
|
+
2. Read relevant context and files
|
|
97
|
+
3. Identify root cause (not symptoms)
|
|
98
|
+
4. Plan a fix before implementing
|
|
99
|
+
5. Implement and verify the fix works
|
|
100
|
+
6. Don't guess at solutions - research first
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### File: .roo/rules/005-communication.md
|
|
104
|
+
|
|
105
|
+
```markdown
|
|
106
|
+
# Communication Style
|
|
107
|
+
|
|
108
|
+
## Format
|
|
109
|
+
- Direct and technical
|
|
110
|
+
- Use proper Markdown formatting
|
|
111
|
+
- Include code blocks with language tags
|
|
112
|
+
|
|
113
|
+
## Forbidden Phrases
|
|
114
|
+
Avoid filler words like:
|
|
115
|
+
- "Great"
|
|
116
|
+
- "Certainly"
|
|
117
|
+
- "Okay"
|
|
118
|
+
- "Sure"
|
|
119
|
+
- "Sounds good"
|
|
120
|
+
|
|
121
|
+
## Example
|
|
122
|
+
❌ "Great, I've updated the CSS"
|
|
123
|
+
✅ "Updated the CSS with dark mode styles"
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Mode-Specific Rules
|
|
127
|
+
|
|
128
|
+
### Code Mode Rules: `.roo/rules-code/`
|
|
129
|
+
|
|
130
|
+
```markdown
|
|
131
|
+
# Code Mode Rules
|
|
132
|
+
|
|
133
|
+
## Focus
|
|
134
|
+
- Implementation and coding tasks
|
|
135
|
+
- File editing and creation
|
|
136
|
+
- Running commands and tests
|
|
137
|
+
|
|
138
|
+
## Guidelines
|
|
139
|
+
- Write clean, maintainable code
|
|
140
|
+
- Follow project conventions
|
|
141
|
+
- Add appropriate comments
|
|
142
|
+
- Handle edge cases
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Architect Mode Rules: `.roo/rules-architect/`
|
|
146
|
+
|
|
147
|
+
```markdown
|
|
148
|
+
# Architect Mode Rules
|
|
149
|
+
|
|
150
|
+
## Focus
|
|
151
|
+
- System design and architecture
|
|
152
|
+
- Technical planning
|
|
153
|
+
- Code structure decisions
|
|
154
|
+
|
|
155
|
+
## Guidelines
|
|
156
|
+
- Consider scalability
|
|
157
|
+
- Plan for maintainability
|
|
158
|
+
- Document architectural decisions
|
|
159
|
+
- Create diagrams when helpful
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### Review Mode Rules: `.roo/rules-review/`
|
|
163
|
+
|
|
164
|
+
```markdown
|
|
165
|
+
# Review Mode Rules
|
|
166
|
+
|
|
167
|
+
## Focus
|
|
168
|
+
- Code review and analysis
|
|
169
|
+
- Best practices enforcement
|
|
170
|
+
- Security and performance audits
|
|
171
|
+
|
|
172
|
+
## Guidelines
|
|
173
|
+
- Check for common issues
|
|
174
|
+
- Suggest improvements
|
|
175
|
+
- Identify potential bugs
|
|
176
|
+
- Review security implications
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## AGENTS.md Support
|
|
180
|
+
|
|
181
|
+
Roo Code also reads `AGENTS.md` from workspace root for agent-specific rules.
|
|
182
|
+
|
|
183
|
+
## Usage
|
|
184
|
+
|
|
185
|
+
1. Create `.roo/rules/` directory in your project:
|
|
186
|
+
```bash
|
|
187
|
+
mkdir -p .roo/rules
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
2. Add rule files (numbered for order):
|
|
191
|
+
```
|
|
192
|
+
.roo/rules/
|
|
193
|
+
├── 001-core.md
|
|
194
|
+
├── 002-code-style.md
|
|
195
|
+
├── 003-security.md
|
|
196
|
+
├── 004-debugging.md
|
|
197
|
+
└── 005-communication.md
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
3. For mode-specific rules:
|
|
201
|
+
```
|
|
202
|
+
.roo/rules-code/
|
|
203
|
+
.roo/rules-architect/
|
|
204
|
+
.roo/rules-review/
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
4. Global rules (shared across workspaces):
|
|
208
|
+
```
|
|
209
|
+
~/.roo/rules/
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
## Key Features
|
|
213
|
+
|
|
214
|
+
### Rule Loading Order
|
|
215
|
+
1. Global rules (`~/.roo/rules/`)
|
|
216
|
+
2. Mode-specific rules (`.roo/rules-{mode}/`)
|
|
217
|
+
3. `AGENTS.md` from workspace root
|
|
218
|
+
4. Workspace rules (`.roo/rules/`)
|
|
219
|
+
|
|
220
|
+
### Supported File Types
|
|
221
|
+
- `.md` (Markdown)
|
|
222
|
+
- `.txt` (Plain text)
|
|
223
|
+
|
|
224
|
+
Files are loaded recursively and alphabetically by filename.
|
|
225
|
+
|
|
226
|
+
**Source**: Roo Code Documentation + Industry Best Practices
|