@pulsemcp/air-cli 0.0.40 → 0.0.41

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.
@@ -0,0 +1,28 @@
1
+ export interface RunAutoDiscoveryOptions {
2
+ /** Target directory (defaults to process.cwd() on the SDK side). */
3
+ cwd?: string;
4
+ /** Path to air.json (defaults to the usual resolution). */
5
+ configPath?: string;
6
+ /** True if discovery should be skipped regardless of TTY state (e.g. --no-discover). */
7
+ disabled?: boolean;
8
+ /** True if the invocation is marked non-interactive (e.g. --skip-confirmation). */
9
+ nonInteractive?: boolean;
10
+ }
11
+ export interface RunAutoDiscoveryResult {
12
+ /** Whether discovery made changes to air.json — useful for callers that need to reload config. */
13
+ airJsonChanged: boolean;
14
+ }
15
+ /**
16
+ * Run the discover → prompt → accept/dismiss loop for `air start` / `air prepare`.
17
+ *
18
+ * Silently no-ops when:
19
+ * - `disabled` is true (caller supplied --no-discover)
20
+ * - `nonInteractive` is true (--skip-confirmation or flag-driven invocation)
21
+ * - stdin/stdout isn't a TTY (CI, pipes)
22
+ * - discovery finds nothing not-already-registered
23
+ *
24
+ * On accept, mutates `~/.air/air.json` and prints a one-line summary per entry.
25
+ * On dismiss, writes to `~/.air/preferences.json` so the prompt doesn't return.
26
+ */
27
+ export declare function runAutoDiscovery(options?: RunAutoDiscoveryOptions): Promise<RunAutoDiscoveryResult>;
28
+ //# sourceMappingURL=auto-discover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-discover.d.ts","sourceRoot":"","sources":["../../src/commands/auto-discover.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,uBAAuB;IACtC,oEAAoE;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wFAAwF;IACxF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mFAAmF;IACnF,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,kGAAkG;IAClG,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,sBAAsB,CAAC,CAoFjC"}
@@ -0,0 +1,86 @@
1
+ import { findOfferableIndexes, acceptOffers, dismissOffers, } from "@pulsemcp/air-sdk";
2
+ import { promptYnd, isInteractiveTTY } from "../prompts.js";
3
+ /**
4
+ * Run the discover → prompt → accept/dismiss loop for `air start` / `air prepare`.
5
+ *
6
+ * Silently no-ops when:
7
+ * - `disabled` is true (caller supplied --no-discover)
8
+ * - `nonInteractive` is true (--skip-confirmation or flag-driven invocation)
9
+ * - stdin/stdout isn't a TTY (CI, pipes)
10
+ * - discovery finds nothing not-already-registered
11
+ *
12
+ * On accept, mutates `~/.air/air.json` and prints a one-line summary per entry.
13
+ * On dismiss, writes to `~/.air/preferences.json` so the prompt doesn't return.
14
+ */
15
+ export async function runAutoDiscovery(options = {}) {
16
+ if (options.disabled)
17
+ return { airJsonChanged: false };
18
+ if (options.nonInteractive)
19
+ return { airJsonChanged: false };
20
+ if (!isInteractiveTTY())
21
+ return { airJsonChanged: false };
22
+ let offers;
23
+ try {
24
+ offers = findOfferableIndexes({
25
+ cwd: options.cwd,
26
+ configPath: options.configPath,
27
+ });
28
+ }
29
+ catch {
30
+ // Discovery must never break session startup.
31
+ return { airJsonChanged: false };
32
+ }
33
+ if (!offers.hasOffers)
34
+ return { airJsonChanged: false };
35
+ const lines = [];
36
+ lines.push("Found AIR index files in this repo not yet in your ~/.air/air.json:");
37
+ for (const cat of offers.catalogs) {
38
+ const typeSummary = cat.types.length === 1
39
+ ? `1 index: ${cat.types[0]}`
40
+ : `${cat.types.length} indexes: ${cat.types.join(", ")}`;
41
+ lines.push(` • catalog ${cat.relPath || "."} (${typeSummary})`);
42
+ }
43
+ for (const airJson of offers.airJsons) {
44
+ lines.push(` • air.json ${airJson.relPath}`);
45
+ }
46
+ for (const loose of offers.looseIndexes) {
47
+ const count = loose.entryCount;
48
+ const noun = loose.type;
49
+ lines.push(` • ${noun} ${loose.relPath} (${count} ${count === 1 ? "entry" : "entries"})`);
50
+ }
51
+ // Writing the summary to stderr keeps stdout clean for any consumer that
52
+ // pipes the command's JSON output (e.g. `air prepare | jq`).
53
+ process.stderr.write(lines.join("\n") + "\n");
54
+ const answer = await promptYnd("Add them to ~/.air/air.json? [Y/n/d=don't ask again] ");
55
+ if (answer === "no") {
56
+ return { airJsonChanged: false };
57
+ }
58
+ if (answer === "dismiss") {
59
+ try {
60
+ dismissOffers(offers);
61
+ process.stderr.write("Dismissed — AIR won't offer these again for this repo.\n");
62
+ }
63
+ catch (err) {
64
+ const message = err instanceof Error ? err.message : String(err);
65
+ process.stderr.write(`Warning: could not save preferences: ${message}\n`);
66
+ }
67
+ return { airJsonChanged: false };
68
+ }
69
+ // "yes"
70
+ try {
71
+ const result = acceptOffers(offers, { configPath: options.configPath });
72
+ if (result.createdScaffold) {
73
+ process.stderr.write(`Created ${result.airJsonPath} with a new scaffold.\n`);
74
+ }
75
+ for (const entry of result.added) {
76
+ process.stderr.write(`Added ${entry.label} to ${result.airJsonPath}.\n`);
77
+ }
78
+ return { airJsonChanged: result.added.length > 0 };
79
+ }
80
+ catch (err) {
81
+ const message = err instanceof Error ? err.message : String(err);
82
+ process.stderr.write(`Warning: could not update air.json: ${message}\n`);
83
+ return { airJsonChanged: false };
84
+ }
85
+ }
86
+ //# sourceMappingURL=auto-discover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-discover.js","sourceRoot":"","sources":["../../src/commands/auto-discover.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,aAAa,GAEd,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAkB5D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAmC,EAAE;IAErC,IAAI,OAAO,CAAC,QAAQ;QAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IACvD,IAAI,OAAO,CAAC,cAAc;QAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IAC7D,IAAI,CAAC,gBAAgB,EAAE;QAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IAE1D,IAAI,MAAgC,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,GAAG,oBAAoB,CAAC;YAC5B,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,UAAU,EAAE,OAAO,CAAC,UAAU;SAC/B,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,8CAA8C;QAC9C,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IAExD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CACR,qEAAqE,CACtE,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAClC,MAAM,WAAW,GACf,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YACpB,CAAC,CAAC,YAAY,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YAC5B,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,OAAO,IAAI,GAAG,KAAK,WAAW,GAAG,CAAC,CAAC;IACnE,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC;QAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;IAC7F,CAAC;IAED,yEAAyE;IACzE,6DAA6D;IAC7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,uDAAuD,CACxD,CAAC;IAEF,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,aAAa,CAAC,MAAM,CAAC,CAAC;YACtB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,0DAA0D,CAC3D,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,OAAO,IAAI,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,QAAQ;IACR,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QACxE,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;YAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,WAAW,MAAM,CAAC,WAAW,yBAAyB,CACvD,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,SAAS,KAAK,CAAC,KAAK,OAAO,MAAM,CAAC,WAAW,KAAK,CACnD,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;IACrD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,uCAAuC,OAAO,IAAI,CACnD,CAAC;QACF,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuCpC,wBAAgB,cAAc,IAAI,OAAO,CAgKxC"}
1
+ {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAwCpC,wBAAgB,cAAc,IAAI,OAAO,CA6LxC"}
@@ -3,6 +3,7 @@ import { Command } from "commander";
3
3
  import { prepareSession, loadAirConfig, getAirJsonPath, loadExtensions, } from "@pulsemcp/air-sdk";
4
4
  import { rejectDeprecatedArtifactFlags } from "./deprecated-flags.js";
5
5
  import { parseGitProtocolFlag } from "./git-protocol.js";
6
+ import { runAutoDiscovery } from "./auto-discover.js";
6
7
  /**
7
8
  * Extract the flag name from a Commander flag string.
8
9
  * E.g., "--secrets-file <path>" → "secrets-file"
@@ -49,10 +50,31 @@ export function prepareCommand() {
49
50
  .option("--no-subagent-merge", "Skip merging subagent roots' artifacts into the parent session (for orchestrators that manage composition externally)")
50
51
  .option("--skip-validation", "Skip final validation for unresolved ${VAR} patterns (for orchestrators that resolve variables themselves)")
51
52
  .option("--git-protocol <protocol>", "Protocol used by git-based catalog providers: \"ssh\" (default) or \"https\". Overrides the gitProtocol field in air.json.")
53
+ .option("--no-discover", "Skip auto-discovery of repo-level AIR index files. Useful for scripting cases where you don't want the interactive prompt.")
52
54
  .allowUnknownOption(true)
53
55
  .action(async (adapter, options) => {
54
56
  rejectDeprecatedArtifactFlags(process.argv);
55
57
  const gitProtocol = parseGitProtocolFlag(options.gitProtocol);
58
+ // Auto-discovery: same gating as `air start` — when the user
59
+ // explicitly opts into artifact selection via flags, or passes
60
+ // --skip-confirmation, or runs outside a TTY, we stay silent. The
61
+ // prompt runs before config load so any accepted entries are picked
62
+ // up by the subsequent `prepareSession` call.
63
+ const hasArtifactFlagsPreDetect = options.skill !== undefined ||
64
+ options.mcpServer !== undefined ||
65
+ options.hook !== undefined ||
66
+ options.plugin !== undefined ||
67
+ options.withoutSkill !== undefined ||
68
+ options.withoutMcpServer !== undefined ||
69
+ options.withoutHook !== undefined ||
70
+ options.withoutPlugin !== undefined ||
71
+ (options.withoutDefaults ?? false);
72
+ await runAutoDiscovery({
73
+ cwd: options.target,
74
+ configPath: options.config,
75
+ disabled: options.discover === false,
76
+ nonInteractive: hasArtifactFlagsPreDetect,
77
+ });
56
78
  try {
57
79
  // Load extensions once — pass to SDK to avoid double loading
58
80
  const airJsonPath = options.config || getAirJsonPath();
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/commands/prepare.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC,wBAAgB,YAAY,IAAI,OAAO,CA2QtC"}
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,wBAAgB,YAAY,IAAI,OAAO,CA0StC"}
@@ -4,6 +4,7 @@ import { startSession, prepareSession, detectRoot, computeMergedDefaults, resolv
4
4
  import { runInteractiveSelector } from "../tui/interactive-selector.js";
5
5
  import { rejectDeprecatedArtifactFlags } from "./deprecated-flags.js";
6
6
  import { parseGitProtocolFlag } from "./git-protocol.js";
7
+ import { runAutoDiscovery } from "./auto-discover.js";
7
8
  export function startCommand() {
8
9
  const cmd = new Command("start")
9
10
  .description("Start an agent session with AIR configs loaded")
@@ -22,12 +23,35 @@ export function startCommand() {
22
23
  .option("--without-defaults", "Ignore all root defaults — start from an empty selection (only artifacts added via --skill / --mcp-server / --hook / --plugin will be activated)")
23
24
  .option("--no-subagent-merge", "Skip merging subagent roots' artifacts into the parent session (for orchestrators that manage composition externally)")
24
25
  .option("--git-protocol <protocol>", "Protocol used by git-based catalog providers: \"ssh\" (default) or \"https\". Overrides the gitProtocol field in air.json.")
26
+ .option("--no-discover", "Skip auto-discovery of repo-level AIR index files. Useful for scripting cases where you don't want the interactive prompt.")
25
27
  .allowUnknownOption(true)
26
28
  .action(async (agent, options) => {
27
29
  const dashDashIdx = process.argv.indexOf("--");
28
30
  const passthroughArgs = dashDashIdx !== -1 ? process.argv.slice(dashDashIdx + 1) : [];
29
31
  rejectDeprecatedArtifactFlags(process.argv);
30
32
  const gitProtocol = parseGitProtocolFlag(options.gitProtocol);
33
+ // Auto-discovery: before we load artifacts, offer to register
34
+ // repo-level index files the user hasn't added yet. On acceptance,
35
+ // air.json is mutated before startSession runs so new entries are
36
+ // picked up in this session.
37
+ const hasArtifactFlagsPreDetect = options.skill !== undefined ||
38
+ options.mcpServer !== undefined ||
39
+ options.hook !== undefined ||
40
+ options.plugin !== undefined ||
41
+ options.withoutSkill !== undefined ||
42
+ options.withoutMcpServer !== undefined ||
43
+ options.withoutHook !== undefined ||
44
+ options.withoutPlugin !== undefined ||
45
+ (options.withoutDefaults ?? false);
46
+ await runAutoDiscovery({
47
+ disabled: options.discover === false,
48
+ // `--skip-confirmation` keeps us out of interactive prompts entirely;
49
+ // artifact flags imply the user is scripting a specific selection
50
+ // and doesn't want unsolicited questions either.
51
+ nonInteractive: options.skipConfirmation === true ||
52
+ options.dryRun === true ||
53
+ hasArtifactFlagsPreDetect,
54
+ });
31
55
  let result;
32
56
  try {
33
57
  result = await startSession(agent, {
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ export type YndResponse = "yes" | "no" | "dismiss";
2
+ /**
3
+ * Ask a single yes/no/don't-ask-again question on stdin.
4
+ *
5
+ * - Prints `question` to stderr, reads a line from stdin, maps the answer.
6
+ * - Default (empty input) is `"yes"`.
7
+ * - `y`, `yes` → yes; `n`, `no` → no; `d`, `don't`, `dont`, `dismiss` → dismiss.
8
+ * - Anything else → yes. We intentionally fall back to "yes" (not "no") so a
9
+ * distracted user pressing Enter opts in — discovery is designed to be low
10
+ * risk, and the user can still dismiss on the next run.
11
+ *
12
+ * @param question The full prompt line (include trailing "? [Y/n/d] " yourself).
13
+ */
14
+ export declare function promptYnd(question: string): Promise<YndResponse>;
15
+ /**
16
+ * True iff stdin + stdout are both attached to a terminal. When either is a
17
+ * pipe or a file (CI runners, scripted wrappers), the caller should skip
18
+ * interactive prompts.
19
+ */
20
+ export declare function isInteractiveTTY(): boolean;
21
+ //# sourceMappingURL=prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;AAEnD;;;;;;;;;;;GAWG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CA+BtE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C"}
@@ -0,0 +1,53 @@
1
+ import { createInterface } from "readline";
2
+ /**
3
+ * Ask a single yes/no/don't-ask-again question on stdin.
4
+ *
5
+ * - Prints `question` to stderr, reads a line from stdin, maps the answer.
6
+ * - Default (empty input) is `"yes"`.
7
+ * - `y`, `yes` → yes; `n`, `no` → no; `d`, `don't`, `dont`, `dismiss` → dismiss.
8
+ * - Anything else → yes. We intentionally fall back to "yes" (not "no") so a
9
+ * distracted user pressing Enter opts in — discovery is designed to be low
10
+ * risk, and the user can still dismiss on the next run.
11
+ *
12
+ * @param question The full prompt line (include trailing "? [Y/n/d] " yourself).
13
+ */
14
+ export async function promptYnd(question) {
15
+ // Short-circuit when not running in a TTY — the caller is responsible for
16
+ // gating on `isTTY()`, but this guard makes the function safe to misuse.
17
+ if (!process.stdin.isTTY || !process.stdout.isTTY) {
18
+ return "no";
19
+ }
20
+ const rl = createInterface({ input: process.stdin, output: process.stderr });
21
+ try {
22
+ const answer = await new Promise((resolveP) => {
23
+ rl.question(question, (input) => resolveP(input));
24
+ });
25
+ const normalized = answer.trim().toLowerCase();
26
+ if (normalized === "" || normalized === "y" || normalized === "yes") {
27
+ return "yes";
28
+ }
29
+ if (normalized === "n" || normalized === "no") {
30
+ return "no";
31
+ }
32
+ if (normalized === "d" ||
33
+ normalized === "dismiss" ||
34
+ normalized === "don't" ||
35
+ normalized === "dont" ||
36
+ normalized.startsWith("don")) {
37
+ return "dismiss";
38
+ }
39
+ return "yes";
40
+ }
41
+ finally {
42
+ rl.close();
43
+ }
44
+ }
45
+ /**
46
+ * True iff stdin + stdout are both attached to a terminal. When either is a
47
+ * pipe or a file (CI runners, scripted wrappers), the caller should skip
48
+ * interactive prompts.
49
+ */
50
+ export function isInteractiveTTY() {
51
+ return Boolean(process.stdin.isTTY && process.stdout.isTTY);
52
+ }
53
+ //# sourceMappingURL=prompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI3C;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,QAAgB;IAC9C,0EAA0E;IAC1E,yEAAyE;IACzE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,MAAM,MAAM,GAAW,MAAM,IAAI,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACpD,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/C,IAAI,UAAU,KAAK,EAAE,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACpE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IACE,UAAU,KAAK,GAAG;YAClB,UAAU,KAAK,SAAS;YACxB,UAAU,KAAK,OAAO;YACtB,UAAU,KAAK,MAAM;YACrB,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAC5B,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pulsemcp/air-cli",
3
- "version": "0.0.40",
3
+ "version": "0.0.41",
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.40",
29
+ "@pulsemcp/air-sdk": "0.0.41",
30
30
  "commander": "^12.1.0",
31
31
  "chalk": "^5.3.0"
32
32
  },