cortex-tms 3.1.0 → 3.2.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 (77) hide show
  1. package/README.md +150 -53
  2. package/dist/cli.js +12 -4
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/auto-tier.d.ts.map +1 -1
  5. package/dist/commands/auto-tier.js +132 -58
  6. package/dist/commands/auto-tier.js.map +1 -1
  7. package/dist/commands/init.d.ts.map +1 -1
  8. package/dist/commands/init.js +23 -27
  9. package/dist/commands/init.js.map +1 -1
  10. package/dist/commands/migrate.d.ts.map +1 -1
  11. package/dist/commands/migrate.js +26 -7
  12. package/dist/commands/migrate.js.map +1 -1
  13. package/dist/commands/prompt.d.ts.map +1 -1
  14. package/dist/commands/prompt.js +2 -0
  15. package/dist/commands/prompt.js.map +1 -1
  16. package/dist/commands/review.d.ts.map +1 -1
  17. package/dist/commands/review.js +25 -25
  18. package/dist/commands/review.js.map +1 -1
  19. package/dist/commands/status.d.ts.map +1 -1
  20. package/dist/commands/status.js +4 -2
  21. package/dist/commands/status.js.map +1 -1
  22. package/dist/commands/tutorial.js +54 -3
  23. package/dist/commands/tutorial.js.map +1 -1
  24. package/dist/commands/validate.d.ts.map +1 -1
  25. package/dist/commands/validate.js +10 -3
  26. package/dist/commands/validate.js.map +1 -1
  27. package/dist/utils/errors.d.ts +20 -0
  28. package/dist/utils/errors.d.ts.map +1 -0
  29. package/dist/utils/errors.js +54 -0
  30. package/dist/utils/errors.js.map +1 -0
  31. package/dist/utils/git-history.d.ts.map +1 -1
  32. package/dist/utils/git-history.js +7 -3
  33. package/dist/utils/git-history.js.map +1 -1
  34. package/dist/utils/llm-client.d.ts.map +1 -1
  35. package/dist/utils/llm-client.js +5 -2
  36. package/dist/utils/llm-client.js.map +1 -1
  37. package/dist/utils/sanitize.d.ts +4 -0
  38. package/dist/utils/sanitize.d.ts.map +1 -0
  39. package/dist/utils/sanitize.js +44 -0
  40. package/dist/utils/sanitize.js.map +1 -0
  41. package/dist/utils/templates.d.ts.map +1 -1
  42. package/dist/utils/templates.js +11 -1
  43. package/dist/utils/templates.js.map +1 -1
  44. package/dist/utils/validation.d.ts +168 -0
  45. package/dist/utils/validation.d.ts.map +1 -0
  46. package/dist/utils/validation.js +186 -0
  47. package/dist/utils/validation.js.map +1 -0
  48. package/package.json +5 -2
  49. package/templates/CLAUDE.md +1 -1
  50. package/templates/FUTURE-ENHANCEMENTS.md +1 -1
  51. package/templates/NEXT-TASKS.md +1 -1
  52. package/templates/PROMPTS.md +1 -1
  53. package/templates/README.md +1 -1
  54. package/templates/docs/archive/v1.0-CHANGELOG.md +1 -1
  55. package/templates/docs/core/ARCHITECTURE.md +1 -1
  56. package/templates/docs/core/DECISIONS.md +1 -1
  57. package/templates/docs/core/DOMAIN-LOGIC.md +1 -1
  58. package/templates/docs/core/GLOSSARY.md +1 -1
  59. package/templates/docs/core/PATTERNS.md +1 -1
  60. package/templates/docs/core/SCHEMA.md +1 -1
  61. package/templates/docs/core/TROUBLESHOOTING.md +1 -1
  62. package/dist/__tests__/init.test.d.ts +0 -2
  63. package/dist/__tests__/init.test.d.ts.map +0 -1
  64. package/dist/__tests__/init.test.js +0 -173
  65. package/dist/__tests__/init.test.js.map +0 -1
  66. package/dist/__tests__/release.test.d.ts +0 -2
  67. package/dist/__tests__/release.test.d.ts.map +0 -1
  68. package/dist/__tests__/release.test.js +0 -484
  69. package/dist/__tests__/release.test.js.map +0 -1
  70. package/dist/__tests__/utils/temp-dir.d.ts +0 -6
  71. package/dist/__tests__/utils/temp-dir.d.ts.map +0 -1
  72. package/dist/__tests__/utils/temp-dir.js +0 -34
  73. package/dist/__tests__/utils/temp-dir.js.map +0 -1
  74. package/dist/__tests__/validate.test.d.ts +0 -2
  75. package/dist/__tests__/validate.test.d.ts.map +0 -1
  76. package/dist/__tests__/validate.test.js +0 -209
  77. package/dist/__tests__/validate.test.js.map +0 -1
