camouf 0.7.1 → 0.9.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.
Files changed (41) hide show
  1. package/README.md +38 -6
  2. package/dist/cli/commands/init.d.ts.map +1 -1
  3. package/dist/cli/commands/init.js +254 -0
  4. package/dist/cli/commands/init.js.map +1 -1
  5. package/dist/cli/commands/mcp.d.ts.map +1 -1
  6. package/dist/cli/commands/mcp.js +3 -2
  7. package/dist/cli/commands/mcp.js.map +1 -1
  8. package/dist/cli/version.d.ts +1 -1
  9. package/dist/cli/version.js +1 -1
  10. package/dist/index.d.ts +17 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +13 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/mcp/index.d.ts +2 -1
  15. package/dist/mcp/index.d.ts.map +1 -1
  16. package/dist/mcp/index.js +23 -4
  17. package/dist/mcp/index.js.map +1 -1
  18. package/dist/mcp/prompts/index.d.ts +16 -0
  19. package/dist/mcp/prompts/index.d.ts.map +1 -0
  20. package/dist/mcp/prompts/index.js +236 -0
  21. package/dist/mcp/prompts/index.js.map +1 -0
  22. package/dist/mcp/resources/config.d.ts +50 -0
  23. package/dist/mcp/resources/config.d.ts.map +1 -0
  24. package/dist/mcp/resources/config.js +78 -0
  25. package/dist/mcp/resources/config.js.map +1 -0
  26. package/dist/mcp/resources/rules.d.ts +4 -5
  27. package/dist/mcp/resources/rules.d.ts.map +1 -1
  28. package/dist/mcp/resources/rules.js +118 -208
  29. package/dist/mcp/resources/rules.js.map +1 -1
  30. package/dist/mcp/tools/analyze.d.ts +1 -1
  31. package/dist/mcp/tools/analyze.d.ts.map +1 -1
  32. package/dist/mcp/tools/analyze.js +181 -42
  33. package/dist/mcp/tools/analyze.js.map +1 -1
  34. package/dist/mcp/tools/fix.d.ts.map +1 -1
  35. package/dist/mcp/tools/fix.js +19 -0
  36. package/dist/mcp/tools/fix.js.map +1 -1
  37. package/dist/testing/index.d.ts +50 -0
  38. package/dist/testing/index.d.ts.map +1 -0
  39. package/dist/testing/index.js +304 -0
  40. package/dist/testing/index.js.map +1 -0
  41. package/package.json +24 -1
package/README.md CHANGED
@@ -106,7 +106,7 @@ npx camouf fix --id sig-001 # Fix a specific mismatch
106
106
 
107
107
  ## Features
108
108
 
109
- - **13+ Built-in Rules**: AI-specific and architecture validation rules
109
+ - **18 Built-in Rules**: AI-specific and architecture validation rules
110
110
  - **Function/Field Matching**: Fuzzy matching to detect AI naming drift
111
111
  - **Circular Dependency Detection**: Find and break dependency cycles
112
112
  - **Real-time Watch Mode**: Continuous architecture monitoring
@@ -157,7 +157,7 @@ Running `npx camouf` or `npx camouf help` displays the full interactive help:
157
157
  ██║ ███████║██╔████╔██║██║ ██║██║ ██║█████╗
158
158
  ██║ ██╔══██║██║╚██╔╝██║██║ ██║██║ ██║██╔══╝
159
159
  ╚██████╗██║ ██║██║ ╚═╝ ██║╚██████╔╝╚██████╔╝██║
160
- ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ v0.7.0
160
+ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ v0.8.0
161
161
 
162
162
  Architecture guardrails for AI-generated code
163
163
 
@@ -175,6 +175,7 @@ Running `npx camouf` or `npx camouf help` displays the full interactive help:
175
175
  init [options] Initialize configuration in the current project
176
176
  --template <t> Use preset (monorepo, fullstack)
177
177
  --agent <type> Generate CLAUDE.md / AGENTS.md
178
+ --plugin Scaffold a new Camouf plugin project
178
179
 
