opensip-cli 0.1.6 → 0.1.8
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/dist/bootstrap/admit-tool-package.d.ts.map +1 -1
- package/dist/bootstrap/admit-tool-package.js +8 -3
- package/dist/bootstrap/admit-tool-package.js.map +1 -1
- package/dist/bootstrap/bind-tool-context.d.ts.map +1 -1
- package/dist/bootstrap/bind-tool-context.js +5 -3
- package/dist/bootstrap/bind-tool-context.js.map +1 -1
- package/dist/bootstrap/build-command-registration-input.d.ts +7 -0
- package/dist/bootstrap/build-command-registration-input.d.ts.map +1 -1
- package/dist/bootstrap/build-command-registration-input.js +11 -4
- package/dist/bootstrap/build-command-registration-input.js.map +1 -1
- package/dist/bootstrap/build-per-run-scope.d.ts +12 -0
- package/dist/bootstrap/build-per-run-scope.d.ts.map +1 -1
- package/dist/bootstrap/build-per-run-scope.js +92 -10
- package/dist/bootstrap/build-per-run-scope.js.map +1 -1
- package/dist/bootstrap/bundled-manifest.d.ts +5 -0
- package/dist/bootstrap/bundled-manifest.d.ts.map +1 -0
- package/dist/bootstrap/bundled-manifest.js +13 -0
- package/dist/bootstrap/bundled-manifest.js.map +1 -0
- package/dist/bootstrap/bundled-tools.manifest.json +19 -1
- package/dist/bootstrap/config-and-capabilities.d.ts.map +1 -1
- package/dist/bootstrap/config-and-capabilities.js +5 -4
- package/dist/bootstrap/config-and-capabilities.js.map +1 -1
- package/dist/bootstrap/constants.d.ts +3 -0
- package/dist/bootstrap/constants.d.ts.map +1 -0
- package/dist/bootstrap/constants.js +3 -0
- package/dist/bootstrap/constants.js.map +1 -0
- package/dist/bootstrap/decorate-tool-primary.d.ts +50 -0
- package/dist/bootstrap/decorate-tool-primary.d.ts.map +1 -0
- package/dist/bootstrap/decorate-tool-primary.js +111 -0
- package/dist/bootstrap/decorate-tool-primary.js.map +1 -0
- package/dist/bootstrap/execute-post-bailout-bootstrap.d.ts.map +1 -1
- package/dist/bootstrap/execute-post-bailout-bootstrap.js +10 -0
- package/dist/bootstrap/execute-post-bailout-bootstrap.js.map +1 -1
- package/dist/bootstrap/index.d.ts +7 -1
- package/dist/bootstrap/index.d.ts.map +1 -1
- package/dist/bootstrap/index.js +15 -6
- package/dist/bootstrap/index.js.map +1 -1
- package/dist/bootstrap/io-plane.d.ts +47 -0
- package/dist/bootstrap/io-plane.d.ts.map +1 -0
- package/dist/bootstrap/io-plane.js +73 -0
- package/dist/bootstrap/io-plane.js.map +1 -0
- package/dist/bootstrap/load-tool-capabilities.d.ts.map +1 -1
- package/dist/bootstrap/load-tool-capabilities.js +18 -2
- package/dist/bootstrap/load-tool-capabilities.js.map +1 -1
- package/dist/bootstrap/owning-tool-init.d.ts.map +1 -1
- package/dist/bootstrap/owning-tool-init.js +7 -4
- package/dist/bootstrap/owning-tool-init.js.map +1 -1
- package/dist/bootstrap/phase-map.d.ts +20 -0
- package/dist/bootstrap/phase-map.d.ts.map +1 -0
- package/dist/bootstrap/phase-map.js +108 -0
- package/dist/bootstrap/phase-map.js.map +1 -0
- package/dist/bootstrap/pre-action-hook.d.ts.map +1 -1
- package/dist/bootstrap/pre-action-hook.js +24 -2
- package/dist/bootstrap/pre-action-hook.js.map +1 -1
- package/dist/bootstrap/register-tools-discovery.d.ts +42 -59
- package/dist/bootstrap/register-tools-discovery.d.ts.map +1 -1
- package/dist/bootstrap/register-tools-discovery.js +175 -97
- package/dist/bootstrap/register-tools-discovery.js.map +1 -1
- package/dist/bootstrap/register-tools-mount.d.ts +18 -1
- package/dist/bootstrap/register-tools-mount.d.ts.map +1 -1
- package/dist/bootstrap/register-tools-mount.js +118 -18
- package/dist/bootstrap/register-tools-mount.js.map +1 -1
- package/dist/bootstrap/register-tools.d.ts +58 -14
- package/dist/bootstrap/register-tools.d.ts.map +1 -1
- package/dist/bootstrap/register-tools.js +185 -14
- package/dist/bootstrap/register-tools.js.map +1 -1
- package/dist/bootstrap/root-version.d.ts +26 -0
- package/dist/bootstrap/root-version.d.ts.map +1 -0
- package/dist/bootstrap/root-version.js +36 -0
- package/dist/bootstrap/root-version.js.map +1 -0
- package/dist/bootstrap/scope-access.d.ts +26 -1
- package/dist/bootstrap/scope-access.d.ts.map +1 -1
- package/dist/bootstrap/scope-access.js +38 -1
- package/dist/bootstrap/scope-access.js.map +1 -1
- package/dist/bootstrap/skip-installed-plugins.d.ts +23 -0
- package/dist/bootstrap/skip-installed-plugins.d.ts.map +1 -0
- package/dist/bootstrap/skip-installed-plugins.js +30 -0
- package/dist/bootstrap/skip-installed-plugins.js.map +1 -0
- package/dist/bootstrap/tool-lifecycle.d.ts +0 -22
- package/dist/bootstrap/tool-lifecycle.d.ts.map +1 -1
- package/dist/bootstrap/tool-lifecycle.js +0 -23
- package/dist/bootstrap/tool-lifecycle.js.map +1 -1
- package/dist/bootstrap/tool-trust.d.ts +22 -2
- package/dist/bootstrap/tool-trust.d.ts.map +1 -1
- package/dist/bootstrap/tool-trust.js +25 -2
- package/dist/bootstrap/tool-trust.js.map +1 -1
- package/dist/bootstrap/validate-tool.d.ts +10 -4
- package/dist/bootstrap/validate-tool.d.ts.map +1 -1
- package/dist/bootstrap/validate-tool.js +76 -22
- package/dist/bootstrap/validate-tool.js.map +1 -1
- package/dist/cli-context.d.ts +2 -2
- package/dist/cli-context.d.ts.map +1 -1
- package/dist/cli-context.js +20 -35
- package/dist/cli-context.js.map +1 -1
- package/dist/commands/agent-catalog.d.ts +29 -0
- package/dist/commands/agent-catalog.d.ts.map +1 -1
- package/dist/commands/agent-catalog.js +77 -36
- package/dist/commands/agent-catalog.js.map +1 -1
- package/dist/commands/clear.d.ts.map +1 -1
- package/dist/commands/clear.js +0 -1
- package/dist/commands/clear.js.map +1 -1
- package/dist/commands/command-scope-index.d.ts +15 -1
- package/dist/commands/command-scope-index.d.ts.map +1 -1
- package/dist/commands/command-scope-index.js +10 -1
- package/dist/commands/command-scope-index.js.map +1 -1
- package/dist/commands/completion.d.ts +67 -6
- package/dist/commands/completion.d.ts.map +1 -1
- package/dist/commands/completion.js +84 -12
- package/dist/commands/completion.js.map +1 -1
- package/dist/commands/configure.d.ts.map +1 -1
- package/dist/commands/configure.js +0 -1
- package/dist/commands/configure.js.map +1 -1
- package/dist/commands/host-command-specs.d.ts +16 -9
- package/dist/commands/host-command-specs.d.ts.map +1 -1
- package/dist/commands/host-command-specs.js +45 -19
- package/dist/commands/host-command-specs.js.map +1 -1
- package/dist/commands/host-config-flag.d.ts +21 -0
- package/dist/commands/host-config-flag.d.ts.map +1 -0
- package/dist/commands/host-config-flag.js +21 -0
- package/dist/commands/host-config-flag.js.map +1 -0
- package/dist/commands/host-subcommand-groups.d.ts +46 -5
- package/dist/commands/host-subcommand-groups.d.ts.map +1 -1
- package/dist/commands/host-subcommand-groups.js +97 -65
- package/dist/commands/host-subcommand-groups.js.map +1 -1
- package/dist/commands/index.d.ts +1 -1
- package/dist/commands/index.js +1 -1
- package/dist/commands/internal-command-visibility.d.ts +42 -0
- package/dist/commands/internal-command-visibility.d.ts.map +1 -0
- package/dist/commands/internal-command-visibility.js +54 -0
- package/dist/commands/internal-command-visibility.js.map +1 -0
- package/dist/commands/mount-command-action.d.ts +5 -0
- package/dist/commands/mount-command-action.d.ts.map +1 -1
- package/dist/commands/mount-command-action.js +26 -2
- package/dist/commands/mount-command-action.js.map +1 -1
- package/dist/commands/mount-command-spec.d.ts +9 -2
- package/dist/commands/mount-command-spec.d.ts.map +1 -1
- package/dist/commands/mount-command-spec.js +9 -1
- package/dist/commands/mount-command-spec.js.map +1 -1
- package/dist/commands/plugin/domain-resolution.d.ts +12 -13
- package/dist/commands/plugin/domain-resolution.d.ts.map +1 -1
- package/dist/commands/plugin/domain-resolution.js +12 -58
- package/dist/commands/plugin/domain-resolution.js.map +1 -1
- package/dist/commands/plugin/host-dir.d.ts +0 -1
- package/dist/commands/plugin/host-dir.d.ts.map +1 -1
- package/dist/commands/plugin/host-dir.js +1 -1
- package/dist/commands/plugin/host-dir.js.map +1 -1
- package/dist/commands/plugin.d.ts +20 -14
- package/dist/commands/plugin.d.ts.map +1 -1
- package/dist/commands/plugin.js +39 -47
- package/dist/commands/plugin.js.map +1 -1
- package/dist/commands/render-outcome.d.ts.map +1 -1
- package/dist/commands/render-outcome.js.map +1 -1
- package/dist/commands/shared.d.ts +9 -0
- package/dist/commands/shared.d.ts.map +1 -1
- package/dist/commands/tools/create.d.ts +11 -0
- package/dist/commands/tools/create.d.ts.map +1 -0
- package/dist/commands/tools/create.js +84 -0
- package/dist/commands/tools/create.js.map +1 -0
- package/dist/commands/tools/index.d.ts.map +1 -1
- package/dist/commands/tools/index.js +31 -0
- package/dist/commands/tools/index.js.map +1 -1
- package/dist/commands/tools/runtime-probe-entry.d.ts.map +1 -1
- package/dist/commands/tools/runtime-probe-entry.js +4 -2
- package/dist/commands/tools/runtime-probe-entry.js.map +1 -1
- package/dist/commands/tools/validate.d.ts.map +1 -1
- package/dist/commands/tools/validate.js +12 -5
- package/dist/commands/tools/validate.js.map +1 -1
- package/dist/commands/uninstall.d.ts.map +1 -1
- package/dist/commands/uninstall.js +0 -1
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/env/host-env-specs.d.ts +18 -0
- package/dist/env/host-env-specs.d.ts.map +1 -1
- package/dist/env/host-env-specs.js +58 -2
- package/dist/env/host-env-specs.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -11
- package/dist/index.js.map +1 -1
- package/dist/report-compose.d.ts.map +1 -1
- package/dist/report-compose.js +2 -2
- package/dist/report-compose.js.map +1 -1
- package/dist/session-replay-registry.d.ts +1 -1
- package/dist/session-replay-registry.d.ts.map +1 -1
- package/dist/session-replay-registry.js +3 -1
- package/dist/session-replay-registry.js.map +1 -1
- package/dist/telemetry/command-label.d.ts +19 -0
- package/dist/telemetry/command-label.d.ts.map +1 -0
- package/dist/telemetry/command-label.js +26 -0
- package/dist/telemetry/command-label.js.map +1 -0
- package/dist/telemetry/sdk-init.d.ts +9 -0
- package/dist/telemetry/sdk-init.d.ts.map +1 -1
- package/dist/telemetry/sdk-init.js +32 -0
- package/dist/telemetry/sdk-init.js.map +1 -1
- package/dist/ui/result-to-view.d.ts +27 -7
- package/dist/ui/result-to-view.d.ts.map +1 -1
- package/dist/ui/result-to-view.js +68 -75
- package/dist/ui/result-to-view.js.map +1 -1
- package/dist/ui/views/misc-views.d.ts.map +1 -1
- package/dist/ui/views/misc-views.js +3 -1
- package/dist/ui/views/misc-views.js.map +1 -1
- package/dist/ui/views/tools-views.d.ts +2 -1
- package/dist/ui/views/tools-views.d.ts.map +1 -1
- package/dist/ui/views/tools-views.js +29 -0
- package/dist/ui/views/tools-views.js.map +1 -1
- package/package.json +32 -32
- package/dist/bootstrap/authored-tool-admission.d.ts +0 -23
- package/dist/bootstrap/authored-tool-admission.d.ts.map +0 -1
- package/dist/bootstrap/authored-tool-admission.js +0 -54
- package/dist/bootstrap/authored-tool-admission.js.map +0 -1
- package/dist/bootstrap/egress-plane.d.ts +0 -22
- package/dist/bootstrap/egress-plane.d.ts.map +0 -1
- package/dist/bootstrap/egress-plane.js +0 -37
- package/dist/bootstrap/egress-plane.js.map +0 -1
- package/dist/bootstrap/installed-tool-admission.d.ts +0 -20
- package/dist/bootstrap/installed-tool-admission.d.ts.map +0 -1
- package/dist/bootstrap/installed-tool-admission.js +0 -60
- package/dist/bootstrap/installed-tool-admission.js.map +0 -1
- package/dist/bootstrap/live-plane.d.ts +0 -51
- package/dist/bootstrap/live-plane.d.ts.map +0 -1
- package/dist/bootstrap/live-plane.js +0 -72
- package/dist/bootstrap/live-plane.js.map +0 -1
- package/dist/bootstrap/register-tools-bundled.d.ts +0 -28
- package/dist/bootstrap/register-tools-bundled.d.ts.map +0 -1
- package/dist/bootstrap/register-tools-bundled.js +0 -107
- package/dist/bootstrap/register-tools-bundled.js.map +0 -1
- package/dist/bootstrap/register-tools-shared.d.ts +0 -40
- package/dist/bootstrap/register-tools-shared.d.ts.map +0 -1
- package/dist/bootstrap/register-tools-shared.js +0 -98
- package/dist/bootstrap/register-tools-shared.js.map +0 -1
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
import { PROJECT_LOCAL_MANIFEST_FILE, resolveProjectPaths } from '@opensip-cli/core';
|
|
4
|
+
const TOOL_ID_PATTERN = /^[a-z][a-z0-9-]*$/;
|
|
5
|
+
function manifestJson(toolId, commandName) {
|
|
6
|
+
return `${JSON.stringify({
|
|
7
|
+
kind: 'tool',
|
|
8
|
+
id: toolId,
|
|
9
|
+
name: toolId,
|
|
10
|
+
version: '0.1.0',
|
|
11
|
+
apiVersion: 1,
|
|
12
|
+
main: './index.mjs',
|
|
13
|
+
commands: [{ name: commandName, description: `Run ${toolId}` }],
|
|
14
|
+
}, null, 2)}\n`;
|
|
15
|
+
}
|
|
16
|
+
function runtimeMjs(toolId, commandName) {
|
|
17
|
+
// Dependency-free plain object: authored tools load via file URL and must not
|
|
18
|
+
// require @opensip-cli/* packages in the consumer project node_modules.
|
|
19
|
+
return `export const tool = {
|
|
20
|
+
metadata: {
|
|
21
|
+
id: '${toolId}',
|
|
22
|
+
name: '${toolId}',
|
|
23
|
+
version: '0.1.0',
|
|
24
|
+
description: 'Project-local tool scaffolded by opensip tools create',
|
|
25
|
+
},
|
|
26
|
+
commandSpecs: [
|
|
27
|
+
{
|
|
28
|
+
name: '${commandName}',
|
|
29
|
+
description: 'Run ${toolId}',
|
|
30
|
+
commonFlags: ['json'],
|
|
31
|
+
scope: 'none',
|
|
32
|
+
output: 'command-result',
|
|
33
|
+
handler: async () => ({
|
|
34
|
+
type: 'text-lines',
|
|
35
|
+
title: '${toolId}',
|
|
36
|
+
lines: ['Your project-local tool is ready — allowlist it, then run opensip ${commandName}.'],
|
|
37
|
+
}),
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
};
|
|
41
|
+
`;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Scaffold a minimal project-local Tool under `<project>/opensip-cli/tools/<id>/`.
|
|
45
|
+
*/
|
|
46
|
+
export function toolsCreate(input) {
|
|
47
|
+
const toolId = input.toolId.trim();
|
|
48
|
+
if (!TOOL_ID_PATTERN.test(toolId)) {
|
|
49
|
+
return {
|
|
50
|
+
type: 'tools-create',
|
|
51
|
+
toolId,
|
|
52
|
+
dir: '',
|
|
53
|
+
files: [],
|
|
54
|
+
success: false,
|
|
55
|
+
error: "tool id must be kebab-case (e.g. 'hello-tools')",
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
const commandName = toolId;
|
|
59
|
+
const toolDir = join(resolveProjectPaths(input.projectRoot).authoredToolsDir, toolId);
|
|
60
|
+
const manifestPath = join(toolDir, PROJECT_LOCAL_MANIFEST_FILE);
|
|
61
|
+
const entryPath = join(toolDir, 'index.mjs');
|
|
62
|
+
if (existsSync(toolDir) && !input.force) {
|
|
63
|
+
return {
|
|
64
|
+
type: 'tools-create',
|
|
65
|
+
toolId,
|
|
66
|
+
dir: toolDir,
|
|
67
|
+
files: [],
|
|
68
|
+
success: false,
|
|
69
|
+
error: `directory already exists: ${toolDir} (pass --force to overwrite scaffold files)`,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
mkdirSync(toolDir, { recursive: true });
|
|
73
|
+
writeFileSync(manifestPath, manifestJson(toolId, commandName), 'utf8');
|
|
74
|
+
writeFileSync(entryPath, runtimeMjs(toolId, commandName), 'utf8');
|
|
75
|
+
return {
|
|
76
|
+
type: 'tools-create',
|
|
77
|
+
toolId,
|
|
78
|
+
dir: toolDir,
|
|
79
|
+
files: [manifestPath, entryPath],
|
|
80
|
+
success: true,
|
|
81
|
+
hint: `export OPENSIP_CLI_ALLOW_PROJECT_TOOLS='${toolId}'`,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/tools/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAIrF,MAAM,eAAe,GAAG,mBAAmB,CAAC;AAQ5C,SAAS,YAAY,CAAC,MAAc,EAAE,WAAmB;IACvD,OAAO,GAAG,IAAI,CAAC,SAAS,CACtB;QACE,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE,CAAC;QACb,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,MAAM,EAAE,EAAE,CAAC;KAChE,EACD,IAAI,EACJ,CAAC,CACF,IAAI,CAAC;AACR,CAAC;AAED,SAAS,UAAU,CAAC,MAAc,EAAE,WAAmB;IACrD,8EAA8E;IAC9E,wEAAwE;IACxE,OAAO;;WAEE,MAAM;aACJ,MAAM;;;;;;eAMJ,WAAW;0BACA,MAAM;;;;;;kBAMd,MAAM;qFAC6D,WAAW;;;;;CAK/F,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAClC,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,MAAM;YACN,GAAG,EAAE,EAAE;YACP,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,iDAAiD;SACzD,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC;IAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACtF,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAE7C,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxC,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,MAAM;YACN,GAAG,EAAE,OAAO;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,6BAA6B,OAAO,6CAA6C;SACzF,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,aAAa,CAAC,YAAY,EAAE,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;IACvE,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;IAElE,OAAO;QACL,IAAI,EAAE,cAAc;QACpB,MAAM;QACN,GAAG,EAAE,OAAO;QACZ,KAAK,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC;QAChC,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,2CAA2C,MAAM,GAAG;KAC3D,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAGL,KAAK,WAAW,EAEjB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAGL,KAAK,WAAW,EAEjB,MAAM,mBAAmB,CAAC;AAS3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,KAAK,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;AA2OzD,4EAA4E;AAC5E,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,kBAAkB,GAAG,SAAS,QAAQ,EAAE,CASlF"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import { EXIT_CODES } from '@opensip-cli/contracts';
|
|
11
11
|
import { currentScope, defineCommand, } from '@opensip-cli/core';
|
|
12
|
+
import { toolsCreate } from './create.js';
|
|
12
13
|
import { toolsDataPurge } from './data-purge.js';
|
|
13
14
|
import { toolsInstall } from './install.js';
|
|
14
15
|
import { toolsList } from './list.js';
|
|
@@ -176,6 +177,35 @@ function buildToolsUninstallSpec(ctx) {
|
|
|
176
177
|
},
|
|
177
178
|
});
|
|
178
179
|
}
|
|
180
|
+
function buildToolsCreateSpec(ctx) {
|
|
181
|
+
return defineCommand({
|
|
182
|
+
name: 'create',
|
|
183
|
+
description: 'Scaffold a minimal project-local Tool under opensip-cli/tools/<id>/',
|
|
184
|
+
commonFlags: ['json'],
|
|
185
|
+
args: [{ name: 'tool-id', description: 'Kebab-case tool id (also the subcommand name)' }],
|
|
186
|
+
options: [
|
|
187
|
+
{
|
|
188
|
+
flag: '--force',
|
|
189
|
+
description: 'Overwrite scaffold files when the tool directory already exists',
|
|
190
|
+
default: false,
|
|
191
|
+
},
|
|
192
|
+
],
|
|
193
|
+
scope: 'project',
|
|
194
|
+
output: COMMAND_RESULT_OUTPUT,
|
|
195
|
+
handler: (rawOpts) => {
|
|
196
|
+
const opts = rawOpts;
|
|
197
|
+
const toolId = opts._args[0] ?? '';
|
|
198
|
+
const result = toolsCreate({
|
|
199
|
+
toolId,
|
|
200
|
+
projectRoot: effectiveCwd(opts),
|
|
201
|
+
force: opts.force,
|
|
202
|
+
});
|
|
203
|
+
if (!result.success)
|
|
204
|
+
ctx.setExitCode(EXIT_CODES.CONFIGURATION_ERROR);
|
|
205
|
+
return Promise.resolve(result);
|
|
206
|
+
},
|
|
207
|
+
});
|
|
208
|
+
}
|
|
179
209
|
function buildToolsDataPurgeSpec(ctx) {
|
|
180
210
|
return defineCommand({
|
|
181
211
|
name: 'data-purge',
|
|
@@ -204,6 +234,7 @@ function buildToolsDataPurgeSpec(ctx) {
|
|
|
204
234
|
export function buildToolsGroupLeaves(ctx) {
|
|
205
235
|
return [
|
|
206
236
|
buildToolsListSpec(),
|
|
237
|
+
buildToolsCreateSpec(ctx),
|
|
207
238
|
buildToolsValidateSpec(ctx),
|
|
208
239
|
buildToolsInstallSpec(ctx),
|
|
209
240
|
buildToolsUninstallSpec(ctx),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/tools/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/tools/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-probe-entry.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/runtime-probe-entry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime-probe-entry.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/runtime-probe-entry.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;GAWG"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// @fitness-ignore-file one-outcome-shape -- this stdout JSON line is the PRIVATE parent↔child probe wire (runtime-probe.ts parses it), not the CLI's user-facing --json surface; renderOutcome/CommandOutcome govern user machine output, and the probe is never invoked as a CLI command.
|
|
2
|
-
// @fitness-ignore-file only-documented-toolcli-seams -- same rationale: the stdout JSON is the private parent↔child probe IPC wire (parsed by runtime-probe.ts), not user-facing run output through a ToolCliContext seam.
|
|
3
2
|
/**
|
|
4
3
|
* runtime-probe-entry — the child-process side of `tools validate`'s runtime
|
|
5
4
|
* sections (ADR-0041).
|
|
@@ -12,6 +11,7 @@
|
|
|
12
11
|
* security boundary — same user privileges) and prints a slim JSON report on
|
|
13
12
|
* stdout. Exit 0 ⇔ report.ok.
|
|
14
13
|
*/
|
|
14
|
+
import { resolveToolHooks } from '@opensip-cli/core';
|
|
15
15
|
import { admitToolPackage } from '../../bootstrap/admit-tool-package.js';
|
|
16
16
|
const dir = process.argv[2];
|
|
17
17
|
if (dir === undefined || dir.length === 0) {
|
|
@@ -27,7 +27,9 @@ else {
|
|
|
27
27
|
const slim = {
|
|
28
28
|
ok: report.ok,
|
|
29
29
|
sections: report.sections,
|
|
30
|
-
toolConfigNamespace: report.tool
|
|
30
|
+
toolConfigNamespace: report.tool
|
|
31
|
+
? (resolveToolHooks(report.tool).config?.namespace ?? null)
|
|
32
|
+
: null,
|
|
31
33
|
toolId: report.tool?.metadata.name ?? report.tool?.metadata.id ?? null,
|
|
32
34
|
};
|
|
33
35
|
process.stdout.write(`${JSON.stringify(slim)}\n`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-probe-entry.js","sourceRoot":"","sources":["../../../src/commands/tools/runtime-probe-entry.ts"],"names":[],"mappings":"AAAA,2RAA2R;AAC3R
|
|
1
|
+
{"version":3,"file":"runtime-probe-entry.js","sourceRoot":"","sources":["../../../src/commands/tools/runtime-probe-entry.ts"],"names":[],"mappings":"AAAA,2RAA2R;AAC3R;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAIzE,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAC5E,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC;KAAM,CAAC;IACN,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;QACpC,GAAG;QACH,MAAM,EAAE,WAAW;QACnB,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAC;IACH,MAAM,IAAI,GAAgB;QACxB,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,mBAAmB,EAAE,MAAM,CAAC,IAAI;YAC9B,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,IAAI,IAAI,CAAC;YAC3D,CAAC,CAAC,IAAI;QACR,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,IAAI;KACvE,CAAC;IACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAaH,OAAO,KAAK,EAAE,mBAAmB,EAAwB,MAAM,wBAAwB,CAAC;AAExF,+EAA+E;AAC/E,eAAO,MAAM,yBAAyB,QAG2B,CAAC;AAElE,6CAA6C;AAC7C,MAAM,WAAW,qBAAqB;IACpC,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,6EAA6E;IAC7E,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;CAChC;
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/commands/tools/validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAaH,OAAO,KAAK,EAAE,mBAAmB,EAAwB,MAAM,wBAAwB,CAAC;AAExF,+EAA+E;AAC/E,eAAO,MAAM,yBAAyB,QAG2B,CAAC;AAElE,6CAA6C;AAC7C,MAAM,WAAW,qBAAqB;IACpC,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,6EAA6E;IAC7E,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;CAChC;AAyKD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,qBAAqB,EAC3B,EAAE,UAAkB,EAAE,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GACpD,OAAO,CAAC;IAAE,MAAM,EAAE,mBAAmB,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC,CAyDtF"}
|
|
@@ -105,16 +105,23 @@ function skippedRuntimeSections() {
|
|
|
105
105
|
}
|
|
106
106
|
/**
|
|
107
107
|
* Config contract (spec + ADR-0043 family): a manifest that declares config
|
|
108
|
-
* needs a runtime `Tool.config
|
|
108
|
+
* needs a runtime `Tool.config`.
|
|
109
|
+
*
|
|
110
|
+
* tool-command-surface-taxonomy Task 2.4 / Q1: the config namespace is
|
|
111
|
+
* DECOUPLED from the tool id (`metadata.name`). `metadata.name` is the command
|
|
112
|
+
* verb (`fit`/`sim`), while the config namespace is a hardcoded
|
|
113
|
+
* `ToolConfigDeclaration.namespace` literal (`fitness`/`simulation`/`graph`).
|
|
114
|
+
* They are intentionally allowed to differ (the long config key is retained as
|
|
115
|
+
* the sole valid namespace until Q6 flips the literal), so this section no
|
|
116
|
+
* longer requires `namespace === toolId` — that coupling was the pre-rename
|
|
117
|
+
* assumption. The unclaimed-namespace policy (`config-and-capabilities.ts`)
|
|
118
|
+
* still rejects a user-typed block that no loaded tool claims.
|
|
109
119
|
*/
|
|
110
|
-
function configContractSection(manifestDeclaresConfig, toolConfigNamespace,
|
|
120
|
+
function configContractSection(manifestDeclaresConfig, toolConfigNamespace, _toolId) {
|
|
111
121
|
const diagnostics = [];
|
|
112
122
|
if (manifestDeclaresConfig && toolConfigNamespace === null) {
|
|
113
123
|
diagnostics.push('manifest declares config but the runtime Tool.config contribution is missing');
|
|
114
124
|
}
|
|
115
|
-
if (toolConfigNamespace !== null && toolConfigNamespace !== toolId) {
|
|
116
|
-
diagnostics.push(`Tool.config.namespace '${toolConfigNamespace}' does not match the tool id '${toolId ?? ''}'`);
|
|
117
|
-
}
|
|
118
125
|
return section('config-contract', diagnostics.length === 0 ? 'passed' : 'failed', diagnostics);
|
|
119
126
|
}
|
|
120
127
|
/** The runtime-probe + config-contract leg. Mutates nothing; returns its sections. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/commands/tools/validate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/commands/tools/validate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAkBH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,8DAA8D;IAC9D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,mEAAmE;IACnE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC;IACzC;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,6CAA6C;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,8DAA8D;IAC9D,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACzD;AA6FD,wBAAsB,gBAAgB,CAAC,IAAI,GAAE,gBAAqB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA6ChG"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// @fitness-ignore-file error-handling-quality -- file/dir walks for uninstall planning and best-effort tidy-up: missing/unreadable entries (TOCTOU vanish between readdir+stat, permission-denied subdirs, already-removed parent shells) are the expected non-terminal signal to skip; failure-IS-the-signal is the function contract in each catch.
|
|
2
|
-
// @fitness-ignore-file only-documented-toolcli-seams -- interactive TTY UX: the readline confirmation prompt + human-readable removal-progress notes go to stdout via an injectable `write` (defaulted to process.stdout for the real run, stubbed in tests); this is not machine run output through a ToolCliContext seam (same category as clear.ts/configure.ts).
|
|
3
2
|
/**
|
|
4
3
|
* @fileoverview `opensip uninstall` — remove opensip-cli state
|
|
5
4
|
* from a user account and/or project.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"AAAA,sVAAsV;AACtV
|
|
1
|
+
{"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../src/commands/uninstall.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,24 @@
|
|
|
21
21
|
*/
|
|
22
22
|
import { EnvRegistry, type EnvVarSpec } from '@opensip-cli/core';
|
|
23
23
|
/** CLI-layer infra variables: OpenTelemetry + the update-notifier opt-outs. */
|
|
24
|
+
export declare const CLI_INFRA_ENV_SPECS: readonly EnvVarSpec<unknown>[];
|
|
25
|
+
/**
|
|
26
|
+
* The full CLI env surface = infra vars + the ten subprocess-correlation vars.
|
|
27
|
+
*
|
|
28
|
+
* The canonical names + docs for the ten `OPENSIP_*` correlation vars
|
|
29
|
+
* (`OPENSIP_RUN_ID`, `OPENSIP_TOOL`, `OPENSIP_PARENT_COMMAND`, `OPENSIP_TRACE_ID`,
|
|
30
|
+
* `OPENSIP_SHARD_ID`, `OPENSIP_WORKER_KIND`, `OPENSIP_REPO`, `OPENSIP_REPO_ID`,
|
|
31
|
+
* `OPENSIP_TENANT_ID`, `OPENSIP_CHILD_INVOCATION_ID`) are OWNED by
|
|
32
|
+
* `@opensip-cli/core`'s `run-correlation.ts` (`CORRELATION_ENV_SPECS`) — the single
|
|
33
|
+
* source of truth that `correlationFromEnv()` also reads through. The host SURFACES
|
|
34
|
+
* them here (for the env-surface reference doc + governance) by SPREADING the core
|
|
35
|
+
* table; it never re-declares them. The `...CORRELATION_ENV_SPECS` spread — not this
|
|
36
|
+
* comment — is what keeps the codec and the governed env surface in lockstep.
|
|
37
|
+
*
|
|
38
|
+
* `OPENSIP_API_KEY` is deliberately NOT part of this set — it lives in
|
|
39
|
+
* `CONFIG_ENV_SPECS` (`global-config.ts`) and must never be conflated with
|
|
40
|
+
* correlation.
|
|
41
|
+
*/
|
|
24
42
|
export declare const CLI_ENV_SPECS: readonly EnvVarSpec<unknown>[];
|
|
25
43
|
/** The composed CLI-layer registry. Telemetry + update-notifier read through it. */
|
|
26
44
|
export declare const hostEnv: EnvRegistry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-env-specs.d.ts","sourceRoot":"","sources":["../../src/env/host-env-specs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,
|
|
1
|
+
{"version":3,"file":"host-env-specs.d.ts","sourceRoot":"","sources":["../../src/env/host-env-specs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAAyB,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAExF,+EAA+E;AAC/E,eAAO,MAAM,mBAAmB,EAAE,SAAS,UAAU,CAAC,OAAO,CAAC,EA+F7D,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,UAAU,CAAC,OAAO,CAAC,EAGvD,CAAC;AAEF,oFAAoF;AAEpF,eAAO,MAAM,OAAO,aAAiC,CAAC;AAEtD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,UAAU,CAAC,OAAO,CAAC,EAKhE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,UAAU,CAAC,OAAO,CAAC,EAoB7D,CAAC;AAEF;;;GAGG;AACH,wBAAgB,eAAe,IAAI,SAAS,UAAU,CAAC,OAAO,CAAC,EAAE,CAEhE"}
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
* `env-via-registry` guardrail.
|
|
21
21
|
*/
|
|
22
22
|
import { CONFIG_ENV_SPECS } from '@opensip-cli/config';
|
|
23
|
-
import { EnvRegistry } from '@opensip-cli/core';
|
|
23
|
+
import { CORRELATION_ENV_SPECS, EnvRegistry } from '@opensip-cli/core';
|
|
24
24
|
/** CLI-layer infra variables: OpenTelemetry + the update-notifier opt-outs. */
|
|
25
|
-
export const
|
|
25
|
+
export const CLI_INFRA_ENV_SPECS = [
|
|
26
26
|
{
|
|
27
27
|
canonical: 'OTEL_EXPORTER_OTLP_ENDPOINT',
|
|
28
28
|
docs: 'OTLP/HTTP endpoint. When set, the CLI enables OpenTelemetry tracing; unset is a hard no-op.',
|
|
@@ -47,6 +47,19 @@ export const CLI_ENV_SPECS = [
|
|
|
47
47
|
default: false,
|
|
48
48
|
docs: 'npm-convention update-notifier opt-out; honoured as an equivalent of OPENSIP_NO_UPDATE.',
|
|
49
49
|
},
|
|
50
|
+
{
|
|
51
|
+
canonical: 'OPENSIP_CLI_SHOW_INTERNAL',
|
|
52
|
+
// Strict `=1` gate (tool-command-surface-taxonomy Tier-3 reveal): only the
|
|
53
|
+
// exact value `'1'` reveals internal commands. The coerce returns a boolean
|
|
54
|
+
// so `hostEnv.get<boolean>('OPENSIP_CLI_SHOW_INTERNAL')` is the single
|
|
55
|
+
// predicate help + completion share (see showInternalCommands).
|
|
56
|
+
coerce: (raw) => raw === '1',
|
|
57
|
+
default: false,
|
|
58
|
+
docs: 'Set to 1 to reveal Tier-3 internal commands (*-run-worker, *-shard-worker, ' +
|
|
59
|
+
'graph-equivalence-check) in `--help` and shell completion. They stay directly ' +
|
|
60
|
+
'invocable regardless of this flag; it only un-hides them from the public surface. ' +
|
|
61
|
+
'The agent-catalog (a curated machine surface) is intentionally NOT affected.',
|
|
62
|
+
},
|
|
50
63
|
{
|
|
51
64
|
canonical: 'OPENSIP_CLI_SKIP_BUNDLED',
|
|
52
65
|
coerce: (raw) => raw
|
|
@@ -58,6 +71,28 @@ export const CLI_ENV_SPECS = [
|
|
|
58
71
|
'A skipped tool can instead be loaded from an installed/project-local package of the same id ' +
|
|
59
72
|
'— the install-source-independence escape hatch. Unset = load all bundled tools.',
|
|
60
73
|
},
|
|
74
|
+
{
|
|
75
|
+
canonical: 'OPENSIP_CLI_SKIP_INSTALLED',
|
|
76
|
+
coerce: (raw) => raw.length > 0,
|
|
77
|
+
default: false,
|
|
78
|
+
docs: 'Set to any non-empty value to skip discovery and loading of installed npm tool packages ' +
|
|
79
|
+
'(opensipTools.kind === tool in ancestor node_modules). Bundled and authored tools are ' +
|
|
80
|
+
'unaffected. Equivalent to passing --no-plugins. Use for incident response when ambient ' +
|
|
81
|
+
'plugins must not execute in the host process.',
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
canonical: 'OPENSIP_CLI_ALLOW_INSTALLED_TOOLS',
|
|
85
|
+
coerce: (raw) => raw
|
|
86
|
+
.split(/[\s,]+/)
|
|
87
|
+
.map((s) => s.trim())
|
|
88
|
+
.filter((s) => s.length > 0),
|
|
89
|
+
default: [],
|
|
90
|
+
docs: 'Comma/whitespace-separated installed npm Tool ids to admit (deny-by-default). ' +
|
|
91
|
+
"Use '*' to admit all ambient opensipTools.kind === tool packages discovered in " +
|
|
92
|
+
'ancestor node_modules. Unset = skip installed tools unless explicitly allowlisted. ' +
|
|
93
|
+
'Does not affect bundled or authored tools. Pair with OPENSIP_CLI_SKIP_INSTALLED for ' +
|
|
94
|
+
'incident response (kill switch wins).',
|
|
95
|
+
},
|
|
61
96
|
{
|
|
62
97
|
canonical: 'OPENSIP_CLI_ALLOW_PROJECT_TOOLS',
|
|
63
98
|
// Mirror parseAllowlist's split (whitespace AND comma) so the registry value
|
|
@@ -75,6 +110,27 @@ export const CLI_ENV_SPECS = [
|
|
|
75
110
|
'(~/.opensip-cli/tools/) are trusted-by-default and ignore this list.',
|
|
76
111
|
},
|
|
77
112
|
];
|
|
113
|
+
/**
|
|
114
|
+
* The full CLI env surface = infra vars + the ten subprocess-correlation vars.
|
|
115
|
+
*
|
|
116
|
+
* The canonical names + docs for the ten `OPENSIP_*` correlation vars
|
|
117
|
+
* (`OPENSIP_RUN_ID`, `OPENSIP_TOOL`, `OPENSIP_PARENT_COMMAND`, `OPENSIP_TRACE_ID`,
|
|
118
|
+
* `OPENSIP_SHARD_ID`, `OPENSIP_WORKER_KIND`, `OPENSIP_REPO`, `OPENSIP_REPO_ID`,
|
|
119
|
+
* `OPENSIP_TENANT_ID`, `OPENSIP_CHILD_INVOCATION_ID`) are OWNED by
|
|
120
|
+
* `@opensip-cli/core`'s `run-correlation.ts` (`CORRELATION_ENV_SPECS`) — the single
|
|
121
|
+
* source of truth that `correlationFromEnv()` also reads through. The host SURFACES
|
|
122
|
+
* them here (for the env-surface reference doc + governance) by SPREADING the core
|
|
123
|
+
* table; it never re-declares them. The `...CORRELATION_ENV_SPECS` spread — not this
|
|
124
|
+
* comment — is what keeps the codec and the governed env surface in lockstep.
|
|
125
|
+
*
|
|
126
|
+
* `OPENSIP_API_KEY` is deliberately NOT part of this set — it lives in
|
|
127
|
+
* `CONFIG_ENV_SPECS` (`global-config.ts`) and must never be conflated with
|
|
128
|
+
* correlation.
|
|
129
|
+
*/
|
|
130
|
+
export const CLI_ENV_SPECS = [
|
|
131
|
+
...CLI_INFRA_ENV_SPECS,
|
|
132
|
+
...CORRELATION_ENV_SPECS,
|
|
133
|
+
];
|
|
78
134
|
/** The composed CLI-layer registry. Telemetry + update-notifier read through it. */
|
|
79
135
|
// @allow-module-singleton EnvRegistry is IMMUTABLE — a constant spec table + on-demand process.env reads; it holds no per-run mutable state, so it is not the scope-isolation hazard no-module-singleton targets (spec §5.12 resolved decision: the env definition table is a permitted module constant).
|
|
80
136
|
export const hostEnv = new EnvRegistry(CLI_ENV_SPECS);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-env-specs.js","sourceRoot":"","sources":["../../src/env/host-env-specs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAmB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"host-env-specs.js","sourceRoot":"","sources":["../../src/env/host-env-specs.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*
|
|
5
5
|
* The canonical ordered description of the full tool + host lifecycle lives in
|
|
6
6
|
* `bootstrap/tool-lifecycle.ts` (the 10 named steps, two phases: STARTUP in
|
|
7
|
-
* bootstrapCli +
|
|
7
|
+
* bootstrapCli + mountAllToolCommands, PER-RUN in the preAction hook + builders).
|
|
8
8
|
* This file wires the major seams (fresh registries per invocation, bootstrap,
|
|
9
9
|
* pre-action hook install, ToolCliContext construction, command mounting,
|
|
10
10
|
* host command registration, telemetry, top-level error paths) and then
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA;;;;;;;;;;;;;;;;;GAiBG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA;;;;;;;;;;;;;;;;;GAiBG;AAoCH,cAAc,UAAU,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* The canonical ordered description of the full tool + host lifecycle lives in
|
|
7
7
|
* `bootstrap/tool-lifecycle.ts` (the 10 named steps, two phases: STARTUP in
|
|
8
|
-
* bootstrapCli +
|
|
8
|
+
* bootstrapCli + mountAllToolCommands, PER-RUN in the preAction hook + builders).
|
|
9
9
|
* This file wires the major seams (fresh registries per invocation, bootstrap,
|
|
10
10
|
* pre-action hook install, ToolCliContext construction, command mounting,
|
|
11
11
|
* host command registration, telemetry, top-level error paths) and then
|
|
@@ -22,13 +22,14 @@ import { dirname } from 'node:path';
|
|
|
22
22
|
import { fileURLToPath } from 'node:url';
|
|
23
23
|
import { LanguageRegistry, ToolRegistry, logger, readPackageVersion, getMeter, } from '@opensip-cli/core';
|
|
24
24
|
import { Command } from 'commander';
|
|
25
|
-
import { bootstrapCli, installPreActionHook, maybeOpenReport,
|
|
25
|
+
import { bootstrapCli, installPreActionHook, isRootVersionRequest, maybeOpenReport, mountAllToolCommands, renderResult, buildCommandRegistrationInput, } from './bootstrap/index.js';
|
|
26
26
|
import { buildToolCliContext, createLiveViewRegistry, getOrOpenDatastore } from './cli-context.js';
|
|
27
27
|
import { buildCommandScopeIndex } from './commands/command-scope-index.js';
|
|
28
28
|
import { buildTopLevelHostSpecs } from './commands/host-command-specs.js';
|
|
29
|
-
import { buildHostSubcommandGroups } from './commands/host-subcommand-groups.js';
|
|
29
|
+
import { buildHostSubcommandGroups, buildToolPluginGroups, } from './commands/host-subcommand-groups.js';
|
|
30
30
|
import { registerCliCommands } from './commands/index.js';
|
|
31
31
|
import { handleFatalBootstrapError, handleParseError } from './error-handler.js';
|
|
32
|
+
import { resolvedCommandLabel } from './telemetry/command-label.js';
|
|
32
33
|
import { runWithTelemetryContext, shutdownTelemetry } from './telemetry/sdk-init.js';
|
|
33
34
|
import { printWelcome } from './welcome.js';
|
|
34
35
|
export * from './api.js';
|
|
@@ -38,7 +39,15 @@ const program = new Command('opensip')
|
|
|
38
39
|
// ADR-0008: per-run opt-out of OpenSIP Cloud signal sync. `--no-cloud` sets
|
|
39
40
|
// `cloud` to false; the pre-action hook reads it via optsWithGlobals().
|
|
40
41
|
.option('--no-cloud', 'Disable OpenSIP Cloud signal sync for this run')
|
|
41
|
-
.
|
|
42
|
+
.option('--no-plugins', 'Skip loading installed npm tool packages (incident response; does not affect bundled or authored tools)')
|
|
43
|
+
// NOTE: the root program does NOT register a Commander `.version()` option.
|
|
44
|
+
// A Commander version option on the root is a GLOBAL option that intercepts
|
|
45
|
+
// `--version` even after a known subcommand, so `opensip fit --version` would
|
|
46
|
+
// print the CLI version instead of the tool's. The per-tool `--version`
|
|
47
|
+
// (decorateToolPrimary) is a subcommand-local Commander version option, and
|
|
48
|
+
// the bare `opensip --version` (CLI version) is handled by the host argv
|
|
49
|
+
// pre-scan (`isRootVersionRequest`) below — before Commander parses — so the
|
|
50
|
+
// two never collide. See decorate-tool-primary.ts and the version phase spec.
|
|
42
51
|
// Route Commander's own parse failures through `parseAsync().catch` →
|
|
43
52
|
// `handleParseError` instead of letting Commander call `process.exit(N)`
|
|
44
53
|
// directly. This restores the project's typed-error → exit-code contract for
|
|
@@ -52,6 +61,13 @@ const program = new Command('opensip')
|
|
|
52
61
|
// handler renders nothing extra for a CommanderError (no duplicate output).
|
|
53
62
|
.exitOverride();
|
|
54
63
|
async function main() {
|
|
64
|
+
// Bare `opensip --version` / `-V` → the CLI version (host-owned), printed
|
|
65
|
+
// before any bootstrap. A `--version` AFTER a subcommand is that tool's own
|
|
66
|
+
// (handled by decorateToolPrimary's subcommand-local version option).
|
|
67
|
+
if (isRootVersionRequest(process.argv.slice(2))) {
|
|
68
|
+
process.stdout.write(`${cliVersion}\n`);
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
55
71
|
// Fresh registries per CLI invocation. Tools read these via
|
|
56
72
|
// `cli.scope.languages` / `cli.scope.tools`; bootstrap populates them here.
|
|
57
73
|
const langRegistry = new LanguageRegistry();
|
|
@@ -59,12 +75,14 @@ async function main() {
|
|
|
59
75
|
// Persistence: datastore is opened LAZILY in cli-context.ts on
|
|
60
76
|
// first access via getOrOpenDatastore. bootstrapCli just registers
|
|
61
77
|
// tools and adapters; no SQLite file is created here.
|
|
78
|
+
const userArgv = process.argv.slice(2);
|
|
62
79
|
const { provenance, manifests } = await bootstrapCli({
|
|
63
80
|
langRegistry,
|
|
64
81
|
toolRegistry,
|
|
65
82
|
projectDir: dirname(dirname(fileURLToPath(import.meta.url))),
|
|
66
83
|
cwd: process.cwd(),
|
|
67
84
|
cliEntryUrl: import.meta.url,
|
|
85
|
+
argv: userArgv,
|
|
68
86
|
});
|
|
69
87
|
const { ctx } = buildToolCliContext({
|
|
70
88
|
render: renderResult,
|
|
@@ -89,6 +107,7 @@ async function main() {
|
|
|
89
107
|
toolSpecs: registrationInput.toolCommandSpecs,
|
|
90
108
|
hostSpecs: buildTopLevelHostSpecs(commandCtx),
|
|
91
109
|
hostGroups: buildHostSubcommandGroups(commandCtx),
|
|
110
|
+
toolPluginGroups: buildToolPluginGroups(commandCtx),
|
|
92
111
|
});
|
|
93
112
|
// Install the pre-action hook AFTER bootstrap + command-scope indexing so the
|
|
94
113
|
// populated registries, admitted-tool manifests/provenance, and live
|
|
@@ -103,7 +122,7 @@ async function main() {
|
|
|
103
122
|
// through the named sequencer seam. The host owns `program` and passes it in
|
|
104
123
|
// (launch — the tool context no longer carries a raw-Commander handle, §8); the
|
|
105
124
|
// one command surface is each tool's declarative commandSpecs.
|
|
106
|
-
|
|
125
|
+
mountAllToolCommands(toolRegistry, program, ctx);
|
|
107
126
|
registerCliCommands(program, commandCtx);
|
|
108
127
|
// Bare `opensip` → welcome screen. The update check is owned by the
|
|
109
128
|
// pre-action hook (which only runs for actual subcommands), so it naturally
|
|
@@ -112,7 +131,10 @@ async function main() {
|
|
|
112
131
|
// telemetry shutdown flush — consistent with this file's exitCode-over-
|
|
113
132
|
// exit() principle below. Exit code defaults to 0.
|
|
114
133
|
if (process.argv.length <= 2) {
|
|
115
|
-
|
|
134
|
+
// The root program no longer carries a Commander version option, so read the
|
|
135
|
+
// CLI version directly from the package (the same value the root `--version`
|
|
136
|
+
// pre-scan prints) rather than `program.version()`.
|
|
137
|
+
printWelcome({ version: cliVersion });
|
|
116
138
|
return;
|
|
117
139
|
}
|
|
118
140
|
// Dispatch inside the telemetry parent context so spans emitted during the
|
|
@@ -129,12 +151,12 @@ async function main() {
|
|
|
129
151
|
render: renderResult,
|
|
130
152
|
jsonRequested,
|
|
131
153
|
})));
|
|
132
|
-
// Phase 2: command duration histogram
|
|
154
|
+
// Phase 2: command duration histogram. The label is the RESOLVED command name
|
|
155
|
+
// (stamped by the pre-action hook), not raw `process.argv[2]` — a typo, flag,
|
|
156
|
+
// or path as argv[2] would otherwise blow up the metric's label cardinality.
|
|
133
157
|
const durationMs = Date.now() - commandStart;
|
|
134
|
-
getMeter('opensip-cli')
|
|
135
|
-
|
|
136
|
-
.record(durationMs, {
|
|
137
|
-
command: process.argv[2] || 'welcome', // rough; real commands go through pre-action
|
|
158
|
+
getMeter('opensip-cli').createHistogram('opensip_cli.command.duration_ms').record(durationMs, {
|
|
159
|
+
command: resolvedCommandLabel(),
|
|
138
160
|
});
|
|
139
161
|
}
|
|
140
162
|
// Top-level fatal handler. Errors that escape `main` predate Commander's
|