lastlight 0.14.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/config/default.yaml +7 -0
  2. package/dist/cli/fork-cli.d.ts +2 -1
  3. package/dist/cli/fork-cli.js +33 -1
  4. package/dist/cli/fork-cli.js.map +1 -1
  5. package/dist/connectors/slack/connector.d.ts +44 -2
  6. package/dist/connectors/slack/connector.js +162 -9
  7. package/dist/connectors/slack/connector.js.map +1 -1
  8. package/dist/connectors/slack/mrkdwn.d.ts +11 -0
  9. package/dist/connectors/slack/mrkdwn.js +125 -8
  10. package/dist/connectors/slack/mrkdwn.js.map +1 -1
  11. package/dist/engine/llm.d.ts +12 -3
  12. package/dist/engine/llm.js +16 -3
  13. package/dist/engine/llm.js.map +1 -1
  14. package/dist/engine/router.js +47 -5
  15. package/dist/engine/router.js.map +1 -1
  16. package/dist/engine/screen/classifier.d.ts +40 -12
  17. package/dist/engine/screen/classifier.js +105 -175
  18. package/dist/engine/screen/classifier.js.map +1 -1
  19. package/dist/index.js +17 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/notify/blocks.d.ts +23 -0
  22. package/dist/notify/blocks.js +118 -0
  23. package/dist/notify/blocks.js.map +1 -0
  24. package/dist/notify/index.d.ts +2 -0
  25. package/dist/notify/index.js +1 -0
  26. package/dist/notify/index.js.map +1 -1
  27. package/dist/notify/notifier.d.ts +2 -1
  28. package/dist/notify/notifier.js +15 -2
  29. package/dist/notify/notifier.js.map +1 -1
  30. package/dist/notify/transports/github.d.ts +2 -2
  31. package/dist/notify/transports/github.js +2 -1
  32. package/dist/notify/transports/github.js.map +1 -1
  33. package/dist/notify/transports/slack.d.ts +3 -2
  34. package/dist/notify/transports/slack.js +12 -3
  35. package/dist/notify/transports/slack.js.map +1 -1
  36. package/dist/notify/types.d.ts +26 -2
  37. package/dist/workflows/loader.d.ts +9 -0
  38. package/dist/workflows/loader.js +66 -1
  39. package/dist/workflows/loader.js.map +1 -1
  40. package/dist/workflows/phase-executor.d.ts +7 -0
  41. package/dist/workflows/phase-executor.js +11 -2
  42. package/dist/workflows/phase-executor.js.map +1 -1
  43. package/dist/workflows/runner.js +17 -0
  44. package/dist/workflows/runner.js.map +1 -1
  45. package/dist/workflows/schema.d.ts +18 -0
  46. package/dist/workflows/schema.js +42 -0
  47. package/dist/workflows/schema.js.map +1 -1
  48. package/package.json +1 -1
  49. package/plugins/lastlight/.claude-plugin/plugin.json +1 -1
  50. package/plugins/lastlight/skills/lastlight-overlay/SKILL.md +38 -2
  51. package/plugins/lastlight/skills/lastlight-overlay/references/forking.md +27 -4
  52. package/plugins/lastlight/skills/lastlight-overlay/references/overlay-layout.md +8 -0
  53. package/workflows/answer.yaml +7 -0
  54. package/workflows/build.yaml +15 -0
  55. package/workflows/demo.yaml +7 -0
  56. package/workflows/explore.yaml +8 -0
  57. package/workflows/issue-triage.yaml +6 -0
  58. package/workflows/pr-review.yaml +8 -0
  59. package/workflows/prompts/classifier.md +60 -0
  60. package/workflows/prompts/classify-adds-info.md +17 -0
  61. package/workflows/qa-test.yaml +7 -0
  62. package/workflows/security-review.yaml +8 -0
  63. package/workflows/verify.yaml +8 -0
@@ -18,6 +18,13 @@ botName: last-light
18
18
 
19
19
  models:
20
20
  default: anthropic/claude-sonnet-4-6
21
+ # Per-task overrides keyed by phase or helper name, e.g.:
22
+ # architect: anthropic/claude-opus-4-8
23
+ # classifier: anthropic/claude-haiku-4-5-20251001 # the intent-routing helper
24
+ # screener: anthropic/claude-haiku-4-5-20251001 # the prompt-injection screener
25
+ # A per-task entry wins over `default`. `classifier`/`screener` are the cheap
26
+ # one-shot helpers (src/engine/llm.ts); when unset they fall back to the first
27
+ # configured provider's fast model, NOT `default`.
21
28
 
22
29
  variants: {}
23
30
 
