cortex-tms 3.0.0 → 3.1.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 (37) hide show
  1. package/README.md +47 -12
  2. package/dist/cli.js +2 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/auto-tier.d.ts +4 -0
  5. package/dist/commands/auto-tier.d.ts.map +1 -0
  6. package/dist/commands/auto-tier.js +175 -0
  7. package/dist/commands/auto-tier.js.map +1 -0
  8. package/dist/commands/status.d.ts.map +1 -1
  9. package/dist/commands/status.js +7 -3
  10. package/dist/commands/status.js.map +1 -1
  11. package/dist/types/cli.d.ts +8 -0
  12. package/dist/types/cli.d.ts.map +1 -1
  13. package/dist/utils/git-history.d.ts +11 -0
  14. package/dist/utils/git-history.d.ts.map +1 -0
  15. package/dist/utils/git-history.js +33 -0
  16. package/dist/utils/git-history.js.map +1 -0
  17. package/dist/utils/tier-tags.d.ts +4 -0
  18. package/dist/utils/tier-tags.d.ts.map +1 -0
  19. package/dist/utils/tier-tags.js +19 -0
  20. package/dist/utils/tier-tags.js.map +1 -0
  21. package/dist/utils/token-counter.d.ts.map +1 -1
  22. package/dist/utils/token-counter.js +41 -16
  23. package/dist/utils/token-counter.js.map +1 -1
  24. package/package.json +2 -1
  25. package/templates/CLAUDE.md +1 -1
  26. package/templates/FUTURE-ENHANCEMENTS.md +1 -1
  27. package/templates/NEXT-TASKS.md +1 -1
  28. package/templates/PROMPTS.md +1 -1
  29. package/templates/README.md +1 -1
  30. package/templates/docs/archive/v1.0-CHANGELOG.md +1 -1
  31. package/templates/docs/core/ARCHITECTURE.md +1 -1
  32. package/templates/docs/core/DECISIONS.md +1 -1
  33. package/templates/docs/core/DOMAIN-LOGIC.md +1 -1
  34. package/templates/docs/core/GLOSSARY.md +1 -1
  35. package/templates/docs/core/PATTERNS.md +1 -1
  36. package/templates/docs/core/SCHEMA.md +1 -1
  37. package/templates/docs/core/TROUBLESHOOTING.md +1 -1
package/README.md CHANGED
@@ -6,9 +6,9 @@ Cortex TMS is an **AI Governance Platform** built on three pillars:
6
6
 
7
7
  1. **💰 Cost Efficiency** - Reduce AI API costs by **40-60%** through intelligent context management
8
8
  2. **✅ Quality** - Prevent hallucinations from outdated docs with semantic validation
9
- 3. **🌱 Sustainability** - Cut compute requirements by **94.5%** with Green Governance
9
+ 3. **🌱 Sustainability** - Cut compute requirements by **60-70%** with Green Governance (up to 94% with archives)
10
10
 
11
- Stop feeding Claude/Copilot/Cursor thousands of outdated lines. **94.5% context reduction** means **10x lower costs**, **zero hallucinations**, and **less compute waste** from reading archived docs.
11
+ Stop feeding Claude/Copilot/Cursor thousands of outdated lines. **60-70% typical context reduction** (up to 94% with archives) means **10x lower costs**, **zero hallucinations**, and **less compute waste** from reading archived docs.
12
12
 