179
180
  Validation & Analysis:
180
181
  validate [options] One-time architecture validation
@@ -305,6 +306,8 @@ npm install --save-dev camouf-plugin-react
305
306
 
306
307
  Camouf exposes an **MCP (Model Context Protocol) server** that allows AI agents like Claude, Cursor, and Copilot to validate their own code **before proposing it to you**.
307
308
 
309
+ > **Full tutorial:** [Using Camouf with AI Agents (MCP Tutorial)](docs/mcp-agent-tutorial.md) -- setup, real-time streaming, multi-agent collaboration, and the validate-fix-revalidate loop.
310
+
308
311
  ### Start MCP Server
309
312
 
310
313
  ```bash
@@ -332,9 +335,25 @@ Add to your Claude Desktop config (`%APPDATA%\Claude\claude_desktop_config.json`
332
335
  | Tool | Description |
333
336
  |------|-------------|
334
337
  | `camouf_validate` | Validate code against architecture rules |
335
- | `camouf_analyze` | Analyze project structure and conventions |
338
+ | `camouf_analyze` | Analyze project structure and dependencies (uses real dependency graph) |
336
339
  | `camouf_suggest_fix` | Get fix suggestions for violations |
337
340
 
341
+ ### MCP Resources
342
+
343
+ | Resource | Description |
344
+ |----------|-------------|
345
+ | `camouf://rules` | All available rules with enabled/disabled status (dynamic from config + plugins) |
346
+ | `camouf://config` | Active project configuration, layers, and rule settings |
347
+
348
+ ### MCP Prompts
349
+
350
+ | Prompt | Description |
351
+ |--------|-------------|
352
+ | `before-writing-code` | Workflow: analyze project architecture before generating code |
353
+ | `after-generating-code` | Validate and fix loop with max 3 iterations |
354
+ | `understanding-violations` | How to interpret severity levels and common AI violations |
355
+ | `project-conventions` | Discover active rules, layers, naming conventions |
356
+
338
357
  ### Example: AI Self-Validation
339
358
 
340
359
  When Claude generates code, it can call `camouf_validate` to check for:
@@ -353,6 +372,7 @@ This creates a **feedback loop** where AI catches its own mistakes before you se
353
372
  - [Getting Started](docs/getting-started.md)
354
373
  - [Creating Plugins](docs/creating-plugins.md)
355
374
  - [AI Agent Challenges](docs/ai-agent-challenges.md)
375
+ - [MCP Agent Tutorial](docs/mcp-agent-tutorial.md)
356
376
  - [Configuring Rules](docs/configuring-rules.md)
357
377
  - [CI/CD Integration](docs/ci-cd-integration.md)
358
378
  - [Changelog](CHANGELOG.md)
@@ -770,23 +790,35 @@ camouf analyze --visualize -f dot -o ./reports
770
790
 
771
791
  ## Extending Camouf
772
792
 
793
+ ### Plugin Scaffolding
794
+
795
+ The fastest way to create a new plugin:
796
+
797
+ ```bash
798
+ npx camouf init --plugin
799
+ ```
800
+
801
+ This generates a complete plugin project with package.json, tsconfig, entry point, and a rule template. See [Creating Plugins](docs/creating-plugins.md).
802
+
773
803
  ### Custom Rules
774
804
 
775
805
  For project-specific rules, implement the `IRule` interface:
776
806
 
777
807
  ```typescript
778
- import { IRule, RuleContext, RuleResult } from 'camouf';
808
+ import type { IRule, RuleContext, RuleResult } from 'camouf/rules';
809
+ import type { Violation } from 'camouf';
779
810
 
780
811
  export class MyCustomRule implements IRule {
781
812
  readonly id = 'my-custom-rule';
782
813
  readonly name = 'My Custom Rule';
783
814
  readonly description = 'Description of what the rule checks';
784
- readonly severity = 'warning';
815
+ readonly severity = 'warning' as const;
785
816
  readonly tags = ['custom'];
786
817
 
787
818
  async check(context: RuleContext): Promise<RuleResult> {
819
+ const violations: Violation[] = [];
788
820
  // Your rule logic here
789
- return { violations: [] };
821
+ return { violations };
790
822
  }
791
823
  }
792
824
  ```
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,eAAO,MAAM,WAAW,SAiJpB,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUpC,eAAO,MAAM,WAAW,SAwJpB,CAAC"}
@@ -21,7 +21,13 @@ export const initCommand = new Command('init')
21
21
  .option('-f, --force', 'Overwrite existing configuration')
