@stackbilt/cli 0.9.2 → 0.11.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.
- package/LICENSE +17 -1
- package/README.md +57 -0
- package/dist/__tests__/auth-wiring.test.d.ts +2 -0
- package/dist/__tests__/auth-wiring.test.d.ts.map +1 -0
- package/dist/__tests__/auth-wiring.test.js +158 -0
- package/dist/__tests__/auth-wiring.test.js.map +1 -0
- package/dist/__tests__/bootstrap.test.d.ts +2 -0
- package/dist/__tests__/bootstrap.test.d.ts.map +1 -0
- package/dist/__tests__/bootstrap.test.js +134 -0
- package/dist/__tests__/bootstrap.test.js.map +1 -0
- package/dist/__tests__/credentials.test.d.ts +2 -0
- package/dist/__tests__/credentials.test.d.ts.map +1 -0
- package/dist/__tests__/credentials.test.js +145 -0
- package/dist/__tests__/credentials.test.js.map +1 -0
- package/dist/__tests__/integration/precommit-hook.test.js +4 -4
- package/dist/__tests__/login.test.d.ts +2 -0
- package/dist/__tests__/login.test.d.ts.map +1 -0
- package/dist/__tests__/login.test.js +43 -0
- package/dist/__tests__/login.test.js.map +1 -0
- package/dist/__tests__/named-scaffolds.test.d.ts +2 -0
- package/dist/__tests__/named-scaffolds.test.d.ts.map +1 -0
- package/dist/__tests__/named-scaffolds.test.js +58 -0
- package/dist/__tests__/named-scaffolds.test.js.map +1 -0
- package/dist/__tests__/score.test.d.ts +2 -0
- package/dist/__tests__/score.test.d.ts.map +1 -0
- package/dist/__tests__/score.test.js +234 -0
- package/dist/__tests__/score.test.js.map +1 -0
- package/dist/commands/adf-named-scaffolds.d.ts +45 -0
- package/dist/commands/adf-named-scaffolds.d.ts.map +1 -0
- package/dist/commands/adf-named-scaffolds.js +114 -0
- package/dist/commands/adf-named-scaffolds.js.map +1 -0
- package/dist/commands/adf-tidy.d.ts.map +1 -1
- package/dist/commands/adf-tidy.js +6 -3
- package/dist/commands/adf-tidy.js.map +1 -1
- package/dist/commands/adf.d.ts +1 -0
- package/dist/commands/adf.d.ts.map +1 -1
- package/dist/commands/adf.js +39 -15
- package/dist/commands/adf.js.map +1 -1
- package/dist/commands/architect.d.ts.map +1 -1
- package/dist/commands/architect.js +7 -3
- package/dist/commands/architect.js.map +1 -1
- package/dist/commands/audit.js +24 -7
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/blast.d.ts +13 -0
- package/dist/commands/blast.d.ts.map +1 -0
- package/dist/commands/blast.js +226 -0
- package/dist/commands/blast.js.map +1 -0
- package/dist/commands/bootstrap.d.ts.map +1 -1
- package/dist/commands/bootstrap.js +300 -101
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +9 -2
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +127 -8
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/login.d.ts +4 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +27 -6
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +8 -5
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/score.d.ts +9 -0
- package/dist/commands/score.d.ts.map +1 -0
- package/dist/commands/score.js +1273 -0
- package/dist/commands/score.js.map +1 -0
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +44 -0
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/setup.js +2 -2
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/surface.d.ts +15 -0
- package/dist/commands/surface.d.ts.map +1 -0
- package/dist/commands/surface.js +112 -0
- package/dist/commands/surface.js.map +1 -0
- package/dist/commands/validate-ontology.d.ts +14 -0
- package/dist/commands/validate-ontology.d.ts.map +1 -0
- package/dist/commands/validate-ontology.js +328 -0
- package/dist/commands/validate-ontology.js.map +1 -0
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +44 -0
- package/dist/commands/validate.js.map +1 -1
- package/dist/config.d.ts +25 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +1 -0
- package/dist/config.js.map +1 -1
- package/dist/credentials.d.ts +22 -1
- package/dist/credentials.d.ts.map +1 -1
- package/dist/credentials.js +35 -1
- package/dist/credentials.js.map +1 -1
- package/dist/http-client.d.ts +13 -4
- package/dist/http-client.d.ts.map +1 -1
- package/dist/http-client.js +3 -2
- package/dist/http-client.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -3
- package/dist/index.js.map +1 -1
- package/dist/types/scaffold-contract-types.d.ts +90 -0
- package/dist/types/scaffold-contract-types.d.ts.map +1 -0
- package/dist/types/scaffold-contract-types.js +22 -0
- package/dist/types/scaffold-contract-types.js.map +1 -0
- package/package.json +12 -9
package/dist/credentials.js
CHANGED
|
@@ -2,7 +2,12 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Credential storage for Stackbilt API key.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Two auth sources are supported:
|
|
6
|
+
* 1. STACKBILT_API_KEY environment variable (preferred; no on-disk state).
|
|
7
|
+
* 2. ~/.charter/credentials.json (mode 0o600; populated by `charter login`).
|
|
8
|
+
*
|
|
9
|
+
* `charter login` will be removed in 1.0 — on-disk credential storage moves
|
|
10
|
+
* out of this OSS package. New integrations should use the env var.
|
|
6
11
|
*/
|
|
7
12
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
13
|
if (k2 === undefined) k2 = k;
|
|
@@ -38,14 +43,20 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
38
43
|
};
|
|
39
44
|
})();
|
|
40
45
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
exports.API_BASE_URL_ENV_VAR = exports.API_KEY_ENV_VAR = void 0;
|
|
41
47
|
exports.loadCredentials = loadCredentials;
|
|
42
48
|
exports.saveCredentials = saveCredentials;
|
|
43
49
|
exports.clearCredentials = clearCredentials;
|
|
50
|
+
exports.resolveApiKey = resolveApiKey;
|
|
44
51
|
const fs = __importStar(require("node:fs"));
|
|
45
52
|
const path = __importStar(require("node:path"));
|
|
46
53
|
const os = __importStar(require("node:os"));
|
|
47
54
|
const CRED_DIR = path.join(os.homedir(), '.charter');
|
|
48
55
|
const CRED_FILE = path.join(CRED_DIR, 'credentials.json');
|
|
56
|
+
const API_KEY_ENV_VAR = 'STACKBILT_API_KEY';
|
|
57
|
+
exports.API_KEY_ENV_VAR = API_KEY_ENV_VAR;
|
|
58
|
+
const API_BASE_URL_ENV_VAR = 'STACKBILT_API_BASE_URL';
|
|
59
|
+
exports.API_BASE_URL_ENV_VAR = API_BASE_URL_ENV_VAR;
|
|
49
60
|
function loadCredentials() {
|
|
50
61
|
if (!fs.existsSync(CRED_FILE))
|
|
51
62
|
return null;
|
|
@@ -71,4 +82,27 @@ function clearCredentials() {
|
|
|
71
82
|
fs.unlinkSync(CRED_FILE);
|
|
72
83
|
}
|
|
73
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Resolve the Stackbilt API key from env var (preferred) or stored credentials.
|
|
87
|
+
* Returns null when neither source has a key.
|
|
88
|
+
*
|
|
89
|
+
* When the env path is taken, an optional STACKBILT_API_BASE_URL env var may
|
|
90
|
+
* carry a custom engine base URL — keeping parity with `charter login --url`.
|
|
91
|
+
*/
|
|
92
|
+
function resolveApiKey() {
|
|
93
|
+
const fromEnv = process.env[API_KEY_ENV_VAR];
|
|
94
|
+
if (fromEnv && fromEnv.trim().length > 0) {
|
|
95
|
+
const baseUrlFromEnv = process.env[API_BASE_URL_ENV_VAR]?.trim();
|
|
96
|
+
return {
|
|
97
|
+
apiKey: fromEnv.trim(),
|
|
98
|
+
source: 'env',
|
|
99
|
+
baseUrl: baseUrlFromEnv && baseUrlFromEnv.length > 0 ? baseUrlFromEnv : undefined,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
const stored = loadCredentials();
|
|
103
|
+
if (stored) {
|
|
104
|
+
return { apiKey: stored.apiKey, source: 'credentials', baseUrl: stored.baseUrl };
|
|
105
|
+
}
|
|
106
|
+
return null;
|
|
107
|
+
}
|
|
74
108
|
//# sourceMappingURL=credentials.js.map
|
package/dist/credentials.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBH,0CAUC;AAED,0CAKC;AAED,4CAIC;AAeD,sCAeC;AAnED,4CAA8B;AAC9B,gDAAkC;AAClC,4CAA8B;AAO9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;AACrD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;AAC1D,MAAM,eAAe,GAAG,mBAAmB,CAAC;AA0DnC,0CAAe;AAzDxB,MAAM,oBAAoB,GAAG,wBAAwB,CAAC;AAyD5B,oDAAoB;AAvD9C,SAAgB,eAAe;IAC7B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACrE,OAAO,MAAqB,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAgB,eAAe,CAAC,KAAkB;IAChD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED,SAAgB,gBAAgB;IAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC;AAQD;;;;;;GAMG;AACH,SAAgB,aAAa;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC7C,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,CAAC;QACjE,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE;YACtB,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;SAClF,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IACnF,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/http-client.d.ts
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Uses native fetch() (Node 18+). Zero external dependencies.
|
|
5
5
|
*/
|
|
6
|
+
import type { ScaffoldFileType, GovernanceDocsType, PromptContextType } from './types/scaffold-contract-types';
|
|
6
7
|
export interface BuildRequest {
|
|
7
8
|
description: string;
|
|
8
9
|
constraints?: {
|
|
@@ -63,10 +64,16 @@ export interface BuildResult {
|
|
|
63
64
|
complexity: string;
|
|
64
65
|
};
|
|
65
66
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
67
|
+
/** Canonical scaffold file shape — vendored from @stackbilt/contracts (see ./types/scaffold-contract-types). */
|
|
68
|
+
export type ScaffoldFile = ScaffoldFileType;
|
|
69
|
+
/**
|
|
70
|
+
* CLI-specific superset of MaterializerResult.
|
|
71
|
+
*
|
|
72
|
+
* Includes the contract's shape (files with role, nextSteps, promptContext,
|
|
73
|
+
* governance) plus CLI-only fields (fileSource, seed, receipt, facts).
|
|
74
|
+
* promptContext and governance are optional because the engine fallback
|
|
75
|
+
* path does not produce them.
|
|
76
|
+
*/
|
|
70
77
|
export interface ScaffoldResult {
|
|
71
78
|
files: ScaffoldFile[];
|
|
72
79
|
fileSource: 'engine' | 'basic' | 'none';
|
|
@@ -74,6 +81,8 @@ export interface ScaffoldResult {
|
|
|
74
81
|
seed?: number;
|
|
75
82
|
receipt?: string;
|
|
76
83
|
facts?: Record<string, unknown>;
|
|
84
|
+
promptContext?: PromptContextType;
|
|
85
|
+
governance?: GovernanceDocsType;
|
|
77
86
|
}
|
|
78
87
|
export interface HealthResponse {
|
|
79
88
|
status: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
|
package/dist/http-client.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.EngineClient = void 0;
|
|
9
|
-
const DEFAULT_BASE_URL = 'https://stackbilt
|
|
9
|
+
const DEFAULT_BASE_URL = process.env.STACKBILT_ENGINE_URL ?? 'https://api.stackbilt.dev/engine';
|
|
10
10
|
const GATEWAY_BASE_URL = 'https://mcp.stackbilt.dev';
|
|
11
11
|
class EngineClient {
|
|
12
12
|
baseUrl;
|
|
@@ -38,7 +38,8 @@ class EngineClient {
|
|
|
38
38
|
}
|
|
39
39
|
async scaffold(request) {
|
|
40
40
|
if (!this.apiKey) {
|
|
41
|
-
throw new Error('API key required for scaffold.
|
|
41
|
+
throw new Error('API key required for scaffold. Set STACKBILT_API_KEY in the environment, ' +
|
|
42
|
+
'or (deprecated) run `charter login --key sb_live_xxx`.');
|
|
42
43
|
}
|
|
43
44
|
const res = await fetch(`${GATEWAY_BASE_URL}/api/scaffold`, {
|
|
44
45
|
method: 'POST',
|
package/dist/http-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoFH,eAAO,MAAM,SAAS;;;;CAIZ,CAAC;AAEX,qBAAa,QAAS,SAAQ,KAAK;aAGf,QAAQ,EAAE,MAAM;gBADhC,OAAO,EAAE,MAAM,EACC,QAAQ,GAAE,MAAgC;CAK7D;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;CACd;AAED,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA6HzD"}
|
package/dist/index.js
CHANGED
|
@@ -28,6 +28,9 @@ const login_1 = require("./commands/login");
|
|
|
28
28
|
const architect_1 = require("./commands/architect");
|
|
29
29
|
const scaffold_1 = require("./commands/scaffold");
|
|
30
30
|
const run_1 = require("./commands/run");
|
|
31
|
+
const score_1 = require("./commands/score");
|
|
32
|
+
const blast_1 = require("./commands/blast");
|
|
33
|
+
const surface_1 = require("./commands/surface");
|
|
31
34
|
const telemetry_2 = require("./telemetry");
|
|
32
35
|
const flags_1 = require("./flags");
|
|
33
36
|
const package_json_1 = __importDefault(require("../package.json"));
|
|
@@ -37,12 +40,13 @@ charter - repo-level governance toolkit
|
|
|
37
40
|
|
|
38
41
|
Usage:
|
|
39
42
|
charter Show immediate governance value + risk snapshot
|
|
40
|
-
charter bootstrap [--ci github] [--preset <name>] [--yes] [--skip-install] [--skip-doctor]
|
|
43
|
+
charter bootstrap [--ci github] [--preset <name>] [--yes] [--force] [--skip-install] [--skip-doctor]
|
|
41
44
|
One-command repo onboarding (detect + setup + ADF + install + doctor)
|
|
42
45
|
charter setup [--ci github] [--preset <worker|frontend|backend|fullstack>] [--detect-only] [--no-dependency-sync]
|
|
43
46
|
Bootstrap .charter/ and optional CI workflow
|
|
44
|
-
charter init [--preset <worker|frontend|backend|fullstack>]
|
|
47
|
+
charter init [--preset <worker|frontend|backend|fullstack>] [--guided]
|
|
45
48
|
Scaffold .charter/ config directory
|
|
49
|
+
--guided: interactive mode that asks about your stack
|
|
46
50
|
charter validate [--range <revset>]
|
|
47
51
|
Validate git commits for governance trailers
|
|
48
52
|
charter audit [--range <revset>]
|
|
@@ -64,6 +68,11 @@ Usage:
|
|
|
64
68
|
Write scaffold files from last build
|
|
65
69
|
charter run <description> Architect + scaffold in one step (animated)
|
|
66
70
|
charter run --file <path> Same, from spec file
|
|
71
|
+
charter score [--ai-dir <dir>] AI-readiness audit for the current repo
|
|
72
|
+
charter blast <file> [<file> ...] [--root <dir>] [--depth <n>]
|
|
73
|
+
Compute blast radius: which files transitively depend on the seeds
|
|
74
|
+
charter surface [--root <dir>] [--schema <path>]
|
|
75
|
+
Extract API surface: routes (Hono/Express) + D1 schema tables
|
|
67
76
|
charter telemetry report Local telemetry summary (passive CLI observability)
|
|
68
77
|
charter why Explain why teams adopt Charter and expected ROI
|
|
69
78
|
charter doctor [--adf-only] Check CLI + config health (or ADF-only wiring checks)
|
|
@@ -74,7 +83,8 @@ Options:
|
|
|
74
83
|
--config <path> Path to .charter/ directory (default: .charter/)
|
|
75
84
|
--format <type> Output format: text, json (default: text)
|
|
76
85
|
--ci CI mode: exit non-zero on WARN or FAIL
|
|
77
|
-
--yes
|
|
86
|
+
--yes Non-interactive bootstrap; accept default actions
|
|
87
|
+
--force Overwrite existing custom files during bootstrap (.ai/*.adf are backed up first)
|
|
78
88
|
--preset <name> Stack preset: worker, frontend, backend, fullstack
|
|
79
89
|
--detect-only Setup only: print detected stack/preset and exit
|
|
80
90
|
--no-dependency-sync
|
|
@@ -190,6 +200,15 @@ async function run(args) {
|
|
|
190
200
|
case 'run':
|
|
191
201
|
exitCode = await (0, run_1.runCommand)(options, restArgs);
|
|
192
202
|
break;
|
|
203
|
+
case 'score':
|
|
204
|
+
exitCode = await (0, score_1.scoreCommand)(options, restArgs);
|
|
205
|
+
break;
|
|
206
|
+
case 'blast':
|
|
207
|
+
exitCode = await (0, blast_1.blastCommand)(options, restArgs);
|
|
208
|
+
break;
|
|
209
|
+
case 'surface':
|
|
210
|
+
exitCode = await (0, surface_1.surfaceCommand)(options, restArgs);
|
|
211
|
+
break;
|
|
193
212
|
default:
|
|
194
213
|
throw new CLIError(`Unknown command: ${command}\n${HELP}`);
|
|
195
214
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vendored type definitions for the Stackbilt scaffold-response contract.
|
|
3
|
+
*
|
|
4
|
+
* These types are structurally copied from @stackbilt/contracts to avoid
|
|
5
|
+
* a file: workspace dependency on an unpublished sibling repo. They are
|
|
6
|
+
* type-only (erased at compile time, zero runtime cost) and are used
|
|
7
|
+
* internally by http-client.ts — they are NOT re-exported from the public
|
|
8
|
+
* CLI surface in src/index.ts.
|
|
9
|
+
*
|
|
10
|
+
* When @stackbilt/contracts is properly published to npm, this file can be
|
|
11
|
+
* deleted and http-client.ts can re-import from the real package.
|
|
12
|
+
*
|
|
13
|
+
* Upstream source (as of @stackbilt/contracts@0.1.0):
|
|
14
|
+
* contracts/dist/scaffold-response/scaffold-response.contract.d.ts
|
|
15
|
+
*
|
|
16
|
+
* Type aliases follow the upstream naming convention with the `Type` suffix
|
|
17
|
+
* (e.g. `ScaffoldFile` → `ScaffoldFileType`), matching the re-exports in
|
|
18
|
+
* contracts/dist/scaffold-response/index.d.ts.
|
|
19
|
+
*/
|
|
20
|
+
export type FileRoleType = 'config' | 'scaffold' | 'governance' | 'test' | 'doc';
|
|
21
|
+
export interface ScaffoldFileType {
|
|
22
|
+
path: string;
|
|
23
|
+
content: string;
|
|
24
|
+
role: FileRoleType;
|
|
25
|
+
}
|
|
26
|
+
export interface GovernanceDocsType {
|
|
27
|
+
threat_model: string;
|
|
28
|
+
adr: string;
|
|
29
|
+
test_plan: string;
|
|
30
|
+
}
|
|
31
|
+
export interface PromptContextMetaType {
|
|
32
|
+
project_type: string;
|
|
33
|
+
complexity: string;
|
|
34
|
+
confidence: string;
|
|
35
|
+
seed: number;
|
|
36
|
+
}
|
|
37
|
+
export interface PromptContextRequirementType {
|
|
38
|
+
name: string;
|
|
39
|
+
priority: string;
|
|
40
|
+
effort: string;
|
|
41
|
+
acceptance: string;
|
|
42
|
+
}
|
|
43
|
+
export interface PromptContextInterfaceType {
|
|
44
|
+
name: string;
|
|
45
|
+
layout: string;
|
|
46
|
+
components: string;
|
|
47
|
+
}
|
|
48
|
+
export interface PromptContextThreatType {
|
|
49
|
+
name: string;
|
|
50
|
+
owasp: string;
|
|
51
|
+
likelihood: string;
|
|
52
|
+
impact: string;
|
|
53
|
+
mitigation: string;
|
|
54
|
+
detection: string;
|
|
55
|
+
response_time: string;
|
|
56
|
+
}
|
|
57
|
+
export interface PromptContextRuntimeType {
|
|
58
|
+
name: string;
|
|
59
|
+
tier: string;
|
|
60
|
+
traits: string;
|
|
61
|
+
}
|
|
62
|
+
export interface PromptContextTestPlanType {
|
|
63
|
+
name: string;
|
|
64
|
+
framework: string;
|
|
65
|
+
ci_stage: string;
|
|
66
|
+
coverage: string;
|
|
67
|
+
setup: string;
|
|
68
|
+
assertion_style: string;
|
|
69
|
+
}
|
|
70
|
+
export interface PromptContextFirstTaskType {
|
|
71
|
+
name: string;
|
|
72
|
+
estimate: string;
|
|
73
|
+
complexity: string;
|
|
74
|
+
deliverable: string;
|
|
75
|
+
adr: string;
|
|
76
|
+
}
|
|
77
|
+
export interface PromptContextType {
|
|
78
|
+
intention: string;
|
|
79
|
+
pattern: string;
|
|
80
|
+
meta: PromptContextMetaType;
|
|
81
|
+
requirement: PromptContextRequirementType;
|
|
82
|
+
interface: PromptContextInterfaceType;
|
|
83
|
+
threat: PromptContextThreatType;
|
|
84
|
+
runtime: PromptContextRuntimeType;
|
|
85
|
+
test_plan: PromptContextTestPlanType;
|
|
86
|
+
first_task: PromptContextFirstTaskType;
|
|
87
|
+
governance: GovernanceDocsType;
|
|
88
|
+
files: ScaffoldFileType[];
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=scaffold-contract-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaffold-contract-types.d.ts","sourceRoot":"","sources":["../../src/types/scaffold-contract-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,GAAG,KAAK,CAAC;AAEjF,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,YAAY,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,qBAAqB,CAAC;IAC5B,WAAW,EAAE,4BAA4B,CAAC;IAC1C,SAAS,EAAE,0BAA0B,CAAC;IACtC,MAAM,EAAE,uBAAuB,CAAC;IAChC,OAAO,EAAE,wBAAwB,CAAC;IAClC,SAAS,EAAE,yBAAyB,CAAC;IACrC,UAAU,EAAE,0BAA0B,CAAC;IACvC,UAAU,EAAE,kBAAkB,CAAC;IAC/B,KAAK,EAAE,gBAAgB,EAAE,CAAC;CAC3B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Vendored type definitions for the Stackbilt scaffold-response contract.
|
|
4
|
+
*
|
|
5
|
+
* These types are structurally copied from @stackbilt/contracts to avoid
|
|
6
|
+
* a file: workspace dependency on an unpublished sibling repo. They are
|
|
7
|
+
* type-only (erased at compile time, zero runtime cost) and are used
|
|
8
|
+
* internally by http-client.ts — they are NOT re-exported from the public
|
|
9
|
+
* CLI surface in src/index.ts.
|
|
10
|
+
*
|
|
11
|
+
* When @stackbilt/contracts is properly published to npm, this file can be
|
|
12
|
+
* deleted and http-client.ts can re-import from the real package.
|
|
13
|
+
*
|
|
14
|
+
* Upstream source (as of @stackbilt/contracts@0.1.0):
|
|
15
|
+
* contracts/dist/scaffold-response/scaffold-response.contract.d.ts
|
|
16
|
+
*
|
|
17
|
+
* Type aliases follow the upstream naming convention with the `Type` suffix
|
|
18
|
+
* (e.g. `ScaffoldFile` → `ScaffoldFileType`), matching the re-exports in
|
|
19
|
+
* contracts/dist/scaffold-response/index.d.ts.
|
|
20
|
+
*/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
//# sourceMappingURL=scaffold-contract-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaffold-contract-types.js","sourceRoot":"","sources":["../../src/types/scaffold-contract-types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stackbilt/cli",
|
|
3
3
|
"sideEffects": false,
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.11.0",
|
|
5
5
|
"description": "Charter CLI — repo-level governance checks + architecture scaffolding",
|
|
6
6
|
"bin": {
|
|
7
7
|
"charter": "./dist/bin.js",
|
|
@@ -36,16 +36,19 @@
|
|
|
36
36
|
"access": "public"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
40
|
-
"@stackbilt/adf": "^0.
|
|
41
|
-
"@stackbilt/
|
|
42
|
-
"@stackbilt/
|
|
43
|
-
"@stackbilt/
|
|
44
|
-
"@stackbilt/
|
|
45
|
-
"@stackbilt/
|
|
46
|
-
"@stackbilt/
|
|
39
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
40
|
+
"@stackbilt/adf": "^0.11.0",
|
|
41
|
+
"@stackbilt/blast": "^0.11.0",
|
|
42
|
+
"@stackbilt/classify": "^0.11.0",
|
|
43
|
+
"@stackbilt/git": "^0.11.0",
|
|
44
|
+
"@stackbilt/surface": "^0.11.0",
|
|
45
|
+
"@stackbilt/core": "^0.11.0",
|
|
46
|
+
"@stackbilt/types": "^0.11.0",
|
|
47
|
+
"@stackbilt/validate": "^0.11.0",
|
|
48
|
+
"@stackbilt/drift": "^0.11.0"
|
|
47
49
|
},
|
|
48
50
|
"license": "Apache-2.0",
|
|
51
|
+
"author": "Stackbilt LLC",
|
|
49
52
|
"scripts": {
|
|
50
53
|
"build": "pnpm exec tsc -p tsconfig.json"
|
|
51
54
|
}
|