@aligndottech/cli 0.37.1 → 0.38.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/README.md +16 -10
  2. package/dist/cli.d.ts +28 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +98 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/commands/check.d.ts +1 -1
  7. package/dist/commands/check.d.ts.map +1 -1
  8. package/dist/commands/check.js +44 -2
  9. package/dist/commands/check.js.map +1 -1
  10. package/dist/commands/connect-agents.d.ts +1 -0
  11. package/dist/commands/connect-agents.d.ts.map +1 -1
  12. package/dist/commands/connect-agents.js +10 -6
  13. package/dist/commands/connect-agents.js.map +1 -1
  14. package/dist/commands/connect.d.ts +31 -0
  15. package/dist/commands/connect.d.ts.map +1 -0
  16. package/dist/commands/connect.js +92 -0
  17. package/dist/commands/connect.js.map +1 -0
  18. package/dist/commands/context.d.ts.map +1 -1
  19. package/dist/commands/context.js +52 -10
  20. package/dist/commands/context.js.map +1 -1
  21. package/dist/commands/decisions/index.d.ts.map +1 -1
  22. package/dist/commands/decisions/index.js +5 -0
  23. package/dist/commands/decisions/index.js.map +1 -1
  24. package/dist/commands/default-action.d.ts +3 -1
  25. package/dist/commands/default-action.d.ts.map +1 -1
  26. package/dist/commands/default-action.js +29 -27
  27. package/dist/commands/default-action.js.map +1 -1
  28. package/dist/commands/export.d.ts.map +1 -1
  29. package/dist/commands/export.js +3 -0
  30. package/dist/commands/export.js.map +1 -1
  31. package/dist/commands/import/sessions.d.ts +10 -2
  32. package/dist/commands/import/sessions.d.ts.map +1 -1
  33. package/dist/commands/import/sessions.js +98 -3
  34. package/dist/commands/import/sessions.js.map +1 -1
  35. package/dist/commands/import.d.ts +7 -0
  36. package/dist/commands/import.d.ts.map +1 -1
  37. package/dist/commands/import.js +42 -2
  38. package/dist/commands/import.js.map +1 -1
  39. package/dist/commands/invite.d.ts +25 -0
  40. package/dist/commands/invite.d.ts.map +1 -0
  41. package/dist/commands/invite.js +68 -0
  42. package/dist/commands/invite.js.map +1 -0
  43. package/dist/commands/links.d.ts.map +1 -1
  44. package/dist/commands/links.js +5 -0
  45. package/dist/commands/links.js.map +1 -1
  46. package/dist/commands/mcp.d.ts +64 -35
  47. package/dist/commands/mcp.d.ts.map +1 -1
  48. package/dist/commands/mcp.js +94 -41
  49. package/dist/commands/mcp.js.map +1 -1
  50. package/dist/commands/ratify.d.ts.map +1 -1
  51. package/dist/commands/ratify.js +21 -0
  52. package/dist/commands/ratify.js.map +1 -1
  53. package/dist/commands/registry.d.ts +30 -0
  54. package/dist/commands/registry.d.ts.map +1 -0
  55. package/dist/commands/registry.js +70 -0
  56. package/dist/commands/registry.js.map +1 -0
  57. package/dist/commands/setup.d.ts +45 -1
  58. package/dist/commands/setup.d.ts.map +1 -1
  59. package/dist/commands/setup.js +197 -88
  60. package/dist/commands/setup.js.map +1 -1
  61. package/dist/commands/status.d.ts.map +1 -1
  62. package/dist/commands/status.js +10 -22
  63. package/dist/commands/status.js.map +1 -1
  64. package/dist/commands/telemetry.d.ts +7 -3
  65. package/dist/commands/telemetry.d.ts.map +1 -1
  66. package/dist/commands/telemetry.js +12 -7
  67. package/dist/commands/telemetry.js.map +1 -1
  68. package/dist/commands/why.d.ts.map +1 -1
  69. package/dist/commands/why.js +52 -10
  70. package/dist/commands/why.js.map +1 -1
  71. package/dist/index.js +4 -90
  72. package/dist/index.js.map +1 -1
  73. package/dist/lib/agent-rules.d.ts +1 -0
  74. package/dist/lib/agent-rules.d.ts.map +1 -1
  75. package/dist/lib/agent-rules.js +60 -0
  76. package/dist/lib/agent-rules.js.map +1 -1
  77. package/dist/lib/commands-doc.d.ts +15 -0
  78. package/dist/lib/commands-doc.d.ts.map +1 -0
  79. package/dist/lib/commands-doc.js +85 -0
  80. package/dist/lib/commands-doc.js.map +1 -0
  81. package/dist/lib/config.d.ts +7 -2
  82. package/dist/lib/config.d.ts.map +1 -1
  83. package/dist/lib/config.js.map +1 -1
  84. package/dist/lib/connect-prompt.d.ts +1 -1
  85. package/dist/lib/connect-prompt.js +2 -2
  86. package/dist/lib/connect-prompt.js.map +1 -1
  87. package/dist/lib/decision-links.d.ts +39 -0
  88. package/dist/lib/decision-links.d.ts.map +1 -1
  89. package/dist/lib/decision-links.js +51 -0
  90. package/dist/lib/decision-links.js.map +1 -1
  91. package/dist/lib/first-decision.d.ts +22 -0
  92. package/dist/lib/first-decision.d.ts.map +1 -0
  93. package/dist/lib/first-decision.js +22 -0
  94. package/dist/lib/first-decision.js.map +1 -0
  95. package/dist/lib/gateway-client.d.ts +14 -1
  96. package/dist/lib/gateway-client.d.ts.map +1 -1
  97. package/dist/lib/gateway-client.js +14 -0
  98. package/dist/lib/gateway-client.js.map +1 -1
  99. package/dist/lib/git.d.ts +28 -0
  100. package/dist/lib/git.d.ts.map +1 -1
  101. package/dist/lib/git.js +42 -0
  102. package/dist/lib/git.js.map +1 -1
  103. package/dist/lib/hook-context.d.ts +7 -0
  104. package/dist/lib/hook-context.d.ts.map +1 -0
  105. package/dist/lib/hook-context.js +37 -0
  106. package/dist/lib/hook-context.js.map +1 -0
  107. package/dist/lib/hook-payload.d.ts +7 -0
  108. package/dist/lib/hook-payload.d.ts.map +1 -1
  109. package/dist/lib/hook-payload.js +56 -8
  110. package/dist/lib/hook-payload.js.map +1 -1
  111. package/dist/lib/invite-prompt.d.ts +46 -0
  112. package/dist/lib/invite-prompt.d.ts.map +1 -0
  113. package/dist/lib/invite-prompt.js +63 -0
  114. package/dist/lib/invite-prompt.js.map +1 -0
  115. package/dist/lib/local-gateway-client.d.ts +0 -1
  116. package/dist/lib/local-gateway-client.d.ts.map +1 -1
  117. package/dist/lib/local-gateway-client.js +5 -2
  118. package/dist/lib/local-gateway-client.js.map +1 -1
  119. package/dist/lib/mcp-instructions.shared.d.ts +40 -0
  120. package/dist/lib/mcp-instructions.shared.d.ts.map +1 -0
  121. package/dist/lib/mcp-instructions.shared.js +56 -0
  122. package/dist/lib/mcp-instructions.shared.js.map +1 -0
  123. package/dist/lib/mcp-setup.d.ts +32 -2
  124. package/dist/lib/mcp-setup.d.ts.map +1 -1
  125. package/dist/lib/mcp-setup.js +92 -6
  126. package/dist/lib/mcp-setup.js.map +1 -1
  127. package/dist/lib/next-step.d.ts +92 -0
  128. package/dist/lib/next-step.d.ts.map +1 -0
  129. package/dist/lib/next-step.js +116 -0
  130. package/dist/lib/next-step.js.map +1 -0
  131. package/dist/lib/personal-email-domains.d.ts +8 -0
  132. package/dist/lib/personal-email-domains.d.ts.map +1 -0
  133. package/dist/lib/personal-email-domains.js +39 -0
  134. package/dist/lib/personal-email-domains.js.map +1 -0
  135. package/dist/lib/personal-import.d.ts +2 -0
  136. package/dist/lib/personal-import.d.ts.map +1 -1
  137. package/dist/lib/personal-import.js +4 -1
  138. package/dist/lib/personal-import.js.map +1 -1
  139. package/dist/lib/read-value-rollup.d.ts +18 -0
  140. package/dist/lib/read-value-rollup.d.ts.map +1 -0
  141. package/dist/lib/read-value-rollup.js +33 -0
  142. package/dist/lib/read-value-rollup.js.map +1 -0
  143. package/dist/lib/sessions/import-summary.d.ts +39 -0
  144. package/dist/lib/sessions/import-summary.d.ts.map +1 -0
  145. package/dist/lib/sessions/import-summary.js +41 -0
  146. package/dist/lib/sessions/import-summary.js.map +1 -0
  147. package/dist/lib/sessions/memory-files.d.ts +85 -0
  148. package/dist/lib/sessions/memory-files.d.ts.map +1 -0
  149. package/dist/lib/sessions/memory-files.js +235 -0
  150. package/dist/lib/sessions/memory-files.js.map +1 -0
  151. package/dist/lib/sessions/source-url.d.ts +11 -0
  152. package/dist/lib/sessions/source-url.d.ts.map +1 -1
  153. package/dist/lib/sessions/source-url.js +15 -0
  154. package/dist/lib/sessions/source-url.js.map +1 -1
  155. package/dist/lib/setup-funnel.d.ts +41 -0
  156. package/dist/lib/setup-funnel.d.ts.map +1 -0
  157. package/dist/lib/setup-funnel.js +28 -0
  158. package/dist/lib/setup-funnel.js.map +1 -0
  159. package/dist/lib/telemetry-consent.d.ts +17 -8
  160. package/dist/lib/telemetry-consent.d.ts.map +1 -1
  161. package/dist/lib/telemetry-consent.js +21 -6
  162. package/dist/lib/telemetry-consent.js.map +1 -1
  163. package/dist/lib/telemetry-env.d.ts +19 -0
  164. package/dist/lib/telemetry-env.d.ts.map +1 -0
  165. package/dist/lib/telemetry-env.js +13 -0
  166. package/dist/lib/telemetry-env.js.map +1 -0
  167. package/dist/lib/usage-telemetry.d.ts +108 -13
  168. package/dist/lib/usage-telemetry.d.ts.map +1 -1
  169. package/dist/lib/usage-telemetry.js +227 -55
  170. package/dist/lib/usage-telemetry.js.map +1 -1
  171. package/dist/lib/user-hooks.d.ts +15 -0
  172. package/dist/lib/user-hooks.d.ts.map +1 -0
  173. package/dist/lib/user-hooks.js +144 -0
  174. package/dist/lib/user-hooks.js.map +1 -0
  175. package/dist/lib/value-rollup.d.ts +10 -3
  176. package/dist/lib/value-rollup.d.ts.map +1 -1
  177. package/dist/lib/value-rollup.js +11 -4
  178. package/dist/lib/value-rollup.js.map +1 -1
  179. package/package.json +2 -1