22
22
  .option('--template <template>', 'Use a predefined template (monorepo, microservices, fullstack)')
23
23
  .option('--agent <type>', 'Generate agent integration files (claude, codex, all)')
24
+ .option('--plugin', 'Scaffold a new Camouf plugin project')
24
25
  .action(async (options) => {
26
+ // Plugin scaffolding is a separate path
27
+ if (options.plugin) {
28
+ await scaffoldPlugin(options);
29
+ return;
30
+ }
25
31
  const spinner = ora('Detecting project structure...').start();
26
32
  try {
27
33
  const configManager = new ConfigurationManager();
@@ -259,4 +265,252 @@ async function createVSCodeIntegration(projectRoot) {
259
265
  };
260
266
  fs.writeFileSync(settingsPath, JSON.stringify(camoufSettings, null, 2));
261
267
  }
268
+ /**
269
+ * Scaffold a new Camouf plugin project
270
+ */
271
+ async function scaffoldPlugin(options) {
272
+ let pluginName;
273
+ let pluginDescription;
274
+ let ruleId;
275
+ if (options.yes) {
276
+ pluginName = 'my-plugin';
277
+ pluginDescription = 'A custom Camouf plugin';
278
+ ruleId = 'my-custom-rule';
279
+ }
280
+ else {
281
+ const answers = await inquirer.prompt([
282
+ {
283
+ type: 'input',
284
+ name: 'name',
285
+ message: 'Plugin name (without camouf-plugin- prefix):',
286
+ default: 'my-plugin',
287
+ validate: (input) => {
288
+ if (/^[a-z0-9-]+$/.test(input))
289
+ return true;
290
+ return 'Use lowercase letters, numbers, and hyphens only';
291
+ },
292
+ },
293
+ {
294
+ type: 'input',
295
+ name: 'description',
296
+ message: 'Plugin description:',
297
+ default: 'A custom Camouf plugin',
298
+ },
299
+ {
300
+ type: 'input',
301
+ name: 'ruleId',
302
+ message: 'First rule ID (e.g., no-global-state):',
303
+ default: 'my-custom-rule',
304
+ validate: (input) => {
305
+ if (/^[a-z0-9-]+$/.test(input))
306
+ return true;
307
+ return 'Use lowercase letters, numbers, and hyphens only';
308
+ },
309
+ },
310
+ ]);
311
+ pluginName = answers.name;
312
+ pluginDescription = answers.description;
313
+ ruleId = answers.ruleId;
314
+ }
315
+ const dirName = `camouf-plugin-${pluginName}`;
316
+ const dirPath = path.join(process.cwd(), dirName);
317
+ if (fs.existsSync(dirPath) && !options.force) {
318
+ Logger.error(`Directory ${dirName} already exists. Use --force to overwrite.`);
319
+ process.exit(1);
320
+ }
321
+ const spinner = ora(`Scaffolding ${dirName}...`).start();
322
+ try {
323
+ // Create directory structure
324
+ fs.mkdirSync(path.join(dirPath, 'src', 'rules'), { recursive: true });
325
+ // Convert rule-id to PascalCase class name
326
+ const className = ruleId
327
+ .split('-')
328
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1))
329
+ .join('') + 'Rule';
330
+ // package.json
331
+ const packageJson = {
332
+ name: `camouf-plugin-${pluginName}`,
333
+ version: '0.1.0',
334
+ description: pluginDescription,
335
+ type: 'module',
336
+ main: 'dist/index.js',
337
+ types: 'dist/index.d.ts',
338
+ scripts: {
339
+ build: 'tsc',
340
+ dev: 'tsc -w',
341
+ prepublishOnly: 'npm run build',
342
+ },
343
+ keywords: ['camouf', 'camouf-plugin', 'architecture', 'static-analysis'],
344
+ license: 'MIT',
345
+ peerDependencies: {
346
+ camouf: '>=0.9.0',
347
+ },
348
+ devDependencies: {
349
+ camouf: '^0.9.0',
350
+ typescript: '^5.3.0',
351
+ },
352
+ files: ['dist', 'README.md'],
353
+ };
354
+ // tsconfig.json
355
+ const tsconfig = {
356
+ compilerOptions: {
357
+ target: 'ES2022',
358
+ module: 'NodeNext',
359
+ moduleResolution: 'NodeNext',
360
+ outDir: './dist',
361
+ rootDir: './src',
362
+ strict: true,
363
+ declaration: true,
364
+ declarationMap: true,
365
+ sourceMap: true,
366
+ esModuleInterop: true,
367
+ skipLibCheck: true,
368
+ },
369
+ include: ['src/**/*'],
370
+ exclude: ['node_modules', 'dist'],
371
+ };
372
+ // src/index.ts — plugin entry
373
+ const indexTs = `/**
374
+ * Camouf Plugin: ${pluginName}
375
+ *
376
+ * ${pluginDescription}
377
+ */
378
+
379
+ import type { CamoufPlugin } from 'camouf';
380
+ import { ${className} } from './rules/${ruleId}.js';
381
+
382
+ const plugin: CamoufPlugin = {
383
+ metadata: {
384
+ name: 'camouf-plugin-${pluginName}',
385
+ version: '0.1.0',
386
+ description: '${pluginDescription}',
387
+ author: '',
388
+ camoufVersion: '>=0.9.0',
389
+ },
390
+ rules: [new ${className}()],
391
+ };
392
+
393
+ export default plugin;
394
+ `;
395
+ // src/rules/{ruleId}.ts — example rule
396
+ const ruleTs = `/**
397
+ * Rule: ${ruleId}
398
+ *
399
+ * TODO: Describe what this rule checks for.
400
+ */
401
+
402
+ import type { IRule, RuleContext, RuleResult } from 'camouf/rules';
403
+ import type { Violation } from 'camouf';
404
+
405
+ export class ${className} implements IRule {
406
+ readonly id = '${ruleId}';
407
+ readonly name = '${className.replace(/Rule$/, '').replace(/([A-Z])/g, ' $1').trim()}';
408
+ readonly description = 'TODO: Describe what this rule checks for';
409
+ readonly severity = 'warning' as const;
410
+ readonly tags = ['custom'];
411
+ readonly category = 'custom' as const;
412
+
413
+ async check(context: RuleContext): Promise<RuleResult> {
414
+ const violations: Violation[] = [];
415
+
416
+ for (const nodeId of context.graph.nodes()) {
417
+ const node = context.getNodeData(nodeId);
418
+ if (!node) continue;
419
+
420
+ const filePath = node.data?.relativePath || nodeId;
421
+ const content = context.fileContents?.get(filePath);
422
+ if (!content) continue;
423
+
424
+ // TODO: Implement your rule logic here
425
+ // Example: detect a pattern in the file content
426
+ //
427
+ // if (content.includes('some-pattern')) {
428
+ // violations.push({
429
+ // id: \`\${this.id}-\${Date.now()}\`,
430
+ // ruleId: this.id,
431
+ // ruleName: this.name,
432
+ // severity: this.severity,
433
+ // message: 'Description of the violation',
434
+ // file: filePath,
435
+ // suggestion: 'How to fix it',
436
+ // });
437
+ // }
438
+ }
439
+
440
+ return { violations };
441
+ }
442
+ }
443
+ `;
444
+ // README.md
445
+ const readme = `# camouf-plugin-${pluginName}
446
+
447
+ ${pluginDescription}
448
+
449
+ ## Installation
450
+
451
+ \`\`\`bash
452
+ npm install camouf-plugin-${pluginName}
453
+ \`\`\`
454
+
455
+ ## Configuration
456
+
457
+ Add to your \`camouf.config.json\`:
458
+
459
+ \`\`\`json
460
+ {
461
+ "plugins": [
462
+ {
463
+ "name": "camouf-plugin-${pluginName}",
464
+ "enabled": true
465
+ }
466
+ ]
467
+ }
468
+ \`\`\`
469
+
470
+ ## Rules
471
+
472
+ | Rule | Severity | Description |
473
+ |------|----------|-------------|
474
+ | \`${ruleId}\` | warning | TODO: Describe the rule |
475
+
476
+ ## Development
477
+
478
+ \`\`\`bash
479
+ npm run build # Compile TypeScript
480
+ npm run dev # Watch mode
481
+ \`\`\`
482
+
483
+ ## License
484
+
485
+ MIT
486
+ `;
487
+ // Write all files
488
+ fs.writeFileSync(path.join(dirPath, 'package.json'), JSON.stringify(packageJson, null, 2));
489
+ fs.writeFileSync(path.join(dirPath, 'tsconfig.json'), JSON.stringify(tsconfig, null, 2));
490
+ fs.writeFileSync(path.join(dirPath, 'src', 'index.ts'), indexTs);
491
+ fs.writeFileSync(path.join(dirPath, 'src', 'rules', `${ruleId}.ts`), ruleTs);
492
+ fs.writeFileSync(path.join(dirPath, 'README.md'), readme);
493
+ spinner.succeed(`Plugin scaffolded: ${dirName}/`);
494
+ Logger.success('\n✨ Plugin created successfully!');
495
+ Logger.info('\nStructure:');
496
+ Logger.info(` ${dirName}/`);
497
+ Logger.info(` ├── package.json`);
498
+ Logger.info(` ├── tsconfig.json`);
499
+ Logger.info(` ├── README.md`);
500
+ Logger.info(` └── src/`);
501
+ Logger.info(` ├── index.ts`);
502
+ Logger.info(` └── rules/`);
503
+ Logger.info(` └── ${ruleId}.ts`);
504
+ Logger.info('\nNext steps:');
505
+ Logger.info(` 1. cd ${dirName}`);
506
+ Logger.info(` 2. npm install`);
507
+ Logger.info(` 3. Edit src/rules/${ruleId}.ts with your rule logic`);
508
+ Logger.info(` 4. npm run build`);
509
+ Logger.info(` 5. Add the plugin to your project's camouf.config.json\n`);
510
+ }
511
+ catch (error) {
512
+ spinner.fail(`Scaffolding failed: ${error.message}`);
513
+ process.exit(1);
514
+ }
515
+ }
262
516
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,eAAO,MAAM,UAAU,SAsBnB,CAAC;AAEL,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,eAAO,MAAM,UAAU,SAuBnB,CAAC;AAEL,eAAe,UAAU,CAAC"}
@@ -16,8 +16,9 @@ export const mcpCommand = new Command('mcp')
16
16
  const { startMcpServer } = await import('../../mcp/index.js');
