@zik000/archai 0.1.0 → 0.1.2

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 CHANGED
@@ -89,7 +89,7 @@ This agent system implements a **three-phase iteration architecture**:
89
89
 
90
90
  ```bash
91
91
  # Install globally
92
- npm install -g archai
92
+ npm install -g @zik000/archai
93
93
 
94
94
  # Initialize in your project
95
95
  cd your-project
package/dist/bin/cli.js CHANGED
@@ -3,6 +3,8 @@ import { Command } from 'commander';
3
3
  import { init } from '../commands/init.js';
4
4
  import { generate } from '../commands/generate.js';
5
5
  import { doctor } from '../commands/doctor.js';
6
+ import { setupProject } from '../commands/setup-project.js';
7
+ import { setupConfig } from '../commands/setup-config.js';
6
8
  const program = new Command();
7
9
  program
8
10
  .name('archai')
@@ -24,5 +26,15 @@ program
24
26
  .command('doctor')
25
27
  .description('Validate archai setup and check for issues')
26
28
  .action(doctor);
29
+ program
30
+ .command('setup-project')
31
+ .description('Interactive wizard to fill out project description')
32
+ .option('--force', 'Overwrite existing content')
33
+ .action(setupProject);
34
+ program
35
+ .command('setup-config')
36
+ .description('Interactive wizard to configure archai.config.md')
37
+ .option('--force', 'Overwrite existing content')
38
+ .action(setupConfig);
27
39
  program.parse();
28
40
  //# sourceMappingURL=cli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/bin/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,2DAA2D,CAAC;KACxE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qDAAqD,CAAC;KAClE,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC;KACrD,MAAM,CAAC,eAAe,EAAE,uCAAuC,CAAC;KAChE,MAAM,CAAC,IAAI,CAAC,CAAC;AAEhB,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,mDAAmD,CAAC;KAChE,MAAM,CAAC,WAAW,EAAE,oDAAoD,CAAC;KACzE,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;KAC/C,MAAM,CAAC,QAAQ,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,MAAM,CAAC,CAAC;AAElB,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/bin/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,2DAA2D,CAAC;KACxE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qDAAqD,CAAC;KAClE,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC;KACrD,MAAM,CAAC,eAAe,EAAE,uCAAuC,CAAC;KAChE,MAAM,CAAC,IAAI,CAAC,CAAC;AAEhB,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,mDAAmD,CAAC;KAChE,MAAM,CAAC,WAAW,EAAE,oDAAoD,CAAC;KACzE,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;KAC/C,MAAM,CAAC,QAAQ,CAAC,CAAC;AAEpB,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,MAAM,CAAC,CAAC;AAElB,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,oDAAoD,CAAC;KACjE,MAAM,CAAC,SAAS,EAAE,4BAA4B,CAAC;KAC/C,MAAM,CAAC,YAAY,CAAC,CAAC;AAExB,OAAO;KACJ,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,kDAAkD,CAAC;KAC/D,MAAM,CAAC,SAAS,EAAE,4BAA4B,CAAC;KAC/C,MAAM,CAAC,WAAW,CAAC,CAAC;AAEvB,OAAO,CAAC,KAAK,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAUA,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAiCD,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAyI9D"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAUA,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAiCD,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA2I9D"}
@@ -137,9 +137,11 @@ export async function init(options) {
137
137
  console.log('');
138
138
  console.log(chalk.white('1. Fill in the project description:'));
139
139
  console.log(chalk.cyan(' → .knowledge/context/project-description.md'));
140
+ console.log(chalk.gray(' (or run: archai setup-project)'));
140
141
  console.log('');
141
142
  console.log(chalk.white('2. Complete the configuration:'));
142
143
  console.log(chalk.cyan(' → archai.config.md'));
144
+ console.log(chalk.gray(' (or run: archai setup-config)'));
143
145
  console.log('');
144
146
  console.log(chalk.white('3. Generate specialist agents:'));
145
147
  console.log(chalk.cyan(' → archai generate'));
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ interface SetupConfigOptions {
2
+ force?: boolean;
3
+ }
4
+ export declare function setupConfig(options: SetupConfigOptions): Promise<void>;
5
+ export {};
6
+ //# sourceMappingURL=setup-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-config.d.ts","sourceRoot":"","sources":["../../src/commands/setup-config.ts"],"names":[],"mappings":"AAMA,UAAU,kBAAkB;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAoDD,wBAAsB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6M5E"}
@@ -0,0 +1,532 @@
1
+ import inquirer from 'inquirer';
2
+ import chalk from 'chalk';
3
+ import ora from 'ora';
4
+ import fs from 'fs-extra';
5
+ import { logger } from '../utils/logger.js';
6
+ const FILE_PATH = 'archai.config.md';
7
+ const PACKAGE_MANAGERS = ['npm', 'pnpm', 'yarn', 'bun', 'pip', 'cargo', 'go', 'other'];
8
+ export async function setupConfig(options) {
9
+ logger.banner();
10
+ // Check if file exists
11
+ const exists = await fs.pathExists(FILE_PATH);
12
+ if (!exists) {
13
+ logger.error('archai.config.md not found!');
14
+ console.log('');
15
+ logger.info('Run `archai init` first to create the configuration file.');
16
+ return;
17
+ }
18
+ // Load existing config
19
+ const existing = await parseExistingConfig();
20
+ console.log('');
21
+ logger.section('Configuration Wizard');
22
+ console.log(chalk.gray(' Configure your project settings and define specialists.'));
23
+ console.log(chalk.gray(' Press Enter to keep existing values.'));
24
+ console.log('');
25
+ // Section 1: Tech Stack
26
+ logger.section('1. Tech Stack');
27
+ console.log('');
28
+ const stackAnswers = await inquirer.prompt([
29
+ {
30
+ type: 'input',
31
+ name: 'languages',
32
+ message: 'Programming languages:',
33
+ default: existing.languages || '',
34
+ },
35
+ {
36
+ type: 'input',
37
+ name: 'frameworks',
38
+ message: 'Frameworks/libraries:',
39
+ default: existing.frameworks || '',
40
+ },
41
+ {
42
+ type: 'input',
43
+ name: 'testing',
44
+ message: 'Testing framework:',
45
+ default: existing.testing || '',
46
+ },
47
+ {
48
+ type: 'input',
49
+ name: 'additionalTech',
50
+ message: 'Additional technologies (databases, caching, etc.):',
51
+ default: '',
52
+ },
53
+ ]);
54
+ // Section 2: Commands
55
+ console.log('');
56
+ logger.section('2. Commands');
57
+ console.log('');
58
+ const pmDefault = existing.packageManager || 'npm';
59
+ const pmCommands = getPackageManagerCommands(pmDefault);
60
+ const commandAnswers = await inquirer.prompt([
61
+ {
62
+ type: 'list',
63
+ name: 'packageManager',
64
+ message: 'Package manager:',
65
+ choices: PACKAGE_MANAGERS,
66
+ default: pmDefault,
67
+ },
68
+ {
69
+ type: 'input',
70
+ name: 'installCommand',
71
+ message: 'Install command:',
72
+ default: (answers) => {
73
+ const cmds = getPackageManagerCommands(answers.packageManager);
74
+ return existing.installCommand || cmds.install || '';
75
+ },
76
+ },
77
+ {
78
+ type: 'input',
79
+ name: 'buildCommand',
80
+ message: 'Build command:',
81
+ default: (answers) => {
82
+ const cmds = getPackageManagerCommands(answers.packageManager);
83
+ return existing.buildCommand || cmds.build || '';
84
+ },
85
+ },
86
+ {
87
+ type: 'input',
88
+ name: 'testCommand',
89
+ message: 'Test command:',
90
+ default: (answers) => {
91
+ const cmds = getPackageManagerCommands(answers.packageManager);
92
+ return existing.testCommand || cmds.test || '';
93
+ },
94
+ },
95
+ {
96
+ type: 'input',
97
+ name: 'lintCommand',
98
+ message: 'Lint command:',
99
+ default: (answers) => {
100
+ const cmds = getPackageManagerCommands(answers.packageManager);
101
+ return existing.lintCommand || cmds.lint || '';
102
+ },
103
+ },
104
+ {
105
+ type: 'input',
106
+ name: 'devCommand',
107
+ message: 'Dev/run command:',
108
+ default: (answers) => {
109
+ const cmds = getPackageManagerCommands(answers.packageManager);
110
+ return existing.devCommand || cmds.dev || '';
111
+ },
112
+ },
113
+ ]);
114
+ // Section 3: Project Structure
115
+ console.log('');
116
+ logger.section('3. Project Structure');
117
+ console.log('');
118
+ const structureAnswers = await inquirer.prompt([
119
+ {
120
+ type: 'input',
121
+ name: 'sourceDirectory',
122
+ message: 'Source directory:',
123
+ default: existing.sourceDirectory || 'src/',
124
+ },
125
+ {
126
+ type: 'input',
127
+ name: 'testsDirectory',
128
+ message: 'Tests directory:',
129
+ default: existing.testsDirectory || 'tests/',
130
+ },
131
+ {
132
+ type: 'input',
133
+ name: 'keyFiles',
134
+ message: 'Key files agents should know about (comma-separated, format: "file:purpose"):',
135
+ default: '',
136
+ },
137
+ ]);
138
+ // Section 4: Specialists
139
+ console.log('');
140
+ logger.section('4. Specialist Agents');
141
+ console.log('');
142
+ console.log(chalk.gray(' Define specialist agents for your project.'));
143
+ console.log(chalk.gray(' Common types: frontend, backend, api, database, auth, devops, testing'));
144
+ console.log('');
145
+ const specialists = await specialistWizard();
146
+ // Section 5: MCP/Skills info
147
+ console.log('');
148
+ logger.section('5. MCP Servers & Skills');
149
+ console.log('');
150
+ console.log(chalk.gray(' MCP servers extend agent capabilities with external tools.'));
151
+ console.log(chalk.yellow(' Note: MCP configuration is added as a placeholder.'));
152
+ console.log(chalk.yellow(' Edit the config file manually to configure MCP servers.'));
153
+ console.log(chalk.cyan(' → See Claude Code documentation for MCP setup'));
154
+ console.log('');
155
+ // Combine answers
156
+ const answers = {
157
+ ...stackAnswers,
158
+ ...commandAnswers,
159
+ ...structureAnswers,
160
+ specialists,
161
+ };
162
+ // Generate config
163
+ console.log('');
164
+ const spinner = ora('Updating configuration...').start();
165
+ const content = generateConfig(answers, existing);
166
+ await fs.writeFile(FILE_PATH, content);
167
+ spinner.succeed('Updated archai.config.md');
168
+ // Final output
169
+ console.log('');
170
+ logger.divider();
171
+ console.log('');
172
+ logger.success('Configuration updated!');
173
+ console.log('');
174
+ if (specialists.length > 0) {
175
+ console.log(chalk.white(`Defined ${specialists.length} specialist(s):`));
176
+ specialists.forEach(s => {
177
+ console.log(chalk.cyan(` • ${s.name}-specialist`));
178
+ });
179
+ console.log('');
180
+ }
181
+ logger.section('Next Steps');
182
+ console.log('');
183
+ console.log(chalk.white('1. Review your configuration:'));
184
+ console.log(chalk.cyan(' → archai.config.md'));
185
+ console.log('');
186
+ console.log(chalk.white('2. Configure MCP servers (optional):'));
187
+ console.log(chalk.cyan(' → Edit the "MCP Servers & Skills" section in archai.config.md'));
188
+ console.log('');
189
+ console.log(chalk.white('3. Generate specialist agents:'));
190
+ console.log(chalk.cyan(' → archai generate'));
191
+ console.log('');
192
+ }
193
+ async function specialistWizard() {
194
+ const specialists = [];
195
+ const { addSpecialists } = await inquirer.prompt([{
196
+ type: 'confirm',
197
+ name: 'addSpecialists',
198
+ message: 'Would you like to define specialist agents?',
199
+ default: true,
200
+ }]);
201
+ if (!addSpecialists) {
202
+ return specialists;
203
+ }
204
+ let addMore = true;
205
+ while (addMore) {
206
+ console.log('');
207
+ const { name } = await inquirer.prompt([{
208
+ type: 'input',
209
+ name: 'name',
210
+ message: 'Specialist name (e.g., "frontend", "api", "database"):',
211
+ validate: (input) => {
212
+ if (!input.trim())
213
+ return 'Name is required';
214
+ if (input.includes(' '))
215
+ return 'Use lowercase with no spaces (e.g., "frontend" not "front end")';
216
+ return true;
217
+ },
218
+ }]);
219
+ const { focus } = await inquirer.prompt([{
220
+ type: 'input',
221
+ name: 'focus',
222
+ message: `What does ${name}-specialist focus on?`,
223
+ default: '',
224
+ }]);
225
+ const { concerns } = await inquirer.prompt([{
226
+ type: 'input',
227
+ name: 'concerns',
228
+ message: 'Key concerns (comma-separated):',
229
+ default: '',
230
+ }]);
231
+ const keyConcerns = concerns
232
+ .split(',')
233
+ .map((c) => c.trim())
234
+ .filter(Boolean);
235
+ specialists.push({ name: name.toLowerCase(), focus, keyConcerns });
236
+ console.log(chalk.green(` ✓ Added ${name}-specialist`));
237
+ const { more } = await inquirer.prompt([{
238
+ type: 'confirm',
239
+ name: 'more',
240
+ message: 'Add another specialist?',
241
+ default: specialists.length < 3,
242
+ }]);
243
+ addMore = more;
244
+ }
245
+ return specialists;
246
+ }
247
+ async function parseExistingConfig() {
248
+ const defaults = {
249
+ projectName: 'my-project',
250
+ projectType: '',
251
+ isMonorepo: false,
252
+ languages: '',
253
+ frameworks: '',
254
+ testing: '',
255
+ packageManager: 'npm',
256
+ installCommand: '',
257
+ buildCommand: '',
258
+ testCommand: '',
259
+ lintCommand: '',
260
+ devCommand: '',
261
+ sourceDirectory: 'src/',
262
+ testsDirectory: 'tests/',
263
+ };
264
+ try {
265
+ const content = await fs.readFile(FILE_PATH, 'utf-8');
266
+ // Parse basic info
267
+ const nameMatch = content.match(/\*\*Name:\*\*\s*(.+)/);
268
+ if (nameMatch)
269
+ defaults.projectName = nameMatch[1].trim();
270
+ const typeMatch = content.match(/\*\*Type:\*\*\s*(.+)/);
271
+ if (typeMatch && !typeMatch[1].includes('[TODO')) {
272
+ defaults.projectType = typeMatch[1].trim();
273
+ }
274
+ const monoMatch = content.match(/\*\*Monorepo:\*\*\s*(Yes|No)/i);
275
+ if (monoMatch)
276
+ defaults.isMonorepo = monoMatch[1].toLowerCase() === 'yes';
277
+ // Parse tech stack
278
+ const langMatch = content.match(/\*\*Languages:\*\*\s*(.+)/);
279
+ if (langMatch && !langMatch[1].includes('[TODO')) {
280
+ defaults.languages = langMatch[1].trim();
281
+ }
282
+ const fwMatch = content.match(/\*\*Frameworks:\*\*\s*(.+)/);
283
+ if (fwMatch && !fwMatch[1].includes('[TODO')) {
284
+ defaults.frameworks = fwMatch[1].trim();
285
+ }
286
+ const testMatch = content.match(/\*\*Testing:\*\*\s*(.+)/);
287
+ if (testMatch && !testMatch[1].includes('[TODO')) {
288
+ defaults.testing = testMatch[1].trim();
289
+ }
290
+ // Parse package manager
291
+ const pmMatch = content.match(/\*\*Package Manager:\*\*\s*(.+)/);
292
+ if (pmMatch && !pmMatch[1].includes('[TODO')) {
293
+ defaults.packageManager = pmMatch[1].trim();
294
+ }
295
+ // Parse commands from table
296
+ const installMatch = content.match(/\| Install \| (.+) \|/);
297
+ if (installMatch && !installMatch[1].includes('[TODO')) {
298
+ defaults.installCommand = installMatch[1].trim();
299
+ }
300
+ const buildMatch = content.match(/\| Build \| (.+) \|/);
301
+ if (buildMatch && !buildMatch[1].includes('[TODO')) {
302
+ defaults.buildCommand = buildMatch[1].trim();
303
+ }
304
+ const testCmdMatch = content.match(/\| Test \| (.+) \|/);
305
+ if (testCmdMatch && !testCmdMatch[1].includes('[TODO')) {
306
+ defaults.testCommand = testCmdMatch[1].trim();
307
+ }
308
+ const lintMatch = content.match(/\| Lint \| (.+) \|/);
309
+ if (lintMatch && !lintMatch[1].includes('[TODO')) {
310
+ defaults.lintCommand = lintMatch[1].trim();
311
+ }
312
+ const devMatch = content.match(/\| Dev \| (.+) \|/);
313
+ if (devMatch && !devMatch[1].includes('[TODO')) {
314
+ defaults.devCommand = devMatch[1].trim();
315
+ }
316
+ // Parse structure
317
+ const srcMatch = content.match(/\*\*Source Directory:\*\*\s*(.+)/);
318
+ if (srcMatch)
319
+ defaults.sourceDirectory = srcMatch[1].trim();
320
+ const testsMatch = content.match(/\*\*Tests Directory:\*\*\s*(.+)/);
321
+ if (testsMatch)
322
+ defaults.testsDirectory = testsMatch[1].trim();
323
+ }
324
+ catch {
325
+ // Use defaults if parsing fails
326
+ }
327
+ return defaults;
328
+ }
329
+ function getPackageManagerCommands(pm) {
330
+ const commands = {
331
+ npm: {
332
+ install: 'npm install',
333
+ build: 'npm run build',
334
+ test: 'npm test',
335
+ lint: 'npm run lint',
336
+ dev: 'npm run dev',
337
+ },
338
+ pnpm: {
339
+ install: 'pnpm install',
340
+ build: 'pnpm build',
341
+ test: 'pnpm test',
342
+ lint: 'pnpm lint',
343
+ dev: 'pnpm dev',
344
+ },
345
+ yarn: {
346
+ install: 'yarn',
347
+ build: 'yarn build',
348
+ test: 'yarn test',
349
+ lint: 'yarn lint',
350
+ dev: 'yarn dev',
351
+ },
352
+ bun: {
353
+ install: 'bun install',
354
+ build: 'bun run build',
355
+ test: 'bun test',
356
+ lint: 'bun run lint',
357
+ dev: 'bun run dev',
358
+ },
359
+ pip: {
360
+ install: 'pip install -r requirements.txt',
361
+ build: 'python -m build',
362
+ test: 'pytest',
363
+ lint: 'ruff check .',
364
+ dev: 'python main.py',
365
+ },
366
+ cargo: {
367
+ install: 'cargo build',
368
+ build: 'cargo build --release',
369
+ test: 'cargo test',
370
+ lint: 'cargo clippy',
371
+ dev: 'cargo run',
372
+ },
373
+ go: {
374
+ install: 'go mod download',
375
+ build: 'go build',
376
+ test: 'go test ./...',
377
+ lint: 'golangci-lint run',
378
+ dev: 'go run .',
379
+ },
380
+ other: {
381
+ install: '',
382
+ build: '',
383
+ test: '',
384
+ lint: '',
385
+ dev: '',
386
+ },
387
+ };
388
+ return commands[pm] || commands.other;
389
+ }
390
+ function generateConfig(answers, existing) {
391
+ const formatAdditionalTech = (input) => {
392
+ if (!input.trim())
393
+ return '-';
394
+ return input.split(',')
395
+ .map(item => `- ${item.trim()}`)
396
+ .filter(Boolean)
397
+ .join('\n');
398
+ };
399
+ const formatKeyFiles = (input) => {
400
+ if (!input.trim())
401
+ return '| | |';
402
+ return input.split(',')
403
+ .map(item => {
404
+ const [file, purpose] = item.split(':').map(s => s.trim());
405
+ return `| ${file || ''} | ${purpose || ''} |`;
406
+ })
407
+ .join('\n');
408
+ };
409
+ const formatSpecialists = (specialists) => {
410
+ if (specialists.length === 0) {
411
+ return `### 1. [TODO: Specialist Name]
412
+ **Focus:** [What this specialist handles]
413
+ **Key Concerns:**
414
+ - [Concern 1]
415
+ - [Concern 2]
416
+
417
+ ### 2. [Add more as needed]
418
+ **Focus:**
419
+ **Key Concerns:**
420
+ -`;
421
+ }
422
+ return specialists.map((s, i) => {
423
+ const concerns = s.keyConcerns.length > 0
424
+ ? s.keyConcerns.map(c => `- ${c}`).join('\n')
425
+ : '- [Add key concerns]';
426
+ return `### ${i + 1}. ${s.name}
427
+ **Focus:** ${s.focus || '[What this specialist handles]'}
428
+ **Key Concerns:**
429
+ ${concerns}`;
430
+ }).join('\n\n');
431
+ };
432
+ return `# archai Project Configuration
433
+
434
+ > Configuration for your archai agent system.
435
+ > Run \`archai generate\` after updating this file.
436
+
437
+ ---
438
+
439
+ ## Project Info
440
+
441
+ **Name:** ${existing.projectName}
442
+ **Type:** ${existing.projectType || '[TODO: web, mobile, cli, game, ml, devops]'}
443
+ **Monorepo:** ${existing.isMonorepo ? 'Yes' : 'No'}
444
+
445
+ ---
446
+
447
+ ## Tech Stack
448
+
449
+ **Languages:** ${answers.languages || '[TODO: TypeScript, Python, Go, etc.]'}
450
+ **Frameworks:** ${answers.frameworks || '[TODO: React, Express, Django, etc.]'}
451
+ **Testing:** ${answers.testing || '[TODO: vitest, jest, pytest, etc.]'}
452
+
453
+ ### Additional Technologies
454
+ ${formatAdditionalTech(answers.additionalTech)}
455
+
456
+ ---
457
+
458
+ ## Commands
459
+
460
+ **Package Manager:** ${answers.packageManager}
461
+
462
+ | Command | Script |
463
+ |---------|--------|
464
+ | Install | ${answers.installCommand || '[TODO]'} |
465
+ | Build | ${answers.buildCommand || '[TODO]'} |
466
+ | Test | ${answers.testCommand || '[TODO]'} |
467
+ | Lint | ${answers.lintCommand || '[TODO]'} |
468
+ | Dev | ${answers.devCommand || '[TODO]'} |
469
+
470
+ ---
471
+
472
+ ## Project Structure
473
+
474
+ **Source Directory:** ${answers.sourceDirectory}
475
+ **Tests Directory:** ${answers.testsDirectory}
476
+
477
+ ### Key Files
478
+ | File | Purpose |
479
+ |------|---------|
480
+ ${formatKeyFiles(answers.keyFiles)}
481
+
482
+ ---
483
+
484
+ ## Specialists to Generate
485
+
486
+ <!--
487
+ These specialist agents will be generated by Claude Code.
488
+ Run \`archai generate\` to create them.
489
+ -->
490
+
491
+ ${formatSpecialists(answers.specialists)}
492
+
493
+ ---
494
+
495
+ ## MCP Servers & Skills
496
+
497
+ <!--
498
+ Configure MCP servers to extend agent capabilities.
499
+ MCP (Model Context Protocol) allows agents to interact with external tools and services.
500
+
501
+ Example configuration (edit manually):
502
+
503
+ ### Database Tools
504
+ - Server: @anthropic/mcp-server-postgres
505
+ - Purpose: Query and manage database
506
+
507
+ ### File System
508
+ - Server: @anthropic/mcp-server-filesystem
509
+ - Purpose: Enhanced file operations
510
+
511
+ For setup instructions, see Claude Code documentation.
512
+ -->
513
+
514
+ [TODO: Configure MCP servers if needed]
515
+
516
+ ---
517
+
518
+ ## Permissions
519
+
520
+ <!-- Commands agents are allowed to run -->
521
+ - ${answers.packageManager} *
522
+ - npx *
523
+
524
+ ---
525
+
526
+ ## Notes
527
+
528
+ <!-- Any additional context for agents -->
529
+
530
+ `;
531
+ }
532
+ //# sourceMappingURL=setup-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-config.js","sourceRoot":"","sources":["../../src/commands/setup-config.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAqD5C,MAAM,SAAS,GAAG,kBAAkB,CAAC;AACrC,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAEvF,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAA2B;IAC3D,MAAM,CAAC,MAAM,EAAE,CAAC;IAEhB,uBAAuB;IACvB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAE9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QACzE,OAAO;IACT,CAAC;IAED,uBAAuB;IACvB,MAAM,QAAQ,GAAG,MAAM,mBAAmB,EAAE,CAAC;IAE7C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC,CAAC;IACtF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,wBAAwB;IACxB,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QACzC;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,wBAAwB;YACjC,OAAO,EAAE,QAAQ,CAAC,SAAS,IAAI,EAAE;SAClC;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,uBAAuB;YAChC,OAAO,EAAE,QAAQ,CAAC,UAAU,IAAI,EAAE;SACnC;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,EAAE;SAChC;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,qDAAqD;YAC9D,OAAO,EAAE,EAAE;SACZ;KACF,CAAC,CAAC;IAEH,sBAAsB;IACtB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,IAAI,KAAK,CAAC;IACnD,MAAM,UAAU,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;IAExD,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QAC3C;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,gBAAgB;YACzB,OAAO,EAAE,SAAS;SACnB;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,CAAC,OAAmC,EAAE,EAAE;gBAC/C,MAAM,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC/D,OAAO,QAAQ,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YACvD,CAAC;SACF;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,gBAAgB;YACzB,OAAO,EAAE,CAAC,OAAmC,EAAE,EAAE;gBAC/C,MAAM,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC/D,OAAO,QAAQ,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACnD,CAAC;SACF;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,CAAC,OAAmC,EAAE,EAAE;gBAC/C,MAAM,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC/D,OAAO,QAAQ,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YACjD,CAAC;SACF;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,CAAC,OAAmC,EAAE,EAAE;gBAC/C,MAAM,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC/D,OAAO,QAAQ,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YACjD,CAAC;SACF;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,CAAC,OAAmC,EAAE,EAAE;gBAC/C,MAAM,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC/D,OAAO,QAAQ,CAAC,UAAU,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YAC/C,CAAC;SACF;KACF,CAAC,CAAC;IAEH,+BAA+B;IAC/B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,gBAAgB,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QAC7C;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,mBAAmB;YAC5B,OAAO,EAAE,QAAQ,CAAC,eAAe,IAAI,MAAM;SAC5C;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,QAAQ,CAAC,cAAc,IAAI,QAAQ;SAC7C;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,+EAA+E;YACxF,OAAO,EAAE,EAAE;SACZ;KACF,CAAC,CAAC;IAEH,yBAAyB;IACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC,CAAC;IACzE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC,CAAC;IACpG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,WAAW,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAE7C,6BAA6B;IAC7B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,uDAAuD,CAAC,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,4DAA4D,CAAC,CAAC,CAAC;IACxF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,kBAAkB;IAClB,MAAM,OAAO,GAAkB;QAC7B,GAAG,YAAY;QACf,GAAG,cAAc;QACjB,GAAG,gBAAgB;QACnB,WAAW;KACZ,CAAC;IAEF,kBAAkB;IAClB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,OAAO,GAAG,GAAG,CAAC,2BAA2B,CAAC,CAAC,KAAK,EAAE,CAAC;IAEzD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClD,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAEvC,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAE5C,eAAe;IACf,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,OAAO,EAAE,CAAC;IACjB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,WAAW,CAAC,MAAM,iBAAiB,CAAC,CAAC,CAAC;QACzE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC,CAAC;IAC5F,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,gBAAgB;IAC7B,MAAM,WAAW,GAA2B,EAAE,CAAC;IAE/C,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;YAChD,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,6CAA6C;YACtD,OAAO,EAAE,IAAI;SACd,CAAC,CAAC,CAAC;IAEJ,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,OAAO,OAAO,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACtC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,wDAAwD;gBACjE,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;oBAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;wBAAE,OAAO,kBAAkB,CAAC;oBAC7C,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;wBAAE,OAAO,iEAAiE,CAAC;oBAClG,OAAO,IAAI,CAAC;gBACd,CAAC;aACF,CAAC,CAAC,CAAC;QAEJ,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACvC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,aAAa,IAAI,uBAAuB;gBACjD,OAAO,EAAE,EAAE;aACZ,CAAC,CAAC,CAAC;QAEJ,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC1C,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,iCAAiC;gBAC1C,OAAO,EAAE,EAAE;aACZ,CAAC,CAAC,CAAC;QAEJ,MAAM,WAAW,GAAG,QAAQ;aACzB,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAC5B,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnB,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;QAEnE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,IAAI,aAAa,CAAC,CAAC,CAAC;QAE1D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACtC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,yBAAyB;gBAClC,OAAO,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC;aAChC,CAAC,CAAC,CAAC;QAEJ,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,mBAAmB;IAChC,MAAM,QAAQ,GAAmB;QAC/B,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,EAAE;QACd,OAAO,EAAE,EAAE;QACX,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,EAAE;QAClB,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,EAAE;QACd,eAAe,EAAE,MAAM;QACvB,cAAc,EAAE,QAAQ;KACzB,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEtD,mBAAmB;QACnB,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACxD,IAAI,SAAS;YAAE,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE1D,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACxD,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACjE,IAAI,SAAS;YAAE,QAAQ,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;QAE1E,mBAAmB;QACnB,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC7D,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3C,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC5D,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1C,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC3D,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACjE,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,QAAQ,CAAC,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,CAAC;QAED,4BAA4B;QAC5B,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC5D,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,QAAQ,CAAC,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACnD,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACxD,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,QAAQ,CAAC,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/C,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACzD,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,QAAQ,CAAC,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAChD,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACtD,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACpD,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/C,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3C,CAAC;QAED,kBAAkB;QAClB,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACnE,IAAI,QAAQ;YAAE,QAAQ,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE5D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACpE,IAAI,UAAU;YAAE,QAAQ,CAAC,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEjE,CAAC;IAAC,MAAM,CAAC;QACP,gCAAgC;IAClC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,yBAAyB,CAAC,EAAU;IAC3C,MAAM,QAAQ,GAA2C;QACvD,GAAG,EAAE;YACH,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,aAAa;SACnB;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,cAAc;YACvB,KAAK,EAAE,YAAY;YACnB,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,UAAU;SAChB;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,YAAY;YACnB,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,UAAU;SAChB;QACD,GAAG,EAAE;YACH,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,aAAa;SACnB;QACD,GAAG,EAAE;YACH,OAAO,EAAE,iCAAiC;YAC1C,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,gBAAgB;SACtB;QACD,KAAK,EAAE;YACL,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,uBAAuB;YAC9B,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,WAAW;SACjB;QACD,EAAE,EAAE;YACF,OAAO,EAAE,iBAAiB;YAC1B,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,mBAAmB;YACzB,GAAG,EAAE,UAAU;SAChB;QACD,KAAK,EAAE;YACL,OAAO,EAAE,EAAE;YACX,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,EAAE;SACR;KACF,CAAC;IAEF,OAAO,QAAQ,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC;AACxC,CAAC;AAED,SAAS,cAAc,CAAC,OAAsB,EAAE,QAAwB;IACtE,MAAM,oBAAoB,GAAG,CAAC,KAAa,EAAU,EAAE;QACrD,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YAAE,OAAO,GAAG,CAAC;QAC9B,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;aACpB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;aAC/B,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,KAAa,EAAU,EAAE;QAC/C,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YAAE,OAAO,OAAO,CAAC;QAClC,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;aACpB,GAAG,CAAC,IAAI,CAAC,EAAE;YACV,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3D,OAAO,KAAK,IAAI,IAAI,EAAE,MAAM,OAAO,IAAI,EAAE,IAAI,CAAC;QAChD,CAAC,CAAC;aACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,WAAmC,EAAU,EAAE;QACxE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;;;;;;;;;EASX,CAAC;QACC,CAAC;QAED,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC9B,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;gBACvC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC7C,CAAC,CAAC,sBAAsB,CAAC;YAE3B,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI;aACvB,CAAC,CAAC,KAAK,IAAI,gCAAgC;;EAEtD,QAAQ,EAAE,CAAC;QACT,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO;;;;;;;;;YASG,QAAQ,CAAC,WAAW;YACpB,QAAQ,CAAC,WAAW,IAAI,4CAA4C;gBAChE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;;;;;iBAMjC,OAAO,CAAC,SAAS,IAAI,sCAAsC;kBAC1D,OAAO,CAAC,UAAU,IAAI,sCAAsC;eAC/D,OAAO,CAAC,OAAO,IAAI,oCAAoC;;;EAGpE,oBAAoB,CAAC,OAAO,CAAC,cAAc,CAAC;;;;;;uBAMvB,OAAO,CAAC,cAAc;;;;cAI/B,OAAO,CAAC,cAAc,IAAI,QAAQ;YACpC,OAAO,CAAC,YAAY,IAAI,QAAQ;WACjC,OAAO,CAAC,WAAW,IAAI,QAAQ;WAC/B,OAAO,CAAC,WAAW,IAAI,QAAQ;UAChC,OAAO,CAAC,UAAU,IAAI,QAAQ;;;;;;wBAMhB,OAAO,CAAC,eAAe;uBACxB,OAAO,CAAC,cAAc;;;;;EAK3C,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC;;;;;;;;;;;EAWhC,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BpC,OAAO,CAAC,cAAc;;;;;;;;;CASzB,CAAC;AACF,CAAC"}
@@ -0,0 +1,6 @@
1
+ interface SetupProjectOptions {
2
+ force?: boolean;
3
+ }
4
+ export declare function setupProject(options: SetupProjectOptions): Promise<void>;
5
+ export {};
6
+ //# sourceMappingURL=setup-project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-project.d.ts","sourceRoot":"","sources":["../../src/commands/setup-project.ts"],"names":[],"mappings":"AAMA,UAAU,mBAAmB;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA+BD,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgO9E"}
@@ -0,0 +1,359 @@
1
+ import inquirer from 'inquirer';
2
+ import chalk from 'chalk';
3
+ import ora from 'ora';
4
+ import fs from 'fs-extra';
5
+ import { logger } from '../utils/logger.js';
6
+ const FILE_PATH = '.knowledge/context/project-description.md';
7
+ export async function setupProject(options) {
8
+ logger.banner();
9
+ // Check if file exists
10
+ const exists = await fs.pathExists(FILE_PATH);
11
+ if (exists && !options.force) {
12
+ const { mode } = await inquirer.prompt([{
13
+ type: 'list',
14
+ name: 'mode',
15
+ message: 'project-description.md already exists. What would you like to do?',
16
+ choices: [
17
+ { name: 'Update (fill in placeholders, keep custom content)', value: 'update' },
18
+ { name: 'Overwrite (start fresh)', value: 'overwrite' },
19
+ { name: 'Cancel', value: 'cancel' }
20
+ ]
21
+ }]);
22
+ if (mode === 'cancel') {
23
+ logger.info('Setup cancelled.');
24
+ return;
25
+ }
26
+ if (mode === 'update') {
27
+ logger.info('Update mode: Existing custom content will be preserved where possible.');
28
+ }
29
+ }
30
+ // Load defaults from config if available
31
+ const defaults = await loadConfigDefaults();
32
+ console.log('');
33
+ logger.section('Project Description Wizard');
34
+ console.log(chalk.gray(' Fill in details about your project for AI agents.'));
35
+ console.log(chalk.gray(' Press Enter to skip questions you\'re unsure about.'));
36
+ console.log('');
37
+ // Section 1: Overview
38
+ logger.section('1. Project Overview');
39
+ console.log('');
40
+ const overviewAnswers = await inquirer.prompt([
41
+ {
42
+ type: 'input',
43
+ name: 'oneLineDescription',
44
+ message: 'One-line description (what does this project do?):',
45
+ default: '',
46
+ },
47
+ {
48
+ type: 'editor',
49
+ name: 'detailedDescription',
50
+ message: 'Detailed description (2-3 paragraphs - opens editor):',
51
+ default: '[Describe the project purpose, target users, and core functionality]',
52
+ },
53
+ ]);
54
+ // Section 2: Architecture
55
+ console.log('');
56
+ logger.section('2. Architecture');
57
+ console.log('');
58
+ const architectureAnswers = await inquirer.prompt([
59
+ {
60
+ type: 'input',
61
+ name: 'architecture',
62
+ message: 'High-level architecture (client/server, microservices, monolith, etc.):',
63
+ default: '',
64
+ },
65
+ {
66
+ type: 'input',
67
+ name: 'keyModules',
68
+ message: 'Key modules/packages (comma-separated):',
69
+ default: defaults.isMonorepo ? 'packages/, apps/' : 'src/',
70
+ },
71
+ ]);
72
+ // Section 3: Domain
73
+ console.log('');
74
+ logger.section('3. Domain Concepts');
75
+ console.log('');
76
+ const domainAnswers = await inquirer.prompt([
77
+ {
78
+ type: 'input',
79
+ name: 'coreEntities',
80
+ message: 'Core entities/domain objects (comma-separated):',
81
+ default: '',
82
+ },
83
+ {
84
+ type: 'input',
85
+ name: 'keyWorkflows',
86
+ message: 'Key workflows/user flows (comma-separated):',
87
+ default: '',
88
+ },
89
+ ]);
90
+ // Section 4: Technical Constraints
91
+ console.log('');
92
+ logger.section('4. Technical Constraints');
93
+ console.log('');
94
+ const technicalAnswers = await inquirer.prompt([
95
+ {
96
+ type: 'input',
97
+ name: 'performanceRequirements',
98
+ message: 'Performance requirements (e.g., "1000 concurrent users"):',
99
+ default: '',
100
+ },
101
+ {
102
+ type: 'input',
103
+ name: 'compatibilityRequirements',
104
+ message: 'Compatibility requirements (e.g., "Modern browsers, iOS 14+"):',
105
+ default: '',
106
+ },
107
+ {
108
+ type: 'input',
109
+ name: 'securityConsiderations',
110
+ message: 'Security considerations (e.g., "Auth required, data encryption"):',
111
+ default: '',
112
+ },
113
+ ]);
114
+ // Section 5: Development Guidelines
115
+ console.log('');
116
+ logger.section('5. Development Guidelines');
117
+ console.log('');
118
+ const guidelinesAnswers = await inquirer.prompt([
119
+ {
120
+ type: 'input',
121
+ name: 'codeStyle',
122
+ message: 'Code style/patterns to follow:',
123
+ default: '',
124
+ },
125
+ {
126
+ type: 'input',
127
+ name: 'whatToAvoid',
128
+ message: 'What to avoid (anti-patterns, deprecated approaches):',
129
+ default: '',
130
+ },
131
+ {
132
+ type: 'input',
133
+ name: 'testingPhilosophy',
134
+ message: 'Testing philosophy (how thorough? what must be tested?):',
135
+ default: '',
136
+ },
137
+ ]);
138
+ // Section 6: External Integrations
139
+ console.log('');
140
+ logger.section('6. External Integrations');
141
+ console.log('');
142
+ const integrationsAnswers = await inquirer.prompt([
143
+ {
144
+ type: 'input',
145
+ name: 'externalIntegrations',
146
+ message: 'External services/APIs (comma-separated, format: "Service:Purpose"):',
147
+ default: '',
148
+ },
149
+ ]);
150
+ // Section 7: Current State
151
+ console.log('');
152
+ logger.section('7. Current State');
153
+ console.log('');
154
+ const stateAnswers = await inquirer.prompt([
155
+ {
156
+ type: 'input',
157
+ name: 'workingFeatures',
158
+ message: 'What\'s currently working (comma-separated):',
159
+ default: '',
160
+ },
161
+ {
162
+ type: 'input',
163
+ name: 'knownIssues',
164
+ message: 'Known issues (comma-separated):',
165
+ default: '',
166
+ },
167
+ {
168
+ type: 'input',
169
+ name: 'upcomingPriorities',
170
+ message: 'Upcoming priorities (comma-separated):',
171
+ default: '',
172
+ },
173
+ ]);
174
+ // Combine all answers
175
+ const answers = {
176
+ ...overviewAnswers,
177
+ ...architectureAnswers,
178
+ ...domainAnswers,
179
+ ...technicalAnswers,
180
+ ...guidelinesAnswers,
181
+ ...integrationsAnswers,
182
+ ...stateAnswers,
183
+ };
184
+ // Generate content
185
+ console.log('');
186
+ const spinner = ora('Generating project description...').start();
187
+ const content = generateProjectDescription(answers, defaults);
188
+ await fs.ensureDir('.knowledge/context');
189
+ await fs.writeFile(FILE_PATH, content);
190
+ spinner.succeed('Created project-description.md');
191
+ // Final output
192
+ console.log('');
193
+ logger.divider();
194
+ console.log('');
195
+ logger.success('Project description updated!');
196
+ console.log('');
197
+ logger.section('Next Steps');
198
+ console.log('');
199
+ console.log(chalk.white('1. Review and refine:'));
200
+ console.log(chalk.cyan(' → .knowledge/context/project-description.md'));
201
+ console.log('');
202
+ console.log(chalk.white('2. Generate specialist agents:'));
203
+ console.log(chalk.cyan(' → archai generate'));
204
+ console.log('');
205
+ }
206
+ async function loadConfigDefaults() {
207
+ const defaults = {
208
+ projectName: 'my-project',
209
+ languages: '',
210
+ frameworks: '',
211
+ testFramework: '',
212
+ isMonorepo: false,
213
+ };
214
+ try {
215
+ if (await fs.pathExists('archai.config.md')) {
216
+ const content = await fs.readFile('archai.config.md', 'utf-8');
217
+ // Parse project name
218
+ const nameMatch = content.match(/\*\*Name:\*\*\s*(.+)/);
219
+ if (nameMatch)
220
+ defaults.projectName = nameMatch[1].trim();
221
+ // Parse languages
222
+ const langMatch = content.match(/\*\*Languages:\*\*\s*(.+)/);
223
+ if (langMatch && !langMatch[1].includes('[TODO')) {
224
+ defaults.languages = langMatch[1].trim();
225
+ }
226
+ // Parse frameworks
227
+ const fwMatch = content.match(/\*\*Frameworks:\*\*\s*(.+)/);
228
+ if (fwMatch && !fwMatch[1].includes('[TODO')) {
229
+ defaults.frameworks = fwMatch[1].trim();
230
+ }
231
+ // Parse testing
232
+ const testMatch = content.match(/\*\*Testing:\*\*\s*(.+)/);
233
+ if (testMatch && !testMatch[1].includes('[TODO')) {
234
+ defaults.testFramework = testMatch[1].trim();
235
+ }
236
+ // Parse monorepo
237
+ const monoMatch = content.match(/\*\*Monorepo:\*\*\s*(Yes|No)/i);
238
+ if (monoMatch)
239
+ defaults.isMonorepo = monoMatch[1].toLowerCase() === 'yes';
240
+ }
241
+ }
242
+ catch {
243
+ // Use defaults if config can't be read
244
+ }
245
+ return defaults;
246
+ }
247
+ function generateProjectDescription(answers, defaults) {
248
+ const formatList = (input, prefix = '- ') => {
249
+ if (!input.trim())
250
+ return `${prefix}[TODO]`;
251
+ return input.split(',')
252
+ .map(item => item.trim())
253
+ .filter(Boolean)
254
+ .map(item => `${prefix}${item}`)
255
+ .join('\n');
256
+ };
257
+ const formatEntities = (input) => {
258
+ if (!input.trim())
259
+ return '- **Entity1**: Description\n- **Entity2**: Description';
260
+ return input.split(',')
261
+ .map(item => item.trim())
262
+ .filter(Boolean)
263
+ .map(item => `- **${item}**: [Description]`)
264
+ .join('\n');
265
+ };
266
+ const formatWorkflows = (input) => {
267
+ if (!input.trim())
268
+ return '1. Workflow: [Description]';
269
+ return input.split(',')
270
+ .map((item, i) => `${i + 1}. ${item.trim()}: [Description]`)
271
+ .join('\n');
272
+ };
273
+ const formatIntegrations = (input) => {
274
+ if (!input.trim())
275
+ return '| [Service] | [Purpose] | [Notes] |';
276
+ return input.split(',')
277
+ .map(item => {
278
+ const [service, purpose] = item.split(':').map(s => s.trim());
279
+ return `| ${service || '[Service]'} | ${purpose || '[Purpose]'} | |`;
280
+ })
281
+ .join('\n');
282
+ };
283
+ return `# Project Description
284
+
285
+ > This file provides context to all agents. Keep it updated.
286
+
287
+ ## Project Overview
288
+
289
+ **Name:** ${defaults.projectName}
290
+
291
+ **One-line description:**
292
+ ${answers.oneLineDescription || '[What does this project do in one sentence?]'}
293
+
294
+ **Detailed description:**
295
+ ${answers.detailedDescription || '[2-3 paragraphs explaining the project, its purpose, target users, and core functionality]'}
296
+
297
+ ## Tech Stack
298
+
299
+ **Languages:** ${defaults.languages || '[TODO: Add your languages]'}
300
+ **Frameworks:** ${defaults.frameworks || '[TODO: Add your frameworks]'}
301
+ **Testing:** ${defaults.testFramework || '[TODO: Add your test framework]'}
302
+
303
+ ## Architecture
304
+
305
+ **High-level architecture:**
306
+ ${answers.architecture || '[Describe how the system is structured - client/server, microservices, monolith, etc.]'}
307
+
308
+ **Key modules/packages:**
309
+ ${formatList(answers.keyModules)}
310
+
311
+ ## Domain Concepts
312
+
313
+ **Core entities:**
314
+ ${formatEntities(answers.coreEntities)}
315
+
316
+ **Key workflows:**
317
+ ${formatWorkflows(answers.keyWorkflows)}
318
+
319
+ ## Technical Constraints
320
+
321
+ **Performance requirements:**
322
+ ${formatList(answers.performanceRequirements)}
323
+
324
+ **Compatibility requirements:**
325
+ ${formatList(answers.compatibilityRequirements)}
326
+
327
+ **Security considerations:**
328
+ ${formatList(answers.securityConsiderations)}
329
+
330
+ ## Development Guidelines
331
+
332
+ **Code style:**
333
+ ${answers.codeStyle || '[Any specific conventions, patterns to follow]'}
334
+
335
+ **What to avoid:**
336
+ ${answers.whatToAvoid || '[Anti-patterns, deprecated approaches, things NOT to do]'}
337
+
338
+ **Testing philosophy:**
339
+ ${answers.testingPhilosophy || '[How thorough should tests be? What must be tested?]'}
340
+
341
+ ## External Integrations
342
+
343
+ | Service | Purpose | Notes |
344
+ |---------|---------|-------|
345
+ ${formatIntegrations(answers.externalIntegrations)}
346
+
347
+ ## Current State
348
+
349
+ **What's working:**
350
+ ${formatList(answers.workingFeatures)}
351
+
352
+ **Known issues:**
353
+ ${formatList(answers.knownIssues)}
354
+
355
+ **Upcoming priorities:**
356
+ ${formatList(answers.upcomingPriorities)}
357
+ `;
358
+ }
359
+ //# sourceMappingURL=setup-project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-project.js","sourceRoot":"","sources":["../../src/commands/setup-project.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zik000/archai",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Multi-agent AI development workflow setup for any project",
5
5
  "keywords": [
6
6
  "claude",
@@ -323,4 +323,4 @@ After 4 iterations, the requirements might be unclear. Provide more context or s
323
323
 
324
324
  ---
325
325
 
326
- *Powered by archai - Multi-agent AI development workflow*
326
+ *Powered by [@zik000/archai](https://www.npmjs.com/package/@zik000/archai) - Multi-agent AI development workflow*
@@ -80,6 +80,37 @@ You are a development workflow orchestrator with a THREE-PHASE ITERATION archite
80
80
  └─────────────────────────────────────────────────────────────────────────────┘
81
81
  ```
82
82
 
83
+ ## Step -1: Git Branch Verification (MANDATORY FIRST)
84
+
85
+ **STOP. Before ANYTHING else, verify you are on a feature branch.**
86
+
87
+ ### Check Current Branch
88
+ ```bash
89
+ git branch --show-current
90
+ ```
91
+
92
+ ### If on main/master/develop:
93
+ 1. **DO NOT PROCEED** with any work
94
+ 2. Create a feature branch immediately:
95
+ ```bash
96
+ git checkout -b agent/[task-id]-[short-description]
97
+ ```
98
+ 3. Example: `git checkout -b agent/TASK-001-add-user-auth`
99
+
100
+ ### If already on feature branch:
101
+ - Verify branch follows pattern: `agent/*` or `feature/*`
102
+ - Proceed to Step 0
103
+
104
+ ### Branch Naming Convention
105
+ - Format: `agent/[task-id]-[short-description]`
106
+ - Lowercase with hyphens, description under 30 chars
107
+ - Examples: `agent/TASK-042-fix-login`, `agent/epic-15-refactor-auth`
108
+
109
+ ### Protected Branches (NEVER work directly on these)
110
+ `main`, `master`, `develop`, `release/*`
111
+
112
+ ---
113
+
83
114
  ## Project Context
84
115
 
85
116
  Read project context from:
@@ -62,6 +62,35 @@ branch: null | branch-name
62
62
 
63
63
  ## Orchestration Protocol
64
64
 
65
+ ### Step 0: Git Branch Verification (MANDATORY FIRST)
66
+
67
+ **Before doing ANYTHING else, verify your git status.**
68
+
69
+ ```bash
70
+ # Check current branch
71
+ git branch --show-current
72
+
73
+ # Check for uncommitted changes
74
+ git status
75
+ ```
76
+
77
+ #### If on main/master/develop:
78
+ 1. **DO NOT claim any task yet**
79
+ 2. If you know which task you'll work on, create the branch now:
80
+ ```bash
81
+ git checkout -b agent/[task-id]-[short-description]
82
+ ```
83
+ 3. If unsure which task, proceed to Step 1 to select a task, then return here to create the branch
84
+
85
+ #### If you have uncommitted changes:
86
+ - Stash or commit them to the appropriate branch
87
+ - Never leave work uncommitted when switching contexts
88
+
89
+ #### Protected Branches (NEVER work directly on these)
90
+ `main`, `master`, `develop`, `release/*`
91
+
92
+ ---
93
+
65
94
  ### Step 1: Claim a Task
66
95
 
67
96
  Find highest priority task in inbox:
@@ -76,13 +105,23 @@ Claim it by:
76
105
  2. Set `assignee` to current session
77
106
  3. Move to `.tasks/epics/`
78
107
 
79
- ### Step 2: Create Branch
108
+ ### Step 2: Create/Verify Branch
109
+
110
+ **Verify you are NOT on a protected branch before proceeding.**
111
+
112
+ If not already on a feature branch (from Step 0), create one:
80
113
 
81
114
  ```bash
82
115
  # Create feature branch
83
116
  git checkout -b agent/[task-id]-[short-description]
84
117
  ```
85
118
 
119
+ Branch naming:
120
+ - Format: `agent/[task-id]-[short-description]`
121
+ - Lowercase with hyphens
122
+ - Description under 30 chars
123
+ - Example: `agent/TASK-042-fix-login-bug`
124
+
86
125
  Update task file with branch name.
87
126
 
88
127
  ### Step 3: Execute Workflow