@shuyhere/takotako 0.0.1 → 0.0.21

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 (58) hide show
  1. package/README.md +198 -27
  2. package/dist/auth/allow-from.d.ts +20 -0
  3. package/dist/auth/allow-from.d.ts.map +1 -1
  4. package/dist/auth/allow-from.js +30 -0
  5. package/dist/auth/allow-from.js.map +1 -1
  6. package/dist/channels/channel.d.ts +6 -0
  7. package/dist/channels/channel.d.ts.map +1 -1
  8. package/dist/channels/discord.d.ts.map +1 -1
  9. package/dist/channels/discord.js +31 -7
  10. package/dist/channels/discord.js.map +1 -1
  11. package/dist/channels/telegram.d.ts +1 -0
  12. package/dist/channels/telegram.d.ts.map +1 -1
  13. package/dist/channels/telegram.js +3 -0
  14. package/dist/channels/telegram.js.map +1 -1
  15. package/dist/commands/registry.d.ts.map +1 -1
  16. package/dist/commands/registry.js +40 -0
  17. package/dist/commands/registry.js.map +1 -1
  18. package/dist/core/agent-loop.d.ts.map +1 -1
  19. package/dist/core/agent-loop.js +456 -441
  20. package/dist/core/agent-loop.js.map +1 -1
  21. package/dist/core/message-queue.d.ts.map +1 -1
  22. package/dist/core/message-queue.js +19 -9
  23. package/dist/core/message-queue.js.map +1 -1
  24. package/dist/core/prompt.d.ts.map +1 -1
  25. package/dist/core/prompt.js +3 -1
  26. package/dist/core/prompt.js.map +1 -1
  27. package/dist/core/reactions.d.ts +5 -5
  28. package/dist/core/reactions.js +10 -10
  29. package/dist/core/reactions.js.map +1 -1
  30. package/dist/core/retry-queue.d.ts +2 -0
  31. package/dist/core/retry-queue.d.ts.map +1 -1
  32. package/dist/core/retry-queue.js +15 -0
  33. package/dist/core/retry-queue.js.map +1 -1
  34. package/dist/gateway/compaction.d.ts +1 -0
  35. package/dist/gateway/compaction.d.ts.map +1 -1
  36. package/dist/gateway/compaction.js +5 -1
  37. package/dist/gateway/compaction.js.map +1 -1
  38. package/dist/gateway/gateway.d.ts.map +1 -1
  39. package/dist/gateway/gateway.js +5 -3
  40. package/dist/gateway/gateway.js.map +1 -1
  41. package/dist/gateway/session.d.ts.map +1 -1
  42. package/dist/gateway/session.js +7 -0
  43. package/dist/gateway/session.js.map +1 -1
  44. package/dist/index.js +91 -16
  45. package/dist/index.js.map +1 -1
  46. package/dist/providers/failover.d.ts.map +1 -1
  47. package/dist/providers/failover.js +8 -7
  48. package/dist/providers/failover.js.map +1 -1
  49. package/dist/tools/message.d.ts +10 -0
  50. package/dist/tools/message.d.ts.map +1 -1
  51. package/dist/tools/message.js +61 -13
  52. package/dist/tools/message.js.map +1 -1
  53. package/dist/tools/system-tools.d.ts.map +1 -1
  54. package/dist/tools/system-tools.js +26 -1
  55. package/dist/tools/system-tools.js.map +1 -1
  56. package/docs/INSTALL.md +7 -4
  57. package/docs/channels.md +56 -115
  58. package/package.json +1 -1
package/README.md CHANGED
@@ -19,7 +19,9 @@ Tako is a multi-channel AI agent runtime you can run locally or on a server. It
19
19
 
20
20
  ## Install
21
21
 
22
- ### Option A npm
22
+ > Prerequisite: install **Node.js (>=20)** first, and install **Bun (>=1.0)** if you want to use Bun-based install/dev commands.
23
+
24
+ ### Option A — npm (published package)
23
25
 
24
26
  ```bash
25
27
  npm install -g @shuyhere/takotako
@@ -41,13 +43,13 @@ tako start -d ## preferred: run in background after onboard
41
43
  ### Option B — install from GitHub source
42
44
 
43
45
  ```bash
