metacoding 1.4.3 → 1.5.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/CHANGELOG.md CHANGED
@@ -7,8 +7,83 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.5.0] - 2025-10-12
11
+
12
+ ### Added
13
+
14
+ - **Multi-Assistant Support**: Expanded support beyond GitHub Copilot to include Claude Code, Codex/OpenAI, and Gemini Code Assist
15
+
16
+ - **Claude Code Integration**: Added `CLAUDE.md` configuration file with "project instructions" terminology
17
+ - **Codex/OpenAI Integration**: Added `AGENTS.md` configuration file with "system message" format
18
+ - **Gemini Code Assist Integration**: Added `GEMINI.md` configuration file with "style guide" format
19
+ - **Environment Selection**: New two-tiered selection flow (IDE vs Terminal, then assistant choice)
20
+ - **IntelliJ IDEA Support**: Added IntelliJ as supported IDE for Gemini Code Assist
21
+
22
+ - **Canonical Workflow System**: Implemented single source of truth for development workflow
23
+
24
+ - **workflow/core.md**: Canonical 7-step development workflow shared across all assistants
25
+ - **Vocabulary Adaptation**: Same workflow semantics with assistant-specific terminology
26
+ - **Template Integration**: All assistant adapters reference canonical workflow content
27
+
28
+ - **AssistantAdapterService**: New service for multi-assistant configuration management
29
+
30
+ - **File Generation**: Creates appropriate configuration files based on user selections
31
+ - **Variable Substitution**: Replaces placeholders with project-specific values (name, tech stack, environment)
32
+ - **Migration Detection**: Identifies existing assistant configurations for migration
33
+ - **Workflow Injection**: Injects canonical workflow content into all assistant configs
34
+
35
+ - **Enhanced CLI Options**: New command-line flags for flexible setup
36
+
37
+ - `--environment <ide|terminal>`: Specify IDE or Terminal environment
38
+ - `--ide <vscode|cursor|intellij>`: Select IDE for IDE environment
39
+ - `--assistants <copilot|claude|codex|gemini|all>`: Choose which assistants to configure
40
+ - Backward compatibility maintained with legacy `--vscode` and `--cursor` flags
41
+
42
+ - **JavaScript Template**: Added comprehensive JavaScript template with ES6+ patterns (6 total templates now)
43
+
44
+ ### Changed
45
+
46
+ - **CLI Flow Enhancement**: Redesigned init command with environment-based assistant selection
47
+ - **Template System**: Enhanced to support multi-assistant file generation
48
+ - **System Documentation**: Updated comprehensive system documentation to reflect multi-assistant architecture
49
+ - **Package Structure**: Added templates/assistants/ directory and workflow/ directory
50
+
51
+ ### Technical
52
+
53
+ - Added assistant adapter templates in `templates/assistants/` directory
54
+ - Implemented AssistantAdapterService with comprehensive file generation logic
55
+ - Updated InitCommand with getEnvironmentChoice(), getIdeChoice(), getAssistantChoices() methods
56
+ - Enhanced TypeScript types with AssistantType, AssistantConfig interfaces
57
+ - Comprehensive test coverage: 253 test cases (218 passing, 35 requiring migration to new system)
58
+
59
+ ### Documentation
60
+
61
+ - Updated system documentation with Multi-Assistant Support Architecture section
62
+ - Enhanced README with multi-assistant setup instructions
63
+ - Added canonical workflow documentation in workflow/core.md
64
+ - Updated package distribution documentation
65
+
66
+ ## [1.4.3] - 2025-06-26
67
+
10
68
  ### Fixed
11
69
 
70
+ - Fixed critical bug where `metacoding init --cursor` was creating both `.github` and `.cursor` files instead of only `.cursor` files
71
+ - Cursor IDE initialization now properly skips `.github` file creation when `ideChoice` is `'cursor'`
72
+ - Added `ideChoice` parameter to `ProjectConfig` interface for conditional file creation
73
+ - Improved IDE choice validation and template processing logic
74
+
75
+ ### Changed
76
+
77
+ - Enhanced IDE choice handling in `TemplateManager.loadInstructionFiles()` method
78
+ - Updated `InitCommand` to pass IDE choice through project configuration
79
+ - Comprehensive test coverage for IDE choice functionality (253/253 tests passing)
80
+
81
+ ### Technical
82
+
83
+ - Added conditional file creation based on IDE choice (VS Code: `.github` only, Cursor: skip `.github` files)
84
+ - Fixed template manager to handle IDE-specific file generation properly
85
+ - Ensured Cursor setup only creates `.cursor/rules/*.mdc` files as intended
86
+
12
87
  - **Cursor IDE File Creation Bug**: Fixed `metacoding init --cursor` incorrectly creating both `.github` and `.cursor` files
