@erenari/supercodex 0.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 (110) hide show
  1. package/README.md +228 -0
  2. package/dist/backup.d.ts +6 -0
  3. package/dist/backup.js +37 -0
  4. package/dist/backup.js.map +1 -0
  5. package/dist/cli.d.ts +4 -0
  6. package/dist/cli.js +63 -0
  7. package/dist/cli.js.map +1 -0
  8. package/dist/commands/aliases.d.ts +2 -0
  9. package/dist/commands/aliases.js +141 -0
  10. package/dist/commands/aliases.js.map +1 -0
  11. package/dist/commands/catalog.d.ts +3 -0
  12. package/dist/commands/catalog.js +103 -0
  13. package/dist/commands/catalog.js.map +1 -0
  14. package/dist/commands/core.d.ts +2 -0
  15. package/dist/commands/core.js +111 -0
  16. package/dist/commands/core.js.map +1 -0
  17. package/dist/commands/doctor.d.ts +3 -0
  18. package/dist/commands/doctor.js +72 -0
  19. package/dist/commands/doctor.js.map +1 -0
  20. package/dist/commands/index.d.ts +9 -0
  21. package/dist/commands/index.js +26 -0
  22. package/dist/commands/index.js.map +1 -0
  23. package/dist/commands/mcp.d.ts +2 -0
  24. package/dist/commands/mcp.js +128 -0
  25. package/dist/commands/mcp.js.map +1 -0
  26. package/dist/commands/mode.d.ts +2 -0
  27. package/dist/commands/mode.js +73 -0
  28. package/dist/commands/mode.js.map +1 -0
  29. package/dist/commands/persona.d.ts +2 -0
  30. package/dist/commands/persona.js +70 -0
  31. package/dist/commands/persona.js.map +1 -0
  32. package/dist/commands/run.d.ts +2 -0
  33. package/dist/commands/run.js +50 -0
  34. package/dist/commands/run.js.map +1 -0
  35. package/dist/commands/utils.d.ts +4 -0
  36. package/dist/commands/utils.js +28 -0
  37. package/dist/commands/utils.js.map +1 -0
  38. package/dist/commands/validate.d.ts +2 -0
  39. package/dist/commands/validate.js +56 -0
  40. package/dist/commands/validate.js.map +1 -0
  41. package/dist/config.d.ts +33 -0
  42. package/dist/config.js +433 -0
  43. package/dist/config.js.map +1 -0
  44. package/dist/constants.d.ts +3 -0
  45. package/dist/constants.js +7 -0
  46. package/dist/constants.js.map +1 -0
  47. package/dist/doctor/checks.d.ts +18 -0
  48. package/dist/doctor/checks.js +100 -0
  49. package/dist/doctor/checks.js.map +1 -0
  50. package/dist/doctor/fix.d.ts +6 -0
  51. package/dist/doctor/fix.js +99 -0
  52. package/dist/doctor/fix.js.map +1 -0
  53. package/dist/doctor/index.d.ts +4 -0
  54. package/dist/doctor/index.js +21 -0
  55. package/dist/doctor/index.js.map +1 -0
  56. package/dist/doctor/report.d.ts +3 -0
  57. package/dist/doctor/report.js +21 -0
  58. package/dist/doctor/report.js.map +1 -0
  59. package/dist/doctor/types.d.ts +16 -0
  60. package/dist/doctor/types.js +3 -0
  61. package/dist/doctor/types.js.map +1 -0
  62. package/dist/fs-utils.d.ts +4 -0
  63. package/dist/fs-utils.js +31 -0
  64. package/dist/fs-utils.js.map +1 -0
  65. package/dist/mcp.d.ts +21 -0
  66. package/dist/mcp.js +222 -0
  67. package/dist/mcp.js.map +1 -0
  68. package/dist/operations.d.ts +108 -0
  69. package/dist/operations.js +388 -0
  70. package/dist/operations.js.map +1 -0
  71. package/dist/paths.d.ts +12 -0
  72. package/dist/paths.js +41 -0
  73. package/dist/paths.js.map +1 -0
  74. package/dist/project-init.d.ts +8 -0
  75. package/dist/project-init.js +92 -0
  76. package/dist/project-init.js.map +1 -0
  77. package/dist/prompts.d.ts +9 -0
  78. package/dist/prompts.js +157 -0
  79. package/dist/prompts.js.map +1 -0
  80. package/dist/registry/aliases.d.ts +16 -0
  81. package/dist/registry/aliases.js +347 -0
  82. package/dist/registry/aliases.js.map +1 -0
  83. package/dist/registry/builtins.d.ts +8 -0
  84. package/dist/registry/builtins.js +188 -0
  85. package/dist/registry/builtins.js.map +1 -0
  86. package/dist/registry/index.d.ts +4 -0
  87. package/dist/registry/index.js +21 -0
  88. package/dist/registry/index.js.map +1 -0
  89. package/dist/registry/loader.d.ts +16 -0
  90. package/dist/registry/loader.js +655 -0
  91. package/dist/registry/loader.js.map +1 -0
  92. package/dist/registry/types.d.ts +79 -0
  93. package/dist/registry/types.js +3 -0
  94. package/dist/registry/types.js.map +1 -0
  95. package/dist/runtime/alias-dispatch.d.ts +10 -0
  96. package/dist/runtime/alias-dispatch.js +119 -0
  97. package/dist/runtime/alias-dispatch.js.map +1 -0
  98. package/dist/runtime/compat.d.ts +6 -0
  99. package/dist/runtime/compat.js +23 -0
  100. package/dist/runtime/compat.js.map +1 -0
  101. package/dist/runtime/context.d.ts +23 -0
  102. package/dist/runtime/context.js +59 -0
  103. package/dist/runtime/context.js.map +1 -0
  104. package/dist/runtime/index.d.ts +4 -0
  105. package/dist/runtime/index.js +21 -0
  106. package/dist/runtime/index.js.map +1 -0
  107. package/dist/runtime/workflow.d.ts +18 -0
  108. package/dist/runtime/workflow.js +45 -0
  109. package/dist/runtime/workflow.js.map +1 -0
  110. package/package.json +57 -0
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.initProjectTemplate = initProjectTemplate;
7
+ const node_path_1 = __importDefault(require("node:path"));
8
+ const promises_1 = require("node:fs/promises");
9
+ const config_1 = require("./config");
10
+ const fs_utils_1 = require("./fs-utils");
11
+ const PROJECT_LAYER = {
12
+ supercodex: {
13
+ project: {
14
+ enabled: true,
15
+ prompts: ["plan", "review", "refactor", "debug"],
16
+ checkpoints: true
17
+ }
18
+ }
19
+ };
20
+ const PROJECT_README = `# Project SuperCodex Layer
21
+
22
+ This project uses a local \`.codex/config.toml\` layer for team defaults.
23
+
24
+ ## What this file does
25
+ - Enables a small project-scoped \`[supercodex.project]\` block.
26
+ - Declares the prompt workflow: plan, review, refactor, debug.
27
+
28
+ ## Typical workflow
29
+ 1. Run global install once:
30
+ \`supercodex install\`
31
+ 2. In this repo, plan first:
32
+ Use prompt: \`~/.codex/prompts/supercodex/plan.md\`
33
+ 3. Before merging, run:
34
+ Use prompt: \`~/.codex/prompts/supercodex/review.md\`
35
+
36
+ ## Notes
37
+ - Local project config is additive and non-destructive.
38
+ - Existing keys are preserved by default.
39
+ `;
40
+ async function initProjectTemplate(projectRoot = process.cwd()) {
41
+ const codexDir = node_path_1.default.join(projectRoot, ".codex");
42
+ const configPath = node_path_1.default.join(codexDir, "config.toml");
43
+ const readmePath = node_path_1.default.join(codexDir, "README.md");
44
+ await (0, promises_1.mkdir)(codexDir, { recursive: true });
45
+ const currentConfig = await (0, config_1.loadConfig)(configPath);
46
+ const mergedConfig = (0, fs_utils_1.deepClone)(currentConfig);
47
+ const skippedPaths = [];
48
+ const configChanged = mergeMissingKeys(mergedConfig, PROJECT_LAYER, "", skippedPaths);
49
+ if (configChanged) {
50
+ await (0, config_1.writeConfig)(configPath, mergedConfig);
51
+ }
52
+ let readmeChanged = false;
53
+ if (!(await (0, fs_utils_1.pathExists)(readmePath))) {
54
+ await (0, promises_1.writeFile)(readmePath, PROJECT_README, "utf8");
55
+ readmeChanged = true;
56
+ }
57
+ else {
58
+ const existing = await (0, promises_1.readFile)(readmePath, "utf8");
59
+ if (!(0, fs_utils_1.deepEqual)(existing, PROJECT_README)) {
60
+ readmeChanged = false;
61
+ }
62
+ }
63
+ return {
64
+ configPath,
65
+ readmePath,
66
+ configChanged,
67
+ readmeChanged,
68
+ skippedPaths: skippedPaths.sort()
69
+ };
70
+ }
71
+ function mergeMissingKeys(target, patch, rootPath, skippedPaths) {
72
+ let changed = false;
73
+ for (const [key, patchValue] of Object.entries(patch)) {
74
+ const nextPath = rootPath ? `${rootPath}.${key}` : key;
75
+ if (!Object.hasOwn(target, key)) {
76
+ target[key] = (0, fs_utils_1.deepClone)(patchValue);
77
+ changed = true;
78
+ continue;
79
+ }
80
+ const existing = target[key];
81
+ if ((0, fs_utils_1.isPlainObject)(existing) && (0, fs_utils_1.isPlainObject)(patchValue)) {
82
+ changed =
83
+ mergeMissingKeys(existing, patchValue, nextPath, skippedPaths) || changed;
84
+ continue;
85
+ }
86
+ if (!(0, fs_utils_1.deepEqual)(existing, patchValue)) {
87
+ skippedPaths.push(nextPath);
88
+ }
89
+ }
90
+ return changed;
91
+ }
92
+ //# sourceMappingURL=project-init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-init.js","sourceRoot":"","sources":["../src/project-init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare const BUNDLED_PROMPTS: Record<string, string>;
2
+ export interface PromptInstallResult {
3
+ changed: boolean;
4
+ writtenFiles: string[];
5
+ }
6
+ export declare function listBundledPrompts(): string[];
7
+ export declare function installPromptPack(promptPackDir: string): Promise<PromptInstallResult>;
8
+ export declare function removePromptPack(promptPackDir: string): Promise<boolean>;
9
+ export declare function listInstalledPrompts(promptPackDir: string): Promise<string[]>;
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BUNDLED_PROMPTS = void 0;
7
+ exports.listBundledPrompts = listBundledPrompts;
8
+ exports.installPromptPack = installPromptPack;
9
+ exports.removePromptPack = removePromptPack;
10
+ exports.listInstalledPrompts = listInstalledPrompts;
11
+ const node_path_1 = __importDefault(require("node:path"));
12
+ const promises_1 = require("node:fs/promises");
13
+ const fs_utils_1 = require("./fs-utils");
14
+ exports.BUNDLED_PROMPTS = {
15
+ "plan.md": `# SuperCodex Plan
16
+
17
+ ## Goal
18
+ - State the objective in one sentence.
19
+
20
+ ## Constraints
21
+ - List technical, time, and safety constraints.
22
+
23
+ ## Plan
24
+ 1. Define scope and assumptions.
25
+ 2. Break work into small, verifiable steps.
26
+ 3. Execute with checkpoints.
27
+
28
+ ## Checkpoints
29
+ - [ ] Checkpoint 1: baseline passes
30
+ - [ ] Checkpoint 2: change implemented
31
+ - [ ] Checkpoint 3: tests + docs updated
32
+
33
+ ## Exit Criteria
34
+ - Concrete definition of done.
35
+ `,
36
+ "review.md": `# SuperCodex Review
37
+
38
+ ## Review Rubric
39
+ 1. Correctness and behavioral regressions
40
+ 2. Security and data safety
41
+ 3. Performance and scalability
42
+ 4. Maintainability and readability
43
+ 5. Test coverage and failure modes
44
+
45
+ ## Risk Scan
46
+ - What can break at runtime?
47
+ - What assumptions are unverified?
48
+ - Which paths are untested?
49
+
50
+ ## Output
51
+ - Findings ordered by severity with file references.
52
+ - Residual risks and recommended follow-ups.
53
+ `,
54
+ "refactor.md": `# SuperCodex Refactor
55
+
56
+ ## Refactor Safety Steps
57
+ 1. Lock behavior with tests first.
58
+ 2. Refactor one seam at a time.
59
+ 3. Keep commits small and reversible.
60
+ 4. Re-run focused and full tests.
61
+
62
+ ## Guardrails
63
+ - No broad rewrites without test coverage.
64
+ - Preserve public contracts.
65
+ - Document any deliberate behavior changes.
66
+ `,
67
+ "debug.md": `# SuperCodex Debug
68
+
69
+ ## Hypothesis Loop
70
+ 1. Define observable failure.
71
+ 2. Form one hypothesis.
72
+ 3. Design the smallest experiment.
73
+ 4. Run and record result.
74
+ 5. Confirm or reject, then iterate.
75
+
76
+ ## Notes
77
+ - Prefer instrumentation over guessing.
78
+ - Change one variable at a time.
79
+ - Stop when root cause is validated by a reproducer.
80
+ `,
81
+ "modes/deep.md": `# Deep Mode Overlay
82
+
83
+ - Prioritize architecture-level reasoning.
84
+ - Enumerate tradeoffs before implementation.
85
+ - Highlight irreversible decisions.
86
+ `,
87
+ "modes/fast.md": `# Fast Mode Overlay
88
+
89
+ - Optimize for shortest safe path to done.
90
+ - Keep scope tight and changes minimal.
91
+ - Prefer deterministic small diffs.
92
+ `,
93
+ "personas/architect.md": `# Architect Persona
94
+
95
+ - Focus on boundaries, contracts, and long-term maintainability.
96
+ - Surface tradeoffs and migration impacts.
97
+ `,
98
+ "personas/reviewer.md": `# Reviewer Persona
99
+
100
+ - Focus on correctness, regressions, and security risks.
101
+ - Prioritize findings by severity.
102
+ `
103
+ };
104
+ function listBundledPrompts() {
105
+ return Object.keys(exports.BUNDLED_PROMPTS).sort();
106
+ }
107
+ async function installPromptPack(promptPackDir) {
108
+ await (0, promises_1.mkdir)(promptPackDir, { recursive: true });
109
+ let changed = false;
110
+ const writtenFiles = [];
111
+ for (const fileName of listBundledPrompts()) {
112
+ const targetPath = node_path_1.default.join(promptPackDir, fileName);
113
+ await (0, promises_1.mkdir)(node_path_1.default.dirname(targetPath), { recursive: true });
114
+ const nextContent = exports.BUNDLED_PROMPTS[fileName];
115
+ let currentContent = null;
116
+ if (await (0, fs_utils_1.pathExists)(targetPath)) {
117
+ currentContent = await (0, promises_1.readFile)(targetPath, "utf8");
118
+ }
119
+ if (currentContent !== nextContent) {
120
+ await (0, promises_1.writeFile)(targetPath, nextContent, "utf8");
121
+ changed = true;
122
+ writtenFiles.push(targetPath);
123
+ }
124
+ }
125
+ return { changed, writtenFiles };
126
+ }
127
+ async function removePromptPack(promptPackDir) {
128
+ if (!(await (0, fs_utils_1.pathExists)(promptPackDir))) {
129
+ return false;
130
+ }
131
+ await (0, promises_1.rm)(promptPackDir, { recursive: true, force: true });
132
+ return true;
133
+ }
134
+ async function listInstalledPrompts(promptPackDir) {
135
+ if (!(await (0, fs_utils_1.pathExists)(promptPackDir))) {
136
+ return [];
137
+ }
138
+ return walkPromptFiles(promptPackDir, "");
139
+ }
140
+ async function walkPromptFiles(baseDir, relativeDir) {
141
+ const targetDir = node_path_1.default.join(baseDir, relativeDir);
142
+ const entries = await (0, promises_1.readdir)(targetDir, { withFileTypes: true });
143
+ const files = [];
144
+ for (const entry of entries) {
145
+ const relativePath = relativeDir ? node_path_1.default.join(relativeDir, entry.name) : entry.name;
146
+ if (entry.isDirectory()) {
147
+ const children = await walkPromptFiles(baseDir, relativePath);
148
+ files.push(...children);
149
+ continue;
150
+ }
151
+ if (entry.isFile() && entry.name.endsWith(".md")) {
152
+ files.push(relativePath.replaceAll("\\", "/"));
153
+ }
154
+ }
155
+ return files.sort();
156
+ }
157
+ //# sourceMappingURL=prompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { AliasDefinition, AliasPackDefinition, RegistryData } from "./types";
2
+ export declare const RESERVED_TOP_LEVEL_COMMAND_NAMES: Set<string>;
3
+ export declare const BUILTIN_ALIAS_PACKS: Record<string, AliasPackDefinition>;
4
+ export declare const BUILTIN_ALIASES: Record<string, AliasDefinition>;
5
+ export interface NormalizedAliasToken {
6
+ name: string;
7
+ explicitPrefix: boolean;
8
+ }
9
+ export interface AliasListOptions {
10
+ pack?: string;
11
+ }
12
+ export declare function normalizeAliasToken(token: string): NormalizedAliasToken | null;
13
+ export declare function listAliases(registry: Pick<RegistryData, "aliases">, options?: AliasListOptions): AliasDefinition[];
14
+ export declare function searchAliases(registry: Pick<RegistryData, "aliases">, query: string, options?: AliasListOptions): AliasDefinition[];
15
+ export declare function listAliasPacks(registry: Pick<RegistryData, "alias_packs">): AliasPackDefinition[];
16
+ export declare function isReservedTopLevelCommandName(name: string): boolean;
@@ -0,0 +1,347 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BUILTIN_ALIASES = exports.BUILTIN_ALIAS_PACKS = exports.RESERVED_TOP_LEVEL_COMMAND_NAMES = void 0;
4
+ exports.normalizeAliasToken = normalizeAliasToken;
5
+ exports.listAliases = listAliases;
6
+ exports.searchAliases = searchAliases;
7
+ exports.listAliasPacks = listAliasPacks;
8
+ exports.isReservedTopLevelCommandName = isReservedTopLevelCommandName;
9
+ const PACK_CORE_PLANNING = "core-planning";
10
+ const PACK_QUALITY_REVIEW = "quality-review";
11
+ const PACK_DEBUG_INVESTIGATION = "debug-investigation";
12
+ const PACK_REFACTOR_DELIVERY = "refactor-delivery";
13
+ exports.RESERVED_TOP_LEVEL_COMMAND_NAMES = new Set([
14
+ "install",
15
+ "uninstall",
16
+ "list",
17
+ "status",
18
+ "init",
19
+ "validate",
20
+ "doctor",
21
+ "catalog",
22
+ "aliases",
23
+ "mode",
24
+ "persona",
25
+ "mcp",
26
+ "run"
27
+ ]);
28
+ exports.BUILTIN_ALIAS_PACKS = {
29
+ [PACK_CORE_PLANNING]: {
30
+ name: PACK_CORE_PLANNING,
31
+ description: "Research and planning workflows for discovery and specification.",
32
+ default_enabled: true,
33
+ aliases: ["brainstorming", "investigate", "plan", "research", "spec", "synthesize"]
34
+ },
35
+ [PACK_QUALITY_REVIEW]: {
36
+ name: PACK_QUALITY_REVIEW,
37
+ description: "Quality and risk-scanning workflows for review stages.",
38
+ default_enabled: true,
39
+ aliases: ["audit", "checklist", "perf", "review", "security", "test"]
40
+ },
41
+ [PACK_DEBUG_INVESTIGATION]: {
42
+ name: PACK_DEBUG_INVESTIGATION,
43
+ description: "Debugging workflows from reproduction to root-cause.",
44
+ default_enabled: true,
45
+ aliases: ["debug", "fixplan", "repro", "rootcause", "trace", "triage"]
46
+ },
47
+ [PACK_REFACTOR_DELIVERY]: {
48
+ name: PACK_REFACTOR_DELIVERY,
49
+ description: "Refactor and delivery workflows for implementation and shipping.",
50
+ default_enabled: true,
51
+ aliases: ["architect", "doc", "migrate", "refactor", "ship", "simplify"]
52
+ }
53
+ };
54
+ exports.BUILTIN_ALIASES = {
55
+ research: alias({
56
+ name: "research",
57
+ description: "Deep research workflow",
58
+ target: "run.plan",
59
+ pack: PACK_CORE_PLANNING,
60
+ tags: ["research", "discovery"],
61
+ riskLevel: "medium",
62
+ mode: "deep",
63
+ persona: "architect"
64
+ }),
65
+ brainstorming: alias({
66
+ name: "brainstorming",
67
+ description: "Idea generation workflow",
68
+ target: "run.plan",
69
+ pack: PACK_CORE_PLANNING,
70
+ tags: ["ideation", "options"],
71
+ riskLevel: "low",
72
+ mode: "balanced",
73
+ persona: "educator"
74
+ }),
75
+ plan: alias({
76
+ name: "plan",
77
+ description: "Planning workflow",
78
+ target: "run.plan",
79
+ pack: PACK_CORE_PLANNING,
80
+ tags: ["planning"],
81
+ riskLevel: "low"
82
+ }),
83
+ spec: alias({
84
+ name: "spec",
85
+ description: "Specification-oriented planning workflow",
86
+ target: "run.plan",
87
+ pack: PACK_CORE_PLANNING,
88
+ tags: ["requirements", "specification"],
89
+ riskLevel: "medium",
90
+ mode: "deep",
91
+ persona: "architect"
92
+ }),
93
+ investigate: alias({
94
+ name: "investigate",
95
+ description: "Investigation-first planning workflow",
96
+ target: "run.plan",
97
+ pack: PACK_CORE_PLANNING,
98
+ tags: ["analysis", "evidence"],
99
+ riskLevel: "medium",
100
+ mode: "deep",
101
+ persona: "reviewer"
102
+ }),
103
+ synthesize: alias({
104
+ name: "synthesize",
105
+ description: "Synthesis workflow for findings and options",
106
+ target: "run.plan",
107
+ pack: PACK_CORE_PLANNING,
108
+ tags: ["summary", "decision"],
109
+ riskLevel: "low",
110
+ mode: "balanced",
111
+ persona: "educator"
112
+ }),
113
+ review: alias({
114
+ name: "review",
115
+ description: "Code review workflow",
116
+ target: "run.review",
117
+ pack: PACK_QUALITY_REVIEW,
118
+ tags: ["review", "quality"],
119
+ riskLevel: "medium"
120
+ }),
121
+ audit: alias({
122
+ name: "audit",
123
+ description: "Safety-first audit workflow",
124
+ target: "run.review",
125
+ pack: PACK_QUALITY_REVIEW,
126
+ tags: ["audit", "risk"],
127
+ riskLevel: "high",
128
+ mode: "safe",
129
+ persona: "reviewer"
130
+ }),
131
+ security: alias({
132
+ name: "security",
133
+ description: "Security-focused review workflow",
134
+ target: "run.review",
135
+ pack: PACK_QUALITY_REVIEW,
136
+ tags: ["security", "threat-model"],
137
+ riskLevel: "high",
138
+ mode: "safe",
139
+ persona: "reviewer"
140
+ }),
141
+ perf: alias({
142
+ name: "perf",
143
+ description: "Performance-focused review workflow",
144
+ target: "run.review",
145
+ pack: PACK_QUALITY_REVIEW,
146
+ tags: ["performance", "profiling"],
147
+ riskLevel: "medium",
148
+ mode: "deep",
149
+ persona: "reviewer"
150
+ }),
151
+ test: alias({
152
+ name: "test",
153
+ description: "Safety-oriented review workflow",
154
+ target: "run.review",
155
+ pack: PACK_QUALITY_REVIEW,
156
+ tags: ["tests", "regression"],
157
+ riskLevel: "medium",
158
+ mode: "safe"
159
+ }),
160
+ checklist: alias({
161
+ name: "checklist",
162
+ description: "Checklist-driven review workflow",
163
+ target: "run.review",
164
+ pack: PACK_QUALITY_REVIEW,
165
+ tags: ["checklist", "release"],
166
+ riskLevel: "low",
167
+ mode: "safe",
168
+ persona: "reviewer"
169
+ }),
170
+ debug: alias({
171
+ name: "debug",
172
+ description: "Debug workflow",
173
+ target: "run.debug",
174
+ pack: PACK_DEBUG_INVESTIGATION,
175
+ tags: ["debug"],
176
+ riskLevel: "medium"
177
+ }),
178
+ trace: alias({
179
+ name: "trace",
180
+ description: "Tracing-focused debugging workflow",
181
+ target: "run.debug",
182
+ pack: PACK_DEBUG_INVESTIGATION,
183
+ tags: ["trace", "instrumentation"],
184
+ riskLevel: "medium",
185
+ mode: "deep",
186
+ persona: "debugger"
187
+ }),
188
+ repro: alias({
189
+ name: "repro",
190
+ description: "Reproduction-first debugging workflow",
191
+ target: "run.debug",
192
+ pack: PACK_DEBUG_INVESTIGATION,
193
+ tags: ["repro", "stability"],
194
+ riskLevel: "high",
195
+ mode: "safe",
196
+ persona: "debugger"
197
+ }),
198
+ rootcause: alias({
199
+ name: "rootcause",
200
+ description: "Root-cause analysis debugging workflow",
201
+ target: "run.debug",
202
+ pack: PACK_DEBUG_INVESTIGATION,
203
+ tags: ["root-cause", "analysis"],
204
+ riskLevel: "high",
205
+ mode: "deep",
206
+ persona: "debugger"
207
+ }),
208
+ triage: alias({
209
+ name: "triage",
210
+ description: "Issue triage debugging workflow",
211
+ target: "run.debug",
212
+ pack: PACK_DEBUG_INVESTIGATION,
213
+ tags: ["triage", "prioritization"],
214
+ riskLevel: "medium",
215
+ mode: "balanced",
216
+ persona: "debugger"
217
+ }),
218
+ fixplan: alias({
219
+ name: "fixplan",
220
+ description: "Fix planning workflow after debugging",
221
+ target: "run.debug",
222
+ pack: PACK_DEBUG_INVESTIGATION,
223
+ tags: ["fix", "mitigation"],
224
+ riskLevel: "high",
225
+ mode: "safe",
226
+ persona: "architect"
227
+ }),
228
+ refactor: alias({
229
+ name: "refactor",
230
+ description: "Refactor workflow",
231
+ target: "run.refactor",
232
+ pack: PACK_REFACTOR_DELIVERY,
233
+ tags: ["refactor"],
234
+ riskLevel: "medium"
235
+ }),
236
+ simplify: alias({
237
+ name: "simplify",
238
+ description: "Simplification-focused refactor workflow",
239
+ target: "run.refactor",
240
+ pack: PACK_REFACTOR_DELIVERY,
241
+ tags: ["simplify", "maintainability"],
242
+ riskLevel: "low",
243
+ mode: "balanced",
244
+ persona: "refactorer"
245
+ }),
246
+ migrate: alias({
247
+ name: "migrate",
248
+ description: "Migration-focused refactor workflow",
249
+ target: "run.refactor",
250
+ pack: PACK_REFACTOR_DELIVERY,
251
+ tags: ["migration", "compatibility"],
252
+ riskLevel: "high",
253
+ mode: "safe",
254
+ persona: "architect"
255
+ }),
256
+ architect: alias({
257
+ name: "architect",
258
+ description: "Architecture-focused planning",
259
+ target: "run.plan",
260
+ pack: PACK_REFACTOR_DELIVERY,
261
+ tags: ["architecture", "design"],
262
+ riskLevel: "medium",
263
+ persona: "architect"
264
+ }),
265
+ doc: alias({
266
+ name: "doc",
267
+ description: "Documentation-oriented planning",
268
+ target: "run.plan",
269
+ pack: PACK_REFACTOR_DELIVERY,
270
+ tags: ["docs", "handoff"],
271
+ riskLevel: "low",
272
+ persona: "educator"
273
+ }),
274
+ ship: alias({
275
+ name: "ship",
276
+ description: "Shipping-oriented refactor workflow",
277
+ target: "run.refactor",
278
+ pack: PACK_REFACTOR_DELIVERY,
279
+ tags: ["ship", "delivery"],
280
+ riskLevel: "medium",
281
+ mode: "fast",
282
+ persona: "shipper"
283
+ })
284
+ };
285
+ function normalizeAliasToken(token) {
286
+ const trimmed = token.trim();
287
+ if (!trimmed) {
288
+ return null;
289
+ }
290
+ if (trimmed.startsWith("/sc:")) {
291
+ const name = trimmed.slice(4).trim().toLowerCase();
292
+ return name ? { name, explicitPrefix: true } : null;
293
+ }
294
+ if (trimmed.startsWith("sc:")) {
295
+ const name = trimmed.slice(3).trim().toLowerCase();
296
+ return name ? { name, explicitPrefix: true } : null;
297
+ }
298
+ return {
299
+ name: trimmed.toLowerCase(),
300
+ explicitPrefix: false
301
+ };
302
+ }
303
+ function listAliases(registry, options = {}) {
304
+ return Object.values(registry.aliases)
305
+ .filter((entry) => !options.pack || entry.pack === options.pack)
306
+ .sort((a, b) => a.name.localeCompare(b.name));
307
+ }
308
+ function searchAliases(registry, query, options = {}) {
309
+ const normalized = query.trim().toLowerCase();
310
+ if (!normalized) {
311
+ return listAliases(registry, options);
312
+ }
313
+ return listAliases(registry, options).filter((entry) => {
314
+ const haystack = [
315
+ entry.name,
316
+ entry.description,
317
+ entry.target,
318
+ entry.pack ?? "",
319
+ ...(entry.tags ?? [])
320
+ ]
321
+ .join(" ")
322
+ .toLowerCase();
323
+ return haystack.includes(normalized);
324
+ });
325
+ }
326
+ function listAliasPacks(registry) {
327
+ return Object.values(registry.alias_packs).sort((a, b) => a.name.localeCompare(b.name));
328
+ }
329
+ function isReservedTopLevelCommandName(name) {
330
+ return exports.RESERVED_TOP_LEVEL_COMMAND_NAMES.has(name.toLowerCase());
331
+ }
332
+ function alias(options) {
333
+ return {
334
+ name: options.name,
335
+ description: options.description,
336
+ target: options.target,
337
+ pack: options.pack,
338
+ tags: [...options.tags],
339
+ risk_level: options.riskLevel,
340
+ stability: "stable",
341
+ forward_args: true,
342
+ output: "normal",
343
+ ...(options.mode ? { default_mode: options.mode } : {}),
344
+ ...(options.persona ? { default_persona: options.persona } : {})
345
+ };
346
+ }
347
+ //# sourceMappingURL=aliases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aliases.js","sourceRoot":"","sources":["../../src/registry/aliases.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { CatalogEntry, CommandDefinition, ModeDefinition, PersonaDefinition } from "./types";
2
+ export declare const BUILTIN_MODES: Record<string, ModeDefinition>;
3
+ export declare const BUILTIN_PERSONAS: Record<string, PersonaDefinition>;
4
+ export declare const BUILTIN_COMMANDS: Record<string, CommandDefinition>;
5
+ export declare const BUILTIN_CATALOG: Record<string, CatalogEntry>;
6
+ export declare const BUILTIN_DEFAULT_MODE = "balanced";
7
+ export declare const BUILTIN_DEFAULT_PERSONA = "architect";
8
+ export declare const BUILTIN_CATALOG_VERSION = "2026.02.28";