44
- npm install -g github:shuyhere/tako
46
+ npm install -g github:Korde-AI/tako
45
47
  ```
46
48
 
47
49
  ### Option C — from source
48
50
 
49
51
  ```bash
50
- git clone https://github.com/shuyhere/tako.git
52
+ git clone https://github.com/Korde-AI/tako.git
51
53
  cd tako
52
54
  npm install
53
55
  npm run build
@@ -89,63 +91,232 @@ See **[docs/USAGE.md](docs/USAGE.md)** for full command and workflow docs.
89
91
 
90
92
  ---
91
93
 
92
- ## Recommended setup
94
+ ## Setting up Discord & Telegram
95
+
96
+ Tako connects to Discord and Telegram through bot tokens. The `tako onboard` wizard will walk you through the full setup — you just need a token.
93
97
 
94
- For the best day-to-day control surface, use Discord and invite your bot to a server.
95
- Then run Tako in daemon mode and manage it with slash commands as your live dashboard (`/status`, `/models`, `/agents`, `/queue`, `/usage`).
98
+ **How to get your tokens:**
99
+ **[docs/channels.md](docs/channels.md)** step-by-step guide for Discord and Telegram
100
+
101
+ Once you have your token, run:
96
102
 
97
103
  ```bash
98
104
  tako onboard
99
- tako start -d
100
105
  ```
101
106
 
107
+ And paste it in when prompted.
108
+
102
109
  ---
103
110
 
104
- ## Configuration
111
+ ## Creating Agents
105
112
 
106
- Main config path:
113
+ Tako supports multiple specialized agents, each with their own bot identity, workspace, personality, and skills.
107
114
 
108
- - `~/.tako/tako.json`
115
+ ### How it works
109
116
 
110
- You can bootstrap config via:
117
+ - Each agent gets its own Discord/Telegram bot
118
+ - Agents have isolated workspaces (`~/.tako/workspace-<name>/`)
119
+ - Each workspace has `SOUL.md` (personality), `IDENTITY.md`, `USER.md`, and `memory/`
120
+ - Agents share the same LLM provider but can use different models
111
121
 
112
- ```bash
113
- tako onboard
122
+ ### Use case 1 — Code Agent
123
+
124
+ A dedicated coding assistant that lives in a `#code-help` Discord channel.
125
+
126
+ ```
127
+ Ask Tako: "Create a new agent called code-agent for coding help"
114
128
  ```
115
129
 
116
- Template example:
130
+ - Fixes bugs and stack traces
131
+ - Reviews PRs and code quality
132
+ - Helps with repo structure and CI/CD
133
+ - Only responds when directly `@mentioned`
117
134
 