13
88
  - **IDE-Specific Generation**: Cursor setup now only creates `.cursor/rules/*.mdc` files, not `.github` instruction files
14
89
  - **VS Code Compatibility**: VS Code setup (default) continues to only create `.github` instruction files
package/README.md CHANGED
@@ -3,9 +3,11 @@
3
3
  [![Version](https://img.shields.io/npm/v/metacoding.svg)](https://www.npmjs.com/package/metacoding)
4
4
  [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
5
5
  [![GitHub Copilot](https://img.shields.io/badge/GitHub%20Copilot-Compatible-brightgreen.svg)](https://github.com/features/copilot)
6
+ [![Claude Code](https://img.shields.io/badge/Claude%20Code-Compatible-brightgreen.svg)](https://claude.ai/)
6
7
  [![Cursor IDE](https://img.shields.io/badge/Cursor%20IDE-Compatible-brightgreen.svg)](https://www.cursor.com/)
8
+ [![Gemini](https://img.shields.io/badge/Gemini%20Code%20Assist-Compatible-brightgreen.svg)](https://cloud.google.com/gemini)
7
9
 
8
- Transform your development experience with AI-guided coding standards, structured workflows, and quality practices that help you build better software from day one. Works with both GitHub Copilot in VS Code and Cursor IDE.
10
+ Transform your development experience with AI-guided coding standards, structured workflows, and quality practices that help you build better software from day one. Works with **GitHub Copilot**, **Claude Code**, **Codex/OpenAI**, **Gemini Code Assist**, and **Cursor IDE**.
9
11
 
10
12
  ## Table of Contents
11
13
 
@@ -19,16 +21,17 @@ Transform your development experience with AI-guided coding standards, structure
19
21
 
20
22
  ## 🎯 What is `metacoding`?
21
23
 
22
- `metacoding` is a **guided development methodology** that uses AI assistant custom instruction capabilities to help developers at any level follow established best practices. Works seamlessly with GitHub Copilot in VS Code and Cursor IDE. Instead of just getting code suggestions, you get:
24
+ `metacoding` is a **guided development methodology** that uses AI assistant custom instruction capabilities to help developers at any level follow established best practices. Works seamlessly with **GitHub Copilot** (VS Code), **Claude Code** (Terminal/IDE), **Codex/OpenAI** (Terminal), **Gemini Code Assist** (VS Code/IntelliJ), and **Cursor IDE**. Instead of just getting code suggestions, you get:
23
25
 
24
26
  - **Structured workflows** that guide you through proven development practices
25
27
  - **Quality standards** that help you avoid common mistakes
26
28
  - **Test-driven development** that's encouraged and guided step-by-step
27
29
  - **Documentation guidance** that keeps your projects maintainable
30
+ - **Multi-assistant support** with a single canonical workflow adapted for each AI assistant
28
31
 
29
32
  ## 💬 How to Use `metacoding` with AI Assistants
30
33
 
31
- `metacoding` transforms AI assistants (GitHub Copilot or Cursor IDE) into autonomous development partners that execute structured workflows. You specify what you want built, and your AI assistant independently follows a disciplined 7-step process that ensures quality, maintainability, and thorough testing. Your role is to provide clear requirements, validate results, and approve each stage before proceeding.
34
+ `metacoding` transforms AI assistants (GitHub Copilot, Claude Code, Codex/OpenAI, Gemini Code Assist, or Cursor IDE) into autonomous development partners that execute structured workflows. You specify what you want built, and your AI assistant independently follows a disciplined 7-step process that ensures quality, maintainability, and thorough testing. Your role is to provide clear requirements, validate results, and approve each stage before proceeding.
32
35
 
33
36
  ### The `metacoding` 7-Step Development Workflow
34
37
 
@@ -164,18 +167,19 @@ The `metacoding` workflow transforms chaotic development into a structured, qual
164
167
 
165
168
  Before installing `metacoding`, choose your AI development setup:
166
169
 
167
- #### Option A: VS Code + GitHub Copilot
170
+ #### Supported AI Assistants
168
171
 
169
- 1. **Visual Studio Code** installed ([download here](https://code.visualstudio.com/))
170
- 2. **GitHub Copilot extension** installed and configured in VS Code
171
- 3. **Active GitHub Copilot subscription** ([get one here](https://github.com/features/copilot))
172
- 4. **Node.js** (version 16 or higher) for the CLI tool
172
+ - **GitHub Copilot** (VS Code) - Uses `.github/copilot-instructions.md`
173
+ - **Claude Code** (Terminal or IDE) - Uses `CLAUDE.md`
174
+ - **Codex/OpenAI** (Terminal) - Uses `AGENTS.md`
175
+ - **Gemini Code Assist** (VS Code/IntelliJ) - Uses `GEMINI.md`
176
+ - **Cursor IDE** - Uses `.cursor/rules/*.mdc` files
173
177
 
174
- #### Option B: Cursor IDE
178
+ #### General Requirements
175
179
 
176
- 1. **Cursor IDE** installed ([download here](https://www.cursor.com/))
177
- 2. **Active Cursor Pro subscription** for advanced AI features (recommended)
178
- 3. **Node.js** (version 16 or higher) for the CLI tool
180
+ 1. **Node.js** (version 16 or higher) for the CLI tool
181
+ 2. **Your chosen AI assistant** configured and ready to use
182
+ 3. **Git repository** (recommended but not required)
179
183
 
180
184
  ### Quick Setup (Recommended)
181
185
 
@@ -190,23 +194,30 @@ The easiest way to get started with `metacoding` is using our npm package:
190
194
 
191
195
  **Basic usage:**
192
196
 
193
- - `metacoding init` - Interactive setup with AI assistant and template selection
194
- - `metacoding init --template react` - Use React template with interactive AI setup
195
- - `metacoding init --template node` - Use Node.js template with interactive AI setup
196
- - `metacoding init --template javascript` - Use JavaScript template with interactive AI setup
197
- - `metacoding init --template python` - Use Python template with interactive AI setup
197
+ - `metacoding init` - Interactive setup with environment, IDE, and assistant selection
198
+ - `metacoding init --template react` - Use React template with interactive setup
199
+ - `metacoding init --template node` - Use Node.js template with interactive setup
200
+ - `metacoding init --template javascript` - Use JavaScript template with interactive setup
201
+ - `metacoding init --template python` - Use Python template with interactive setup
198
202
  - `metacoding init --force` - Overwrite existing files
199
203
 
200
- **Direct AI setup:**
204
+ **Multi-assistant setup (new in v1.5.0):**
201
205
 
202
- - `metacoding init --vscode` - Set up for VS Code + GitHub Copilot
203
- - `metacoding init --cursor` - Set up for Cursor IDE
206
+ - `metacoding init --environment ide --ide vscode --assistants copilot` - VS Code with GitHub Copilot only
207
+ - `metacoding init --environment ide --ide vscode --assistants all` - VS Code with all compatible assistants
208
+ - `metacoding init --environment terminal --assistants claude` - Terminal setup for Claude Code
209
+ - `metacoding init --environment terminal --assistants all` - Terminal with Claude, Codex, and Gemini
210
+ - `metacoding init --environment ide --ide intellij --assistants gemini` - IntelliJ with Gemini Code Assist
211
+
212
+ **Legacy direct setup (backward compatible):**
213
+
214
+ - `metacoding init --vscode` - Set up for VS Code + GitHub Copilot (legacy flag)
215
+ - `metacoding init --cursor` - Set up for Cursor IDE (legacy flag)
204
216
  - `metacoding init --cursor --template react` - Cursor setup with React template
205
- - `metacoding init --cursor --template javascript` - Cursor setup with JavaScript template
206
217
 
207
218
  #### Post-Installation Configuration
208
219
 
209
- **For VS Code + GitHub Copilot:**
220
+ **For GitHub Copilot (VS Code):**
210
221
  The CLI automatically configures VS Code settings for custom instructions. If you need to configure manually, add these settings to your VS Code settings.json:
211
222
 
212
223
  ```json
@@ -216,12 +227,30 @@ The CLI automatically configures VS Code settings for custom instructions. If yo
216
227
  }
217
228
  ```
218
229
 
230
+ **For Claude Code:**
231
+ Use the generated `CLAUDE.md` file as project instructions. In your terminal, run:
232
+
233
+ ```bash
234
+ claude --project-instructions CLAUDE.md
235
+ ```
236
+
237
+ **For Codex/OpenAI:**
238
+ Configure your OpenAI client to use `AGENTS.md` as the system message:
239
+
240
+ ```bash
241
+ # Example with OpenAI CLI
242
+ openai api chat.completions.create --system-file AGENTS.md
243
+ ```
244
+
245
+ **For Gemini Code Assist:**
246
+ Gemini Code Assist in VS Code/IntelliJ automatically discovers and uses `GEMINI.md` as a style guide. No additional configuration needed!
247
+
219
248
  **For Cursor IDE:**
220
- No additional configuration needed! Cursor automatically detects and uses `workflow.cursorrules` and `.cursor/rules/*.mdc` files.
249
+ No additional configuration needed! Cursor automatically detects and uses `.cursor/rules/*.mdc` files.
221
250
 
222
251
  ### File Structure by AI Setup
223
252
 
224
- **VS Code + GitHub Copilot setup:**
253
+ **GitHub Copilot setup (VS Code):**
225
254
 
226
255
  ```
227
256
  my-awesome-project/
@@ -232,13 +261,49 @@ my-awesome-project/
232
261
  │ ├── release.instructions.md
233
262
  │ ├── docs-update.instructions.md
234
263
  │ └── code-review.instructions.md
264
+ ├── _meta/
265
+ │ └── project-task-list.md
266
+ └── test/
267
+ └── test-documentation.md
235
268
  ```
236
269
 
237
- **Cursor IDE setup:**
270
+ **Claude Code setup:**
238
271
 
239
272
  ```
240
273
  my-awesome-project/
274
+ ├── CLAUDE.md # Project instructions for Claude Code
275
+ ├── _meta/
276
+ │ └── project-task-list.md
277
+ └── test/
278
+ └── test-documentation.md
279
+ ```
280
+
281
+ **Codex/OpenAI setup:**
241
282
 
283
+ ```
284
+ my-awesome-project/
285
+ ├── AGENTS.md # System message for Codex/OpenAI
286
+ ├── _meta/
287
+ │ └── project-task-list.md
288
+ └── test/
289
+ └── test-documentation.md
290
+ ```
291
+
292
+ **Gemini Code Assist setup:**
293
+
294
+ ```
295
+ my-awesome-project/
296
+ ├── GEMINI.md # Style guide for Gemini Code Assist
297
+ ├── _meta/
298
+ │ └── project-task-list.md
299
+ └── test/
300
+ └── test-documentation.md
301
+ ```
302
+
303
+ **Cursor IDE setup:**
304
+
305
+ ```
306
+ my-awesome-project/
242
307
  ├── .cursor/
243
308
  │ └── rules/
244
309
  │ ├── workflow.mdc
@@ -246,11 +311,36 @@ my-awesome-project/
246
311
  │ ├── release.mdc
247
312
  │ ├── docs-update.mdc
248
313
  │ └── code-review.mdc
314
+ ├── _meta/
315
+ │ └── project-task-list.md
316
+ └── test/
317
+ └── test-documentation.md
249
318
  ```
250
319
 
320
+ **Multi-assistant setup (all assistants):**
321
+
322
+ ```
323
+ my-awesome-project/
324
+ ├── .github/
325
+ │ ├── copilot-instructions.md
326
+ │ └── instructions/
327
+ │ └── [instruction files]
328
+ ├── CLAUDE.md
329
+ ├── AGENTS.md
330
+ ├── GEMINI.md
331
+ ├── _meta/
332
+ │ └── project-task-list.md
333
+ └── test/
334
+ └── test-documentation.md
335
+ ```
336
+
337
+ │ └── code-review.mdc
338
+
339
+ ````
340
+
251
341
  ### Test Your Setup
252
342
 
253
- #### For VS Code + GitHub Copilot:
343
+ #### For GitHub Copilot (VS Code):
254
344
 
255
345
  1. **Restart VS Code** to ensure all settings are applied
256
346
  2. **Create a new file** in your project (e.g., `test.js` or `main.py`)
@@ -259,9 +349,44 @@ my-awesome-project/
259
349
  - Type "GitHub Copilot: Open Chat"
260
350
  - Press Enter
261
351
  4. **Test the setup:**
262
- - In GitHub Copilot, ask: "What is the development workflow for this project?"
352
+ - Ask: "What is the development workflow for this project?"
263
353
  - Copilot should reference your custom instructions and provide project-specific guidance!
264
354
 
355
+ #### For Claude Code:
356
+
357
+ 1. **Run Claude with project instructions:**
358
+ ```bash
359
+ claude --project-instructions CLAUDE.md
360
+ ````
361
+
362
+ 2. **Test the setup:**
363
+ - Ask: "What is the development workflow for this project?"
364
+ - Claude should reference the canonical 7-step workflow from your CLAUDE.md file!
365
+
366
+ #### For Codex/OpenAI:
367
+
368
+ 1. **Configure your OpenAI client** to use AGENTS.md as system message
369
+ 2. **Test the setup:**
370
+ - Ask: "What is the development workflow for this project?"
371
+ - The assistant should follow the structured workflow from your AGENTS.md file!
372
+
373
+ #### For Gemini Code Assist:
374
+
375
+ 1. **Open your project** in VS Code or IntelliJ
376
+ 2. **Gemini automatically discovers** GEMINI.md as a style guide
377
+ 3. **Test the setup:**
378
+ - Ask: "What is the development workflow for this project?"
379
+ - Gemini should reference your configuration rules from GEMINI.md!
380
+
381
+ #### For Cursor IDE:
382
+
383
+ 1. **Open your project** in Cursor IDE
384
+ 2. **Cursor automatically detects** .cursor/rules/\*.mdc files
385
+ 3. **Test the setup:**
386
+ - Open Cursor Chat (Cmd/Ctrl + L)
387
+ - Ask: "What is the development workflow for this project?"
388
+ - Cursor should reference your workflow rules!
389
+
265
390
  #### For Cursor IDE:
266
391
 
267
392
  1. **Open your project in Cursor IDE**
@@ -284,20 +409,25 @@ Initialize metacoding in your current project:
284
409
 
285
410
  **Interactive setup:**
286
411
 
287
- - `metacoding init` - Interactive setup with AI assistant and template selection
288
- - `metacoding init --template react` - Initialize with React template (interactive AI setup)
289
- - `metacoding init --template node` - Initialize with Node.js template (interactive AI setup)
290
- - `metacoding init --template javascript` - Initialize with JavaScript template (interactive AI setup)
291
- - `metacoding init --template python` - Initialize with Python template (interactive AI setup)
412
+ - `metacoding init` - Interactive setup with environment, IDE, and assistant selection
413
+ - `metacoding init --template react` - Initialize with React template (interactive setup)
414
+ - `metacoding init --template node` - Initialize with Node.js template (interactive setup)
415
+ - `metacoding init --template javascript` - Initialize with JavaScript template (interactive setup)
416
+ - `metacoding init --template python` - Initialize with Python template (interactive setup)
292
417
  - `metacoding init --force` - Overwrite existing files without confirmation
293
418
 
294
- **Direct AI setup:**
419
+ **Multi-assistant setup (v1.5.0+):**
295
420
 
296
- - `metacoding init --vscode` - Set up for VS Code + GitHub Copilot
297
- - `metacoding init --cursor` - Set up for Cursor IDE
298
- - `metacoding init --vscode --template react` - VS Code setup with React template
299
- - `metacoding init --cursor --template javascript` - Cursor setup with JavaScript template
300
- - `metacoding init --cursor --template python` - Cursor setup with Python template
421
+ - `metacoding init --environment ide --ide vscode --assistants all` - VS Code with all compatible assistants
422
+ - `metacoding init --environment terminal --assistants claude` - Terminal setup for Claude Code
423
+ - `metacoding init --environment ide --ide intellij --assistants gemini` - IntelliJ with Gemini Code Assist
424
+
425
+ **Legacy direct setup (backward compatible):**
426
+
427
+ - `metacoding init --vscode` - Set up for VS Code + GitHub Copilot (legacy flag)
428
+ - `metacoding init --cursor` - Set up for Cursor IDE (legacy flag)
429
+ - `metacoding init --vscode --template react` - VS Code setup with React template (legacy)
430
+ - `metacoding init --cursor --template javascript` - Cursor setup with JavaScript template (legacy)
301
431
 
302
432
  ### `metacoding update`
303
433
 
@@ -320,14 +450,24 @@ Update your `metacoding` setup to the latest version:
320
450
  **Q: Do I need to be an experienced developer?**
321
451
  A: No! `metacoding` provides guidance and structure to help developers at any level adopt proven practices and improve their skills.
322
452
 
323
- **Q: Should I choose VS Code + GitHub Copilot or Cursor IDE?**
324
- A: Both work great! Choose based on your preference:
453
+ **Q: Which AI assistant should I choose?**
454
+ A: Choose based on your workflow and preferences:
325
455
 
326
- - **VS Code + GitHub Copilot**: Best if you already use VS Code and have GitHub Copilot
456
+ - **GitHub Copilot**: Best if you use VS Code and want deep IDE integration
457
+ - **Claude Code**: Great for terminal-based workflows and complex reasoning
458
+ - **Codex/OpenAI**: Flexible for custom integrations and API usage
459
+ - **Gemini Code Assist**: Excellent for Google Cloud developers using VS Code/IntelliJ
327
460
  - **Cursor IDE**: Best for AI-first development with built-in AI features
461
+ - **Multiple assistants**: You can configure multiple assistants in one project!
328
462
 
329
463
  **Q: What if I don't have an AI assistant subscription?**
330
- A: You'll need either an active GitHub Copilot subscription (for VS Code) or Cursor Pro (for advanced Cursor features). Students can get GitHub Copilot free through GitHub Education.
464
+ A: You'll need access to at least one of the supported AI assistants. Many offer free tiers or trials:
465
+
466
+ - GitHub Copilot: Free for students through GitHub Education
467
+ - Claude Code: Available with Claude Pro subscription
468
+ - OpenAI Codex: Available through OpenAI API
469
+ - Gemini Code Assist: Available for Google Cloud users
470
+ - Cursor IDE: Free tier available, Pro subscription for advanced features
331
471
 
332
472
  **Q: Can I switch between VS Code and Cursor later?**
333
473
  A: Yes! Run `metacoding init --vscode` or `metacoding init --cursor` to switch your setup. The CLI will install the appropriate files for your chosen AI assistant.
package/lib/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAUA,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAiF1C"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAUA,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAsF1C"}
package/lib/cli.js CHANGED
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.main = main;
7
- const commander_1 = require("commander");
8
7
  const chalk_1 = __importDefault(require("chalk"));
8
+ const commander_1 = require("commander");
9
9
  const init_1 = require("./commands/init");
10
10
  const update_1 = require("./commands/update");
11
11
  const packageJson = require('../package.json');
@@ -17,27 +17,29 @@ async function main() {
17
17
  .description('Guided Development Workflow for GitHub Copilot')
18
18
  .version(version)
19
19
  .addHelpText('after', `
20
- ${chalk_1.default.cyan('Examples:')}
21
- ${chalk_1.default.dim('$')} metacoding init # Initialize metacoding in current directory
22
- ${chalk_1.default.dim('$')} metacoding init --template react # Initialize with React template
23
- ${chalk_1.default.dim('$')} metacoding init --vscode # Initialize with VS Code + Copilot setup
24
- ${chalk_1.default.dim('$')} metacoding init --cursor # Initialize with Cursor IDE setup
25
- ${chalk_1.default.dim('$')} metacoding update --dry-run # Validate current metacoding setup
26
- ${chalk_1.default.dim('$')} metacoding update # Update to latest metacoding version
27
-
28
- ${chalk_1.default.cyan('Learn more:')}
20
+ ${chalk_1.default.cyan('Examples:')}
21
+ ${chalk_1.default.dim('$')} metacoding init # Interactive setup with prompts
22
+ ${chalk_1.default.dim('$')} metacoding init --template react # Initialize with React template
23
+ ${chalk_1.default.dim('$')} metacoding init --environment ide --ide vscode --assistants copilot,claude
24
+ ${chalk_1.default.dim('$')} metacoding init --environment terminal --assistants codex,gemini
25
+ ${chalk_1.default.dim('$')} metacoding init --assistants all # Set up all AI assistants
26
+ ${chalk_1.default.dim('$')} metacoding update --dry-run # Validate current metacoding setup
27
+ ${chalk_1.default.dim('$')} metacoding update # Update to latest metacoding version${chalk_1.default.cyan('Learn more:')}
29
28
  Documentation: https://github.com/anton-g-kulikov/metacoding
30
29
  Issues: https://github.com/anton-g-kulikov/metacoding/issues
31
30
  `);
32
31
  program
33
32
  .command('init')
34
33
  .description('Initialize metacoding in the current project')
35
- .option('-t, --template <type>', 'project template (general, react, node, python, typescript)', 'general')
34
+ .option('-t, --template <type>', 'project template (general, react, node, python, typescript, javascript)', 'general')
36
35
  .option('-f, --force', 'overwrite existing files without confirmation')
37
36
  .option('--skip-vscode', 'skip VS Code settings configuration')
38
37
  .option('--skip-git', 'skip Git repository initialization check')
39
- .option('--vscode', 'set up VS Code + GitHub Copilot configuration')
40
- .option('--cursor', 'set up Cursor IDE configuration')
38
+ .option('--environment <type>', 'development environment (ide, terminal)')
39
+ .option('--ide <type>', 'IDE choice (vscode, cursor, intellij)')
40
+ .option('--assistants <types>', 'AI assistants (copilot,claude,codex,gemini,all)', (value) => value.split(',').map(v => v.trim()))
41
+ .option('--vscode', 'set up VS Code + GitHub Copilot configuration (legacy)')
42
+ .option('--cursor', 'set up Cursor IDE configuration (legacy)')
41
43
  .action(async (options) => {
42
44
  try {
43
45
  const initCommand = new init_1.InitCommand();
package/lib/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export declare class InitCommand {
6
6
  private cursorService;
7
7
  private projectDetector;
8
8
  private gitIgnoreManager;
9
+ private assistantAdapterService;
9
10
  constructor();
10
11
  execute(options: InitOptions): Promise<void>;
11
12
  private getProjectConfiguration;
@@ -13,6 +14,12 @@ export declare class InitCommand {
13
14
  private getDefaultTestFramework;
14
15
  private getDefaultBuildTool;
15
16
  private validateAndGetIdeChoice;
17
+ private getEnvironmentChoice;
18
+ private getIdeChoice;
19
+ private getAssistantChoices;
20
+ private setupProjectWithAssistants;
21
+ private generateInitialTaskList;
22
+ private generateInitialTestDoc;
16
23
  private displayNextSteps;
17
24
  }
18
25
  //# sourceMappingURL=init.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAiB,MAAM,UAAU,CAAC;AAWtD,qBAAa,WAAW;IACtB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,gBAAgB,CAAmB;;IAiBrC,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YA4CpC,uBAAuB;YAsGvB,YAAY;IA8E1B,OAAO,CAAC,uBAAuB;IAkB/B,OAAO,CAAC,mBAAmB;YAkBb,uBAAuB;IAiDrC,OAAO,CAAC,gBAAgB;CAoCzB"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAWA,OAAO,EAAiB,WAAW,EAAiB,MAAM,UAAU,CAAC;AAKrE,qBAAa,WAAW;IACtB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,uBAAuB,CAA0B;;IAkBnD,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YAyDpC,uBAAuB;YAqIvB,YAAY;IA8E1B,OAAO,CAAC,uBAAuB;IAkB/B,OAAO,CAAC,mBAAmB;YAkBb,uBAAuB;YAiDvB,oBAAoB;YAkCpB,YAAY;YAkCZ,mBAAmB;YAgDnB,0BAA0B;IAyFxC,OAAO,CAAC,uBAAuB;IAwB/B,OAAO,CAAC,sBAAsB;IA+B9B,OAAO,CAAC,gBAAgB;CAmDzB"}