@damian87/omp 0.7.0 → 0.8.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 (37) hide show
  1. package/README.md +29 -0
  2. package/dist/src/cli.js +310 -1
  3. package/dist/src/cli.js.map +1 -1
  4. package/dist/src/env/dotenv.d.ts +41 -0
  5. package/dist/src/env/dotenv.js +112 -0
  6. package/dist/src/env/dotenv.js.map +1 -0
  7. package/dist/src/env/init.d.ts +50 -0
  8. package/dist/src/env/init.js +276 -0
  9. package/dist/src/env/init.js.map +1 -0
  10. package/dist/src/gateway/connector.d.ts +37 -0
  11. package/dist/src/gateway/connector.js +12 -0
  12. package/dist/src/gateway/connector.js.map +1 -0
  13. package/dist/src/gateway/connectors/slack.d.ts +69 -0
  14. package/dist/src/gateway/connectors/slack.js +159 -0
  15. package/dist/src/gateway/connectors/slack.js.map +1 -0
  16. package/dist/src/gateway/registry.d.ts +29 -0
  17. package/dist/src/gateway/registry.js +37 -0
  18. package/dist/src/gateway/registry.js.map +1 -0
  19. package/dist/src/gateway/runtime.d.ts +58 -0
  20. package/dist/src/gateway/runtime.js +105 -0
  21. package/dist/src/gateway/runtime.js.map +1 -0
  22. package/dist/src/jira.js +2 -14
  23. package/dist/src/jira.js.map +1 -1
  24. package/dist/src/slack/config.d.ts +32 -0
  25. package/dist/src/slack/config.js +52 -0
  26. package/dist/src/slack/config.js.map +1 -0
  27. package/dist/src/slack/handler.d.ts +48 -0
  28. package/dist/src/slack/handler.js +68 -0
  29. package/dist/src/slack/handler.js.map +1 -0
  30. package/dist/src/slack/serve.d.ts +8 -0
  31. package/dist/src/slack/serve.js +7 -0
  32. package/dist/src/slack/serve.js.map +1 -0
  33. package/dist/src/team/tmux.d.ts +1 -0
  34. package/dist/src/team/tmux.js +9 -0
  35. package/dist/src/team/tmux.js.map +1 -1
  36. package/docs/slack-setup.md +144 -0
  37. package/package.json +3 -2
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Gateway runtime. Starts a set of {@link Connector}s in parallel, blocks on
3
+ * SIGINT/SIGTERM, then stops them via Promise.allSettled so one failing stop
4
+ * cannot strand the rest.
5
+ *
6
+ * Signal handling is injectable so tests can drive shutdown without sending
7
+ * real signals to the test runner.
8
+ */
9
+ import type { Connector, ConnectorStatus } from "./connector.js";
10
+ export interface RunGatewayOptions {
11
+ /** Connectors to run. Order is preserved in status output. */
12
+ connectors: Connector[];
13
+ /**
14
+ * Returns a promise that resolves when the runtime should shut down.
15
+ * Default: resolves on SIGINT or SIGTERM.
16
+ */
17
+ waitForShutdown?: () => Promise<void>;
18
+ /** Logger; defaults to console.error so info lines never pollute stdout JSON. */
19
+ log?: (msg: string) => void;
20
+ }
21
+ export interface GatewayStatusReport {
22
+ ready: boolean;
23
+ connectors: Array<{
24
+ name: string;
25
+ } & ConnectorStatus>;
26
+ }
27
+ /**
28
+ * Compute a status snapshot for a set of connectors. Pure — no I/O. The
29
+ * aggregate `ready` is true only when every connector reports ready.
30
+ */
31
+ export declare function getGatewayStatus(connectors: Connector[]): GatewayStatusReport;
32
+ /**
33
+ * Resolve on SIGINT/SIGTERM. Exported so it can be tested without sending
34
+ * real signals to the test runner: tests inject a fake `proc` with the same
35
+ * shape as `process` and assert listener attach/detach.
36
+ */
37
+ export declare function waitForSignals(proc?: Pick<NodeJS.Process, "off" | "once">, log?: (msg: string) => void): Promise<void>;
38
+ /**
39
+ * Run the gateway until shutdown. Returns when all connectors have stopped.
40
+ * Throws if no connectors are provided — callers should fail loudly when their
41
+ * `--only` filter or env config produced an empty set.
42
+ */
43
+ export declare function runGateway(opts: RunGatewayOptions): Promise<void>;
44
+ /**
45
+ * Build a filtered list of connectors from a registry by name. Names not in
46
+ * the registry are reported back so the caller can decide whether to error.
47
+ */
48
+ export declare function selectConnectors<T extends {
49
+ name: string;
50
+ }>(registry: Record<string, () => T>, names: string[]): {
51
+ connectors: T[];
52
+ unknown: string[];
53
+ };
54
+ /**
55
+ * Parse a comma-separated `--only` value into a list of trimmed, non-empty
56
+ * connector names.
57
+ */
58
+ export declare function parseOnlyFlag(value: string | undefined): string[] | undefined;
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Compute a status snapshot for a set of connectors. Pure — no I/O. The
3
+ * aggregate `ready` is true only when every connector reports ready.
4
+ */
5
+ export function getGatewayStatus(connectors) {
6
+ const rows = connectors.map((c) => {
7
+ const s = c.status();
8
+ return { name: c.name, ready: s.ready, detail: s.detail };
9
+ });
10
+ return { ready: rows.length > 0 && rows.every((r) => r.ready), connectors: rows };
11
+ }
12
+ /**
13
+ * Resolve on SIGINT/SIGTERM. Exported so it can be tested without sending
14
+ * real signals to the test runner: tests inject a fake `proc` with the same
15
+ * shape as `process` and assert listener attach/detach.
16
+ */
17
+ export function waitForSignals(proc = process, log = (m) => console.error(m)) {
18
+ return new Promise((resolve) => {
19
+ const onSig = (sig) => {
20
+ // Detach both listeners so a second signal doesn't double-resolve.
21
+ proc.off("SIGINT", onSig);
22
+ proc.off("SIGTERM", onSig);
23
+ // Log to stderr so JSON consumers on stdout aren't disturbed.
24
+ log(`omp gateway: received ${sig}, shutting down…`);
25
+ resolve();
26
+ };
27
+ proc.once("SIGINT", onSig);
28
+ proc.once("SIGTERM", onSig);
29
+ });
30
+ }
31
+ /**
32
+ * Run the gateway until shutdown. Returns when all connectors have stopped.
33
+ * Throws if no connectors are provided — callers should fail loudly when their
34
+ * `--only` filter or env config produced an empty set.
35
+ */
36
+ export async function runGateway(opts) {
37
+ const log = opts.log ?? ((m) => console.error(m));
38
+ const connectors = opts.connectors;
39
+ if (connectors.length === 0) {
40
+ throw new Error("no connectors configured — set tokens or pass --only <name>");
41
+ }
42
+ // Start all in parallel; surface per-connector failure but let the rest run.
43
+ // A reasonable default is "best-effort start": if one connector cannot come
44
+ // up, the others continue and `gateway status` reports the failure.
45
+ const startResults = await Promise.allSettled(connectors.map((c) => c.start()));
46
+ startResults.forEach((r, i) => {
47
+ if (r.status === "rejected") {
48
+ const msg = r.reason instanceof Error ? r.reason.message : String(r.reason);
49
+ log(`omp gateway: connector "${connectors[i].name}" failed to start: ${msg}`);
50
+ }
51
+ else {
52
+ log(`omp gateway: connector "${connectors[i].name}" ready`);
53
+ }
54
+ });
55
+ const ready = connectors.filter((_, i) => startResults[i].status === "fulfilled");
56
+ if (ready.length === 0) {
57
+ // Nothing came up. Even failed start()s may have allocated resources, and
58
+ // stop() is required to be idempotent — call it on every connector before
59
+ // surfacing the error, so the runtime upholds its own lifecycle contract.
60
+ await Promise.allSettled(connectors.map((c) => c.stop()));
61
+ throw new Error("all gateway connectors failed to start");
62
+ }
63
+ const wait = opts.waitForShutdown ?? (() => waitForSignals());
64
+ // try/finally guarantees stop() runs even if waitForShutdown rejects (e.g.
65
+ // an injected wait throws, or a signal handler propagates an error).
66
+ try {
67
+ await wait();
68
+ }
69
+ finally {
70
+ // Stop everything — including connectors that never started, since stop()
71
+ // is required to be idempotent.
72
+ await Promise.allSettled(connectors.map((c) => c.stop()));
73
+ }
74
+ }
75
+ /**
76
+ * Build a filtered list of connectors from a registry by name. Names not in
77
+ * the registry are reported back so the caller can decide whether to error.
78
+ */
79
+ export function selectConnectors(registry, names) {
80
+ const unknown = [];
81
+ const connectors = [];
82
+ for (const name of names) {
83
+ const factory = registry[name];
84
+ if (!factory) {
85
+ unknown.push(name);
86
+ continue;
87
+ }
88
+ connectors.push(factory());
89
+ }
90
+ return { connectors, unknown };
91
+ }
92
+ /**
93
+ * Parse a comma-separated `--only` value into a list of trimmed, non-empty
94
+ * connector names.
95
+ */
96
+ export function parseOnlyFlag(value) {
97
+ if (value === undefined)
98
+ return undefined;
99
+ const parts = value
100
+ .split(",")
101
+ .map((s) => s.trim())
102
+ .filter((s) => s.length > 0);
103
+ return parts.length === 0 ? undefined : parts;
104
+ }
105
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/gateway/runtime.ts"],"names":[],"mappings":"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"}
package/dist/src/jira.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { existsSync, readFileSync } from 'node:fs';
2
2
  import { homedir } from 'node:os';