13
13
  [![npm version](https://img.shields.io/npm/v/cortex-tms.svg?style=flat-square)](https://www.npmjs.com/package/cortex-tms)
14
14
  [![npm downloads](https://img.shields.io/npm/dm/cortex-tms.svg?style=flat-square)](https://www.npmjs.com/package/cortex-tms)
@@ -61,10 +61,10 @@ cortex status --tokens -m claude-sonnet-4-5
61
61
 
62
62
  | Metric | Value | Impact |
63
63
  | :---------------------- | :------------------- | :---------------------------------------------- |
64
- | **Context Reduction** | 94.5% | Read 3,647 tokens instead of 66,834 |
64
+ | **Context Reduction** | 60-70% typical (94% max) | Read 3,647 tokens instead of 66,834 (with archives) |
65
65
  | **Cost per Session** | $0.01 | vs $0.20 without tiering (Claude Sonnet 4.5) |
66
66
  | **Cost Comparison** | 10x cheaper | Claude Sonnet vs GPT-4 ($0.01 vs $0.11/session) |
67
- | **Carbon Footprint** | 94.5% lower | Less compute = greener development |
67
+ | **Carbon Footprint** | 60-70% lower | Less compute = greener development |
68
68
  | **Quality Improvement** | 80% fewer violations | Guardian catches pattern drift |
69
69
 
70
70
  **How?** The HOT/WARM/COLD tier system ensures AI agents only read what matters:
@@ -91,7 +91,7 @@ Traditional repos drown AI agents in thousands of lines of historical tasks and
91
91
 
92
92
  ## 🛠️ CLI Commands
93
93
 
94
- Cortex TMS provides 7 production-ready commands (v2.6.1):
94
+ Cortex TMS provides 8 production-ready commands:
95
95
 
96
96
  ### `cortex-tms tutorial`
97
97
 
@@ -151,6 +151,33 @@ cortex-tms status --tokens -m gpt-4 # Cost comparison across models
151
151
  - Model comparison (Claude Sonnet 4.5, Opus 4.5, GPT-4, etc.)
152
152
  - Sustainability impact tracking
153
153
 
154
+ ### `cortex-tms auto-tier`
155
+
156
+ Git-based automatic tier assignment - reduce manual tier management using file recency as a relevance signal.
157
+
158
+ ```bash
159
+ cortex-tms auto-tier # Apply tier tags based on git history
160
+ cortex-tms auto-tier --dry-run # Preview tier suggestions
161
+ cortex-tms auto-tier --hot 14 --warm 60 # Custom thresholds
162
+ cortex-tms auto-tier --force # Overwrite existing tags
163
+ ```
164
+
165
+ **Community-requested feature**: Built in response to feedback from Reddit users [Illustrious-Report96](https://www.reddit.com/user/Illustrious-Report96/), [pbalIII](https://www.reddit.com/user/pbalIII/), and [durable-racoon](https://www.reddit.com/user/durable-racoon/) who identified manual tier management as a scalability bottleneck and suggested using git history to determine file "heat".
166
+
167
+ **How It Works**:
168
+
169
+ - Analyzes git commit history to determine file modification recency
170
+ - Assigns HOT/WARM/COLD tiers based on days since last change
171
+ - Adds `<!-- @cortex-tms-tier HOT -->` tags to markdown files
172
+ - Default thresholds: HOT ≤ 7 days, WARM ≤ 30 days, COLD > 30 days
173
+
174
+ **Why Auto-Tier?**
175
+
176
+ - **Automates tier management**: No more manual tier decisions
177
+ - **Objective signal**: Git history provides measurable recency data
178
+ - **Aligns with "Lost in the Middle" research**: Recent files (likely relevant) placed at context beginning
179
+ - **Adapts to workflow**: Tiers stay current as project evolves
180
+
154
181
  ### `cortex-tms migrate`
155
182
 
156
183
  Intelligent version management—detect outdated templates and automatically upgrade with safety backups.
@@ -518,12 +545,20 @@ cortex-tms/
518
545
 
519
546
  ## 🤝 Contributing
520
547
 
521
- 1. Read `NEXT-TASKS.md` to see what's being worked on
522
- 2. Check `FUTURE-ENHANCEMENTS.md` for backlog items
523
- 3. Use `cortex-tms prompt` to get project-aware guidance
548
+ We welcome contributions! Please read **[CONTRIBUTING.md](CONTRIBUTING.md)** for detailed guidelines on:
549
+ - How to submit bug reports and feature requests
550
+ - Development setup and workflow
551
+ - Pull request process and quality standards
552
+ - Code style and testing requirements
553
+ - Areas where we need help
554
+
555
+ **Quick Start for Contributors**:
556
+ 1. Read [CONTRIBUTING.md](CONTRIBUTING.md) - **Required for all contributions**
557
+ 2. Check [open issues](https://github.com/cortex-tms/cortex-tms/issues) for `good-first-issue` labels
558
+ 3. For significant changes, open an issue for discussion **before** coding
524
559
  4. Follow patterns in `docs/core/PATTERNS.md`
525
- 5. Verify changes against `docs/core/DOMAIN-LOGIC.md`
526
- 6. Test templates with AI agents before submitting
560
+ 5. Ensure tests pass: `npm test`
561
+ 6. Submit PR with clear description and linked issue
527
562
 
528
563
  ---
529
564
 
@@ -588,9 +623,9 @@ MIT
588
623
 
589
624
  ## Status
590
625
 
591
- **Version**: 3.0.0 (Stable / Production Ready)
626
+ **Version**: 3.1.0 (Stable / Production Ready)
592
627
  **Last Updated**: 2026-01-23
593
628
  **Current Sprint**: v2.8 - "Marketing Pivot & Community Launch"
594
629
  **Completed Sprints**: v2.1, v2.2, v2.3, v2.4, v2.5, v2.6, v2.7 (see `docs/archive/`)
595
630
 
596
- <!-- @cortex-tms-version 3.0.0 -->
631
+ <!-- @cortex-tms-version 3.1.0 -->
package/dist/cli.js CHANGED
@@ -23,6 +23,7 @@ import { migrateCommand } from './commands/migrate.js';
23
23
  import { promptCommand } from './commands/prompt.js';
24
24
  import { tutorialCommand } from './commands/tutorial.js';
25
25
  import { reviewCommand } from './commands/review.js';
26
+ import { autoTierCommand } from './commands/auto-tier.js';
26
27
  program.addCommand(initCommand);
27
28
  program.addCommand(validateCommand);
28
29
  program.addCommand(statusCommand);
@@ -30,6 +31,7 @@ program.addCommand(migrateCommand);
30
31
  program.addCommand(promptCommand);
31
32
  program.addCommand(tutorialCommand);
32
33
  program.addCommand(reviewCommand);
34
+ program.addCommand(autoTierCommand);
33
35
  program.on('command:*', () => {
34
36
  console.error(chalk.red('\n❌ Invalid command:'), chalk.bold(program.args.join(' ')));
35
37
  console.log(chalk.gray('\nRun'), chalk.cyan('cortex-tms --help'), chalk.gray('to see available commands.'));
package/dist/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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"}
@@ -0,0 +1,4 @@
1
+ import { Command } from 'commander';
2
+ export declare function createAutoTierCommand(): Command;
3
+ export declare const autoTierCommand: Command;
4
+ //# sourceMappingURL=auto-tier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-tier.d.ts","sourceRoot":"","sources":["../../src/commands/auto-tier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC,wBAAgB,qBAAqB,IAAI,OAAO,CAc/C;AA0LD,eAAO,MAAM,eAAe,SAA0B,CAAC"}
@@ -0,0 +1,175 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import ora from 'ora';
4
+ import { glob } from 'glob';
5
+ import { readFile, writeFile } from 'fs/promises';
6
+ import { isGitRepo, analyzeFileHistory } from '../utils/git-history.js';
7
+ import { readTierTag, writeTierTag } from '../utils/tier-tags.js';
8
+ const MANDATORY_HOT = ['NEXT-TASKS.md', 'CLAUDE.md', '.github/copilot-instructions.md'];
9
+ export function createAutoTierCommand() {
10
+ const cmd = new Command('auto-tier');
11
+ cmd
12
+ .description('Analyze and apply tier tags based on git history (use --dry-run to preview)')
13
+ .option('--hot <days>', 'Files modified within N days → HOT', '7')
14
+ .option('--warm <days>', 'Files modified within N days → WARM', '30')
15
+ .option('--cold <days>', 'Files older than N days → COLD', '90')
16
+ .option('-d, --dry-run', 'Preview changes without applying')
17
+ .option('-f, --force', 'Overwrite existing tier tags')
18
+ .option('-v, --verbose', 'Show detailed output')
19
+ .action(runAutoTier);
20
+ return cmd;
21
+ }
22
+ async function runAutoTier(options) {
23
+ const cwd = process.cwd();
24
+ const hotDays = parseInt(String(options.hot), 10);
25
+ const warmDays = parseInt(String(options.warm), 10);
26
+ const coldDays = parseInt(String(options.cold), 10);
27
+ if (isNaN(hotDays) || hotDays < 0) {
28
+ console.log(chalk.red('❌ Error: --hot must be a positive number'));
29
+ process.exit(1);
30
+ }
31
+ if (isNaN(warmDays) || warmDays < 0) {
32
+ console.log(chalk.red('❌ Error: --warm must be a positive number'));
33
+ process.exit(1);
34
+ }
35
+ if (isNaN(coldDays) || coldDays < 0) {
36
+ console.log(chalk.red('❌ Error: --cold must be a positive number'));
37
+ process.exit(1);
38
+ }
39
+ if (hotDays > warmDays) {
40
+ console.log(chalk.red('❌ Error: --hot threshold must be ≤ --warm threshold'));
41
+ console.log(chalk.gray(` Got: hot=${hotDays}, warm=${warmDays}`));
42
+ process.exit(1);
43
+ }
44
+ if (warmDays > coldDays) {
45
+ console.log(chalk.red('❌ Error: --warm threshold must be ≤ --cold threshold'));
46
+ console.log(chalk.gray(` Got: warm=${warmDays}, cold=${coldDays}`));
47
+ process.exit(1);
48
+ }
49
+ console.log(chalk.bold.cyan('\n🔄 Git-Based Auto-Tiering\n'));
50
+ if (!isGitRepo(cwd)) {
51
+ console.log(chalk.red('❌ Error: Not a git repository'));
52
+ console.log(chalk.gray(' Run this command in a git-initialized project.'));
53
+ process.exit(1);
54
+ }
55
+ if (options.dryRun) {
56
+ console.log(chalk.yellow('🔍 DRY RUN MODE: No files will be modified.\n'));
57
+ }
58
+ const spinner = ora('Analyzing git history...').start();
59
+ const files = await glob('**/*.md', {
60
+ cwd,
61
+ ignore: ['node_modules/**', '.git/**', 'dist/**'],
62
+ });
63
+ const gitInfo = analyzeFileHistory(cwd, files);
64
+ spinner.text = 'Calculating tier suggestions...';
65
+ const suggestions = [];
66
+ for (const info of gitInfo) {
67
+ const content = await readFile(info.path, 'utf-8');
68
+ const currentTier = readTierTag(content);
69
+ let suggestedTier;
70
+ let reason;
71
+ if (MANDATORY_HOT.some(f => info.path.endsWith(f))) {
72
+ suggestedTier = 'HOT';
73
+ reason = 'Mandatory HOT file';
74
+ }
75
+ else if (info.isNewFile) {
76
+ suggestedTier = 'HOT';
77
+ reason = 'New/untracked file (active work)';
78
+ }
79
+ else if (info.daysSinceChange <= hotDays) {
80
+ suggestedTier = 'HOT';
81
+ reason = `Modified ${Math.round(info.daysSinceChange)} days ago`;
82
+ }
83
+ else if (info.daysSinceChange <= warmDays) {
84
+ suggestedTier = 'WARM';
85
+ reason = `Modified ${Math.round(info.daysSinceChange)} days ago`;
86
+ }
87
+ else if (info.daysSinceChange <= coldDays) {
88
+ suggestedTier = 'WARM';
89
+ reason = `Modified ${Math.round(info.daysSinceChange)} days ago (aging)`;
90
+ }
91
+ else {
92
+ suggestedTier = 'COLD';
93
+ reason = `No changes in ${Math.round(info.daysSinceChange)} days`;
94
+ }
95
+ let action;
96
+ if (!currentTier) {
97
+ action = 'CREATE';
98
+ }
99
+ else if (currentTier !== suggestedTier && options.force) {
100
+ action = 'UPDATE';
101
+ }
102
+ else if (currentTier === suggestedTier) {
103
+ action = 'SKIP';
104
+ }
105
+ else {
106
+ action = 'SKIP';
107
+ }
108
+ suggestions.push({
109
+ path: info.path,
110
+ currentTier,
111
+ suggestedTier,
112
+ reason,
113
+ daysSinceChange: info.daysSinceChange,
114
+ action,
115
+ });
116
+ }
117
+ spinner.succeed(`Analyzed ${files.length} files`);
118
+ printSuggestions(suggestions, options.verbose || false);
119
+ if (!options.dryRun) {
120
+ await applyChanges(suggestions);
121
+ }
122
+ }
123
+ function printSuggestions(suggestions, verbose) {
124
+ const byTier = { HOT: [], WARM: [], COLD: [] };
125
+ suggestions.forEach(s => byTier[s.suggestedTier].push(s));
126
+ console.log(chalk.bold('\n📊 Tier Suggestions:\n'));
127
+ console.log(chalk.red.bold(`🔥 HOT (${byTier.HOT.length} files)`));
128
+ byTier.HOT.slice(0, 10).forEach(s => {
129
+ const actionIcon = s.action === 'CREATE' ? '✨' : s.action === 'UPDATE' ? '🔄' : '✓';
130
+ console.log(` ${actionIcon} ${s.path}`);
131
+ if (verbose)
132
+ console.log(chalk.gray(` ${s.reason}`));
133
+ });
134
+ if (byTier.HOT.length > 10)
135
+ console.log(chalk.gray(` ... and ${byTier.HOT.length - 10} more`));
136
+ console.log(chalk.yellow.bold(`\n📚 WARM (${byTier.WARM.length} files)`));
137
+ byTier.WARM.slice(0, 10).forEach(s => {
138
+ const actionIcon = s.action === 'CREATE' ? '✨' : s.action === 'UPDATE' ? '🔄' : '✓';
139
+ console.log(` ${actionIcon} ${s.path}`);
140
+ if (verbose)
141
+ console.log(chalk.gray(` ${s.reason}`));
142
+ });
143
+ if (byTier.WARM.length > 10)
144
+ console.log(chalk.gray(` ... and ${byTier.WARM.length - 10} more`));
145
+ console.log(chalk.blue.bold(`\n❄️ COLD (${byTier.COLD.length} files)`));
146
+ byTier.COLD.slice(0, 5).forEach(s => {
147
+ const actionIcon = s.action === 'CREATE' ? '✨' : s.action === 'UPDATE' ? '🔄' : '✓';
148
+ console.log(` ${actionIcon} ${s.path}`);
149
+ if (verbose)
150
+ console.log(chalk.gray(` ${s.reason}`));
151
+ });
152
+ if (byTier.COLD.length > 5)
153
+ console.log(chalk.gray(` ... and ${byTier.COLD.length - 5} more`));
154
+ const toCreate = suggestions.filter(s => s.action === 'CREATE').length;
155
+ const toUpdate = suggestions.filter(s => s.action === 'UPDATE').length;
156
+ console.log(chalk.bold('\n📈 Summary:'));
157
+ console.log(` ${chalk.green('✨ CREATE:')} ${toCreate} new tier tags`);
158
+ console.log(` ${chalk.blue('🔄 UPDATE:')} ${toUpdate} tier changes`);
159
+ }
160
+ async function applyChanges(suggestions) {
161
+ const toApply = suggestions.filter(s => s.action !== 'SKIP');
162
+ if (toApply.length === 0) {
163
+ console.log(chalk.gray('\n✓ No changes to apply.'));
164
+ return;
165
+ }
166
+ const spinner = ora(`Applying ${toApply.length} changes...`).start();
167
+ for (const suggestion of toApply) {
168
+ const content = await readFile(suggestion.path, 'utf-8');
169
+ const updated = writeTierTag(content, suggestion.suggestedTier);
170
+ await writeFile(suggestion.path, updated, 'utf-8');
171
+ }
172
+ spinner.succeed(`Applied ${toApply.length} tier tags`);
173
+ }
174
+ export const autoTierCommand = createAutoTierCommand();
175
+ //# sourceMappingURL=auto-tier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-tier.js","sourceRoot":"","sources":["../../src/commands/auto-tier.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,wBAAgB,mBAAmB,IAAI,OAAO,CAoB7C;AAoRD,eAAO,MAAM,aAAa,SAAwB,CAAC"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAkBpC,wBAAgB,mBAAmB,IAAI,OAAO,CAoB7C;AA0RD,eAAO,MAAM,aAAa,SAAwB,CAAC"}
@@ -140,6 +140,10 @@ async function runTokenAnalysis(modelName = 'claude-sonnet-4.5') {
140
140
  console.log(` ${chalk.cyan('Full Repository:')} ${formatTokens(stats.total.tokens)} tokens`);
141
141
  console.log(` ${chalk.green('Context Reduction:')} ${chalk.bold(formatPercent(stats.savings.percentReduction))}`);
142
142
  console.log(` ${chalk.cyan('Tokens Avoided:')} ${formatTokens(stats.savings.tokensAvoided)} per session`);
143
+ console.log(chalk.gray('\n 💡 Understanding the reduction:'));
144
+ console.log(chalk.gray(' • This shows HOT tier vs. full repository (including archives)'));
145
+ console.log(chalk.gray(' • Typical measured reduction: 60-70% in day-to-day usage'));
146
+ console.log(chalk.gray(' • Your number above: HOT vs. everything (theoretical maximum)'));
143
147
  const model = modelName;
144
148
  if (MODEL_PRICING[model]) {
145
149
  const costs = calculateCostEstimates(stats.hot.totalTokens, model);
@@ -153,10 +157,10 @@ async function runTokenAnalysis(modelName = 'claude-sonnet-4.5') {
153
157
  console.log(chalk.gray(` Available: ${Object.keys(MODEL_PRICING).join(', ')}`));
154
158
  }
155
159
  console.log(chalk.bold('\n🌱 Sustainability Impact'));
156
- console.log(chalk.gray(` By reducing context by ${formatPercent(stats.savings.percentReduction)}, you're:`));
157
- console.log(chalk.gray(' • Reducing API costs'));
160
+ console.log(chalk.gray(` By organizing context (60-70% typical reduction), you're:`));
161
+ console.log(chalk.gray(' • Reducing API costs significantly'));
158
162
  console.log(chalk.gray(' • Lowering compute requirements'));
159
- console.log(chalk.gray(' • Decreasing energy consumption'));
163
+ console.log(chalk.gray(' • Decreasing energy consumption per AI query'));
160
164
  console.log();
161
165
  }
162
166
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
@@ -98,4 +98,12 @@ export interface ScopePreset {
98
98
  optionalFiles: string[];
99
99
  lineLimits: Partial<LineLimits>;
100
100
  }
101
+ export interface AutoTierOptions {
102
+ hot: string;
103
+ warm: string;
104
+ cold: string;
105
+ dryRun?: boolean;
106
+ force?: boolean;
107
+ verbose?: boolean;
108
+ }
101
109
  //# sourceMappingURL=cli.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/types/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/types/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export interface FileGitInfo {
2
+ path: string;
3
+ lastCommitTimestamp: number | null;
4
+ daysSinceChange: number;
5
+ isTracked: boolean;
6
+ isNewFile: boolean;
7
+ }
8
+ export declare function isGitRepo(cwd: string): boolean;
9
+ export declare function getFileLastCommit(cwd: string, filePath: string): number | null;
10
+ export declare function analyzeFileHistory(cwd: string, files: string[]): FileGitInfo[];
11
+ //# sourceMappingURL=git-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-history.d.ts","sourceRoot":"","sources":["../../src/utils/git-history.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACpB;AAKD,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE9C;AAMD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW9E;AAKD,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EAAE,GACd,WAAW,EAAE,CAoBf"}
@@ -0,0 +1,33 @@
1
+ import { execSync } from 'child_process';
2
+ import { existsSync } from 'fs';
3
+ import { join } from 'path';
4
+ export function isGitRepo(cwd) {
5
+ return existsSync(join(cwd, '.git'));
6
+ }
7
+ export function getFileLastCommit(cwd, filePath) {
8
+ try {
9
+ const result = execSync(`git log -1 --format=%ct --follow -- "${filePath}"`, { cwd, encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
10
+ return result ? parseInt(result, 10) : null;
11
+ }
12
+ catch {
13
+ return null;
14
+ }
15
+ }
16
+ export function analyzeFileHistory(cwd, files) {
17
+ const now = Math.floor(Date.now() / 1000);
18
+ return files.map(path => {
19
+ const lastCommitTimestamp = getFileLastCommit(cwd, path);
20
+ const isTracked = lastCommitTimestamp !== null;
21
+ const daysSinceChange = isTracked
22
+ ? (now - lastCommitTimestamp) / 86400
23
+ : 0;
24
+ return {
25
+ path,
26
+ lastCommitTimestamp,
27
+ daysSinceChange,
28
+ isTracked,
29
+ isNewFile: !isTracked,
30
+ };
31
+ });
32
+ }
33
+ //# sourceMappingURL=git-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-history.js","sourceRoot":"","sources":["../../src/utils/git-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAa5B,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;AACvC,CAAC;AAMD,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,QAAgB;IAC7D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CACrB,wCAAwC,QAAQ,GAAG,EACnD,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAC5D,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAKD,MAAM,UAAU,kBAAkB,CAChC,GAAW,EACX,KAAe;IAEf,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAE1C,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACtB,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,mBAAmB,KAAK,IAAI,CAAC;QAG/C,MAAM,eAAe,GAAG,SAAS;YAC/B,CAAC,CAAC,CAAC,GAAG,GAAG,mBAAoB,CAAC,GAAG,KAAK;YACtC,CAAC,CAAC,CAAC,CAAC;QAEN,OAAO;YACL,IAAI;YACJ,mBAAmB;YACnB,eAAe;YACf,SAAS;YACT,SAAS,EAAE,CAAC,SAAS;SACtB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,4 @@
1
+ export type Tier = 'HOT' | 'WARM' | 'COLD';
2
+ export declare function readTierTag(content: string): Tier | null;
3
+ export declare function writeTierTag(content: string, tier: Tier): string;
4
+ //# sourceMappingURL=tier-tags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier-tags.d.ts","sourceRoot":"","sources":["../../src/utils/tier-tags.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAO3C,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAGxD;AAKD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAiBhE"}
@@ -0,0 +1,19 @@
1
+ const TIER_TAG_PATTERN = /<!--\s*@cortex-tms-tier\s+(HOT|WARM|COLD)\s*-->/;
2
+ export function readTierTag(content) {
3
+ const match = content.match(TIER_TAG_PATTERN);
4
+ return match ? match[1] : null;
5
+ }
6
+ export function writeTierTag(content, tier) {
7
+ const tag = `<!-- @cortex-tms-tier ${tier} -->`;
8
+ if (TIER_TAG_PATTERN.test(content)) {
9
+ return content.replace(TIER_TAG_PATTERN, tag);
10
+ }
11
+ const frontMatterMatch = content.match(/^---\n[\s\S]*?\n---\n/);
12
+ if (frontMatterMatch) {
13
+ const frontMatter = frontMatterMatch[0];
14
+ const rest = content.slice(frontMatter.length);
15
+ return frontMatter + tag + '\n' + rest;
16
+ }
17
+ return tag + '\n' + content;
18
+ }
19
+ //# sourceMappingURL=tier-tags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tier-tags.js","sourceRoot":"","sources":["../../src/utils/tier-tags.ts"],"names":[],"mappings":"AAEA,MAAM,gBAAgB,GAAG,iDAAiD,CAAC;AAK3E,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC9C,OAAO,KAAK,CAAC,CAAC,CAAE,KAAK,CAAC,CAAC,CAAU,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC;AAKD,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,IAAU;IACtD,MAAM,GAAG,GAAG,yBAAyB,IAAI,MAAM,CAAC;IAGhD,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;IAGD,MAAM,gBAAgB,GAAG,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAChE,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC/C,OAAO,WAAW,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC;IACzC,CAAC;IAED,OAAO,GAAG,GAAG,IAAI,GAAG,OAAO,CAAC;AAC9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"token-counter.d.ts","sourceRoot":"","sources":["../../src/utils/token-counter.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BhB,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,aAAa,CAAC;AAKnD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAKD,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE;QACH,KAAK,EAAE,cAAc,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,KAAK,EAAE,cAAc,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,KAAK,EAAE,cAAc,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,OAAO,EAAE;QACP,gBAAgB,EAAE,MAAM,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAKD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AA0GD,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAiDxE;AAKD,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,SAA+B,GACrC,YAAY,CAgBd;AAKD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEnD;AAKD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK/C;AAKD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD"}
1
+ {"version":3,"file":"token-counter.d.ts","sourceRoot":"","sources":["../../src/utils/token-counter.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BhB,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,aAAa,CAAC;AAKnD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAKD,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE;QACH,KAAK,EAAE,cAAc,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,KAAK,EAAE,cAAc,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,KAAK,EAAE,cAAc,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,OAAO,EAAE;QACP,gBAAgB,EAAE,MAAM,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAKD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAiGD,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAkFxE;AAKD,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,SAA+B,GACrC,YAAY,CAgBd;AAKD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEnD;AAKD,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK/C;AAKD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD"}
@@ -1,6 +1,8 @@
1
1
  import { readFile } from 'fs/promises';
2
2
  import { relative } from 'path';
3
3
  import { glob } from 'glob';
4
+ import { minimatch } from 'minimatch';
5
+ import { readTierTag } from './tier-tags.js';
4
6
  const CHARS_PER_TOKEN = 4;
5
7
  export const MODEL_PRICING = {
6
8
  'claude-sonnet-4.5': {
@@ -50,15 +52,28 @@ const WARM_PATTERNS = [
50
52
  'PROMPTS.md',
51
53
  ];
52
54
  const COLD_PATTERNS = ['docs/archive/**/*.md'];
53
- async function countFileCharacters(filePath) {
55
+ async function readFileWithCharCount(filePath) {
54
56
  try {
55
57
  const content = await readFile(filePath, 'utf-8');
56
- return content.length;
58
+ return { content, characters: content.length };
57
59
  }
58
60
  catch {
59
- return 0;
61
+ return { content: '', characters: 0 };
60
62
  }
61
63
  }
64
+ function getFileTier(content, path) {
65
+ const tierTag = readTierTag(content);
66
+ if (tierTag) {
67
+ return tierTag;
68
+ }
69
+ if (HOT_PATTERNS.some(p => minimatch(path, p)))
70
+ return 'HOT';
71
+ if (WARM_PATTERNS.some(p => minimatch(path, p)))
72
+ return 'WARM';
73
+ if (COLD_PATTERNS.some(p => minimatch(path, p)))
74
+ return 'COLD';
75
+ return 'WARM';
76
+ }
62
77
  function estimateTokens(characters) {
63
78
  return Math.ceil(characters / CHARS_PER_TOKEN);
64
79
  }
@@ -75,26 +90,36 @@ async function findTierFiles(cwd, patterns) {
75
90
  }
76
91
  return [...new Set(allFiles)];
77
92
  }
78
- async function countTierTokens(cwd, tier, patterns) {
79
- const files = await findTierFiles(cwd, patterns);
80
- const counts = [];
81
- for (const filePath of files) {
82
- const characters = await countFileCharacters(filePath);
93
+ export async function analyzeTokenUsage(cwd) {
94
+ const allPatterns = [...HOT_PATTERNS, ...WARM_PATTERNS, ...COLD_PATTERNS];
95
+ const allFiles = await findTierFiles(cwd, allPatterns);
96
+ const hotFiles = [];
97
+ const warmFiles = [];
98
+ const coldFiles = [];
99
+ for (const filePath of allFiles) {
100
+ const { content, characters } = await readFileWithCharCount(filePath);
83
101
  const tokens = estimateTokens(characters);
84
102
  const relativePath = relative(cwd, filePath);
85
- counts.push({
103
+ const tier = getFileTier(content, relativePath);
104
+ const fileCount = {
86
105
  path: relativePath,
87
106
  tier,
88
107
  characters,
89
108
  tokens,
90
- });
109
+ };
110
+ if (tier === 'HOT') {
111
+ hotFiles.push(fileCount);
112
+ }
113
+ else if (tier === 'WARM') {
114
+ warmFiles.push(fileCount);
115
+ }
116
+ else {
117
+ coldFiles.push(fileCount);
118
+ }
91
119
  }
92
- return counts.sort((a, b) => b.tokens - a.tokens);
93
- }
94
- export async function analyzeTokenUsage(cwd) {
95
- const hotFiles = await countTierTokens(cwd, 'HOT', HOT_PATTERNS);
96
- const warmFiles = await countTierTokens(cwd, 'WARM', WARM_PATTERNS);
97
- const coldFiles = await countTierTokens(cwd, 'COLD', COLD_PATTERNS);
120
+ hotFiles.sort((a, b) => b.tokens - a.tokens);
121
+ warmFiles.sort((a, b) => b.tokens - a.tokens);
122
+ coldFiles.sort((a, b) => b.tokens - a.tokens);
98
123
  const hotTotal = hotFiles.reduce((sum, f) => sum + f.tokens, 0);
99
124
  const warmTotal = warmFiles.reduce((sum, f) => sum + f.tokens, 0);
100
125
  const coldTotal = coldFiles.reduce((sum, f) => sum + f.tokens, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"token-counter.js","sourceRoot":"","sources":["../../src/utils/token-counter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token-counter.js","sourceRoot":"","sources":["../../src/utils/token-counter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cortex-tms",
3
- "version": "3.0.0",
3
+ "version": "3.1.0",
4
4
  "description": "AI-powered project scaffolding CLI for documentation, task management, and workflow automation. Optimized for Claude Code, GitHub Copilot, and LLM-assisted development.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -78,6 +78,7 @@
78
78
  "fs-extra": "^11.2.0",
79
79
  "glob": "^11.0.0",
80
80
  "inquirer": "^10.2.2",
81
+ "minimatch": "^10.1.1",
81
82
  "ora": "^8.1.0"
82
83
  },
83
84
  "devDependencies": {
@@ -31,4 +31,4 @@ contain placeholder content. Help the user populate them:
31
31
 
32
32
  After setup, remove this "First Session Setup" section.
33
33
 
34
- <!-- @cortex-tms-version 3.0.0 -->
34
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -78,4 +78,4 @@ A task moves from FUTURE → NEXT when:
78
78
  **Why Rejected**: [Reason - e.g., "User research showed low demand", "Technical complexity too high"]
79
79
  **Alternative**: [What we did instead - e.g., "Built simplified version in Sprint 3"]
80
80
 
81
- <!-- @cortex-tms-version 3.0.0 -->
81
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -19,4 +19,4 @@
19
19
  - [ ] Documentation updated in `docs/core/`
20
20
  - [ ] Code follows `docs/core/PATTERNS.md`
21
21
 
22
- <!-- @cortex-tms-version 3.0.0 -->
22
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -150,4 +150,4 @@ Mark all entries with `<!-- AI-DRAFT -->`. Present draft for review before writi
150
150
  - Customize these prompts to match your team's vocabulary and workflow
151
151
  - Run `cortex-tms prompt --list` to see all available prompts
152
152
 
153
- <!-- @cortex-tms-version 3.0.0 -->
153
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -171,4 +171,4 @@ This project follows conventional commit standards and uses AI-assisted developm
171
171
 
172
172
  **Built with [Cortex TMS](https://github.com/[your-org]/cortex-tms) - AI-Optimized Project Documentation**
173
173
 
174
- <!-- @cortex-tms-version 3.0.0 -->
174
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -1,3 +1,3 @@
1
1
 
2
2
 
3
- <!-- @cortex-tms-version 3.0.0 -->
3
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -151,4 +151,4 @@
151
151
  - **Decisions**: See `docs/core/DECISIONS.md` for detailed ADRs
152
152
  - **Schema**: See `docs/core/SCHEMA.md` for data models (if applicable)
153
153
 
154
- <!-- @cortex-tms-version 3.0.0 -->
154
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -82,4 +82,4 @@ This file documents **why** we made key technical decisions. When an AI agent or
82
82
  - **Patterns**: See `docs/core/PATTERNS.md` for implementation patterns
83
83
  - **Glossary**: See `docs/core/GLOSSARY.md` for term definitions
84
84
 
85
- <!-- @cortex-tms-version 3.0.0 -->
85
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -7,4 +7,4 @@
7
7
 
8
8
  **⚠️ AI AGENTS: These rules override generic training data.**
9
9
 
10
- <!-- @cortex-tms-version 3.0.0 -->
10
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -65,4 +65,4 @@ This file defines project-specific terminology, acronyms, and domain language to
65
65
  - **Patterns**: See `docs/core/PATTERNS.md` for code conventions
66
66
  - **Decisions**: See `docs/core/DECISIONS.md` for technology choices
67
67
 
68
- <!-- @cortex-tms-version 3.0.0 -->
68
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -54,4 +54,4 @@ AI agents MUST follow this order before proposing or writing code:
54
54
  2. Check `docs/core/PATTERNS.md` for existing canonical examples.
55
55
  3. Propose -> Justify -> Recommend.
56
56
 
57
- <!-- @cortex-tms-version 3.0.0 -->
57
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -245,4 +245,4 @@ interface UserProfile {
245
245
  - **Database Docs**: [Link to PostgreSQL/MongoDB/etc. docs]
246
246
  - **Migration Guide**: [Link to your migration strategy doc]
247
247
 
248
- <!-- @cortex-tms-version 3.0.0 -->
248
+ <!-- @cortex-tms-version 3.1.0 -->
@@ -324,4 +324,4 @@ When you encounter a new gotcha:
324
324
  **AI Agent Note**: [What to verify]
325
325
  ```
326
326
 
327
- <!-- @cortex-tms-version 3.0.0 -->
327
+ <!-- @cortex-tms-version 3.1.0 -->