@@ -19,6 +19,7 @@ import { registerImportTeamsCommand } from './import/teams.js';
19
19
  import { registerImportZoomCommand } from './import/zoom.js';
20
20
  import { registerImportNotionCommand } from './import/notion.js';
21
21
  import { registerImportSessionsCommand } from './import/sessions.js';
22
+ import { importAliasLine, invokedAsImport, runConnect } from './connect.js';
22
23
  function renderProgress(jobs) {
23
24
  process.stdout.write('\x1b[2K\r');
24
25
  const running = jobs.filter(j => j.status === 'running');
@@ -155,18 +156,57 @@ function registerImportListCommands(importCmd) {
155
156
  }
156
157
  });
157
158
  }
159
+ /**
160
+ * The `connect` group (ALI-951), which `import` still reaches as a deprecated alias. With no
161
+ * source and no `--all` it is the local picker (connect.ts); `connect <source>` is the old
162
+ * `import <source>` subcommand, unchanged; `--all` and a cloud env keep the cloud scan below.
163
+ * This file stays on the bare resolver on purpose - the scan's job endpoints exist only on
164
+ * the cloud gateway (import-env-parity.test.ts); the picker path resolves in connect.ts.
165
+ */
158
166
  export function registerImportCommand(program) {
159
167
  const importCmd = program
160
- .command('import [connectors...]')
161
- .description('Scan connected tools historically and import decisions for review')
168
+ .command('connect [connectors...]')
169
+ .alias('import')
170
+ .description('Connect a source and import its decisions. No source: pick from a list. --all: scan every connected cloud connector')
162
171
  .option('--env <env>', 'Environment')
172
+ .option('--source <id>', 'The source to connect without the picker (github, jira, ...)')
173
+ .option('--token <token>', 'Read-only token for --source, so nothing is pasted')
174
+ .option('--yes', 'Answer yes to every confirm (re-use a saved token, import what was found)')
175
+ .option('--json', 'Print one JSON summary instead of the report (with --source)')
163
176
  .option('--all', 'Scan all connected connectors')
164
177
  .option('--channel <id>', 'Slack channel ID (single-connector only)')
165
178
  .option('--project <key>', 'Project key (Jira prefix or GitHub org/repo)')
166
179
  .option('--from <date>', 'Start date ISO e.g. 2025-01-01')
167
180
  .option('--to <date>', 'End date ISO')
168
181
  .option('--approve', 'Auto-approve all suggestions when scan completes')
182
+ .hook('preAction', (thisCommand, actionCommand) => {
183
+ // ALI-951: one line per invocation, whichever subcommand ran, only through the alias.
184
+ // rawArgs lives on the root Commander parsed from; the walk finds it from any depth.
185
+ let root = thisCommand;
186
+ while (root.parent)
187
+ root = root.parent;
188
+ // rawArgs is set by parse() and absent from Commander's typings; process.argv is the
189
+ // same list on the real CLI, and only a test drives parse() with anything else.
190
+ const rawArgs = root.rawArgs ?? process.argv;
191
+ if (invokedAsImport(rawArgs)) {
192
+ console.error(chalk.yellow(importAliasLine(actionCommand === thisCommand ? undefined : actionCommand.name())));
193
+ }
194
+ })
195
+ .hook('preSubcommand', (thisCommand, subcommand) => {
196
+ // `--json` is honoured by the picker path only; a subcommand would parse it (Commander
197
+ // awards a parent flag to the parent) and then print its human report regardless.
198
+ if (thisCommand.opts()['json']) {
199
+ console.error(chalk.red(`align connect ${subcommand.name()} does not take --json. Use: align connect --source ${subcommand.name()} --json`));
200
+ process.exit(2);
201
+ }
202
+ })
169
203
  .action(async (connectors, opts) => {
204
+ if (!opts.all && !connectors.length) {
205
+ // The local picker (or its --source bypass). False means a cloud env: fall through
206
+ // to the connector scan bare `import` always ran there.
207
+ if (await runConnect({ source: opts.source, token: opts.token, yes: opts.yes, json: opts.json, env: opts.env }))
208
+ return;
209
+ }
170
210
  const config = createConfigStore();
171
211
  const env = config.getEnvironment(resolveEnv(opts.env));
172
212
  const client = createGatewayClient(env);
@@ -1 +1 @@
1
- {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/commands/import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/commands/import.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * ALI-938: `align invite <email>` - the teammate-request action the bottom-up thesis
3
+ * depends on. A solo dev adopts the free CLI, the agent gets smarter, "this would be
4
+ * amazing if my whole team's decisions were in here" - and this is the command that
5
+ * turns that thought into a real invite instead of a dead end.
6
+ *
7
+ * Three outcomes, decided from `whoami()` alone (no new gateway endpoint needed to
8
+ * classify the caller):
9
+ * - a personal-email tenant (gmail.com, icloud.com, ...) has nobody to invite - its
10
+ * tenant is a single-person workspace by construction (provisioning.ts). Explain
11
+ * that a work email lands them in their company's shared graph instead.
12
+ * - a work-domain tenant member who is not org_admin cannot create an invite (the
13
+ * gateway 403s it) - tell them to ask their admin, rather than spending a round
14
+ * trip proving what the role already says.
15
+ * - a work-domain org_admin: the real path. POST /admin/invites via
16
+ * gateway-client.ts's createInvite, print the link.
17
+ *
18
+ * Deliberately NOT behind `preferLocalEmbedded`: inviting a teammate only means
19
+ * anything against a real cloud tenant, so this resolves the same way `login` and
20
+ * `whoami` do - the configured default cloud env, never redirected to a no-account
21
+ * local graph.
22
+ */
23
+ import type { Command } from 'commander';
24
+ export declare function registerInviteCommand(program: Command): void;
25
+ //# sourceMappingURL=invite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invite.d.ts","sourceRoot":"","sources":["../../src/commands/invite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoE5D"}
@@ -0,0 +1,68 @@
1
+ import chalk from 'chalk';
2
+ import ora from 'ora';
3
+ import { createConfigStore } from '../lib/config.js';
4
+ import { createGatewayClient } from '../lib/gateway-client.js';
5
+ import { resolveEnv } from '../lib/resolve-env.js';
6
+ import { recordFunnelStage } from '../lib/usage-telemetry.js';
7
+ import { isPersonalEmailDomain } from '../lib/personal-email-domains.js';
8
+ const EMAIL_RE = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
9
+ export function registerInviteCommand(program) {
10
+ program
11
+ .command('invite <email>')
12
+ .description('Invite a teammate to your shared Align decision graph')
13
+ .option('--env <env>', 'Environment')
14
+ .action(async (email, opts) => {
15
+ if (!EMAIL_RE.test(email)) {
16
+ console.log(chalk.red(`\n "${email}" doesn't look like an email address.\n`));
17
+ process.exit(1);
18
+ return;
19
+ }
20
+ const config = createConfigStore();
21
+ const envName = resolveEnv(opts.env);
22
+ const env = config.getEnvironment(envName);
23
+ if (env.mode === 'local-embedded') {
24
+ console.log(chalk.yellow(`\n align invite needs a cloud account - a local graph has nobody to invite ${email} into.`));
25
+ console.log(chalk.dim(` Run: align login --env preview (or --env prod)\n`));
26
+ process.exit(1);
27
+ return;
28
+ }
29
+ if (!env.authToken && env.mode !== 'demo') {
30
+ console.log(chalk.yellow(`\n Not logged in to ${envName}. Run: align login --env ${envName}\n`));
31
+ process.exit(1);
32
+ return;
33
+ }
34
+ // ALI-938: fired for every genuine attempt that gets past the login gate, whether or
35
+ // not the invite is actually sent - a member blocked by the org_admin check is still
36
+ // demand for shared context. Fired without await (same discipline as why.ts's
37
+ // first_useful_decision): telemetry must never delay or fail the command it rides on.
38
+ void recordFunnelStage(env, 'teammate_requested', 'invite');
39
+ const client = createGatewayClient(env);
40
+ const spinner = ora('Checking your account...').start();
41
+ try {
42
+ const me = await client.whoami();
43
+ spinner.stop();
44
+ if (isPersonalEmailDomain(me.user.email)) {
45
+ console.log(chalk.yellow(`\n You're on a personal graph tied to ${me.user.email}, not a company one - there's no team here yet to invite ${email} into.`));
46
+ console.log(chalk.dim(' A work email lands you in your company\'s shared graph automatically.'));
47
+ console.log(chalk.dim(` If a teammate already has Align set up there, ask them to run: align invite ${me.user.email}\n`));
48
+ return;
49
+ }
50
+ if (me.user.role !== 'org_admin') {
51
+ console.log(chalk.yellow(`\n You're a member of ${me.tenant.name}, not an admin, so you can't send invites directly.`));
52
+ console.log(chalk.dim(` Ask your org's admin to run: align invite ${email}\n`));
53
+ return;
54
+ }
55
+ const inviteSpinner = ora(`Inviting ${email}...`).start();
56
+ const result = await client.createInvite(email);
57
+ inviteSpinner.stop();
58
+ console.log(chalk.green(`\n Invite sent. Share this link with ${email}:`));
59
+ console.log(chalk.dim(` ${result.inviteUrl}\n`));
60
+ }
61
+ catch (err) {
62
+ spinner.stop();
63
+ console.log(chalk.red(`\n ${err.message}\n`));
64
+ process.exit(1);
65
+ }
66
+ });
67
+ }
68
+ //# sourceMappingURL=invite.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invite.js","sourceRoot":"","sources":["../../src/commands/invite.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../../src/commands/links.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAezC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmD3D"}
1
+ {"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../../src/commands/links.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAezC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwD3D"}
@@ -21,6 +21,7 @@ export function registerLinksCommand(program) {
21
21
  .option('--env <env>', 'Environment')
22
22
  .option('--relation <type>', 'Filter by relation type (conflicts_with, supersedes, supports, etc.)')
23
23
  .option('--decision <id>', 'Filter by decision ID')
24
+ .option('--json', 'Print the links and their total as JSON')
24
25
  .action(async (opts) => {
25
26
  const client = createGatewayClient(createConfigStore().getEnvironment(resolveEnv(opts.env)));
26
27
  const spinner = ora('Fetching links...').start();
@@ -30,6 +31,10 @@ export function registerLinksCommand(program) {
30
31
  decision_id: opts.decision,
31
32
  });
32
33
  spinner.stop();
34
+ if (opts.json) {
35
+ process.stdout.write(`${JSON.stringify({ links: items, total_count })}\n`);
36
+ return;
37
+ }
33
38
  if (!items.length) {
34
39
  console.log(chalk.dim('\nNo links found.\n'));
35
40
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"links.js","sourceRoot":"","sources":["../../src/commands/links.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"links.js","sourceRoot":"","sources":["../../src/commands/links.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAgB,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,eAAe,GAA0C;IAC7D,cAAc,EAAE,KAAK,CAAC,GAAG;IACzB,WAAW,EAAE,KAAK,CAAC,GAAG;IACtB,UAAU,EAAE,KAAK,CAAC,MAAM;IACxB,QAAQ,EAAE,KAAK,CAAC,KAAK;IACrB,UAAU,EAAE,KAAK,CAAC,GAAG;CACtB,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACnD,MAAM,KAAK,GAAG,OAAO;SAClB,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,6CAA6C,CAAC,CAAC;IAE9D,KAAK;SACF,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,qBAAqB,CAAC;SAClC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC;SACpC,MAAM,CAAC,mBAAmB,EAAE,sEAAsE,CAAC;SACnG,MAAM,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;SAClD,MAAM,CAAC,QAAQ,EAAE,yCAAyC,CAAC;SAC3D,MAAM,CAAC,KAAK,EAAE,IAA6E,EAAE,EAAE;QAC9F,MAAM,MAAM,GAAG,mBAAmB,CAAC,iBAAiB,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7F,MAAM,OAAO,GAAG,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAE,CAAC;QACjD,IAAI,CAAC;YACH,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC;gBACnE,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,IAAI,CAAC,QAAQ;aAC3B,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC;gBAC3E,OAAO;YACT,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAC7E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAC9C,WAAW,CACT;gBACE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC7B,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;gBACjC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;gBAC3B,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE;aAC7B,EACD,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACZ,MAAM,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC;gBACvD,OAAO;oBACL,CAAC,CAAC,aAAa,CAAC,KAAK;oBACrB,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACjB,CAAC,CAAC,WAAW,CAAC,KAAK;oBACnB,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;iBACrC,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;YACF,IAAI,WAAW,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,MAAM,OAAO,WAAW,SAAS,CAAC,CAAC,CAAC;YAC3F,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC,CAAC;gBACxF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { Command } from 'commander';
2
2
  import { type EnvironmentConfig } from '../lib/config.js';
3
3
  import { createGatewayClient } from '../lib/gateway-client.js';
4
- export declare const ALIGN_MCP_INSTRUCTIONS = "Align is this team's decision graph - the source of truth for what was decided, why, and who decided it. Use these tools proactively, without being asked:\n\n- BEFORE writing or changing non-trivial code, call align_check_alignment with the proposed change. A \"conflict\" result means a past decision opposes the change - STOP and confirm with the user before proceeding.\n- An \"unknown\" status means the check could NOT run (no LLM key, a timeout, unreadable output). It is NOT a pass and NOT \"no conflicts found\" - the related decisions it returns are unchecked. STOP and ask the human rather than proceeding.\n- When the user asks \"why\", \"how does X work\", or \"what was decided about Y\" - or you're unsure of a convention - call align_ask (or align_search) first. The answer, its status (active/conflicted), and the person who decided it are in the graph.\n- Use align_get_conflicts and align_get_related_decisions to understand context and surface who to talk to.\n- Prefer the graph over guessing: it reflects decisions made across Slack, Jira, GitHub, Linear and more that may not be in the code or docs.\n- Cite a decision by its cite value when present, and link it whenever the field exists: decision_url opens it in Align; source_url is wherever it was actually decided - a GitHub PR, a Jira/Linear ticket, a Slack or Teams thread. Never name a decision as bare text when either link is available, and never present one URL as the other.";
4
+ export declare const ALIGN_MCP_INSTRUCTIONS: string;
5
5
  /** Server instructions for the environment actually being served. */
6
6
  export declare function instructionsFor(env: EnvironmentConfig): string;
7
7
  /**
@@ -14,25 +14,53 @@ export declare function instructionsFor(env: EnvironmentConfig): string;
14
14
  export declare function toolSchemasFor(env: EnvironmentConfig): typeof TOOL_SCHEMAS;
15
15
  export declare function serializeMcpResult(result: unknown): string;
16
16
  export declare function dispatchTool(name: string, args: Record<string, unknown> | undefined, client: ReturnType<typeof createGatewayClient>, env: EnvironmentConfig): Promise<unknown>;
17
+ /**
18
+ * ALI-949: did this tool call hand the agent a real answer from the graph? The three tools
19
+ * an agent reaches for to GET something (ask, search, check) count; a non-empty conflicts
20
+ * list or an impact graph does not - those are follow-ups, not the first useful decision.
21
+ * A check whose status is `no-context` or `unknown` found nothing or could not run
22
+ * (ALI-414: not a pass), so it is not useful either.
23
+ */
24
+ export declare function isFirstUsefulToolResult(name: string, result: unknown): boolean;
25
+ /**
26
+ * The MCP CallTool handler `align mcp` installs, extracted so the funnel emission is
27
+ * testable without standing up a Server (mcp-first-useful.test.ts). dispatchTool stays the
28
+ * pure router; this is the one place a tool call has a side effect beyond its result.
29
+ *
30
+ * first_useful_decision fired only from a non-empty `align ask` before ALI-949, so an agent
31
+ * asking through this server never counted - and the phases after that ticket exist to
32
+ * make the agent the usual asker. The once-per-install guard is recordFunnelStage's, shared
33
+ * with `align ask`; fired without await so the tool response never waits on telemetry.
34
+ */
35
+ export declare function createCallToolHandler(client: ReturnType<typeof createGatewayClient>, env: EnvironmentConfig): (request: {
36
+ params: {
37
+ name: string;
38
+ arguments?: Record<string, unknown>;
39
+ };
40
+ }) => Promise<{
41
+ content: Array<{
42
+ type: 'text';
43
+ text: string;
44
+ }>;
45
+ }>;
17
46
  export declare const TOOL_SCHEMAS: ({
18
47
  name: string;
19
48
  description: string;
20
49
  inputSchema: {
21
50
  type: string;
22
51
  properties: {
23
- query: {
52
+ diff: {
24
53
  type: string;
25
54
  description: string;
26
55
  };
27
- limit: {
56
+ context: {
28
57
  type: string;
29
58
  description: string;
30
- default: number;
31
59
  };
32
60
  question?: undefined;
61
+ limit?: undefined;
62
+ query?: undefined;
33
63
  input?: undefined;
34
- diff?: undefined;
35
- context?: undefined;
36
64
  decision_id?: undefined;
37
65
  content?: undefined;
38
66
  source_type?: undefined;
@@ -55,10 +83,10 @@ export declare const TOOL_SCHEMAS: ({
55
83
  description: string;
56
84
  default: number;
57
85
  };
58
- query?: undefined;
59
- input?: undefined;
60
86
  diff?: undefined;
61
87
  context?: undefined;
88
+ query?: undefined;
89
+ input?: undefined;
62
90
  decision_id?: undefined;
63
91
  content?: undefined;
64
92
  source_type?: undefined;
@@ -72,15 +100,19 @@ export declare const TOOL_SCHEMAS: ({
72
100
  inputSchema: {
73
101
  type: string;
74
102
  properties: {
75
- input: {
103
+ query: {
76
104
  type: string;
77
105
  description: string;
78
106
  };
79
- query?: undefined;
80
- limit?: undefined;
81
- question?: undefined;
107
+ limit: {
108
+ type: string;
109
+ description: string;
110
+ default: number;
111
+ };
82
112
  diff?: undefined;
83
113
  context?: undefined;
114
+ question?: undefined;
115
+ input?: undefined;
84
116
  decision_id?: undefined;
85
117
  content?: undefined;
86
118
  source_type?: undefined;
@@ -94,18 +126,15 @@ export declare const TOOL_SCHEMAS: ({
94
126
  inputSchema: {
95
127
  type: string;
96
128
  properties: {
97
- diff: {
98
- type: string;
99
- description: string;
100
- };
101
- context: {
129
+ input: {
102
130
  type: string;
103
131
  description: string;
104
132
  };
105
- query?: undefined;
106
- limit?: undefined;
133
+ diff?: undefined;
134
+ context?: undefined;
107
135
  question?: undefined;
108
- input?: undefined;
136
+ limit?: undefined;
137
+ query?: undefined;
109
138
  decision_id?: undefined;
110
139
  content?: undefined;
111
140
  source_type?: undefined;
@@ -131,12 +160,12 @@ export declare const TOOL_SCHEMAS: ({
131
160
  type: string;
132
161
  description: string;
133
162
  };
134
- query?: undefined;
135
- limit?: undefined;
136
- question?: undefined;
137
- input?: undefined;
138
163
  diff?: undefined;
139
164
  context?: undefined;
165
+ question?: undefined;
166
+ limit?: undefined;
167
+ query?: undefined;
168
+ input?: undefined;
140
169
  file_path?: undefined;
141
170
  };
142
171
  required: string[];
@@ -151,12 +180,12 @@ export declare const TOOL_SCHEMAS: ({
151
180
  type: string;
152
181
  description: string;
153
182
  };
154
- query?: undefined;
155
- limit?: undefined;
156
- question?: undefined;
157
- input?: undefined;
158
183
  diff?: undefined;
159
184
  context?: undefined;
185
+ question?: undefined;
186
+ limit?: undefined;
187
+ query?: undefined;
188
+ input?: undefined;
160
189
  content?: undefined;
161
190
  source_type?: undefined;
162
191
  file_path?: undefined;
@@ -169,12 +198,12 @@ export declare const TOOL_SCHEMAS: ({
169
198
  inputSchema: {
170
199
  type: string;
171
200
  properties: {
172
- query?: undefined;
173
- limit?: undefined;
174
- question?: undefined;
175
- input?: undefined;
176
201
  diff?: undefined;
177
202
  context?: undefined;
203
+ question?: undefined;
204
+ limit?: undefined;
205
+ query?: undefined;
206
+ input?: undefined;
178
207
  decision_id?: undefined;
179
208
  content?: undefined;
180
209
  source_type?: undefined;
@@ -196,11 +225,11 @@ export declare const TOOL_SCHEMAS: ({
196
225
  type: string;
197
226
  description: string;
198
227
  };
199
- query?: undefined;
200
- limit?: undefined;
228
+ diff?: undefined;
201
229
  question?: undefined;
230
+ limit?: undefined;
231
+ query?: undefined;
202
232
  input?: undefined;
203
- diff?: undefined;
204
233
  decision_id?: undefined;
205
234
  content?: undefined;
206
235
  source_type?: undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,OAAO,EAAqB,KAAK,iBAAiB,EAAgB,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAO/D,eAAO,MAAM,sBAAsB,u7CAO6S,CAAC;AA4BjV,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM,CAE9D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,YAAY,CAU1E;AAOD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE1D;AAMD,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACzC,MAAM,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EAC9C,GAAG,EAAE,iBAAiB,GACrB,OAAO,CAAC,OAAO,CAAC,CA6DlB;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6FxB,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsDzD"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,OAAO,EAAqB,KAAK,iBAAiB,EAAgB,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAkB/D,eAAO,MAAM,sBAAsB,QAGlC,CAAC;AA4BF,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM,CAE9D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,YAAY,CAkB1E;AAOD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE1D;AAMD,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACzC,MAAM,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EAC9C,GAAG,EAAE,iBAAiB,GACrB,OAAO,CAAC,OAAO,CAAC,CAkElB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAU9E;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EAC9C,GAAG,EAAE,iBAAiB,GACrB,CAAC,OAAO,EAAE;IAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAA;CAAE,KAAK,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAS7I;AAKD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6FxB,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoDzD"}