3
3
  import { dirname, isAbsolute, join, resolve } from 'node:path';
4
+ import { parseDotEnv } from './env/dotenv.js';
4
5
  const DEFAULT_TRANSITIONS = {
5
6
  planned: 'To Do',
6
7
  in_progress: 'In Progress',
@@ -21,20 +22,7 @@ export function loadDotEnv(cwd = process.cwd()) {
21
22
  const path = join(cwd, '.env');
22
23
  if (!existsSync(path))
23
24
  return {};
24
- const env = {};
25
- for (const rawLine of readFileSync(path, 'utf8').split(/\r?\n/)) {
26
- const line = rawLine.trim();
27
- if (!line || line.startsWith('#'))
28
- continue;
29
- const equals = line.indexOf('=');
30
- if (equals === -1)
31
- continue;
32
- const key = line.slice(0, equals).trim();
33
- const value = line.slice(equals + 1).trim().replace(/^['"]|['"]$/g, '');
34
- if (key)
35
- env[key] = value;
36
- }
37
- return env;
25
+ return parseDotEnv(readFileSync(path, 'utf8'));
38
26
  }
39
27
  export function discoverJiraConfig(options = {}, envArg) {
40
28
  const normalized = typeof options === 'string' ? { cwd: options, env: envArg } : options;
@@ -1 +1 @@
1
- {"version":3,"file":"jira.js","sourceRoot":"","sources":["../../src/jira.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jira.js","sourceRoot":"","sources":["../../src/jira.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Slack bridge configuration. Reads tokens + policy from env (mirroring the
3
+ * omp env-config pattern), with optional overrides for tests/flags.
4
+ *
5
+ * Tokens (both required):
6
+ * - SLACK_BOT_TOKEN (xoxb-…) — bot user OAuth token
7
+ * - SLACK_APP_TOKEN (xapp-…) — app-level token with `connections:write` (Socket Mode)
8
+ *
9
+ * Policy (optional):
10
+ * - SLACK_ALLOWED_USERS csv of user IDs; `*` or unset/empty = allow everyone
11
+ * - SLACK_REQUIRE_MENTION "true"/"false" (default true) — require @mention in channels
12
+ * - COPILOT_TMUX_SESSION passthrough to comms session resolution
13
+ */
14
+ export interface SlackConfig {
15
+ botToken: string;
16
+ appToken: string;
17
+ /** [] means allow all; ["*"] also means allow all. */
18
+ allowedUsers: string[];
19
+ /** require an @mention to respond in channels (DMs always respond). */
20
+ requireMention: boolean;
21
+ /** explicit Copilot tmux session name, if set. */
22
+ sessionEnv?: string;
23
+ }
24
+ export interface SlackConfigOverrides {
25
+ botToken?: string;
26
+ appToken?: string;
27
+ }
28
+ /**
29
+ * Load + validate Slack config. Throws a clear error if a token is missing.
30
+ * `env` defaults to process.env; tests can pass a custom map.
31
+ */
32
+ export declare function loadSlackConfig(overrides?: SlackConfigOverrides, env?: NodeJS.ProcessEnv): SlackConfig;
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Slack bridge configuration. Reads tokens + policy from env (mirroring the
3
+ * omp env-config pattern), with optional overrides for tests/flags.
4
+ *
5
+ * Tokens (both required):
6
+ * - SLACK_BOT_TOKEN (xoxb-…) — bot user OAuth token
7
+ * - SLACK_APP_TOKEN (xapp-…) — app-level token with `connections:write` (Socket Mode)
8
+ *
9
+ * Policy (optional):
10
+ * - SLACK_ALLOWED_USERS csv of user IDs; `*` or unset/empty = allow everyone
11
+ * - SLACK_REQUIRE_MENTION "true"/"false" (default true) — require @mention in channels
12
+ * - COPILOT_TMUX_SESSION passthrough to comms session resolution
13
+ */
14
+ function parseBool(value, fallback) {
15
+ if (value === undefined || value === "")
16
+ return fallback;
17
+ return !["0", "false", "no", "off"].includes(value.trim().toLowerCase());
18
+ }
19
+ function parseCsv(value) {
20
+ return (value ?? "")
21
+ .split(",")
22
+ .map((s) => s.trim())
23
+ .filter((s) => s.length > 0);
24
+ }
25
+ /**
26
+ * Load + validate Slack config. Throws a clear error if a token is missing.
27
+ * `env` defaults to process.env; tests can pass a custom map.
28
+ */
29
+ export function loadSlackConfig(overrides = {}, env = process.env) {
30
+ const botToken = (overrides.botToken ?? env.SLACK_BOT_TOKEN ?? "").trim();
31
+ const appToken = (overrides.appToken ?? env.SLACK_APP_TOKEN ?? "").trim();
32
+ if (!botToken) {
33
+ throw new Error("SLACK_BOT_TOKEN is required (xoxb-… bot token)");
34
+ }
35
+ if (!botToken.startsWith("xoxb-")) {
36
+ throw new Error("SLACK_BOT_TOKEN looks wrong — expected a bot token starting with 'xoxb-'");
37
+ }
38
+ if (!appToken) {
39
+ throw new Error("SLACK_APP_TOKEN is required (xapp-… app-level token with connections:write)");
40
+ }
41
+ if (!appToken.startsWith("xapp-")) {
42
+ throw new Error("SLACK_APP_TOKEN looks wrong — expected an app-level token starting with 'xapp-'");
43
+ }
44
+ return {
45
+ botToken,
46
+ appToken,
47
+ allowedUsers: parseCsv(env.SLACK_ALLOWED_USERS),
48
+ requireMention: parseBool(env.SLACK_REQUIRE_MENTION, true),
49
+ sessionEnv: env.COPILOT_TMUX_SESSION,
50
+ };
51
+ }
52
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/slack/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAkBH,SAAS,SAAS,CAAC,KAAyB,EAAE,QAAiB;IAC7D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,QAAQ,CAAC;IACzD,OAAO,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,QAAQ,CAAC,KAAyB;IACzC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;SACjB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,YAAkC,EAAE,EACpC,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,QAAQ,GAAG,CAAC,SAAS,CAAC,QAAQ,IAAI,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1E,MAAM,QAAQ,GAAG,CAAC,SAAS,CAAC,QAAQ,IAAI,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;IACrG,CAAC;IACD,OAAO;QACL,QAAQ;QACR,QAAQ;QACR,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC;QAC/C,cAAc,EAAE,SAAS,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC;QAC1D,UAAU,EAAE,GAAG,CAAC,oBAAoB;KACrC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Pure, testable core of the Slack → Copilot bridge. NO Slack/Bolt import here
3
+ * so the decision logic can be unit-tested with injected fakes.
4
+ *
5
+ * Mirrors a lean subset of Hermes' Slack behavioral contract:
6
+ * - DMs always respond; channels respond only on @mention (unless requireMention=false).
7
+ * - Unauthorized users (not in the allowlist) are silently ignored.
8
+ * - The bot's own `<@BOT>` mention is stripped from the text before forwarding.
9
+ * - Resolution / Copilot errors come back as friendly Slack replies (never silent failure
10
+ * of a request we accepted).
11
+ */
12
+ import type { ResolveSessionResult } from "../comms/resolve-session.js";
13
+ import type { AskResult } from "../comms/index.js";
14
+ export interface SlackMessageInput {
15
+ text: string;
16
+ userId?: string;
17
+ channelType: "im" | "channel";
18
+ /** true when the bot was @mentioned (channel messages) */
19
+ isMention: boolean;
20
+ /** thread to reply in (event.thread_ts ?? event.ts) */
21
+ threadTs?: string;
22
+ /** bot's own user id, for stripping the mention token */
23
+ botUserId?: string;
24
+ }
25
+ export interface SlackHandlerDeps {
26
+ resolve: (opts: {
27
+ flag?: string;
28
+ env?: string;
29
+ }) => ResolveSessionResult;
30
+ ask: (session: string, text: string) => Promise<AskResult>;
31
+ /** [] / undefined / ["*"] = allow all. */
32
+ allowedUsers?: string[] | null;
33
+ /** require @mention in channels (default true). */
34
+ requireMention?: boolean;
35
+ /** COPILOT_TMUX_SESSION passthrough for resolution. */
36
+ sessionEnv?: string;
37
+ }
38
+ export interface SlackReply {
39
+ /** text to post back, or null to stay silent. */
40
+ reply: string | null;
41
+ /** thread to reply in. */
42
+ threadTs?: string;
43
+ }
44
+ /** Allowlist check: empty/unset or containing "*" = allow everyone. */
45
+ export declare function isUserAllowed(userId: string | undefined, allowed?: string[] | null): boolean;
46
+ /** Strip a `<@BOTID>` mention (and tidy whitespace) from message text. */
47
+ export declare function stripMention(text: string, botUserId?: string): string;
48
+ export declare function handleSlackMessage(input: SlackMessageInput, deps: SlackHandlerDeps): Promise<SlackReply>;
@@ -0,0 +1,68 @@
1
+ function errMsg(err) {
2
+ return err instanceof Error ? err.message : String(err);
3
+ }
4
+ /** Allowlist check: empty/unset or containing "*" = allow everyone. */
5
+ export function isUserAllowed(userId, allowed) {
6
+ if (!allowed || allowed.length === 0)
7
+ return true;
8
+ if (allowed.includes("*"))
9
+ return true;
10
+ return userId != null && allowed.includes(userId);
11
+ }
12
+ /** Strip a `<@BOTID>` mention (and tidy whitespace) from message text. */
13
+ export function stripMention(text, botUserId) {
14
+ let out = text ?? "";
15
+ if (botUserId) {
16
+ // Literal replace (no RegExp) — botUserId is external; avoid regex injection.
17
+ out = out.split(`<@${botUserId}>`).join(" ");
18
+ }
19
+ return out.replace(/\s+/g, " ").trim();
20
+ }
21
+ export async function handleSlackMessage(input, deps) {
22
+ const threadTs = input.threadTs;
23
+ // 1. Authorization — silently ignore non-allowlisted users.
24
+ if (!isUserAllowed(input.userId, deps.allowedUsers)) {
25
+ return { reply: null, threadTs };
26
+ }
27
+ // 2. Respond gate — DMs always; channels only on @mention (unless disabled).
28
+ const requireMention = deps.requireMention ?? true;
29
+ if (input.channelType === "channel" && requireMention && !input.isMention) {
30
+ return { reply: null, threadTs };
31
+ }
32
+ // 3. Clean the text.
33
+ const text = stripMention(input.text, input.botUserId);
34
+ if (!text) {
35
+ return { reply: null, threadTs };
36
+ }
37
+ // 4. Resolve the Copilot session. A request we accepted must never reject
38
+ // silently — turn thrown errors into a friendly reply.
39
+ let resolved;
40
+ try {
41
+ resolved = deps.resolve({ env: deps.sessionEnv });
42
+ }
43
+ catch (err) {
44
+ return { reply: `:warning: could not resolve copilot session: ${errMsg(err)}`, threadTs };
45
+ }
46
+ if (!resolved.ok) {
47
+ return { reply: `:warning: ${resolved.error}`, threadTs };
48
+ }
49
+ // 5. Ask Copilot.
50
+ let result;
51
+ try {
52
+ result = await deps.ask(resolved.session, text);
53
+ }
54
+ catch (err) {
55
+ return { reply: `:warning: copilot request failed: ${errMsg(err)}`, threadTs };
56
+ }
57
+ if (!result.ok) {
58
+ return { reply: `:warning: ${result.error ?? "copilot error"}`, threadTs };
59
+ }
60
+ if (result.timedOut) {
61
+ const partial = (result.text ?? "").trim();
62
+ const note = ":hourglass: Copilot is still working — ask again in a moment.";
63
+ return { reply: partial ? `${note}\n\n${partial}` : note, threadTs };
64
+ }
65
+ const reply = (result.text ?? "").trim() || "_(no output)_";
66
+ return { reply, threadTs };
67
+ }
68
+ //# sourceMappingURL=handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/slack/handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Thin wrapper that runs ONLY the Slack connector via the gateway runtime.
3
+ * Kept so `omp slack serve` (CLI alias) and any external callers of
4
+ * `runSlackBot()` keep working after the gateway refactor. All real lifecycle
5
+ * logic now lives in src/gateway/runtime.ts + src/gateway/connectors/slack.ts.
6
+ */
7
+ import type { SlackConfig } from "./config.js";
8
+ export declare function runSlackBot(config: SlackConfig): Promise<void>;
@@ -0,0 +1,7 @@
1
+ import { createSlackConnector } from "../gateway/connectors/slack.js";
2
+ import { runGateway } from "../gateway/runtime.js";
3
+ export async function runSlackBot(config) {
4
+ const connector = createSlackConnector({ config });
5
+ await runGateway({ connectors: [connector] });
6
+ }
7
+ //# sourceMappingURL=serve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/slack/serve.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAmB;IACnD,MAAM,SAAS,GAAG,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACnD,MAAM,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AAChD,CAAC"}
@@ -18,6 +18,7 @@ export interface TmuxApi {
18
18
  killSession(session: string): TmuxResult;
19
19
  paneDead(target: string): boolean;
20
20
  sessionExists(session: string): boolean;
21
+ listSessions(): string[];
21
22
  }
22
23
  export declare function makeTmux(runner?: TmuxRunner): TmuxApi;
23
24
  export interface WaitForReadyOptions {
@@ -68,6 +68,15 @@ export function makeTmux(runner = tmuxExec) {
68
68
  const r = runner(["has-session", "-t", session]);
69
69
  return r.status === 0;
70
70
  },
71
+ listSessions() {
72
+ const r = runner(["list-sessions", "-F", "#{session_name}"]);
73
+ if (r.status !== 0)
74
+ return [];
75
+ return r.stdout
76
+ .split("\n")
77
+ .map((l) => l.trim())
78
+ .filter((l) => l.length > 0);
79
+ },
71
80
  };
72
81
  }
73
82
  function sleep(ms) {
@@ -1 +1 @@
1
- {"version":3,"file":"tmux.js","sourceRoot":"","sources":["../../../src/team/tmux.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tmux.js","sourceRoot":"","sources":["../../../src/team/tmux.ts"],"names":[],"mappings":"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"}