specrails-core 4.7.0 → 4.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/specrails-core.mjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* specrails-core CLI — thin ESM dispatcher.
|
|
4
4
|
*
|
|
5
|
-
* All installer subcommands (init, update, doctor
|
|
5
|
+
* All installer subcommands (init, update, doctor) execute
|
|
6
6
|
* in-process via the Node installer under dist/installer/. This file
|
|
7
7
|
* only keeps logic that is local to the dispatcher:
|
|
8
8
|
* - `profile validate` / `profile show` — schema validation via ajv.
|
|
@@ -50,7 +50,6 @@ const KNOWN_SUBCOMMANDS = new Set([
|
|
|
50
50
|
'init',
|
|
51
51
|
'update',
|
|
52
52
|
'doctor',
|
|
53
|
-
'perf-check',
|
|
54
53
|
'enrich',
|
|
55
54
|
'version',
|
|
56
55
|
'profile',
|
|
@@ -59,7 +58,7 @@ const KNOWN_SUBCOMMANDS = new Set([
|
|
|
59
58
|
|
|
60
59
|
if (!KNOWN_SUBCOMMANDS.has(subcommand)) {
|
|
61
60
|
console.error(`Unknown command: ${subcommand}\n`)
|
|
62
|
-
console.error('Available commands: init, update, doctor,
|
|
61
|
+
console.error('Available commands: init, update, doctor, enrich, version, profile, help')
|
|
63
62
|
process.exit(1)
|
|
64
63
|
}
|
|
65
64
|
|
|
@@ -176,7 +175,7 @@ if (subcommand === 'init') {
|
|
|
176
175
|
process.exit(0)
|
|
177
176
|
}
|
|
178
177
|
|
|
179
|
-
// ─── update / doctor
|
|
178
|
+
// ─── update / doctor — direct dispatch to Node CLI ───────────────────────────
|
|
180
179
|
|
|
181
180
|
await runNodeCli([subcommand, ...subargs])
|
|
182
181
|
process.exit(0)
|
|
@@ -192,7 +191,6 @@ Usage:
|
|
|
192
191
|
specrails-core init [--root-dir <path>] [--yes|-y] [--no-tui] Install into a repository
|
|
193
192
|
specrails-core update [--only <component>] [--dry-run] Update an existing installation
|
|
194
193
|
specrails-core doctor Run health checks
|
|
195
|
-
specrails-core perf-check [--files <list>] Performance regression check (CI)
|
|
196
194
|
specrails-core enrich [--from-config <path>] Run /specrails:enrich via Claude CLI
|
|
197
195
|
specrails-core profile <validate|show> [<path>] Validate or pretty-print a profile JSON
|
|
198
196
|
specrails-core version Show installed version
|
package/dist/installer/cli.js
CHANGED
|
@@ -13,7 +13,6 @@ import path from 'node:path';
|
|
|
13
13
|
import { fileURLToPath } from 'node:url';
|
|
14
14
|
import { runDoctor } from './commands/doctor.js';
|
|
15
15
|
import { runInit } from './commands/init.js';
|
|
16
|
-
import { runPerfCheck } from './commands/perf-check.js';
|
|
17
16
|
import { runUpdate } from './commands/update.js';
|
|
18
17
|
import { isInstallerError } from './util/errors.js';
|
|
19
18
|
import { fatal } from './util/logger.js';
|
|
@@ -82,7 +81,6 @@ function usageText() {
|
|
|
82
81
|
' init Install specrails into a repository',
|
|
83
82
|
' update Update an existing specrails installation',
|
|
84
83
|
' doctor Diagnose the health of an existing installation',
|
|
85
|
-
' perf-check Run the agent-workflow micro-benchmark',
|
|
86
84
|
' help Show this help message',
|
|
87
85
|
' version Print the installed version',
|
|
88
86
|
'',
|
|
@@ -128,9 +126,6 @@ async function dispatch(subcommand, flags, _positionals) {
|
|
|
128
126
|
const result = await runDoctor(flags);
|
|
129
127
|
return result.failed === 0 ? 0 : 1;
|
|
130
128
|
}
|
|
131
|
-
case 'perf-check':
|
|
132
|
-
await runPerfCheck(flags);
|
|
133
|
-
return 0;
|
|
134
129
|
case 'help':
|
|
135
130
|
case '':
|
|
136
131
|
process.stdout.write(usageText());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/installer/cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,OAAO,EAAE,SAAS,EAAoB,MAAM,sBAAsB,CAAA;AAClE,OAAO,EAAE,OAAO,EAAkB,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/installer/cli.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specrails-core",
|
|
3
|
-
"version": "4.7.
|
|
3
|
+
"version": "4.7.1",
|
|
4
4
|
"description": "AI agent workflow system for Claude Code — installs 12 specialized agents, orchestration commands, and persona-driven product discovery into any repository",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -53,17 +53,14 @@
|
|
|
53
53
|
"build": "tsc -p tsconfig.json",
|
|
54
54
|
"build:watch": "tsc -p tsconfig.json --watch",
|
|
55
55
|
"typecheck": "tsc -p tsconfig.test.json --noEmit",
|
|
56
|
-
"test": "npm run typecheck &&
|
|
56
|
+
"test": "npm run typecheck && vitest run",
|
|
57
57
|
"test:watch": "vitest",
|
|
58
58
|
"test:coverage": "vitest run --coverage",
|
|
59
|
-
"prepare": "npm run build",
|
|
60
59
|
"prepack": "npm run build"
|
|
61
60
|
},
|
|
62
|
-
"specrails": {
|
|
63
|
-
"openspecVersion": "1.2.0"
|
|
64
|
-
},
|
|
65
61
|
"dependencies": {
|
|
66
62
|
"@inquirer/prompts": "^7.0.0",
|
|
63
|
+
"ajv": "^8.18.0",
|
|
67
64
|
"js-yaml": "^4.1.0",
|
|
68
65
|
"picocolors": "^1.1.1"
|
|
69
66
|
},
|
|
@@ -71,7 +68,6 @@
|
|
|
71
68
|
"@types/js-yaml": "^4.0.9",
|
|
72
69
|
"@types/node": "^22.10.2",
|
|
73
70
|
"@vitest/coverage-v8": "^4.1.5",
|
|
74
|
-
"ajv": "^8.18.0",
|
|
75
71
|
"typescript": "^5.7.2",
|
|
76
72
|
"vitest": "^4.1.5"
|
|
77
73
|
},
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { info, rawOut } from '../util/logger.js';
|
|
2
|
-
export async function runPerfCheck(flags = {}) {
|
|
3
|
-
const modifiedFiles = resolveModifiedFiles(flags);
|
|
4
|
-
rawOut('specrails-core performance check\n');
|
|
5
|
-
rawOut(`Modified files: ${modifiedFiles.length > 0 ? modifiedFiles : '<none>'}\n\n`);
|
|
6
|
-
info('This repository contains an installer + Markdown templates — no runtime benchmarks apply.');
|
|
7
|
-
rawOut('\nPERF_STATUS: NO_PERF_IMPACT\n');
|
|
8
|
-
return { status: 'NO_PERF_IMPACT', modifiedFiles };
|
|
9
|
-
}
|
|
10
|
-
function resolveModifiedFiles(flags) {
|
|
11
|
-
if (typeof flags.files === 'string')
|
|
12
|
-
return flags.files;
|
|
13
|
-
const envList = process.env.MODIFIED_FILES_LIST;
|
|
14
|
-
return envList && envList.length > 0 ? envList : '';
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=perf-check.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"perf-check.js","sourceRoot":"","sources":["../../../src/installer/commands/perf-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAoBhD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,QAAwB,EAAE;IAC3D,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAEjD,MAAM,CAAC,oCAAoC,CAAC,CAAA;IAC5C,MAAM,CAAC,mBAAmB,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAA;IAEpF,IAAI,CACF,2FAA2F,CAC5F,CAAA;IAED,MAAM,CAAC,iCAAiC,CAAC,CAAA;IACzC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAA;AACpD,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAqB;IACjD,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,KAAK,CAAA;IACvD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAA;IAC/C,OAAO,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;AACrD,CAAC"}
|