17
17
  if (options.verbose) {
18
18
  Logger.info('Starting Camouf MCP Server...');
19
- Logger.info('Tools available: camouf_validate, camouf_analyze, camouf_suggest_fix');
20
- Logger.info('Resources available: camouf://rules');
19
+ Logger.info('Tools: camouf_validate, camouf_analyze, camouf_suggest_fix');
20
+ Logger.info('Resources: camouf://rules, camouf://config');
21
+ Logger.info('Prompts: before-writing-code, after-generating-code, understanding-violations, project-conventions');
21
22
  }
22
23
  await startMcpServer();
23
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,2CAA2C,CAAC;KACxD,MAAM,CAAC,SAAS,EAAE,+BAA+B,EAAE,IAAI,CAAC;KACxD,MAAM,CAAC,WAAW,EAAE,wBAAwB,CAAC;KAC7C,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QACH,8DAA8D;QAC9D,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAE9D,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;YACpF,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,cAAc,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,uDAAuD;QACvD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACzE,MAAM,CAAC,KAAK,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/cli/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,2CAA2C,CAAC;KACxD,MAAM,CAAC,SAAS,EAAE,+BAA+B,EAAE,IAAI,CAAC;KACxD,MAAM,CAAC,WAAW,EAAE,wBAAwB,CAAC;KAC7C,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QACH,8DAA8D;QAC9D,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAE9D,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;YAC1E,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,oGAAoG,CAAC,CAAC;QACpH,CAAC;QAED,MAAM,cAAc,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,uDAAuD;QACvD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACzE,MAAM,CAAC,KAAK,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,eAAe,UAAU,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Version and metadata for Camouf CLI
3
3
  */
