@buzzie-ai/slack-claude 0.2.1 → 0.4.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.
- package/README.md +8 -4
- package/dist/bot.d.ts +20 -0
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +46 -29
- package/dist/bot.js.map +1 -1
- package/dist/cli.js +8 -0
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -34,9 +34,10 @@ Use `DOTENV_CONFIG_PATH=/path/to/file` to load from a non-default location.
|
|
|
34
34
|
|
|
35
35
|
That's it. The bot connects, prints `⚡️ slack-claude bot online …`, and starts handling:
|
|
36
36
|
|
|
37
|
-
- **@-mentions** in any channel it's been invited to
|
|
38
|
-
- **Direct messages** in DMs
|
|
39
|
-
|
|
37
|
+
- **@-mentions** in any channel it's been invited to (every message — re-mention to continue)
|
|
38
|
+
- **Direct messages** in DMs (every message; no mention needed since there's only one bot per DM)
|
|
39
|
+
|
|
40
|
+
Pass `--follow-threads` to also reply to follow-up messages in any thread it's already in, without needing a re-mention. Default is **off** so multi-bot threads behave correctly (only the addressed bot answers).
|
|
40
41
|
|
|
41
42
|
## Requirements
|
|
42
43
|
|
|
@@ -89,7 +90,8 @@ Options:
|
|
|
89
90
|
| `--permission-mode <mode>` | | | `acceptEdits` \| `auto` \| `bypassPermissions` \| `default` \| `dontAsk` \| `plan` |
|
|
90
91
|
| `--dangerously-skip-permissions` | | | Bypass all Claude permission prompts |
|
|
91
92
|
| `--tools <spec>` | | | `""` (none), `"default"` (all), or `"Bash,Edit,Read"` |
|
|
92
|
-
| `--log-level <level>` | | `info` | `debug` \| `info` \| `warn` \| `error` |
|
|
93
|
+
| `--log-level <level>` | | `info` | `debug` \| `info` \| `warn` \| `error` \| `silent` |
|
|
94
|
+
| `--follow-threads` | | off | After a mention, keep answering follow-ups in that thread without re-mention. Off by default so multi-bot threads behave correctly. |
|
|
93
95
|
| `-h, --help` | | | Print help |
|
|
94
96
|
| `-v, --version` | | | Print version |
|
|
95
97
|
|
|
@@ -131,6 +133,8 @@ await bot.stop();
|
|
|
131
133
|
- **Slack message size cap is 40 000 chars.** Very long Claude replies will be truncated by Slack; chunking isn't done yet.
|
|
132
134
|
- **No streaming yet.** Replies post once Claude finishes the turn. (Open issue: stream-and-edit mode.)
|
|
133
135
|
- **Logging.** Default level is `info`: incoming Slack messages, Claude tool calls, outbound posts, lifecycle events. Run with `--log-level debug` to also see filtered-out events, reaction state, and Bolt internals. `--log-level silent` for cron jobs.
|
|
136
|
+
- **Bot-to-bot conversations are allowed.** Other bots can @-mention us, DM us, or talk to us in threads, and we treat them like any other participant. The only filter is *self* — we never respond to our own posts (matched on both our `bot_id` and our `user_id`). Slack's `bot_message` subtype messages (legacy webhook bots) are also accepted.
|
|
137
|
+
- **Loop risk.** Two LLM-backed bots that both @-mention each other in their replies will keep pinging until something stops them. There's no built-in turn limit yet — if you point two slack-claude bots at each other, give Claude a system prompt that discourages outbound mentions, or kill one of the processes. A `--max-turns-per-thread` flag is on the roadmap.
|
|
134
138
|
- **The `claude` CLI must already be logged in.** This bridge does not handle auth.
|
|
135
139
|
|
|
136
140
|
## License
|
package/dist/bot.d.ts
CHANGED
|
@@ -21,6 +21,17 @@ export interface SlackClaudeBotOptions {
|
|
|
21
21
|
* noise; flip to `debug` to see Bolt internals as well.
|
|
22
22
|
*/
|
|
23
23
|
logLevel?: LogLevel;
|
|
24
|
+
/**
|
|
25
|
+
* If true, once we've been @-mentioned in a thread we'll continue replying
|
|
26
|
+
* to subsequent messages in that thread without needing to be re-mentioned.
|
|
27
|
+
*
|
|
28
|
+
* Default `false`: in channels we *only* reply when explicitly @-mentioned.
|
|
29
|
+
* That makes multi-bot threads behave correctly — only the addressed bot
|
|
30
|
+
* answers — at the cost of slightly more typing in single-bot threads.
|
|
31
|
+
*
|
|
32
|
+
* DMs always reply regardless; this option only affects channel threads.
|
|
33
|
+
*/
|
|
34
|
+
followThreads?: boolean;
|
|
24
35
|
}
|
|
25
36
|
/**
|
|
26
37
|
* Bridges a Slack workspace to Claude Code over Socket Mode.
|
|
@@ -33,7 +44,10 @@ export declare class SlackClaudeBot {
|
|
|
33
44
|
private readonly opts;
|
|
34
45
|
private readonly sessions;
|
|
35
46
|
private readonly log;
|
|
47
|
+
/** Our bot's user account ID (e.g. U0B28GW…). `auth.test` -> `user_id`. */
|
|
36
48
|
private botUserId;
|
|
49
|
+
/** Our bot integration's bot_id (e.g. B0123ABC…). `auth.test` -> `bot_id`. */
|
|
50
|
+
private ourBotId;
|
|
37
51
|
private started;
|
|
38
52
|
constructor(opts: SlackClaudeBotOptions);
|
|
39
53
|
/** Connect to Slack and start receiving events. Resolves once the socket is up. */
|
|
@@ -41,6 +55,12 @@ export declare class SlackClaudeBot {
|
|
|
41
55
|
/** Disconnect from Slack and close every Claude session. */
|
|
42
56
|
stop(): Promise<void>;
|
|
43
57
|
private registerHandlers;
|
|
58
|
+
/**
|
|
59
|
+
* True if the given message identifiers belong to *this* bot (so we should
|
|
60
|
+
* not respond to it). Other bots are explicitly NOT self — they're treated
|
|
61
|
+
* like any other participant.
|
|
62
|
+
*/
|
|
63
|
+
private isSelf;
|
|
44
64
|
private handleIncoming;
|
|
45
65
|
private createSession;
|
|
46
66
|
private threadKey;
|
package/dist/bot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAU,KAAK,QAAQ,EAAwB,MAAM,UAAU,CAAC;AAIvE,MAAM,WAAW,qBAAqB;IACpC,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAU,KAAK,QAAQ,EAAwB,MAAM,UAAU,CAAC;AAIvE,MAAM,WAAW,qBAAqB;IACpC,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAOD;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAwB;IAC7C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,2EAA2E;IAC3E,OAAO,CAAC,SAAS,CAAuB;IACxC,8EAA8E;IAC9E,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,OAAO,CAAS;gBAEZ,IAAI,EAAE,qBAAqB;IAkBvC,mFAAmF;IAC7E,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB5B,4DAA4D;IACtD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB3B,OAAO,CAAC,gBAAgB;IAkGxB;;;;OAIG;IACH,OAAO,CAAC,MAAM;YAMA,cAAc;IAuG5B,OAAO,CAAC,aAAa;IA4BrB,OAAO,CAAC,SAAS;IAIjB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,gBAAgB;IAaxB,kFAAkF;IAClF,OAAO,CAAC,SAAS;YASH,YAAY;YAWZ,SAAS;CAexB"}
|
package/dist/bot.js
CHANGED
|
@@ -18,7 +18,10 @@ class SlackClaudeBot {
|
|
|
18
18
|
opts;
|
|
19
19
|
sessions = new Map();
|
|
20
20
|
log;
|
|
21
|
+
/** Our bot's user account ID (e.g. U0B28GW…). `auth.test` -> `user_id`. */
|
|
21
22
|
botUserId = null;
|
|
23
|
+
/** Our bot integration's bot_id (e.g. B0123ABC…). `auth.test` -> `bot_id`. */
|
|
24
|
+
ourBotId = null;
|
|
22
25
|
started = false;
|
|
23
26
|
constructor(opts) {
|
|
24
27
|
if (!opts.appToken)
|
|
@@ -43,11 +46,15 @@ class SlackClaudeBot {
|
|
|
43
46
|
return;
|
|
44
47
|
this.log.event('starting Bolt Socket Mode connection…');
|
|
45
48
|
await this.app.start();
|
|
46
|
-
// Resolve the bot's
|
|
49
|
+
// Resolve the bot's identifiers so we can strip self-mentions and ignore
|
|
50
|
+
// our own posts. We need both: the user_id is what shows up on regular
|
|
51
|
+
// messages we post, the bot_id is what shows up on `bot_message`-subtype
|
|
52
|
+
// posts and lets us match self even if Slack omits the user field.
|
|
47
53
|
const auth = await this.app.client.auth.test({ token: this.opts.botToken });
|
|
48
54
|
this.botUserId = auth.user_id ?? null;
|
|
55
|
+
this.ourBotId = auth.bot_id ?? null;
|
|
49
56
|
this.started = true;
|
|
50
|
-
this.log.info(`⚡️ slack-claude online as @${auth.user ?? 'unknown'} (
|
|
57
|
+
this.log.info(`⚡️ slack-claude online as @${auth.user ?? 'unknown'} (user=${this.botUserId ?? '?'}, bot=${this.ourBotId ?? '?'}) in workspace ${auth.team ?? '?'} — listening`);
|
|
51
58
|
}
|
|
52
59
|
/** Disconnect from Slack and close every Claude session. */
|
|
53
60
|
async stop() {
|
|
@@ -68,19 +75,10 @@ class SlackClaudeBot {
|
|
|
68
75
|
// Direct @-mentions in channels the bot is invited to.
|
|
69
76
|
this.app.event('app_mention', async ({ event, client }) => {
|
|
70
77
|
try {
|
|
71
|
-
//
|
|
72
|
-
//
|
|
73
|
-
//
|
|
74
|
-
|
|
75
|
-
if (event.bot_id) {
|
|
76
|
-
this.log.debug(`skip app_mention from bot bot_id=${event.bot_id} user=${event.user ?? '?'}`);
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
if (event.subtype === 'bot_message') {
|
|
80
|
-
this.log.debug(`skip app_mention with subtype=bot_message`);
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
83
|
-
if (this.botUserId && event.user === this.botUserId) {
|
|
78
|
+
// Self-filter only: never respond to our own posts. Other bots are
|
|
79
|
+
// treated as first-class participants — they can mention us and we'll
|
|
80
|
+
// reply just like we would to a human.
|
|
81
|
+
if (this.isSelf(event.bot_id, event.user)) {
|
|
84
82
|
this.log.debug('skip app_mention from self');
|
|
85
83
|
return;
|
|
86
84
|
}
|
|
@@ -89,7 +87,7 @@ class SlackClaudeBot {
|
|
|
89
87
|
ts: event.ts,
|
|
90
88
|
threadTs: event.thread_ts,
|
|
91
89
|
text: event.text ?? '',
|
|
92
|
-
user: event.user,
|
|
90
|
+
user: event.user ?? event.bot_id,
|
|
93
91
|
channelType: 'channel',
|
|
94
92
|
source: 'mention',
|
|
95
93
|
client,
|
|
@@ -103,39 +101,46 @@ class SlackClaudeBot {
|
|
|
103
101
|
// We filter inside the handler to decide whether to actually respond.
|
|
104
102
|
this.app.message(async ({ message, client }) => {
|
|
105
103
|
try {
|
|
106
|
-
//
|
|
107
|
-
|
|
104
|
+
// Allow regular user messages and `bot_message`-subtype posts (legacy
|
|
105
|
+
// webhook bots, app-installed integrations). Skip system events like
|
|
106
|
+
// channel_join, message_changed, file_share, etc.
|
|
107
|
+
if (message.subtype !== undefined && message.subtype !== 'bot_message') {
|
|
108
108
|
this.log.debug(`skip message subtype=${message.subtype}`);
|
|
109
109
|
return;
|
|
110
110
|
}
|
|
111
|
+
// Both GenericMessageEvent and BotMessageEvent expose these fields.
|
|
111
112
|
const m = message;
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
}
|
|
116
|
-
if (this.botUserId && m.user === this.botUserId) {
|
|
113
|
+
// Self-filter: skip our own posts. Other bots fall through to the
|
|
114
|
+
// normal DM / thread / mention routing below.
|
|
115
|
+
if (this.isSelf(m.bot_id, m.user)) {
|
|
117
116
|
this.log.debug('skip message from self');
|
|
118
117
|
return;
|
|
119
118
|
}
|
|
120
119
|
const isDm = m.channel_type === 'im';
|
|
121
120
|
const inExistingThread = m.thread_ts !== undefined && this.sessions.has(this.threadKey(m.channel, m.thread_ts, false));
|
|
122
|
-
const mentionsBot = this.botUserId !==
|
|
121
|
+
const mentionsBot = this.botUserId !== null && (m.text ?? '').includes(`<@${this.botUserId}>`);
|
|
123
122
|
// Skip messages that app_mention will already handle.
|
|
124
123
|
if (mentionsBot) {
|
|
125
124
|
this.log.debug('skip message — will be handled by app_mention');
|
|
126
125
|
return;
|
|
127
126
|
}
|
|
128
|
-
//
|
|
129
|
-
if (
|
|
130
|
-
|
|
131
|
-
|
|
127
|
+
// DMs: always reply (only one bot per DM by construction).
|
|
128
|
+
// Channels: reply only if (a) we were mentioned (handled above), or
|
|
129
|
+
// (b) the user opted into thread follow-up mode AND we already have a
|
|
130
|
+
// session for this thread. Default behavior is mention-only — that's
|
|
131
|
+
// multi-bot safe.
|
|
132
|
+
if (!isDm) {
|
|
133
|
+
if (!this.opts.followThreads || !inExistingThread) {
|
|
134
|
+
this.log.debug(`skip channel message — no mention${this.opts.followThreads ? ' and no active thread session' : ' (followThreads=false)'}`);
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
132
137
|
}
|
|
133
138
|
await this.handleIncoming({
|
|
134
139
|
channel: m.channel,
|
|
135
140
|
ts: m.ts,
|
|
136
141
|
threadTs: m.thread_ts,
|
|
137
142
|
text: m.text ?? '',
|
|
138
|
-
user: m.user,
|
|
143
|
+
user: m.user ?? m.bot_id,
|
|
139
144
|
channelType: isDm ? 'im' : 'channel',
|
|
140
145
|
source: isDm ? 'dm' : 'thread',
|
|
141
146
|
client,
|
|
@@ -149,6 +154,18 @@ class SlackClaudeBot {
|
|
|
149
154
|
this.log.error('Bolt error', err);
|
|
150
155
|
});
|
|
151
156
|
}
|
|
157
|
+
/**
|
|
158
|
+
* True if the given message identifiers belong to *this* bot (so we should
|
|
159
|
+
* not respond to it). Other bots are explicitly NOT self — they're treated
|
|
160
|
+
* like any other participant.
|
|
161
|
+
*/
|
|
162
|
+
isSelf(bot_id, user) {
|
|
163
|
+
if (this.ourBotId && bot_id === this.ourBotId)
|
|
164
|
+
return true;
|
|
165
|
+
if (this.botUserId && user === this.botUserId)
|
|
166
|
+
return true;
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
152
169
|
async handleIncoming(args) {
|
|
153
170
|
const { channel, ts, threadTs, text, user, channelType, source, client } = args;
|
|
154
171
|
const isDm = channelType === 'im';
|
package/dist/bot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -105,6 +105,10 @@ Optional:
|
|
|
105
105
|
Skip permission prompts in Claude Code
|
|
106
106
|
--tools <spec> "" (none), "default" (all), or "Bash,Edit,Read"
|
|
107
107
|
--log-level <level> debug | info | warn | error | silent (default: info)
|
|
108
|
+
--follow-threads After being mentioned in a thread, keep replying
|
|
109
|
+
to messages in that thread without re-mention.
|
|
110
|
+
Default OFF — channels require explicit @-mention
|
|
111
|
+
every time. DMs always reply regardless of this.
|
|
108
112
|
-h, --help Show this help
|
|
109
113
|
-v, --version Show version
|
|
110
114
|
|
|
@@ -168,6 +172,9 @@ function parseArgs(argv) {
|
|
|
168
172
|
case '--log-level':
|
|
169
173
|
out.logLevel = next();
|
|
170
174
|
break;
|
|
175
|
+
case '--follow-threads':
|
|
176
|
+
out.followThreads = true;
|
|
177
|
+
break;
|
|
171
178
|
default:
|
|
172
179
|
console.error(`Unknown option: ${a}`);
|
|
173
180
|
console.error('Run with --help for usage.');
|
|
@@ -231,6 +238,7 @@ async function main() {
|
|
|
231
238
|
systemPrompt: parsed.systemPrompt,
|
|
232
239
|
claudeOptions: claudeOptions,
|
|
233
240
|
logLevel: resolveLogLevel(parsed.logLevel),
|
|
241
|
+
followThreads: parsed.followThreads ?? false,
|
|
234
242
|
});
|
|
235
243
|
const shutdown = async (signal) => {
|
|
236
244
|
console.log(`\nReceived ${signal}, shutting down…`);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4CAA8B;AAC9B,gDAAkC;AAElC,+BAAuC;AAGvC;;;;;;;;;GASG;AACH,SAAS,oBAAoB;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IACtF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO;IAEpC,MAAM,MAAM,GAAI,OAA6D,CAAC,WAAW,CAAC;IAC1F,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,CAAC,OAAO,CAAC,CAAC;YAChB,OAAO;QACT,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,4EAA4E;IAC5E,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5C,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,EAAE,GAAG,CAAC;YAAE,SAAS;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,OAAO,CAAC,GAAG;YAAE,SAAS;QACzC,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACtC,IACE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9C,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAC9C,CAAC;YACD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,MAAM,IAAI,GAAG
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@buzzie-ai/slack-claude",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Slack bot that bridges a Slack workspace to Claude Code via Socket Mode and @buzzie-ai/claude-inject. Receives Slack messages, forwards them to a persistent Claude Code session per thread, and posts replies back.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|