@@ -30,8 +30,9 @@ export declare function resolveForkTarget(opts: ForkOpts): ForkTarget;
30
30
  /**
31
31
  * `lastlight fork [target] [sub]` — dispatch on an explicit target.
32
32
  * - (none) → list forkable targets
33
- * - "all" → every workflow (+ prompts & skills) + context
33
+ * - "all" → every workflow (+ prompts & skills) + context + classifier
34
34
  * - "agent-context" [file] → all context files, or one named file
35
+ * - "classifier" → the base intent-classifier prompt files
35
36
  * - "<workflow>" → workflow + its prompts + skills
36
37
  * Agent-context is never inferred from a bare filename — it's only reached via
37
38
  * the literal `agent-context` target.
@@ -190,6 +190,8 @@ function forkAll(t, force) {
190
190
  }
191
191
  for (const r of forkAgentContext(t, builtinAgentContext(t.coreRoot), force))
192
192
  add(r);
193
+ for (const r of forkClassifier(t, force))
194
+ add(r);
193
195
  return [...byRel.values()].sort((a, b) => a.rel.localeCompare(b.rel));
194
196
  }
195
197
  /** Copy one or more agent-context files (soul.md / rules.md / security.md). */
@@ -199,6 +201,25 @@ function forkAgentContext(t, files, force) {
199
201
  return copyFile(src, path.join(t.instanceDir, "agent-context", file), `agent-context/${file}`, force);
200
202
  });
201
203
  }
204
+ /**
205
+ * The base classifier prompt files (issue #164) — the framing/disambiguation
206
+ * template the intent classifier composes per-workflow categories into, plus
207
+ * the re-triage novelty gate. Each workflow's own category text lives in its
208
+ * YAML, so it already travels with `fork <workflow>`; these are the standalone
209
+ * base prompts a deployment forks to retune the router's classification.
210
+ */
211
+ const CLASSIFIER_PROMPTS = ["prompts/classifier.md", "prompts/classify-adds-info.md"];
212
+ /** Copy the base classifier prompt files into the overlay (skip any absent from core). */
213
+ function forkClassifier(t, force) {
214
+ const results = [];
215
+ for (const rel of CLASSIFIER_PROMPTS) {
216
+ const src = path.join(t.coreRoot, "workflows", rel);
217
+ if (!fs.existsSync(src))
218
+ continue;
219
+ results.push(copyFile(src, path.join(t.instanceDir, "workflows", rel), `workflows/${rel}`, force));
220
+ }
221
+ return results;
222
+ }
202
223
  /** Built-in agent-context filenames (e.g. soul.md, rules.md, security.md). */
203
224
  function builtinAgentContext(coreRoot) {
204
225
  const dir = path.join(coreRoot, "agent-context");
@@ -240,6 +261,10 @@ function listForkable(t) {
240
261
  for (const file of context)
241
262
  console.log(` ${file}${mark(`agent-context:${file}`)}`);
242
263
  }
264
+ console.log(chalk.bold("\nForkable classifier") + chalk.dim(" (lastlight fork classifier)\n"));
265
+ for (const rel of CLASSIFIER_PROMPTS) {
266
+ console.log(` ${rel}${mark(`prompt:${path.basename(rel)}`)}`);
267
+ }
243
268
  console.log(chalk.dim("\nFork one with: ") + chalk.cyan("lastlight fork <name>"));
244
269
  console.log(chalk.dim("Fork everything with: ") + chalk.cyan("lastlight fork all"));
245
270
  }