4
- export declare const version = "0.7.0";
4
+ export declare const version = "0.9.0";
5
5
  export declare const name = "camouf";
6
6
  export declare const description = "Architecture guardrails for AI-generated code";
7
7
  export declare const metadata: {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Version and metadata for Camouf CLI
3
3
  */
4
- export const version = '0.7.0';
4
+ export const version = '0.9.0';
5
5
  export const name = 'camouf';
6
6
  export const description = 'Architecture guardrails for AI-generated code';
7
7
  export const metadata = {
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Camouf - Public API
3
+ *
4
+ * Main entry point for programmatic usage and plugin development.
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * import type { CamoufPlugin, IRule, RuleContext } from 'camouf';
9
+ * ```
10
+ */
11
+ export type { CamoufPlugin, PluginMetadata, PluginConfig, LoadedPlugin, PluginRegistry, PluginLoadContext, PluginLogger, QuickFix, QuickFixContext, QuickFixResult, PluginParser, PluginParseResult, PluginAnalyzer, AnalyzerContext, AnalyzerResult, PluginOutputFormatter, } from './types/plugin.types.js';
12
+ export type { CamoufConfig, SupportedLanguage, LayerConfig, DirectoryConfig, RulesConfig, BuiltinRulesConfig, RuleLevel, RuleLevelConfig, CustomRuleConfig, PatternsConfig, OutputConfig, AdvancedConfig, } from './types/config.types.js';
13
+ export type { Violation, ViolationSeverity, ProjectFile, Dependency, DependencyType, ImportedSymbol, ExportedSymbol, GraphNode, GraphEdge, ParsedFile, ViolationFix, FileChange, } from './types/core.types.js';
14
+ export type { IRule, RuleContext, RuleResult, RuleViolation, RuleConfig, RuleCategory, } from './core/rules/rule.interface.js';
15
+ export { createRuleTestContext } from './testing/index.js';
16
+ export type { TestContextOptions } from './testing/index.js';
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,YAAY,EACV,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,cAAc,EACd,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,cAAc,GACf,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EACV,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,cAAc,EACd,cAAc,EACd,cAAc,EACd,SAAS,EACT,SAAS,EACT,UAAU,EACV,YAAY,EACZ,UAAU,GACX,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EACV,KAAK,EACL,WAAW,EACX,UAAU,EACV,aAAa,EACb,UAAU,EACV,YAAY,GACb,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Camouf - Public API
3
+ *
4
+ * Main entry point for programmatic usage and plugin development.
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * import type { CamoufPlugin, IRule, RuleContext } from 'camouf';
9
+ * ```
10
+ */
11
+ // Testing utilities
12
+ export { createRuleTestContext } from './testing/index.js';
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAgEH,oBAAoB;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -22,6 +22,7 @@ import { validateTool } from './tools/validate.js';
22
22
  import { analyzeTool } from './tools/analyze.js';
23
23
  import { suggestFixTool } from './tools/fix.js';
24
24
  import { rulesResource } from './resources/rules.js';
25
+ import { configResource } from './resources/config.js';
25
26
  /**
26
27
  * Create and configure the MCP server
27
28
  */
@@ -30,5 +31,5 @@ export declare function createMcpServer(): Server;
30
31
  * Start the MCP server with stdio transport
31
32
  */
32
33
  export declare function startMcpServer(): Promise<void>;
33
- export { validateTool, analyzeTool, suggestFixTool, rulesResource };
34
+ export { validateTool, analyzeTool, suggestFixTool, rulesResource, configResource };
34
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAWnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAOrD;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAoFxC;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAgBpD;AAGD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAanE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAQvD;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAwGxC;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAgBpD;AAGD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC"}
package/dist/mcp/index.js CHANGED
@@ -19,15 +19,17 @@
19
19
  */
20
20
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
21
21
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
22
- import { CallToolRequestSchema, ListToolsRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, ErrorCode, McpError, } from '@modelcontextprotocol/sdk/types.js';
22
+ import { CallToolRequestSchema, ListToolsRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, ListPromptsRequestSchema, GetPromptRequestSchema, ErrorCode, McpError, } from '@modelcontextprotocol/sdk/types.js';
23
23
  import { validateTool } from './tools/validate.js';
24
24
  import { analyzeTool } from './tools/analyze.js';
25
25
  import { suggestFixTool } from './tools/fix.js';
26
26
  import { rulesResource } from './resources/rules.js';
27
+ import { configResource } from './resources/config.js';
28
+ import { promptDefinitions, getPrompt } from './prompts/index.js';
27
29
  /**
28
30
  * MCP Server version
29
31
  */
30
- const VERSION = '1.0.0';
32
+ const VERSION = '0.9.0';
31
33
  /**
32
34
  * Create and configure the MCP server
33
35
  */
@@ -39,6 +41,7 @@ export function createMcpServer() {
39
41
  capabilities: {
40
42
  tools: {},
41
43
  resources: {},
44
+ prompts: {},
42
45
  },
43
46
  });
44
47
  // Register tool handlers
@@ -83,7 +86,10 @@ export function createMcpServer() {
83
86
  // Register resource handlers
84
87
  server.setRequestHandler(ListResourcesRequestSchema, async () => {
85
88
  return {
86
- resources: [rulesResource.definition],
89
+ resources: [
90
+ rulesResource.definition,
91
+ configResource.definition,
92
+ ],
87
93
  };
88
94
  });
89
95
  server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
@@ -91,10 +97,23 @@ export function createMcpServer() {
91
97
  switch (uri) {
92
98
  case 'camouf://rules':
93
99
  return await rulesResource.handler();
100
+ case 'camouf://config':
101
+ return await configResource.handler();
94
102
  default:
95
103
  throw new McpError(ErrorCode.InvalidRequest, `Unknown resource: ${uri}`);
96
104
  }
97
105
  });
106
+ // Register prompt handlers
107
+ server.setRequestHandler(ListPromptsRequestSchema, async () => {
108
+ return {
109
+ prompts: promptDefinitions,
110
+ };
111
+ });
112
+ server.setRequestHandler(GetPromptRequestSchema, async (request) => {
113
+ const { name, arguments: args } = request.params;
114
+ const result = getPrompt(name, args);
115
+ return result;
116
+ });
98
117
  return server;
99
118
  }
100
119
  /**
@@ -115,5 +134,5 @@ export async function startMcpServer() {
115
134
  });
116
135
  }
117
136
  // Export for CLI integration
118
- export { validateTool, analyzeTool, suggestFixTool, rulesResource };
137
+ export { validateTool, analyzeTool, suggestFixTool, rulesResource, configResource };
119
138
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * MCP Prompts for Camouf
3
+ *
4
+ * Predefined prompts that teach AI agents HOW to use Camouf tools
5
+ * in the correct sequence. These are workflow instructions, not just tool docs.
6
+ */
7
+ import { Prompt, GetPromptResult } from '@modelcontextprotocol/sdk/types.js';
8
+ /**
9
+ * All available prompts
10
+ */
11
+ export declare const promptDefinitions: Prompt[];
12
+ /**
13
+ * Get prompt content by name
14
+ */
15
+ export declare function getPrompt(name: string, args?: Record<string, string>): GetPromptResult;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/prompts/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,EAsCrC,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,eAAe,CAoBtF"}