@pulsemcp/air-cli 0.0.7 → 0.0.11
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/commands/install.d.ts +3 -0
- package/dist/commands/install.d.ts.map +1 -0
- package/dist/commands/install.js +34 -0
- package/dist/commands/install.js.map +1 -0
- package/dist/commands/prepare.d.ts.map +1 -1
- package/dist/commands/prepare.js +60 -1
- package/dist/commands/prepare.js.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,cAAc,IAAI,OAAO,CAoDxC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { installExtensions } from "@pulsemcp/air-sdk";
|
|
3
|
+
export function installCommand() {
|
|
4
|
+
const cmd = new Command("install")
|
|
5
|
+
.description("Install extension packages declared in air.json that are not yet available")
|
|
6
|
+
.option("--config <path>", "Path to air.json (defaults to AIR_CONFIG env or ~/.air/air.json)")
|
|
7
|
+
.option("--prefix <dir>", "npm install prefix directory (defaults to the directory containing air.json)")
|
|
8
|
+
.action(async (options) => {
|
|
9
|
+
try {
|
|
10
|
+
const result = await installExtensions({
|
|
11
|
+
config: options.config,
|
|
12
|
+
prefix: options.prefix,
|
|
13
|
+
});
|
|
14
|
+
if (result.installed.length > 0) {
|
|
15
|
+
console.error(`Installed: ${result.installed.join(", ")}`);
|
|
16
|
+
}
|
|
17
|
+
if (result.alreadyInstalled.length > 0) {
|
|
18
|
+
console.error(`Already installed: ${result.alreadyInstalled.join(", ")}`);
|
|
19
|
+
}
|
|
20
|
+
if (result.skipped.length > 0) {
|
|
21
|
+
console.error(`Skipped (local paths): ${result.skipped.join(", ")}`);
|
|
22
|
+
}
|
|
23
|
+
// Output structured JSON to stdout for orchestrator consumption
|
|
24
|
+
console.log(JSON.stringify(result, null, 2));
|
|
25
|
+
}
|
|
26
|
+
catch (err) {
|
|
27
|
+
const message = err instanceof Error ? err.message : "Unknown error";
|
|
28
|
+
console.error(`Error: ${message}`);
|
|
29
|
+
process.exit(1);
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
return cmd;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=install.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;SAC/B,WAAW,CACV,4EAA4E,CAC7E;SACA,MAAM,CACL,iBAAiB,EACjB,kEAAkE,CACnE;SACA,MAAM,CACL,gBAAgB,EAChB,8EAA8E,CAC/E;SACA,MAAM,CACL,KAAK,EAAE,OAGN,EAAE,EAAE;QACH,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;gBACrC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,OAAO,CAAC,KAAK,CACX,cAAc,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5C,CAAC;YACJ,CAAC;YACD,IAAI,MAAM,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,KAAK,CACX,sBAAsB,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC3D,CAAC;YACJ,CAAC;YACD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CACX,0BAA0B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACtD,CAAC;YACJ,CAAC;YAED,gEAAgE;YAChE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GACX,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACvD,OAAO,CAAC,KAAK,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CACF,CAAC;IAEJ,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqCpC,wBAAgB,cAAc,IAAI,OAAO,CAgHxC"}
|
package/dist/commands/prepare.js
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
|
+
import { dirname, resolve } from "path";
|
|
1
2
|
import { Command } from "commander";
|
|
2
|
-
import { prepareSession } from "@pulsemcp/air-sdk";
|
|
3
|
+
import { prepareSession, loadAirConfig, getAirJsonPath, loadExtensions, } from "@pulsemcp/air-sdk";
|
|
4
|
+
/**
|
|
5
|
+
* Extract the flag name from a Commander flag string.
|
|
6
|
+
* E.g., "--secrets-file <path>" → "secrets-file"
|
|
7
|
+
*/
|
|
8
|
+
function extractFlagName(flag) {
|
|
9
|
+
const match = flag.match(/--([a-zA-Z0-9-]+)/);
|
|
10
|
+
return match ? match[1] : flag;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Parse an extension-contributed flag value from process.argv.
|
|
14
|
+
* Supports both `--flag value` and `--flag=value` syntax.
|
|
15
|
+
* Returns undefined if the flag is not present.
|
|
16
|
+
*/
|
|
17
|
+
function parseArgvFlag(flagName) {
|
|
18
|
+
const args = process.argv;
|
|
19
|
+
for (let i = 0; i < args.length; i++) {
|
|
20
|
+
// --flag=value syntax
|
|
21
|
+
if (args[i].startsWith(`--${flagName}=`)) {
|
|
22
|
+
return args[i].slice(`--${flagName}=`.length);
|
|
23
|
+
}
|
|
24
|
+
// --flag value syntax
|
|
25
|
+
if (args[i] === `--${flagName}` && i + 1 < args.length) {
|
|
26
|
+
return args[i + 1];
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
3
31
|
export function prepareCommand() {
|
|
4
32
|
const cmd = new Command("prepare")
|
|
5
33
|
.description("Prepare a target directory for an agent session (write .mcp.json, inject skills) without starting the agent")
|
|
@@ -10,8 +38,36 @@ export function prepareCommand() {
|
|
|
10
38
|
.option("--skills <ids>", "Comma-separated skill IDs (overrides root defaults)")
|
|
11
39
|
.option("--mcp-servers <ids>", "Comma-separated MCP server IDs (overrides root defaults)")
|
|
12
40
|
.option("--no-subagent-merge", "Skip merging subagent roots' artifacts into the parent session (for orchestrators that manage composition externally)")
|
|
41
|
+
.option("--skip-validation", "Skip final validation for unresolved ${VAR} patterns (for orchestrators that resolve variables themselves)")
|
|
42
|
+
.allowUnknownOption(true)
|
|
13
43
|
.action(async (options) => {
|
|
14
44
|
try {
|
|
45
|
+
// Load extensions once — pass to SDK to avoid double loading
|
|
46
|
+
const airJsonPath = options.config || getAirJsonPath();
|
|
47
|
+
const extensionOptions = {};
|
|
48
|
+
let loadedExtensions;
|
|
49
|
+
if (airJsonPath) {
|
|
50
|
+
const airConfig = loadAirConfig(airJsonPath);
|
|
51
|
+
if (airConfig.extensions?.length) {
|
|
52
|
+
const airJsonDir = dirname(resolve(airJsonPath));
|
|
53
|
+
loadedExtensions = await loadExtensions(airConfig.extensions, airJsonDir);
|
|
54
|
+
// Parse extension-contributed CLI options from process.argv
|
|
55
|
+
for (const ext of loadedExtensions.all) {
|
|
56
|
+
if (!ext.prepareOptions)
|
|
57
|
+
continue;
|
|
58
|
+
for (const opt of ext.prepareOptions) {
|
|
59
|
+
const flagName = extractFlagName(opt.flag);
|
|
60
|
+
const value = parseArgvFlag(flagName);
|
|
61
|
+
if (value !== undefined) {
|
|
62
|
+
extensionOptions[flagName] = value;
|
|
63
|
+
}
|
|
64
|
+
else if (opt.defaultValue !== undefined) {
|
|
65
|
+
extensionOptions[flagName] = opt.defaultValue;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
15
71
|
const result = await prepareSession({
|
|
16
72
|
config: options.config,
|
|
17
73
|
root: options.root,
|
|
@@ -24,6 +80,9 @@ export function prepareCommand() {
|
|
|
24
80
|
? options.mcpServers.split(",").map((s) => s.trim())
|
|
25
81
|
: undefined,
|
|
26
82
|
skipSubagentMerge: !options.subagentMerge,
|
|
83
|
+
skipValidation: options.skipValidation,
|
|
84
|
+
extensionOptions,
|
|
85
|
+
extensions: loadedExtensions,
|
|
27
86
|
});
|
|
28
87
|
if (result.rootAutoDetected && result.root) {
|
|
29
88
|
console.error(`Auto-detected root: ${result.root.name}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,6 +6,7 @@ import { startCommand } from "./commands/start.js";
|
|
|
6
6
|
import { prepareCommand } from "./commands/prepare.js";
|
|
7
7
|
import { listCommand } from "./commands/list.js";
|
|
8
8
|
import { initCommand } from "./commands/init.js";
|
|
9
|
+
import { installCommand } from "./commands/install.js";
|
|
9
10
|
const require = createRequire(import.meta.url);
|
|
10
11
|
const { version } = require("../package.json");
|
|
11
12
|
const program = new Command();
|
|
@@ -18,5 +19,6 @@ program.addCommand(startCommand());
|
|
|
18
19
|
program.addCommand(prepareCommand());
|
|
19
20
|
program.addCommand(listCommand());
|
|
20
21
|
program.addCommand(initCommand());
|
|
22
|
+
program.addCommand(installCommand());
|
|
21
23
|
program.parseAsync();
|
|
22
24
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE/C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,gDAAgD,CAAC;KAC7D,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;AACtC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;AACrC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;AAErC,OAAO,CAAC,UAAU,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulsemcp/air-cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.11",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"lint": "tsc --noEmit"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@pulsemcp/air-sdk": "0.0.
|
|
29
|
+
"@pulsemcp/air-sdk": "0.0.11",
|
|
30
30
|
"commander": "^12.1.0",
|
|
31
31
|
"chalk": "^5.3.0"
|
|
32
32
|
},
|