@@ -247,8 +272,9 @@ function listForkable(t) {
247
272
  /**
248
273
  * `lastlight fork [target] [sub]` — dispatch on an explicit target.
249
274
  * - (none) → list forkable targets
250
- * - "all" → every workflow (+ prompts & skills) + context
275
+ * - "all" → every workflow (+ prompts & skills) + context + classifier
251
276
  * - "agent-context" [file] → all context files, or one named file
277
+ * - "classifier" → the base intent-classifier prompt files
252
278
  * - "<workflow>" → workflow + its prompts + skills
253
279
  * Agent-context is never inferred from a bare filename — it's only reached via
254
280
  * the literal `agent-context` target.
@@ -293,6 +319,11 @@ export async function fork(args, opts) {
293
319
  printSummary(t, forkAgentContext(t, files, opts.force ?? false));
294
320
  return;
295
321
  }
322
+ // classifier — the base intent-classifier prompts (issue #164).
323
+ if (target === "classifier") {
324
+ printSummary(t, forkClassifier(t, opts.force ?? false));
325
+ return;
326
+ }
296
327
  // Otherwise treat it as a workflow name.
297
328
  try {
298
329
  getWorkflow(target);
@@ -302,6 +333,7 @@ export async function fork(args, opts) {
302
333
  console.error(chalk.red(`Unknown fork target: ${target}`) +
303
334
  chalk.dim(`\n Workflows: ${names.join(", ")}`) +
304
335
  chalk.dim(`\n Agent-context: "agent-context" (optionally a file, e.g. agent-context soul.md).`) +
336
+ chalk.dim(`\n Classifier: "classifier".`) +
305
337
  chalk.dim(`\n Everything: "all".`));
306
338
  process.exit(1);
307
339
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fork-cli.js","sourceRoot":"","sources":["../../src/cli/fork-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fork-cli.js","sourceRoot":"","sources":["../../src/cli/fork-cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AASrE,8EAA8E;AAE9E,SAAS,KAAK,CAAC,CAAS;IACtB,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,iEAAiE;AACjE,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB;IACvB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,GAAG,UAAoB;IAC9C,KAAK,MAAM,CAAC,IAAI,UAAU;QAAE,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;IAC9D,OAAO,gBAAgB,EAAE,CAAC;AAC5B,CAAC;AAED;iFACiF;AACjF,SAAS,gBAAgB,CAAC,GAAW;IACnC,OAAO,CACL,CAAC,WAAW,CAAC,GAAG,CAAC;QACjB,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CACnF,CAAC;AACJ,CAAC;AASD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAc;IAC9C,4EAA4E;IAC5E,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;IACvF,CAAC;IAED,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,oDAAoD;IACpD,IAAI,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;IAC1G,CAAC;IACD,gDAAgD;IAChD,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,CAAC;IACpE,CAAC;IACD,kFAAkF;IAClF,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACjD,IAAI,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;IACxE,CAAC;IACD,8CAA8C;IAC9C,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;AACvF,CAAC;AAWD,+DAA+D;AAC/D,SAAS,QAAQ,CAAC,GAAW,EAAE,OAAe,EAAE,GAAW,EAAE,KAAc;IACzE,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,MAAM,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACxD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC5D,CAAC;AAED,kEAAkE;AAClE,SAAS,OAAO,CAAC,GAAW,EAAE,OAAe,EAAE,GAAW,EAAE,KAAc;IACxE,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,MAAM,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACxD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC5D,CAAC;AAED,8EAA8E;AAE9E,0EAA0E;AAC1E,SAAS,YAAY,CAAC,CAAa,EAAE,IAAY,EAAE,KAAc;IAC/D,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,2CAA2C;IAC1E,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,OAAO,GAAiB,EAAE,CAAC;IAEjC,2DAA2D;IAC3D,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,aAAa,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IACnH,CAAC;IAED,yEAAyE;IACzE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC7H,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;QACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS,CAAC,uCAAuC;QAC1E,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IACrG,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC3C,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACH,GAAG,GAAG,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,CAAC,gCAAgC;QAC5C,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,UAAU,KAAK,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IACnG,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAC,CAAa,EAAE,KAAc;IAC5C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC5C,MAAM,GAAG,GAAG,CAAC,CAAa,EAAQ,EAAE;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC9B,uEAAuE;QACvE,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAC1F,CAAC,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,kBAAkB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACzF,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;YAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,gBAAgB,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACpF,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,+EAA+E;AAC/E,SAAS,gBAAgB,CAAC,CAAa,EAAE,KAAe,EAAE,KAAc;IACtE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;QACzD,OAAO,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,iBAAiB,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,kBAAkB,GAAG,CAAC,uBAAuB,EAAE,+BAA+B,CAAC,CAAC;AAEtF,0FAA0F;AAC1F,SAAS,cAAc,CAAC,CAAa,EAAE,KAAc;IACnD,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;QACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAClC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,aAAa,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IACrG,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8EAA8E;AAC9E,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACjD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IAC3B,OAAO,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACrE,CAAC;AAED,8EAA8E;AAE9E,SAAS,YAAY,CAAC,CAAa,EAAE,OAAqB;IACxD,MAAM,GAAG,GAA2B;QAClC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC;QAC1C,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC;KACzC,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;IAC1D,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IACpE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IACxC,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CACP,KAAK,MAAM,aAAa,OAAO,WAAW;QACxC,CAAC,OAAO,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,CACzD,CACF,CAAC;IACF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,GAAG,CAAC,gEAAgE,CAAC;QACzE,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC;QAC5C,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CACjB,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,SAAS,YAAY,CAAC,CAAa;IACjC,uBAAuB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,sBAAsB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAC/G,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAExF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;IACrF,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,kBAAkB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACzF,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,OAAO,GAAG,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC,CAAC;QACtG,KAAK,MAAM,IAAI,IAAI,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;IAChG,KAAK,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;AACtF,CAAC;AAED,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAc,EAAE,IAAc;IACvD,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,uEAAuE;QACvE,uEAAuE;QACvE,oEAAoE;QACpE,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,QAAQ,mCAAmC,CAAC;YACrF,KAAK,CAAC,GAAG,CAAC,2FAA2F,CAAC,CACzG,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,YAAY,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,uBAAuB,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAErD,+EAA+E;IAC/E,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;QACjD,OAAO;IACT,CAAC;IAED,6EAA6E;IAC7E,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAAC,CAAC;QACtG,IAAI,KAAK,GAAG,SAAS,CAAC;QACtB,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC;YACrD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,kBAAkB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACrH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;QACD,YAAY,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,gEAAgE;IAChE,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC5B,YAAY,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;QACxD,OAAO;IACT,CAAC;IAED,yCAAyC;IACzC,IAAI,CAAC;QACH,WAAW,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,KAAK,GAAG,kBAAkB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7D,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,wBAAwB,MAAM,EAAE,CAAC;YACzC,KAAK,CAAC,GAAG,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,KAAK,CAAC,GAAG,CAAC,qFAAqF,CAAC;YAChG,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC;YAC1C,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,CACtC,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;AAChE,CAAC"}
@@ -1,7 +1,21 @@
1
+ import { type KnownBlock } from "@slack/web-api";
1
2
  import type { Hono } from "hono";
2
3
  import { MessagingConnector } from "../messaging/base.js";
3
4
  import type { SessionManager } from "../messaging/session-manager.js";
4
5
  import type { MessagingConfig } from "../messaging/types.js";
6
+ import type { EventEnvelope } from "../types.js";
7
+ /**
8
+ * A resolved approval-button click, handed to the app for routing. `envelope`
9
+ * carries a `reply()` that posts a confirmation into the button's thread, so
10
+ * the same approval-resolution path used by `/approve` can run unchanged.
11
+ */
12
+ export interface SlackApprovalAction {
13
+ decision: "approved" | "rejected";
14
+ /** The paused workflow run id (the button's `value`). */
15
+ workflowRunId: string;
16
+ sender: string;
17
+ envelope: EventEnvelope;
18
+ }
5
19
  export interface SlackConnectorConfig extends MessagingConfig {
6
20
  /** Bot User OAuth Token (xoxb-…) — used for all Web API calls (sending). */
7
21
  botToken: string;
@@ -49,10 +63,28 @@ export declare class SlackConnector extends MessagingConnector {
49
63
  /** Bounded set of processed Events API delivery ids, to drop Slack retries. */
50
64
  private seenEventIds;
51
65
  private seenEventOrder;
66
+ /** App-provided hook that routes an approval button click into the dispatcher. */
67
+ private approvalHandler?;
52
68
  constructor(config: SlackConnectorConfig, sessionManager: SessionManager);
69
+ /**
70
+ * Register the hook that routes an approval button click into the app's
71
+ * dispatcher. Wired in `src/index.ts` (after the dispatch deps exist) to the
72
+ * same `approval-response` resolution path as the `/approve` slash command.
73
+ */
74
+ onApprovalAction(handler: (action: SlackApprovalAction) => Promise<void>): void;
53
75
  start(): Promise<void>;
54
76
  stop(): Promise<void>;
55
- sendMessage(channelId: string, threadId: string | null, text: string): Promise<string | void>;
77
+ /**
78
+ * Post a message. When `blocks` are supplied they carry the rich rendering;
79
+ * `text` is still sent as the notification preview + accessibility fallback
80
+ * (Slack requires it and truncates it for the push/desktop notification).
81
+ * When no explicit blocks are given but the text contains a markdown image,
82
+ * the message is auto-promoted to Block Kit so the image renders inline (the
83
+ * mrkdwn text path can only downgrade `![alt](url)` to a link); if Slack
84
+ * rejects the generated blocks (e.g. an unreachable image URL) it falls back
85
+ * to a plain-text post.
86
+ */
87
+ sendMessage(channelId: string, threadId: string | null, text: string, blocks?: KnownBlock[]): Promise<string | void>;
56
88
  /**
57
89
  * Edit a previously-sent message in place (`chat.update`). Paired with the
58
90
  * `ts` returned by `sendMessage`, this powers the single in-place status
@@ -61,7 +93,7 @@ export declare class SlackConnector extends MessagingConnector {
61
93
  * silent — it does not re-notify — so a separate terminal message is posted
62
94
  * at the end for an actual ping.
63
95
  */
64
- updateMessage(channelId: string, ts: string, text: string): Promise<void>;
96
+ updateMessage(channelId: string, ts: string, text: string, blocks?: KnownBlock[]): Promise<void>;
65
97
  addReaction(channelId: string, messageId: string, emoji: string): Promise<void>;
66
98
  showTyping(channelId: string, messageId: string, threadRootId: string): Promise<void>;
67
99
  /** Clear the thinking status after processing completes */
@@ -74,6 +106,16 @@ export declare class SlackConnector extends MessagingConnector {
74
106
  * acks fast while processing the event asynchronously.
75
107
  */
76
108
  private mountWebhookRoute;
109
+ /** Wire Bolt block-action listeners (socket mode) to the same handler. */
110
+ private setupInteractionListeners;
111
+ /**
112
+ * Resolve an approval button click: rewrite the prompt message to a
113
+ * button-free resolved state, then route the decision through the app's
114
+ * approval handler (the same path as the `/approve` slash command).
115
+ */
116
+ private handleInteraction;
117
+ /** Rewrite an approval prompt to a resolved, button-free state. */
118
+ private resolveApprovalMessage;
77
119
  /** Route a raw Events API `event` object to the right handler. */
78
120
  private dispatchSlackEvent;
79
121
  /**
@@ -2,7 +2,7 @@ import { App } from "@slack/bolt";
2
2
  import { WebClient } from "@slack/web-api";
3
3
  import { createHmac, timingSafeEqual } from "crypto";
4
4
  import { MessagingConnector } from "../messaging/base.js";
5
- import { markdownToSlackMrkdwn } from "./mrkdwn.js";
5
+ import { hasMarkdownImage, markdownToSlackBlocks, markdownToSlackMrkdwn } from "./mrkdwn.js";
6
6
  /** Rotating status messages shown while the agent is thinking */
7
7
  const THINKING_MESSAGES = [
8
8
  "Thinking...",
@@ -45,6 +45,8 @@ export class SlackConnector extends MessagingConnector {
45
45
  /** Bounded set of processed Events API delivery ids, to drop Slack retries. */
46
46
  seenEventIds = new Set();
47
47
  seenEventOrder = [];
48
+ /** App-provided hook that routes an approval button click into the dispatcher. */
49
+ approvalHandler;
48
50
  constructor(config, sessionManager) {
49
51
  super(config, sessionManager);
50
52
  this.slackConfig = config;
@@ -70,6 +72,17 @@ export class SlackConnector extends MessagingConnector {
70
72
  this.mountWebhookRoute(config.honoApp);
71
73
  }
72
74
  }
75
+ /**
76
+ * Register the hook that routes an approval button click into the app's
77
+ * dispatcher. Wired in `src/index.ts` (after the dispatch deps exist) to the
78
+ * same `approval-response` resolution path as the `/approve` slash command.
79
+ */
80
+ onApprovalAction(handler) {
81
+ this.approvalHandler = handler;
82
+ // Socket mode needs Bolt action listeners; webhook mode uses the HTTP route.
83
+ if (this.bolt)
84
+ this.setupInteractionListeners();
85
+ }
73
86
  async start() {
74
87
  if (this.bolt) {
75
88
  await this.bolt.start();
@@ -86,13 +99,46 @@ export class SlackConnector extends MessagingConnector {
86
99
  }
87
100
  // Webhook mode shares the GitHub connector's HTTP server; nothing to stop.
88
101
  }
89
- async sendMessage(channelId, threadId, text) {
90
- const result = await this.web.chat.postMessage({
91
- channel: channelId,
92
- text: markdownToSlackMrkdwn(text),
93
- thread_ts: threadId || undefined,
94
- });
95
- return result.ts;
102
+ /**
103
+ * Post a message. When `blocks` are supplied they carry the rich rendering;
104
+ * `text` is still sent as the notification preview + accessibility fallback
105
+ * (Slack requires it and truncates it for the push/desktop notification).
106
+ * When no explicit blocks are given but the text contains a markdown image,
107
+ * the message is auto-promoted to Block Kit so the image renders inline (the
108
+ * mrkdwn text path can only downgrade `![alt](url)` to a link); if Slack
109
+ * rejects the generated blocks (e.g. an unreachable image URL) it falls back
110
+ * to a plain-text post.
111
+ */
112
+ async sendMessage(channelId, threadId, text, blocks) {
113
+ const fallbackText = markdownToSlackMrkdwn(text);
114
+ const autoBlocks = !blocks && hasMarkdownImage(text);
115
+ const effectiveBlocks = blocks && blocks.length > 0
116
+ ? blocks
117
+ : autoBlocks
118
+ ? markdownToSlackBlocks(text)
119
+ : undefined;
120
+ try {
121
+ const result = await this.web.chat.postMessage({
122
+ channel: channelId,
123
+ text: fallbackText,
124
+ blocks: effectiveBlocks,
125
+ thread_ts: threadId || undefined,
126
+ });
127
+ return result.ts;
128
+ }
129
+ catch (err) {
130
+ // Only auto-generated image blocks are worth retrying without — an
131
+ // explicit-blocks caller owns its payload and should see the error.
132
+ if (!autoBlocks)
133
+ throw err;
134
+ console.warn(`[slack] image blocks rejected, falling back to text: ${err instanceof Error ? err.message : String(err)}`);
135
+ const result = await this.web.chat.postMessage({
136
+ channel: channelId,
137
+ text: fallbackText,
138
+ thread_ts: threadId || undefined,
139
+ });
140
+ return result.ts;
141
+ }
96
142
  }
97
143
  /**
98
144
  * Edit a previously-sent message in place (`chat.update`). Paired with the
@@ -102,11 +148,17 @@ export class SlackConnector extends MessagingConnector {
102
148
  * silent — it does not re-notify — so a separate terminal message is posted
103
149
  * at the end for an actual ping.
104
150
  */
105
- async updateMessage(channelId, ts, text) {
151
+ async updateMessage(channelId, ts, text, blocks) {
152
+ const effectiveBlocks = blocks && blocks.length > 0
153
+ ? blocks
154
+ : hasMarkdownImage(text)
155
+ ? markdownToSlackBlocks(text)
156
+ : []; // empty array (not undefined) clears any prior blocks on update
106
157
  await this.web.chat.update({
107
158
  channel: channelId,
108
159
  ts,
109
160
  text: markdownToSlackMrkdwn(text),
161
+ blocks: effectiveBlocks,
110
162
  });
111
163
  }
112
164
  async addReaction(channelId, messageId, emoji) {
@@ -204,6 +256,107 @@ export class SlackConnector extends MessagingConnector {
204
256
  }
205
257
  return c.body(null, 200);
206
258
  });
259
+ // Interactivity endpoint — Slack POSTs button clicks here as a
260
+ // form-encoded `payload=<json>` body (a DIFFERENT Request URL from the
261
+ // Events API above, configured under the app's Interactivity settings).
262
+ app.post("/webhooks/slack/interactions", async (c) => {
263
+ const body = await c.req.text();
264
+ const timestamp = c.req.header("x-slack-request-timestamp") || "";
265
+ const signature = c.req.header("x-slack-signature") || "";
266
+ if (!verifySlackSignature(body, timestamp, signature, this.slackConfig.signingSecret)) {
267
+ return c.json({ error: "Invalid signature" }, 401);
268
+ }
269
+ const raw = new URLSearchParams(body).get("payload");
270
+ if (!raw)
271
+ return c.body(null, 200);
272
+ let payload;
273
+ try {
274
+ payload = JSON.parse(raw);
275
+ }
276
+ catch {
277
+ return c.json({ error: "Invalid JSON" }, 400);
278
+ }
279
+ // Ack within Slack's 3s window; resolve the gate asynchronously.
280
+ setImmediate(() => {
281
+ this.handleInteraction(payload).catch((err) => console.error("[slack] interaction handler error:", err));
282
+ });
283
+ return c.body(null, 200);
284
+ });
285
+ }
286
+ /** Wire Bolt block-action listeners (socket mode) to the same handler. */
287
+ setupInteractionListeners() {
288
+ if (!this.bolt)
289
+ return;
290
+ const handle = async ({ ack, body }) => {
291
+ await ack();
292
+ await this.handleInteraction(body).catch((err) => console.error("[slack] interaction handler error:", err));
293
+ };
294
+ this.bolt.action("approval_approve", handle);
295
+ this.bolt.action("approval_reject", handle);
296
+ }
297
+ /**
298
+ * Resolve an approval button click: rewrite the prompt message to a
299
+ * button-free resolved state, then route the decision through the app's
300
+ * approval handler (the same path as the `/approve` slash command).
301
+ */
302
+ async handleInteraction(payload) {
303
+ if (!payload || payload.type !== "block_actions")
304
+ return;
305
+ const action = Array.isArray(payload.actions) ? payload.actions[0] : undefined;
306
+ const actionId = action?.action_id;
307
+ if (actionId !== "approval_approve" && actionId !== "approval_reject")
308
+ return;
309
+ const channelId = payload.channel?.id;
310
+ const messageTs = payload.message?.ts;
311
+ const threadTs = payload.message?.thread_ts;
312
+ const workflowRunId = typeof action?.value === "string" ? action.value : "";
313
+ // Dedup Slack retries of the same interaction (at-least-once, like events).
314
+ const dedupKey = `interaction:${payload.trigger_id ?? `${channelId}:${messageTs}:${actionId}`}`;
315
+ if (this.markSeen(dedupKey))
316
+ return;
317
+ if (!workflowRunId || !this.approvalHandler)
318
+ return;
319
+ const decision = actionId === "approval_approve" ? "approved" : "rejected";
320
+ const sender = await this.resolveUsername(payload.user?.id ?? "");
321
+ // Rewrite the original message so the buttons can't be clicked twice.
322
+ await this.resolveApprovalMessage(payload, decision, sender).catch(() => { });
323
+ // Build a minimal envelope whose reply() posts a confirmation in-thread.
324
+ const replyThread = threadTs || messageTs || null;
325
+ const envelope = {
326
+ id: `slack-approval-${messageTs ?? workflowRunId}`,
327
+ source: this.name,
328
+ type: "message",
329
+ sender,
330
+ senderIsBot: false,
331
+ body: decision === "approved" ? "approve" : "reject",
332
+ raw: { channelId, threadId: replyThread, approvalAction: { decision, workflowRunId } },
333
+ reply: async (msg) => {
334
+ if (channelId)
335
+ await this.sendMessage(channelId, replyThread, msg);
336
+ },
337
+ timestamp: new Date(),
338
+ };
339
+ await this.approvalHandler({ decision, workflowRunId, sender, envelope });
340
+ }
341
+ /** Rewrite an approval prompt to a resolved, button-free state. */
342
+ async resolveApprovalMessage(payload, decision, sender) {
343
+ const channel = payload.channel?.id;
344
+ const ts = payload.message?.ts;
345
+ if (!channel || !ts)
346
+ return;
347
+ const verb = decision === "approved" ? "✅ Approved" : "❌ Rejected";
348
+ const original = Array.isArray(payload.message?.blocks) ? payload.message.blocks : [];
349
+ // Drop the interactive actions block; append a resolution status line.
350
+ const kept = original.filter((b) => b?.type !== "actions");
351
+ await this.web.chat.update({
352
+ channel,
353
+ ts,
354
+ text: `${verb} by ${sender}`,
355
+ blocks: [
356
+ ...kept,
357
+ { type: "context", elements: [{ type: "mrkdwn", text: `${verb} by ${sender}` }] },
358
+ ],
359
+ });
207
360
  }
208
361
  /** Route a raw Events API `event` object to the right handler. */
209
362
  async dispatchSlackEvent(event) {
@@ -1 +1 @@
1
- {"version":3,"file":"connector.js","sourceRoot":"","sources":["../../../src/connectors/slack/connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,iEAAiE;AACjE,MAAM,iBAAiB,GAAG;IACxB,aAAa;IACb,yBAAyB;IACzB,4BAA4B;IAC5B,4BAA4B;IAC5B,uBAAuB;IACvB,sBAAsB;IACtB,8BAA8B;IAC9B,2BAA2B;IAC3B,wBAAwB;IACxB,iBAAiB;CAClB,CAAC;AAqBF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,cAAe,SAAQ,kBAAkB;IAC3C,IAAI,GAAG,OAAO,CAAC;IACxB,uDAAuD;IAC/C,GAAG,CAAY;IACvB,0EAA0E;IAClE,IAAI,GAAe,IAAI,CAAC;IACxB,WAAW,CAAuB;IAClC,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,oBAAoB;IACnE,+EAA+E;IACvE,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,cAAc,GAAa,EAAE,CAAC;IAEtC,YAAY,MAA4B,EAAE,cAA8B;QACtE,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAC1B,IAAI,CAAC,GAAG,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAE1C,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC/E,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC;gBAClB,KAAK,EAAE,MAAM,CAAC,QAAQ;gBACtB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;YACH,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CACb,2EAA2E;oBAC3E,kEAAkE;oBAClE,0DAA0D,CAC3D,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,aAAa;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC1F,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACtC,CAAC;QACD,2EAA2E;IAC7E,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,QAAuB,EAAE,IAAY;QACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;YAC7C,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC;YACjC,SAAS,EAAE,QAAQ,IAAI,SAAS;SACjC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,EAAE,CAAC;IACnB,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,EAAU,EAAE,IAAY;QAC7D,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;YACzB,OAAO,EAAE,SAAS;YAClB,EAAE;YACF,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC;SAClC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,SAAiB,EAAE,KAAa;QACnE,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC;gBAC3B,OAAO,EAAE,SAAS;gBAClB,SAAS,EAAE,SAAS;gBACpB,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,SAAiB,EAAE,SAAiB,EAAE,YAAoB;QACzE,sEAAsE;QACtE,uEAAuE;QACvE,iEAAiE;QACjE,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;gBACzC,UAAU,EAAE,SAAS;gBACrB,SAAS,EAAE,YAAY;gBACvB,MAAM,EAAE,aAAa;gBACrB,gBAAgB,EAAE,iBAAiB;aACpC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,mDAAmD;YACnD,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,QAAgB;QACnD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;gBACzC,UAAU,EAAE,SAAS;gBACrB,SAAS,EAAE,QAAQ;gBACnB,MAAM,EAAE,EAAE;aACX,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,8CAA8C;QAChD,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,KAAK,CAAC,qBAAqB,CAAC,IAAY;QACtC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;YACvD,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,0EAA0E;IAE1E;;;;OAIG;IACK,iBAAiB,CAAC,GAAS;QACjC,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YACtC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,CAAC;YAClE,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC;YAC1D,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,aAAc,CAAC,EAAE,CAAC;gBACvF,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,GAAG,CAAC,CAAC;YACrD,CAAC;YAED,IAAI,OAAY,CAAC;YACjB,IAAI,CAAC;gBACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,GAAG,CAAC,CAAC;YAChD,CAAC;YAED,4EAA4E;YAC5E,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACxC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACtC,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;gBACpF,sEAAsE;gBACtE,sEAAsE;gBACtE,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBACtC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBAC3B,CAAC;gBACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;gBAC5B,sEAAsE;gBACtE,wEAAwE;gBACxE,YAAY,CAAC,GAAG,EAAE;oBAChB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAC3C,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,GAAG,CAAC,CACnD,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kEAAkE;IAC1D,KAAK,CAAC,kBAAkB,CAAC,KAAU;QACzC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO;QAChD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACxC,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,QAAQ,CAAC,OAAe;QAC9B,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QAChD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;YAC5C,IAAI,OAAO;gBAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0EAA0E;IAElE,oBAAoB;QAC1B,oDAAoD;QACpD,IAAI,CAAC,IAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YACvC,MAAM,IAAI,CAAC,cAAc,CAAC,OAAc,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,gDAAgD;QAChD,IAAI,CAAC,IAAK,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;YAClD,MAAM,IAAI,CAAC,YAAY,CAAC,KAAY,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0EAA0E;IAE1E,mDAAmD;IAC3C,KAAK,CAAC,cAAc,CAAC,GAAQ;QACnC,0EAA0E;QAC1E,2EAA2E;QAC3E,0EAA0E;QAC1E,0DAA0D;QAC1D,OAAO,CAAC,GAAG,CACT,0BAA0B,GAAG,CAAC,OAAO,IAAI,GAAG,OAAO,GAAG,CAAC,EAAE,IAAI,GAAG,GAAG;YACnE,aAAa,GAAG,CAAC,SAAS,IAAI,GAAG,YAAY,GAAG,CAAC,OAAO,IAAI,GAAG,GAAG;YAClE,UAAU,GAAG,CAAC,MAAM,IAAI,GAAG,iBAAiB,GAAG,CAAC,YAAY,IAAI,GAAG,GAAG;YACtE,QAAQ,GAAG,CAAC,IAAI,IAAI,GAAG,YAAY,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAC1D,CAAC;QACF,yEAAyE;QACzE,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO;QACxB,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,OAAO;QACnC,sBAAsB;QACtB,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO;QAEvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,KAAK,IAAI,CAAC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa;YACzC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC;YACtD,CAAC,CAAC,KAAK,CAAC;QAEV,MAAM,IAAI,CAAC,qBAAqB,CAAC;YAC/B,cAAc,EAAE,GAAG,CAAC,IAAI;YACxB,gBAAgB,EAAE,QAAQ;YAC1B,SAAS,EAAE,GAAG,CAAC,OAAO;YACtB,QAAQ,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI;YAC/B,SAAS,EAAE,GAAG,CAAC,EAAE;YACjB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI;YACJ,SAAS;YACT,GAAG,EAAE,GAAG;SACT,CAAC,CAAC;IACL,CAAC;IAED,kEAAkE;IAC1D,KAAK,CAAC,YAAY,CAAC,KAAU;QACnC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI;YAAE,OAAO;QAEvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAExD,MAAM,IAAI,CAAC,qBAAqB,CAAC;YAC/B,cAAc,EAAE,KAAK,CAAC,IAAI;YAC1B,gBAAgB,EAAE,QAAQ;YAC1B,SAAS,EAAE,KAAK,CAAC,OAAO;YACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;YACjC,SAAS,EAAE,KAAK,CAAC,EAAE;YACnB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,IAAI;YACf,GAAG,EAAE,KAAK;SACX,CAAC,CAAC;IACL,CAAC;IAED,qDAAqD;IAC7C,KAAK,CAAC,eAAe,CAAC,MAAc;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,SAAS,IAAI,MAAM,CAAC;YACvE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACrC,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAY,EACZ,SAAiB,EACjB,SAAiB,EACjB,aAAqB,EACrB,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC;IAC7D,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,GAAG,GAAG;QAAE,OAAO,KAAK,CAAC,CAAC,yBAAyB;IAE5E,MAAM,QAAQ,GAAG,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC;SACzD,MAAM,CAAC,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;SACjC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjB,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"connector.js","sourceRoot":"","sources":["../../../src/connectors/slack/connector.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { KnownBlock } from "@slack/web-api";
1
2
  /**
2
3
  * Convert standard Markdown to Slack's mrkdwn format.
3
4
  *
@@ -6,3 +7,13 @@
6
7
  * then restored after all transformations are applied.
7
8
  */
8
9
  export declare function markdownToSlackMrkdwn(text: string): string;
10
+ /** True if the text contains at least one markdown image. */
11
+ export declare function hasMarkdownImage(text: string): boolean;
12
+ /**
13
+ * Convert markdown to Slack Block Kit, promoting markdown images to real
14
+ * `image` blocks — the mrkdwn text path can only downgrade `![alt](url)` to a
15
+ * link. Text between/around images is rendered as `section` mrkdwn blocks via
16
+ * {@link markdownToSlackMrkdwn}. A non-`http(s)` image URL is left as text
17
+ * (Slack rejects image blocks with an unusable URL).
18
+ */
19
+ export declare function markdownToSlackBlocks(markdown: string): KnownBlock[];