118
- - `tako.example.json`
135
+ To give it its own Discord bot, create a second bot at [discord.com/developers](https://discord.com/developers/applications) (see **[docs/channels.md](docs/channels.md)**), then run `/setup` in Discord and select `code-agent`.
119
136
 
120
- Reference docs:
137
+ ---
138
+
139
+ ### Use case 2 — Project Manager Agent
140
+
141
+ A PM agent that tracks tasks, milestones, and project status across sessions.
142
+
143
+ ```
144
+ Ask Tako: "Create a project manager agent"
145
+ ```
121
146
 
122
- - **[docs/configuration.md](docs/configuration.md)**
147
+ - Remembers your projects and phases across sessions
148
+ - Plans sprints, tracks blockers, and summarizes progress
149
+ - Lives in a dedicated `#project-management` channel
150
+ - Can coordinate work across other agents
123
151
 
124
152
  ---
125
153
 
126
- ## Skills
154
+ ### Use case 3 — Research Agent
127
155
 
128
- Skill directory structure:
156
+ An agent that searches the web, reads papers, and summarizes findings.
157
+
158
+ ```
159
+ Ask Tako: "Create a research agent"
160
+ ```
161
+
162
+ - Searches the web and fetches URLs
163
+ - Summarizes papers and long documents
164
+ - Answers deep questions with cited sources
165
+ - Can be restricted to read-only tools via role config
166
+
167
+ ---
168
+
169
+ ## Creating Skills
170
+
171
+ Skills extend Tako with new capabilities. A skill is a `SKILL.md` file (instructions for the agent) plus optional custom tools.
172
+
173
+ ### Skill structure
129
174
 
130
175
  ```text
131
176
  skills/my-skill/
177
+ ├── SKILL.md ← instructions + metadata (required)
178
+ └── tools/
179
+ └── my-tool.mjs ← custom tool (optional)
180
+ ```
181
+
182
+ ### SKILL.md format
183
+
184
+ ```markdown
185
+ ---
186
+ name: my-skill
187
+ description: What this skill does and when to use it
188
+ ---
189
+
190
+ # My Skill
191
+
192
+ Instructions for the agent go here in plain English.
193
+ Tell it what to do, how to do it, and what output to produce.
194
+ ```
195
+
196
+ ### Use case 1 — Daily Standup Skill
197
+
198
+ Automatically posts a daily standup summary to your Discord channel every morning.
199
+
200
+ ```markdown
201
+ ---
202
+ name: daily-standup
203
+ description: Post a daily standup summary to the team Discord channel every morning
204
+ ---
205
+
206
+ # Daily Standup
207
+
208
+ Every morning at 9am, post a standup to the team channel:
209
+ 1. What was completed yesterday
210
+ 2. What's planned for today
211
+ 3. Any blockers
212
+
213
+ Format it as a clean Discord message with bullet points.
214
+ ```
215
+
216
+ Install it:
217
+
218
+ ```bash
219
+ mkdir -p ~/.tako/skills/daily-standup
220
+ cp skills/daily-standup/SKILL.md ~/.tako/skills/daily-standup/
221
+ tako restart
222
+ ```
223
+
224
+ ---
225
+
226
+ ### Use case 2 — Code Review Skill
227
+
228
+ Reviews GitHub pull requests when a PR link is shared in chat.
229
+
230
+ ```markdown
231
+ ---
232
+ name: code-review
233
+ description: Review GitHub pull requests for bugs, security issues, and best practices
234
+ ---
235
+
236
+ # Code Review
237
+
238
+ When given a GitHub PR URL:
239
+ 1. Fetch the diff
240
+ 2. Review for: correctness, security, performance, readability
241
+ 3. Provide structured feedback with specific line-level comments
242
+ 4. Rate the PR: Approve / Request Changes / Comment
243
+ ```
244
+
245
+ ---
246
+
247
+ ### Use case 3 — Custom Tool Skill
248
+
249
+ A skill with a custom Node.js tool that calls an external API.
250
+
251
+ ```text
252
+ skills/weather/
132
253
  ├── SKILL.md
133
254
  └── tools/
134
- └── my-tool.mjs
255
+ └── get-weather.mjs
256
+ ```
257
+
258
+ `SKILL.md`:
259
+ ```markdown
260
+ ---
261
+ name: weather
262
+ description: Get current weather for any city
263
+ ---
264
+
265
+ When asked about weather, use the get-weather tool with the city name.
266
+ Report temperature, conditions, and a brief forecast.
135
267
  ```
136
268
 
137
- - `SKILL.md` frontmatter controls metadata, triggers, and command dispatch
138
- - tools are loaded dynamically
269
+ `tools/get-weather.mjs`:
270
+ ```javascript
271
+ export const name = 'get-weather';
272
+ export const description = 'Get current weather for a city';
273
+ export const parameters = {
274
+ type: 'object',
275
+ properties: {
276
+ city: { type: 'string', description: 'City name' }
277
+ },
278
+ required: ['city']
279
+ };
280
+
281
+ export async function execute({ city }) {
282
+ const res = await fetch(`https://wttr.in/${city}?format=j1`);
283
+ const data = await res.json();
284
+ return { output: JSON.stringify(data.current_condition[0]) };
285
+ }
286
+ ```
287
+
288
+ See **[docs/skills.md](docs/skills.md)** for the full skills reference.
289
+
290
+ ---
291
+
292
+ ## Recommended setup
139
293
 
140
- See:
294
+ For the best day-to-day experience, use Discord and invite your bot to a server. Then run Tako in daemon mode and manage it with slash commands as your live dashboard (`/status`, `/models`, `/agents`, `/queue`, `/usage`).
141
295
 
142
- - **[docs/skills.md](docs/skills.md)**
296
+ ```bash
297
+ tako onboard
298
+ tako start -d
299
+ ```
143
300
 
144
301
  ---
145
302
 
146
- ## Developer guide
303
+ ## Configuration
147
304
 
148
- If you want to contribute or run Tako in dev mode:
305
+ Main config path: `~/.tako/tako.json`
306
+
307
+ Bootstrap via:
308
+
309
+ ```bash
310
+ tako onboard
311
+ ```
312
+
313
+ Template: `tako.example.json`
314
+
315
+ Reference docs: **[docs/configuration.md](docs/configuration.md)**
316
+
317
+ ---
318
+
319
+ ## Developer guide
149
320
 
150
321
  - **[docs/DEVELOPMENT.md](docs/DEVELOPMENT.md)**
151
322
  - **[CONTRIBUTING.md](CONTRIBUTING.md)**
@@ -156,7 +327,7 @@ If you want to contribute or run Tako in dev mode:
156
327
 
157
328
  - Keep `~/.tako/tako.json` and tokens private
158
329
  - Use restrictive tool profile in production (`minimal`/`coding` where possible)
159
- - Restrict Discord/Telegram bot scopes and allowed users/channels
330
+ - Restrict bot access using the allowlist — only users you trust can talk to your agents
160
331
 
161
332
  ---
162
333
 
@@ -9,12 +9,18 @@
9
9
  * - "allowlist": only listed user IDs are permitted
10
10
  *
11
11
  * The owner (first user to onboard) is always allowed.
12
+ *
13
+ * Claim flow:
14
+ * - If no allowlist exists (unclaimed), the first user to run /claim becomes the owner.
15
+ * - After claim, the bot locks to allowlist mode. No one else can /claim again.
12
16
  */
13
17
  import type { Tool } from '../tools/tool.js';
14
18
  export type AllowFromMode = 'allowlist' | 'open';
15
19
  export interface AllowFromConfig {
16
20
  allowedUserIds: string[];
17
21
  mode: AllowFromMode;
22
+ /** True once /claim has been used — prevents re-claiming. */
23
+ claimed?: boolean;
18
24
  }
19
25
  export declare function loadAllowFrom(channel: string, agentId: string): Promise<AllowFromConfig>;
20
26
  export declare function saveAllowFrom(channel: string, agentId: string, config: AllowFromConfig): Promise<void>;
@@ -23,5 +29,19 @@ export declare function saveAllowFrom(channel: string, agentId: string, config:
23
29
  * Returns true if allowed, false if blocked.
24
30
  */
25
31
  export declare function isUserAllowed(channel: string, agentId: string, userId: string): Promise<boolean>;
32
+ /**
33
+ * Check if this channel/agent has already been claimed by an owner.
34
+ * An unclaimed bot is in 'open' mode with no allowlist and no claimed flag.
35
+ */
36
+ export declare function isClaimed(channel: string, agentId: string): Promise<boolean>;
37
+ /**
38
+ * Claim ownership of this channel/agent.
39
+ * Only works if not already claimed — first user wins.
40
+ * Returns true on success, false if already claimed.
41
+ */
42
+ export declare function claimOwner(channel: string, agentId: string, userId: string): Promise<{
43
+ success: boolean;
44
+ alreadyClaimed: boolean;
45
+ }>;
26
46
  export declare function createAllowFromTools(): Tool[];
27
47
  //# sourceMappingURL=allow-from.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"allow-from.d.ts","sourceRoot":"","sources":["../../src/auth/allow-from.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,OAAO,KAAK,EAAE,IAAI,EAA2B,MAAM,kBAAkB,CAAC;AAItE,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,MAAM,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,IAAI,EAAE,aAAa,CAAC;CACrB;AAcD,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAW9F;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5G;AAID;;;GAGG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CAIlB;AAID,wBAAgB,oBAAoB,IAAI,IAAI,EAAE,CA4E7C"}
1
+ {"version":3,"file":"allow-from.d.ts","sourceRoot":"","sources":["../../src/auth/allow-from.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,KAAK,EAAE,IAAI,EAA2B,MAAM,kBAAkB,CAAC;AAItE,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,MAAM,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,IAAI,EAAE,aAAa,CAAC;IACpB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAcD,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAW9F;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5G;AAID;;;GAGG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CAIlB;AAID;;;GAGG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGlF;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAE,CAAC,CAWxD;AAID,wBAAgB,oBAAoB,IAAI,IAAI,EAAE,CA4E7C"}
@@ -9,6 +9,10 @@
9
9
  * - "allowlist": only listed user IDs are permitted
10
10
  *
11
11
  * The owner (first user to onboard) is always allowed.
12
+ *
13
+ * Claim flow:
14
+ * - If no allowlist exists (unclaimed), the first user to run /claim becomes the owner.
15
+ * - After claim, the bot locks to allowlist mode. No one else can /claim again.
12
16
  */
13
17
  import { homedir } from 'node:os';
14
18
  import { join } from 'node:path';
@@ -52,6 +56,32 @@ export async function isUserAllowed(channel, agentId, userId) {
52
56
  return true;
53
57
  return config.allowedUserIds.includes(userId);
54
58
  }
59
+ // ─── Claim ──────────────────────────────────────────────────────────
60
+ /**
61
+ * Check if this channel/agent has already been claimed by an owner.
62
+ * An unclaimed bot is in 'open' mode with no allowlist and no claimed flag.
63
+ */
64
+ export async function isClaimed(channel, agentId) {
65
+ const config = await loadAllowFrom(channel, agentId);
66
+ return config.claimed === true || (config.mode === 'allowlist' && config.allowedUserIds.length > 0);
67
+ }
68
+ /**
69
+ * Claim ownership of this channel/agent.
70
+ * Only works if not already claimed — first user wins.
71
+ * Returns true on success, false if already claimed.
72
+ */
73
+ export async function claimOwner(channel, agentId, userId) {
74
+ const already = await isClaimed(channel, agentId);
75
+ if (already) {
76
+ return { success: false, alreadyClaimed: true };
77
+ }
78
+ await saveAllowFrom(channel, agentId, {
79
+ allowedUserIds: [userId],
80
+ mode: 'allowlist',
81
+ claimed: true,
82
+ });
83
+ return { success: true, alreadyClaimed: false };
84
+ }
55
85
  // ─── Tools ──────────────────────────────────────────────────────────
56
86
  export function createAllowFromTools() {
57
87
  const allowFromAdd = {
@@ -1 +1 @@
1
- {"version":3,"file":"allow-from.js","sourceRoot":"","sources":["../../src/auth/allow-from.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"allow-from.js","sourceRoot":"","sources":["../../src/auth/allow-from.ts"],"names":[],"mappings":"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"}
@@ -135,6 +135,12 @@ export interface Channel {
135
135
  * Used for startup/shutdown notices. Optional — CLI can omit.
136
136
  */
137
137
  broadcast?(text: string): Promise<void>;
138
+ /**
139
+ * Send a message directly to a specific channel/chat by ID.
140
+ * Used for targeted post-restart notifications.
141
+ * Optional — channels that don't support direct targeting can omit this.
142
+ */
143
+ sendToChannel?(channelId: string, text: string): Promise<string | void>;
138
144
  /**
139
145
  * Edit an existing message (for streaming updates).
140
146
  * Optional — channels that don't support editing can omit this.
@@ -1 +1 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/channels/channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/channels/channel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,oDAAoD;AACpD,MAAM,WAAW,cAAc;IAC7B,oEAAoE;IACpE,EAAE,EAAE,MAAM,CAAC;IACX,mFAAmF;IACnF,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,MAAM,EAAE;QACN,gCAAgC;QAChC,EAAE,EAAE,MAAM,CAAC;QACX,mBAAmB;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,4CAA4C;QAC5C,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,CAAC;IACF,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qDAAqD;AACrD,MAAM,WAAW,eAAe;IAC9B,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B;AAED,+CAA+C;AAC/C,MAAM,WAAW,UAAU;IACzB,sBAAsB;IACtB,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAC3C,wCAAwC;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,8CAA8C;AAC9C,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAI3E;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,OAAO;IACtB,oEAAoE;IACpE,EAAE,EAAE,MAAM,CAAC;IAEX,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;;OAGG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;;;;OAKG;IACH,IAAI,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;;;;OAKG;IACH,SAAS,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IAEzC;;;OAGG;IACH,UAAU,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3C;;;OAGG;IACH,WAAW,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9E;;;OAGG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjF;;;OAGG;IACH,SAAS,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExC;;;;OAIG;IACH,aAAa,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAExE;;;;;;;OAOG;IACH,WAAW,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhF;;;;;;OAMG;IACH,YAAY,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CACtD"}
@@ -1 +1 @@
1
- {"version":3,"file":"discord.d.ts","sourceRoot":"","sources":["../../src/channels/discord.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discord.d.ts","sourceRoot":"","sources":["../../src/channels/discord.ts"],"names":[],"mappings":"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"}
@@ -54,13 +54,13 @@ export class DiscordChannel {
54
54
  if (this.guilds && message.guild && !this.guilds.has(message.guild.id))
55
55
  return;
56
56
  // ─── Mention-based routing ─────────────────────────────────────
57
- // ALL bots (main and agent) require @mention in guild channels.
58
- // DMs always go through. This prevents agent bots from responding
59
- // to messages not addressed to them in shared servers.
57
+ // In guild channels, require an explicit textual @mention of THIS bot.
58
+ // DMs always go through regardless.
60
59
  const myBotId = this.client?.user?.id;
61
60
  if (myBotId && message.guild) {
62
- if (!message.mentions.has(myBotId)) {
63
- return; // Not mentioned — ignore
61
+ const explicitMention = message.content.includes(`<@${myBotId}>`) || message.content.includes(`<@!${myBotId}>`);
62
+ if (!explicitMention) {
63
+ return; // Not explicitly addressed to this bot
64
64
  }
65
65
  }
66
66
  const inbound = this.convertInbound(message);
@@ -238,15 +238,29 @@ export class DiscordChannel {
238
238
  // Scan for secrets before sending
239
239
  const safeContent = scanSecrets(msg.content);
240
240
  const sendable = channel;
241
- await this.sendChunks(sendable, safeContent, msg.replyTo);
241
+ await this.sendChunks(sendable, safeContent, msg.replyTo, msg.attachments);
242
242
  }
243
243
  /** Send message chunks to a text-based channel with retry. */
244
- async sendChunks(channel, content, replyTo) {
244
+ async sendChunks(channel, content, replyTo, attachments) {
245
245
  const chunks = this.splitMessage(content);
246
246
  for (let i = 0; i < chunks.length; i++) {
247
+ const isLast = i === chunks.length - 1;
248
+ // Build discord.js file attachment objects (only on last chunk)
249
+ const files = isLast && attachments?.length
250
+ ? attachments.map((a) => {
251
+ if (a.data) {
252
+ return { attachment: a.data, name: a.filename ?? 'file' };
253
+ }
254
+ if (a.url) {
255
+ return { attachment: a.url, name: a.filename ?? 'file' };
256
+ }
257
+ return null;
258
+ }).filter(Boolean)
259
+ : [];
247
260
  const opts = {
248
261
  content: chunks[i],
249
262
  ...(i === 0 && replyTo ? { reply: { messageReference: replyTo } } : {}),
263
+ ...(files.length ? { files } : {}),
250
264
  };
251
265
  await withRetry(() => channel.send(opts), DISCORD_RETRY, `send chunk ${i + 1}/${chunks.length}`);
252
266
  }
@@ -258,10 +272,20 @@ export class DiscordChannel {
258
272
  if (!channel || !channel.isTextBased()) {
259
273
  throw new Error(`[discord] Cannot send to channel ${msg.target}`);
260
274
  }
275
+ const files = msg.attachments?.length
276
+ ? msg.attachments.map((a) => {
277
+ if (a.data)
278
+ return { attachment: a.data, name: a.filename ?? 'file' };
279
+ if (a.url)
280
+ return { attachment: a.url, name: a.filename ?? 'file' };
281
+ return null;
282
+ }).filter(Boolean)
283
+ : [];
261
284
  const sendable = channel;
262
285
  const sent = await withRetry(() => sendable.send({
263
286
  content: msg.content,
264
287
  ...(msg.replyTo ? { reply: { messageReference: msg.replyTo } } : {}),
288
+ ...(files.length ? { files } : {}),
265
289
  }), DISCORD_RETRY, 'sendAndGetId');
266
290
  return sent.id;
267
291
  }
@@ -1 +1 @@
1
- {"version":3,"file":"discord.js","sourceRoot":"","sources":["../../src/channels/discord.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discord.js","sourceRoot":"","sources":["../../src/channels/discord.ts"],"names":[],"mappings":"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"}