@@ -4,6 +4,8 @@ import { fileURLToPath } from 'url';
4
4
  import { dirname } from 'path';
5
5
  import chalk from 'chalk';
6
6
  import { getScopePreset } from './config.js';
7
+ import { validateSafePath } from './validation.js';
8
+ import { FileSystemError } from './errors.js';
7
9
  const __filename = fileURLToPath(import.meta.url);
8
10
  const __dirname = dirname(__filename);
9
11
  export function getPackageVersion() {
@@ -105,7 +107,15 @@ export async function copyTemplates(templatesDir, destDir, replacements, options
105
107
  let skipped = 0;
106
108
  const changes = [];
107
109
  for (const file of filesToCopy) {
108
- const destPath = join(destDir, file.destination);
110
+ const sourceValidation = validateSafePath(file.source, templatesDir);
111
+ if (!sourceValidation.isValid) {
112
+ throw new FileSystemError(`Template path validation failed: ${sourceValidation.error}`, { templatePath: file.source });
113
+ }
114
+ const destValidation = validateSafePath(file.destination, destDir);
115
+ if (!destValidation.isValid) {
116
+ throw new FileSystemError(`Destination path validation failed: ${destValidation.error}`, { destinationPath: file.destination });
117
+ }
118
+ const destPath = destValidation.resolvedPath;
109
119
  const exists = await fs.pathExists(destPath);
110
120
  if (dryRun) {
111
121
  if (!exists) {
@@ -1 +1 @@
1
- {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/utils/templates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/utils/templates.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,168 @@
1
+ import { z } from 'zod';
2
+ export declare const autoTierOptionsSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
3
+ hot: z.ZodEffects<z.ZodString, number, string>;
4
+ warm: z.ZodEffects<z.ZodString, number, string>;
5
+ cold: z.ZodEffects<z.ZodString, number, string>;
6
+ maxHot: z.ZodEffects<z.ZodOptional<z.ZodString>, number | undefined, string | undefined>;
7
+ dryRun: z.ZodOptional<z.ZodBoolean>;
8
+ force: z.ZodOptional<z.ZodBoolean>;
9
+ verbose: z.ZodOptional<z.ZodBoolean>;
10
+ }, "strip", z.ZodTypeAny, {
11
+ hot: number;
12
+ warm: number;
13
+ cold: number;
14
+ maxHot?: number | undefined;
15
+ dryRun?: boolean | undefined;
16
+ force?: boolean | undefined;
17
+ verbose?: boolean | undefined;
18
+ }, {
19
+ hot: string;
20
+ warm: string;
21
+ cold: string;
22
+ maxHot?: string | undefined;
23
+ dryRun?: boolean | undefined;
24
+ force?: boolean | undefined;
25
+ verbose?: boolean | undefined;
26
+ }>, {
27
+ hot: number;
28
+ warm: number;
29
+ cold: number;
30
+ maxHot?: number | undefined;
31
+ dryRun?: boolean | undefined;
32
+ force?: boolean | undefined;
33
+ verbose?: boolean | undefined;
34
+ }, {
35
+ hot: string;
36
+ warm: string;
37
+ cold: string;
38
+ maxHot?: string | undefined;
39
+ dryRun?: boolean | undefined;
40
+ force?: boolean | undefined;
41
+ verbose?: boolean | undefined;
42
+ }>, {
43
+ hot: number;
44
+ warm: number;
45
+ cold: number;
46
+ maxHot?: number | undefined;
47
+ dryRun?: boolean | undefined;
48
+ force?: boolean | undefined;
49
+ verbose?: boolean | undefined;
50
+ }, {
51
+ hot: string;
52
+ warm: string;
53
+ cold: string;
54
+ maxHot?: string | undefined;
55
+ dryRun?: boolean | undefined;
56
+ force?: boolean | undefined;
57
+ verbose?: boolean | undefined;
58
+ }>;
59
+ export declare const initOptionsSchema: z.ZodObject<{
60
+ force: z.ZodOptional<z.ZodBoolean>;
61
+ minimal: z.ZodOptional<z.ZodBoolean>;
62
+ verbose: z.ZodOptional<z.ZodBoolean>;
63
+ scope: z.ZodOptional<z.ZodEnum<["nano", "standard", "enterprise", "custom"]>>;
64
+ dryRun: z.ZodOptional<z.ZodBoolean>;
65
+ }, "strip", z.ZodTypeAny, {
66
+ minimal?: boolean | undefined;
67
+ scope?: "nano" | "standard" | "enterprise" | "custom" | undefined;
68
+ dryRun?: boolean | undefined;
69
+ force?: boolean | undefined;
70
+ verbose?: boolean | undefined;
71
+ }, {
72
+ minimal?: boolean | undefined;
73
+ scope?: "nano" | "standard" | "enterprise" | "custom" | undefined;
74
+ dryRun?: boolean | undefined;
75
+ force?: boolean | undefined;
76
+ verbose?: boolean | undefined;
77
+ }>;
78
+ export declare const validateOptionsSchema: z.ZodObject<{
79
+ strict: z.ZodOptional<z.ZodBoolean>;
80
+ verbose: z.ZodOptional<z.ZodBoolean>;
81
+ fix: z.ZodOptional<z.ZodBoolean>;
82
+ }, "strip", z.ZodTypeAny, {
83
+ verbose?: boolean | undefined;
84
+ strict?: boolean | undefined;
85
+ fix?: boolean | undefined;
86
+ }, {
87
+ verbose?: boolean | undefined;
88
+ strict?: boolean | undefined;
89
+ fix?: boolean | undefined;
90
+ }>;
91
+ export declare const reviewOptionsSchema: z.ZodObject<{
92
+ provider: z.ZodDefault<z.ZodEnum<["openai", "anthropic"]>>;
93
+ model: z.ZodOptional<z.ZodString>;
94
+ apiKey: z.ZodOptional<z.ZodString>;
95
+ safe: z.ZodOptional<z.ZodBoolean>;
96
+ outputJson: z.ZodOptional<z.ZodBoolean>;
97
+ }, "strip", z.ZodTypeAny, {
98
+ provider: "openai" | "anthropic";
99
+ apiKey?: string | undefined;
100
+ model?: string | undefined;
101
+ safe?: boolean | undefined;
102
+ outputJson?: boolean | undefined;
103
+ }, {
104
+ apiKey?: string | undefined;
105
+ provider?: "openai" | "anthropic" | undefined;
106
+ model?: string | undefined;
107
+ safe?: boolean | undefined;
108
+ outputJson?: boolean | undefined;
109
+ }>;
110
+ export declare const migrateOptionsSchema: z.ZodEffects<z.ZodObject<{
111
+ apply: z.ZodOptional<z.ZodBoolean>;
112
+ rollback: z.ZodOptional<z.ZodBoolean>;
113
+ force: z.ZodOptional<z.ZodBoolean>;
114
+ verbose: z.ZodOptional<z.ZodBoolean>;
115
+ dryRun: z.ZodOptional<z.ZodBoolean>;
116
+ }, "strip", z.ZodTypeAny, {
117
+ dryRun?: boolean | undefined;
118
+ force?: boolean | undefined;
119
+ verbose?: boolean | undefined;
120
+ apply?: boolean | undefined;
121
+ rollback?: boolean | undefined;
122
+ }, {
123
+ dryRun?: boolean | undefined;
124
+ force?: boolean | undefined;
125
+ verbose?: boolean | undefined;
126
+ apply?: boolean | undefined;
127
+ rollback?: boolean | undefined;
128
+ }>, {
129
+ dryRun?: boolean | undefined;
130
+ force?: boolean | undefined;
131
+ verbose?: boolean | undefined;
132
+ apply?: boolean | undefined;
133
+ rollback?: boolean | undefined;
134
+ }, {
135
+ dryRun?: boolean | undefined;
136
+ force?: boolean | undefined;
137
+ verbose?: boolean | undefined;
138
+ apply?: boolean | undefined;
139
+ rollback?: boolean | undefined;
140
+ }>;
141
+ export declare const promptOptionsSchema: z.ZodObject<{
142
+ list: z.ZodOptional<z.ZodBoolean>;
143
+ copy: z.ZodDefault<z.ZodBoolean>;
144
+ }, "strip", z.ZodTypeAny, {
145
+ copy: boolean;
146
+ list?: boolean | undefined;
147
+ }, {
148
+ list?: boolean | undefined;
149
+ copy?: boolean | undefined;
150
+ }>;
151
+ export declare const statusOptionsSchema: z.ZodObject<{
152
+ tokens: z.ZodOptional<z.ZodBoolean>;
153
+ model: z.ZodEffects<z.ZodDefault<z.ZodString>, string, string | undefined>;
154
+ }, "strip", z.ZodTypeAny, {
155
+ model: string;
156
+ tokens?: boolean | undefined;
157
+ }, {
158
+ model?: string | undefined;
159
+ tokens?: boolean | undefined;
160
+ }>;
161
+ export declare function validateOptions<T extends z.ZodTypeAny>(schema: T, options: unknown, commandName: string): z.infer<T>;
162
+ export declare function validateSafePath(filePath: string, baseDir: string): {
163
+ isValid: boolean;
164
+ resolvedPath?: string;
165
+ error?: string;
166
+ };
167
+ export declare function validateFilePath(filePath: string, baseDir: string): string;
168
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqCxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0D9B,CAAC;AAKL,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAQ5B,CAAC;AAKH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAIhC,CAAC;AAKH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAQ9B,CAAC;AAKH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoB9B,CAAC;AAKJ,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAKH,eAAO,MAAM,mBAAmB;;;;;;;;;EAmB9B,CAAC;AAWH,wBAAgB,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EACpD,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,MAAM,GAClB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAwBZ;AAaD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAwB7D;AAMD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,MAAM,CA6BR"}
@@ -0,0 +1,186 @@
1
+ import { z } from 'zod';
2
+ import { resolve, sep } from 'path';
3
+ import { existsSync, statSync } from 'fs';
4
+ import { ValidationError } from './errors.js';
5
+ const booleanFlag = z.boolean().optional();
6
+ const verboseFlag = booleanFlag;
7
+ const dryRunFlag = booleanFlag;
8
+ const forceFlag = booleanFlag;
9
+ export const autoTierOptionsSchema = z
10
+ .object({
11
+ hot: z.string().transform((val, ctx) => {
12
+ const num = parseInt(val, 10);
13
+ if (isNaN(num) || num < 0) {
14
+ ctx.addIssue({
15
+ code: z.ZodIssueCode.custom,
16
+ message: '--hot must be a positive number',
17
+ });
18
+ return z.NEVER;
19
+ }
20
+ return num;
21
+ }),
22
+ warm: z.string().transform((val, ctx) => {
23
+ const num = parseInt(val, 10);
24
+ if (isNaN(num) || num < 0) {
25
+ ctx.addIssue({
26
+ code: z.ZodIssueCode.custom,
27
+ message: '--warm must be a positive number',
28
+ });
29
+ return z.NEVER;
30
+ }
31
+ return num;
32
+ }),
33
+ cold: z.string().transform((val, ctx) => {
34
+ const num = parseInt(val, 10);
35
+ if (isNaN(num) || num < 0) {
36
+ ctx.addIssue({
37
+ code: z.ZodIssueCode.custom,
38
+ message: '--cold must be a positive number',
39
+ });
40
+ return z.NEVER;
41
+ }
42
+ return num;
43
+ }),
44
+ maxHot: z.string().optional().transform((val, ctx) => {
45
+ if (val === undefined)
46
+ return undefined;
47
+ const num = parseInt(val, 10);
48
+ if (isNaN(num) || num < 1) {
49
+ ctx.addIssue({
50
+ code: z.ZodIssueCode.custom,
51
+ message: '--max-hot must be a positive number (at least 1)',
52
+ });
53
+ return z.NEVER;
54
+ }
55
+ return num;
56
+ }),
57
+ dryRun: dryRunFlag,
58
+ force: forceFlag,
59
+ verbose: verboseFlag,
60
+ })
61
+ .refine((data) => data.hot <= data.warm, {
62
+ message: '--hot threshold must be ≤ --warm threshold',
63
+ path: ['hot'],
64
+ })
65
+ .refine((data) => data.warm <= data.cold, {
66
+ message: '--warm threshold must be ≤ --cold threshold',
67
+ path: ['warm'],
68
+ });
69
+ export const initOptionsSchema = z.object({
70
+ force: forceFlag,
71
+ minimal: booleanFlag,
72
+ verbose: verboseFlag,
73
+ scope: z
74
+ .enum(['nano', 'standard', 'enterprise', 'custom'])
75
+ .optional(),
76
+ dryRun: dryRunFlag,
77
+ });
78
+ export const validateOptionsSchema = z.object({
79
+ strict: booleanFlag,
80
+ verbose: verboseFlag,
81
+ fix: booleanFlag,
82
+ });
83
+ export const reviewOptionsSchema = z.object({
84
+ provider: z
85
+ .enum(['openai', 'anthropic'])
86
+ .default('anthropic'),
87
+ model: z.string().optional(),
88
+ apiKey: z.string().optional(),
89
+ safe: booleanFlag,
90
+ outputJson: booleanFlag,
91
+ });
92
+ export const migrateOptionsSchema = z
93
+ .object({
94
+ apply: booleanFlag,
95
+ rollback: booleanFlag,
96
+ force: forceFlag,
97
+ verbose: verboseFlag,
98
+ dryRun: dryRunFlag,
99
+ })
100
+ .refine((data) => {
101
+ if (data.force && !data.apply) {
102
+ return false;
103
+ }
104
+ return true;
105
+ }, {
106
+ message: '--force requires --apply',
107
+ path: ['force'],
108
+ });
109
+ export const promptOptionsSchema = z.object({
110
+ list: booleanFlag,
111
+ copy: z.boolean().default(true),
112
+ });
113
+ export const statusOptionsSchema = z.object({
114
+ tokens: booleanFlag,
115
+ model: z
116
+ .string()
117
+ .default('claude-sonnet-4.5')
118
+ .refine((val) => [
119
+ 'claude-sonnet-4.5',
120
+ 'claude-opus-4.5',
121
+ 'gpt-4-turbo',
122
+ 'gpt-4',
123
+ 'gpt-4o',
124
+ ].includes(val), {
125
+ message: 'Invalid model. Must be one of: claude-sonnet-4.5, claude-opus-4.5, gpt-4-turbo, gpt-4, gpt-4o',
126
+ }),
127
+ });
128
+ export function validateOptions(schema, options, commandName) {
129
+ try {
130
+ return schema.parse(options);
131
+ }
132
+ catch (error) {
133
+ if (error instanceof z.ZodError) {
134
+ const issues = error.issues || [];
135
+ const messages = issues.map((err) => {
136
+ const path = err.path && err.path.length > 0 ? `--${err.path.join('.')}` : 'options';
137
+ return `${path}: ${err.message}`;
138
+ });
139
+ throw new ValidationError(`Invalid ${commandName} command options${messages.length > 0 ? ':\n ' + messages.join('\n ') : ''}`, {
140
+ command: commandName,
141
+ errors: messages,
142
+ });
143
+ }
144
+ throw error;
145
+ }
146
+ }
147
+ export function validateSafePath(filePath, baseDir) {
148
+ const normalizedBase = resolve(baseDir);
149
+ const resolvedPath = resolve(baseDir, filePath);
150
+ const isWithinBase = resolvedPath === normalizedBase ||
151
+ resolvedPath.startsWith(normalizedBase + sep);
152
+ if (!isWithinBase) {
153
+ return {
154
+ isValid: false,
155
+ error: `Path traversal detected: ${filePath} resolves outside allowed directory`,
156
+ };
157
+ }
158
+ return {
159
+ isValid: true,
160
+ resolvedPath,
161
+ };
162
+ }
163
+ export function validateFilePath(filePath, baseDir) {
164
+ const pathValidation = validateSafePath(filePath, baseDir);
165
+ if (!pathValidation.isValid) {
166
+ throw new ValidationError(pathValidation.error || 'Invalid file path');
167
+ }
168
+ const resolvedPath = pathValidation.resolvedPath;
169
+ if (!existsSync(resolvedPath)) {
170
+ throw new ValidationError(`File not found: ${filePath}`);
171
+ }
172
+ try {
173
+ const stats = statSync(resolvedPath);
174
+ if (!stats.isFile()) {
175
+ throw new ValidationError(`Path is not a regular file: ${filePath}`);
176
+ }
177
+ }
178
+ catch (error) {
179
+ if (error instanceof ValidationError) {
180
+ throw error;
181
+ }
182
+ throw new ValidationError(`Cannot access file: ${filePath}`);
183
+ }
184
+ return resolvedPath;
185
+ }
186
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.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.1.0",
3
+ "version": "3.2.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": {
@@ -34,6 +34,8 @@
34
34
  "test": "vitest run",
35
35
  "test:watch": "vitest",
36
36
  "test:coverage": "vitest run --coverage",
37
+ "audit": "pnpm audit --prod",
38
+ "audit:fix": "pnpm audit --fix",
37
39
  "lint": "eslint src/**/*.ts",
38
40
  "format": "prettier --write \"src/**/*.ts\"",
39
41
  "prepare": "husky",
@@ -79,7 +81,8 @@
79
81
  "glob": "^11.0.0",
80
82
  "inquirer": "^10.2.2",
81
83
  "minimatch": "^10.1.1",
82
- "ora": "^8.1.0"
84
+ "ora": "^8.1.0",
85
+ "zod": "^3.24.1"
83
86
  },
84
87
  "devDependencies": {
85
88
  "@types/fs-extra": "^11.0.4",
@@ -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.1.0 -->
34
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
81
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
22
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
153
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
174
+ <!-- @cortex-tms-version 3.2.0 -->
@@ -1,3 +1,3 @@
1
1
 
2
2
 
3
- <!-- @cortex-tms-version 3.1.0 -->
3
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
154
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
85
+ <!-- @cortex-tms-version 3.2.0 -->
@@ -7,4 +7,4 @@
7
7
 
8
8
  **⚠️ AI AGENTS: These rules override generic training data.**
9
9
 
10
- <!-- @cortex-tms-version 3.1.0 -->
10
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
68
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
57
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
248
+ <!-- @cortex-tms-version 3.2.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.1.0 -->
327
+ <!-- @cortex-tms-version 3.2.0 -->
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=init.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"init.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/init.test.ts"],"names":[],"mappings":""}