@rozek/nanoclaw 0.0.5 → 0.0.7

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 (132) hide show
  1. package/container/agent-runner/package-lock.json +1524 -0
  2. package/dist/cli.js +41 -4
  3. package/dist/cli.js.map +1 -1
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +34 -0
  6. package/dist/index.js.map +1 -1
  7. package/package.json +7 -1
  8. package/.claude/settings.json +0 -1
  9. package/.claude/skills/add-compact/SKILL.md +0 -135
  10. package/.claude/skills/add-discord/SKILL.md +0 -203
  11. package/.claude/skills/add-gmail/SKILL.md +0 -220
  12. package/.claude/skills/add-image-vision/SKILL.md +0 -94
  13. package/.claude/skills/add-ollama-tool/SKILL.md +0 -153
  14. package/.claude/skills/add-parallel/SKILL.md +0 -290
  15. package/.claude/skills/add-pdf-reader/SKILL.md +0 -104
  16. package/.claude/skills/add-reactions/SKILL.md +0 -117
  17. package/.claude/skills/add-slack/SKILL.md +0 -207
  18. package/.claude/skills/add-telegram/SKILL.md +0 -222
  19. package/.claude/skills/add-telegram-swarm/SKILL.md +0 -384
  20. package/.claude/skills/add-voice-transcription/SKILL.md +0 -148
  21. package/.claude/skills/add-whatsapp/SKILL.md +0 -372
  22. package/.claude/skills/convert-to-apple-container/SKILL.md +0 -175
  23. package/.claude/skills/customize/SKILL.md +0 -110
  24. package/.claude/skills/debug/SKILL.md +0 -349
  25. package/.claude/skills/get-qodo-rules/SKILL.md +0 -122
  26. package/.claude/skills/get-qodo-rules/references/output-format.md +0 -41
  27. package/.claude/skills/get-qodo-rules/references/pagination.md +0 -33
  28. package/.claude/skills/get-qodo-rules/references/repository-scope.md +0 -26
  29. package/.claude/skills/qodo-pr-resolver/SKILL.md +0 -326
  30. package/.claude/skills/qodo-pr-resolver/resources/providers.md +0 -329
  31. package/.claude/skills/setup/SKILL.md +0 -218
  32. package/.claude/skills/update-nanoclaw/SKILL.md +0 -235
  33. package/.claude/skills/update-skills/SKILL.md +0 -130
  34. package/.claude/skills/use-local-whisper/SKILL.md +0 -152
  35. package/.claude/skills/x-integration/SKILL.md +0 -417
  36. package/.claude/skills/x-integration/agent.ts +0 -243
  37. package/.claude/skills/x-integration/host.ts +0 -159
  38. package/.claude/skills/x-integration/lib/browser.ts +0 -148
  39. package/.claude/skills/x-integration/lib/config.ts +0 -62
  40. package/.claude/skills/x-integration/scripts/like.ts +0 -56
  41. package/.claude/skills/x-integration/scripts/post.ts +0 -66
  42. package/.claude/skills/x-integration/scripts/quote.ts +0 -80
  43. package/.claude/skills/x-integration/scripts/reply.ts +0 -74
  44. package/.claude/skills/x-integration/scripts/retweet.ts +0 -62
  45. package/.claude/skills/x-integration/scripts/setup.ts +0 -87
  46. package/.env.example +0 -1
  47. package/.github/CODEOWNERS +0 -10
  48. package/.github/PULL_REQUEST_TEMPLATE.md +0 -14
  49. package/.github/workflows/bump-version.yml +0 -32
  50. package/.github/workflows/ci.yml +0 -25
  51. package/.github/workflows/merge-forward-skills.yml +0 -160
  52. package/.github/workflows/update-tokens.yml +0 -42
  53. package/.husky/pre-commit +0 -1
  54. package/.mcp.json +0 -3
  55. package/.nvmrc +0 -1
  56. package/.prettierrc +0 -3
  57. package/CHANGELOG.md +0 -8
  58. package/CONTRIBUTING.md +0 -23
  59. package/CONTRIBUTORS.md +0 -15
  60. package/NanoClaw_with_Web-Support.md +0 -326
  61. package/README_zh.md +0 -200
  62. package/assets/nanoclaw-favicon.png +0 -0
  63. package/assets/nanoclaw-icon.png +0 -0
  64. package/assets/nanoclaw-logo-dark.png +0 -0
  65. package/assets/nanoclaw-logo.png +0 -0
  66. package/assets/nanoclaw-profile.jpeg +0 -0
  67. package/assets/nanoclaw-sales.png +0 -0
  68. package/assets/social-preview.jpg +0 -0
  69. package/config-examples/mount-allowlist.json +0 -25
  70. package/docs/APPLE-CONTAINER-NETWORKING.md +0 -90
  71. package/docs/DEBUG_CHECKLIST.md +0 -143
  72. package/docs/REQUIREMENTS.md +0 -196
  73. package/docs/SDK_DEEP_DIVE.md +0 -643
  74. package/docs/SECURITY.md +0 -122
  75. package/docs/SPEC.md +0 -785
  76. package/docs/docker-sandboxes.md +0 -359
  77. package/docs/nanoclaw-architecture-final.md +0 -1063
  78. package/docs/nanorepo-architecture.md +0 -168
  79. package/docs/skills-as-branches.md +0 -662
  80. package/groups/global/CLAUDE.md +0 -58
  81. package/groups/main/CLAUDE.md +0 -246
  82. package/launchd/com.nanoclaw.plist +0 -32
  83. package/repo-tokens/README.md +0 -113
  84. package/repo-tokens/action.yml +0 -186
  85. package/repo-tokens/badge.svg +0 -23
  86. package/repo-tokens/examples/green.svg +0 -14
  87. package/repo-tokens/examples/red.svg +0 -14
  88. package/repo-tokens/examples/yellow-green.svg +0 -14
  89. package/repo-tokens/examples/yellow.svg +0 -14
  90. package/scripts/run-migrations.ts +0 -105
  91. package/setup.sh +0 -161
  92. package/src/channels/index.ts +0 -15
  93. package/src/channels/registry.test.ts +0 -42
  94. package/src/channels/registry.ts +0 -32
  95. package/src/channels/web.ts +0 -1931
  96. package/src/cli.ts +0 -254
  97. package/src/config.ts +0 -73
  98. package/src/container-runner.test.ts +0 -210
  99. package/src/container-runner.ts +0 -768
  100. package/src/container-runtime.test.ts +0 -149
  101. package/src/container-runtime.ts +0 -127
  102. package/src/credential-proxy.test.ts +0 -192
  103. package/src/credential-proxy.ts +0 -125
  104. package/src/db.test.ts +0 -484
  105. package/src/db.ts +0 -803
  106. package/src/env.ts +0 -42
  107. package/src/formatting.test.ts +0 -256
  108. package/src/group-folder.test.ts +0 -43
  109. package/src/group-folder.ts +0 -44
  110. package/src/group-queue.test.ts +0 -484
  111. package/src/group-queue.ts +0 -379
  112. package/src/index.ts +0 -854
  113. package/src/ipc-auth.test.ts +0 -679
  114. package/src/ipc.ts +0 -461
  115. package/src/logger.ts +0 -16
  116. package/src/mount-security.ts +0 -419
  117. package/src/remote-control.test.ts +0 -397
  118. package/src/remote-control.ts +0 -224
  119. package/src/router.ts +0 -52
  120. package/src/routing.test.ts +0 -170
  121. package/src/sender-allowlist.test.ts +0 -216
  122. package/src/sender-allowlist.ts +0 -128
  123. package/src/session-commands.test.ts +0 -247
  124. package/src/session-commands.ts +0 -163
  125. package/src/task-scheduler.test.ts +0 -129
  126. package/src/task-scheduler.ts +0 -328
  127. package/src/timezone.test.ts +0 -29
  128. package/src/timezone.ts +0 -16
  129. package/src/types.ts +0 -109
  130. package/tsconfig.json +0 -20
  131. package/vitest.config.ts +0 -7
  132. package/vitest.skills.config.ts +0 -7
package/dist/cli.js CHANGED
@@ -62,19 +62,52 @@ function checkBinary(cmd) {
62
62
  }
63
63
  }
64
64
  function detectSandbox() {
65
- if (checkBinary('docker info'))
65
+ if (checkBinary('docker info --format "{{.ID}}"'))
66
66
  return 'docker';
67
67
  if (checkBinary('container --version'))
68
68
  return 'apple';
69
69
  return null;
70
70
  }
71
+ // ─── Container image ─────────────────────────────────────────────────────────
72
+ function containerImageExists(sandboxType) {
73
+ return checkBinary(`${sandboxType === 'apple' ? 'container' : 'docker'} image inspect nanoclaw-agent:latest`);
74
+ }
75
+ function buildContainerImage(sandboxType) {
76
+ // build.sh lives inside the npm package, not in the user's workspace
77
+ const pkgDir = resolve(dirname(fileURLToPath(import.meta.url)), '..');
78
+ const buildScript = resolve(pkgDir, 'container', 'build.sh');
79
+ if (!existsSync(buildScript)) {
80
+ console.warn('container/build.sh not found — skipping container build.');
81
+ return;
82
+ }
83
+ console.log('Building container image nanoclaw-agent:latest (this may take a few minutes)…');
84
+ const r = spawnSync('bash', [buildScript], {
85
+ stdio: 'inherit',
86
+ cwd: resolve(pkgDir, 'container'),
87
+ env: {
88
+ ...process.env,
89
+ CONTAINER_RUNTIME: sandboxType === 'apple' ? 'container' : 'docker',
90
+ },
91
+ });
92
+ if (r.status !== 0) {
93
+ console.warn(`Container build exited with code ${r.status}.`);
94
+ }
95
+ }
71
96
  // ─── First-time setup ────────────────────────────────────────────────────────
72
97
  function runFirstTimeSetup(sandboxType) {
73
98
  // setup/ scripts are run via tsx (they use .ts imports and are not compiled by tsc)
74
99
  const distDir = dirname(fileURLToPath(import.meta.url)); // dist/
75
100
  const setupIndex = resolve(distDir, '../setup/index.ts');
76
- const tsxBin = resolve(distDir, '../node_modules/.bin/tsx');
77
- const runner = existsSync(tsxBin) ? tsxBin : 'tsx';
101
+ // tsx may live at different depths depending on whether we're running from a
102
+ // local install or from the npx cache (where the package is nested inside
103
+ // another node_modules tree).
104
+ const tsxCandidates = [
105
+ resolve(distDir, '../node_modules/.bin/tsx'), // local / direct install
106
+ resolve(distDir, '../../.bin/tsx'), // npx cache (scoped pkg)
107
+ resolve(distDir, '../../../.bin/tsx'), // npx cache (nested)
108
+ ];
109
+ const tsxBin = tsxCandidates.find((p) => existsSync(p));
110
+ const runner = tsxBin ?? 'tsx';
78
111
  if (!existsSync(setupIndex)) {
79
112
  console.warn('Setup scripts not found — skipping first-time setup.');
80
113
  return;
@@ -177,7 +210,7 @@ async function cli() {
177
210
  }
178
211
  // --- Check sandbox availability --------------------------------------------
179
212
  if (sandboxType === 'docker') {
180
- if (!checkBinary('docker info')) {
213
+ if (!checkBinary('docker info --format "{{.ID}}"')) {
181
214
  die('Docker is not running.\n' +
182
215
  ' Please start Docker Desktop or the Docker Engine daemon.');
183
216
  }
@@ -193,6 +226,10 @@ async function cli() {
193
226
  if (!existsSync(resolve(process.cwd(), 'store', 'messages.db'))) {
194
227
  runFirstTimeSetup(sandboxType);
195
228
  }
229
+ // --- Ensure container image exists ----------------------------------------
230
+ if (!containerImageExists(sandboxType)) {
231
+ buildContainerImage(sandboxType);
232
+ }
196
233
  // --- Apply settings to process.env so downstream modules pick them up ------
197
234
  // web.ts reads NANOCLAW_HOST / NANOCLAW_PORT / NANOCLAW_TOKEN;
198
235
  // credential-proxy reads ANTHROPIC_API_KEY.
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAeA,OAAO,qBAAqB,CAAC;AAqD7B,OAAO,EAAuB,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAyDxD;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,uBAAuB,EAAE,cAAc,EAAE,CAYrF;AAED,uCAAuC;AACvC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GACtC,IAAI,CAEN;AAmfD,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA6L1C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAeA,OAAO,qBAAqB,CAAC;AAqD7B,OAAO,EAAuB,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAyDxD;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,uBAAuB,EAAE,cAAc,EAAE,CAYrF;AAED,uCAAuC;AACvC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GACtC,IAAI,CAEN;AAyhBD,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA6L1C"}
package/dist/index.js CHANGED
@@ -428,6 +428,32 @@ function ensureContainerSystemRunning() {
428
428
  ensureContainerRuntimeRunning();
429
429
  cleanupOrphans();
430
430
  }
431
+ const MAIN_CLAUDE_MD = `# NanoClaw
432
+
433
+ Personal Claude assistant. You help with tasks, answer questions, and can schedule activities.
434
+
435
+ ## What You Can Do
436
+
437
+ - answer questions and have conversations
438
+ - search the web and fetch content from URLs
439
+ - read and write files in your workspace
440
+ - run bash commands in your sandbox
441
+ - schedule tasks to run later or on a recurring basis
442
+ - send messages back to the chat
443
+
444
+ ## Memory
445
+
446
+ The \`conversations/\` folder contains searchable history of past conversations. Use this to recall
447
+ context from previous sessions.
448
+
449
+ When you learn something important, create files for structured data (e.g. \`preferences.md\`) and
450
+ keep an index in your memory for the files you create.
451
+ `;
452
+ const GLOBAL_CLAUDE_MD = `# Shared Memory
453
+
454
+ This directory is mounted read-only in all groups. Use it for information that should be
455
+ accessible across all sessions.
456
+ `;
431
457
  /** Export for use by cli.ts entry point. */
432
458
  function initWorkspace() {
433
459
  const dirs = [
@@ -445,6 +471,14 @@ function initWorkspace() {
445
471
  for (const dir of dirs) {
446
472
  fs.mkdirSync(dir, { recursive: true });
447
473
  }
474
+ const mainClaudeMd = path.join(GROUPS_DIR, 'main', 'CLAUDE.md');
475
+ if (!fs.existsSync(mainClaudeMd)) {
476
+ fs.writeFileSync(mainClaudeMd, MAIN_CLAUDE_MD, 'utf-8');
477
+ }
478
+ const globalClaudeMd = path.join(GROUPS_DIR, 'global', 'CLAUDE.md');
479
+ if (!fs.existsSync(globalClaudeMd)) {
480
+ fs.writeFileSync(globalClaudeMd, GLOBAL_CLAUDE_MD, 'utf-8');
481
+ }
448
482
  }
449
483
  export async function main() {
450
484
  initWorkspace();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,18 @@
1
1
  {
2
2
  "name": "@rozek/nanoclaw",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "Personal Claude assistant. Lightweight, secure, customizable.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "bin": {
8
8
  "nanoclaw": "dist/cli.js"
9
9
  },
10
+ "files": [
11
+ "dist/",
12
+ "setup/",
13
+ "container/",
14
+ "CLAUDE.md"
15
+ ],
10
16
  "scripts": {
11
17
  "build": "tsc",
12
18
  "start": "node dist/index.js",
@@ -1 +0,0 @@
1
- {}
@@ -1,135 +0,0 @@
1
- ---
2
- name: add-compact
3
- description: Add /compact command for manual context compaction. Solves context rot in long sessions by forwarding the SDK's built-in /compact slash command. Main-group or trusted sender only.
4
- ---
5
-
6
- # Add /compact Command
7
-
8
- Adds a `/compact` session command that compacts conversation history to fight context rot in long-running sessions. Uses the Claude Agent SDK's built-in `/compact` slash command — no synthetic system prompts.
9
-
10
- **Session contract:** `/compact` keeps the same logical session alive. The SDK returns a new session ID after compaction (via the `init` system message), which the agent-runner forwards to the orchestrator as `newSessionId`. No destructive reset occurs — the agent retains summarized context.
11
-
12
- ## Phase 1: Pre-flight
13
-
14
- Check if `src/session-commands.ts` exists:
15
-
16
- ```bash
17
- test -f src/session-commands.ts && echo "Already applied" || echo "Not applied"
18
- ```
19
-
20
- If already applied, skip to Phase 3 (Verify).
21
-
22
- ## Phase 2: Apply Code Changes
23
-
24
- Merge the skill branch:
25
-
26
- ```bash
27
- git fetch upstream skill/compact
28
- git merge upstream/skill/compact
29
- ```
30
-
31
- > **Note:** `upstream` is the remote pointing to `qwibitai/nanoclaw`. If using a different remote name, substitute accordingly.
32
-
33
- This adds:
34
- - `src/session-commands.ts` (extract and authorize session commands)
35
- - `src/session-commands.test.ts` (unit tests for command parsing and auth)
36
- - Session command interception in `src/index.ts` (both `processGroupMessages` and `startMessageLoop`)
37
- - Slash command handling in `container/agent-runner/src/index.ts`
38
-
39
- ### Validate
40
-
41
- ```bash
42
- npm test
43
- npm run build
44
- ```
45
-
46
- ### Rebuild container
47
-
48
- ```bash
49
- ./container/build.sh
50
- ```
51
-
52
- ### Restart service
53
-
54
- ```bash
55
- launchctl kickstart -k gui/$(id -u)/com.nanoclaw # macOS
56
- # Linux: systemctl --user restart nanoclaw
57
- ```
58
-
59
- ## Phase 3: Verify
60
-
61
- ### Integration Test
62
-
63
- 1. Start NanoClaw in dev mode: `npm run dev`
64
- 2. From the **main group** (self-chat), send exactly: `/compact`
65
- 3. Verify:
66
- - The agent acknowledges compaction (e.g., "Conversation compacted.")
67
- - The session continues — send a follow-up message and verify the agent responds coherently
68
- - A conversation archive is written to `groups/{folder}/conversations/` (by the PreCompact hook)
69
- - Container logs show `Compact boundary observed` (confirms SDK actually compacted)
70
- - If `compact_boundary` was NOT observed, the response says "compact_boundary was not observed"
71
- 4. From a **non-main group** as a non-admin user, send: `@<assistant> /compact`
72
- 5. Verify:
73
- - The bot responds with "Session commands require admin access."
74
- - No compaction occurs, no container is spawned for the command
75
- 6. From a **non-main group** as the admin (device owner / `is_from_me`), send: `@<assistant> /compact`
76
- 7. Verify:
77
- - Compaction proceeds normally (same behavior as main group)
78
- 8. While an **active container** is running for the main group, send `/compact`
79
- 9. Verify:
80
- - The active container is signaled to close (authorized senders only — untrusted senders cannot kill in-flight work)
81
- - Compaction proceeds via a new container once the active one exits
82
- - The command is not dropped (no cursor race)
83
- 10. Send a normal message, then `/compact`, then another normal message in quick succession (same polling batch):
84
- 11. Verify:
85
- - Pre-compact messages are sent to the agent first (check container logs for two `runAgent` calls)
86
- - Compaction proceeds after pre-compact messages are processed
87
- - Messages **after** `/compact` in the batch are preserved (cursor advances to `/compact`'s timestamp only) and processed on the next poll cycle
88
- 12. From a **non-main group** as a non-admin user, send `@<assistant> /compact`:
89
- 13. Verify:
90
- - Denial message is sent ("Session commands require admin access.")
91
- - The `/compact` is consumed (cursor advanced) — it does NOT replay on future polls
92
- - Other messages in the same batch are also consumed (cursor is a high-water mark — this is an accepted tradeoff for the narrow edge case of denied `/compact` + other messages in the same polling interval)
93
- - No container is killed or interrupted
94
- 14. From a **non-main group** (with `requiresTrigger` enabled) as a non-admin user, send bare `/compact` (no trigger prefix):
95
- 15. Verify:
96
- - No denial message is sent (trigger policy prevents untrusted bot responses)
97
- - The `/compact` is consumed silently
98
- - Note: in groups where `requiresTrigger` is `false`, a denial message IS sent because the sender is considered reachable
99
- 16. After compaction, verify **no auto-compaction** behavior — only manual `/compact` triggers it
100
-
101
- ### Validation on Fresh Clone
102
-
103
- ```bash
104
- git clone <your-fork> /tmp/nanoclaw-test
105
- cd /tmp/nanoclaw-test
106
- claude # then run /add-compact
107
- npm run build
108
- npm test
109
- ./container/build.sh
110
- # Manual: send /compact from main group, verify compaction + continuation
111
- # Manual: send @<assistant> /compact from non-main as non-admin, verify denial
112
- # Manual: send @<assistant> /compact from non-main as admin, verify allowed
113
- # Manual: verify no auto-compaction behavior
114
- ```
115
-
116
- ## Security Constraints
117
-
118
- - **Main-group or trusted/admin sender only.** The main group is the user's private self-chat and is trusted (see `docs/SECURITY.md`). Non-main groups are untrusted — a careless or malicious user could wipe the agent's short-term memory. However, the device owner (`is_from_me`) is always trusted and can compact from any group.
119
- - **No auto-compaction.** This skill implements manual compaction only. Automatic threshold-based compaction is a separate concern and should be a separate skill.
120
- - **No config file.** NanoClaw's philosophy is customization through code changes, not configuration sprawl.
121
- - **Transcript archived before compaction.** The existing `PreCompact` hook in the agent-runner archives the full transcript to `conversations/` before the SDK compacts it.
122
- - **Session continues after compaction.** This is not a destructive reset. The conversation continues with summarized context.
123
-
124
- ## What This Does NOT Do
125
-
126
- - No automatic compaction threshold (add separately if desired)
127
- - No `/clear` command (separate skill, separate semantics — `/clear` is a destructive reset)
128
- - No cross-group compaction (each group's session is isolated)
129
- - No changes to the container image, Dockerfile, or build script
130
-
131
- ## Troubleshooting
132
-
133
- - **"Session commands require admin access"**: Only the device owner (`is_from_me`) or main-group senders can use `/compact`. Other users are denied.
134
- - **No compact_boundary in logs**: The SDK may not emit this event in all versions. Check the agent-runner logs for the warning message. Compaction may still have succeeded.
135
- - **Pre-compact failure**: If messages before `/compact` fail to process, the error message says "Failed to process messages before /compact." The cursor advances past sent output to prevent duplicates; `/compact` remains pending for the next attempt.
@@ -1,203 +0,0 @@
1
- ---
2
- name: add-discord
3
- description: Add Discord bot channel integration to NanoClaw.
4
- ---
5
-
6
- # Add Discord Channel
7
-
8
- This skill adds Discord support to NanoClaw, then walks through interactive setup.
9
-
10
- ## Phase 1: Pre-flight
11
-
12
- ### Check if already applied
13
-
14
- Check if `src/channels/discord.ts` exists. If it does, skip to Phase 3 (Setup). The code changes are already in place.
15
-
16
- ### Ask the user
17
-
18
- Use `AskUserQuestion` to collect configuration:
19
-
20
- AskUserQuestion: Do you have a Discord bot token, or do you need to create one?
21
-
22
- If they have one, collect it now. If not, we'll create one in Phase 3.
23
-
24
- ## Phase 2: Apply Code Changes
25
-
26
- ### Ensure channel remote
27
-
28
- ```bash
29
- git remote -v
30
- ```
31
-
32
- If `discord` is missing, add it:
33
-
34
- ```bash
35
- git remote add discord https://github.com/qwibitai/nanoclaw-discord.git
36
- ```
37
-
38
- ### Merge the skill branch
39
-
40
- ```bash
41
- git fetch discord main
42
- git merge discord/main || {
43
- git checkout --theirs package-lock.json
44
- git add package-lock.json
45
- git merge --continue
46
- }
47
- ```
48
-
49
- This merges in:
50
- - `src/channels/discord.ts` (DiscordChannel class with self-registration via `registerChannel`)
51
- - `src/channels/discord.test.ts` (unit tests with discord.js mock)
52
- - `import './discord.js'` appended to the channel barrel file `src/channels/index.ts`
53
- - `discord.js` npm dependency in `package.json`
54
- - `DISCORD_BOT_TOKEN` in `.env.example`
55
-
56
- If the merge reports conflicts, resolve them by reading the conflicted files and understanding the intent of both sides.
57
-
58
- ### Validate code changes
59
-
60
- ```bash
61
- npm install
62
- npm run build
63
- npx vitest run src/channels/discord.test.ts
64
- ```
65
-
66
- All tests must pass (including the new Discord tests) and build must be clean before proceeding.
67
-
68
- ## Phase 3: Setup
69
-
70
- ### Create Discord Bot (if needed)
71
-
72
- If the user doesn't have a bot token, tell them:
73
-
74
- > I need you to create a Discord bot:
75
- >
76
- > 1. Go to the [Discord Developer Portal](https://discord.com/developers/applications)
77
- > 2. Click **New Application** and give it a name (e.g., "Andy Assistant")
78
- > 3. Go to the **Bot** tab on the left sidebar
79
- > 4. Click **Reset Token** to generate a new bot token — copy it immediately (you can only see it once)
80
- > 5. Under **Privileged Gateway Intents**, enable:
81
- > - **Message Content Intent** (required to read message text)
82
- > - **Server Members Intent** (optional, for member display names)
83
- > 6. Go to **OAuth2** > **URL Generator**:
84
- > - Scopes: select `bot`
85
- > - Bot Permissions: select `Send Messages`, `Read Message History`, `View Channels`
86
- > - Copy the generated URL and open it in your browser to invite the bot to your server
87
-
88
- Wait for the user to provide the token.
89
-
90
- ### Configure environment
91
-
92
- Add to `.env`:
93
-
94
- ```bash
95
- DISCORD_BOT_TOKEN=<their-token>
96
- ```
97
-
98
- Channels auto-enable when their credentials are present — no extra configuration needed.
99
-
100
- Sync to container environment:
101
-
102
- ```bash
103
- mkdir -p data/env && cp .env data/env/env
104
- ```
105
-
106
- The container reads environment from `data/env/env`, not `.env` directly.
107
-
108
- ### Build and restart
109
-
110
- ```bash
111
- npm run build
112
- launchctl kickstart -k gui/$(id -u)/com.nanoclaw
113
- ```
114
-
115
- ## Phase 4: Registration
116
-
117
- ### Get Channel ID
118
-
119
- Tell the user:
120
-
121
- > To get the channel ID for registration:
122
- >
123
- > 1. In Discord, go to **User Settings** > **Advanced** > Enable **Developer Mode**
124
- > 2. Right-click the text channel you want the bot to respond in
125
- > 3. Click **Copy Channel ID**
126
- >
127
- > The channel ID will be a long number like `1234567890123456`.
128
-
129
- Wait for the user to provide the channel ID (format: `dc:1234567890123456`).
130
-
131
- ### Register the channel
132
-
133
- The channel ID, name, and folder name are needed. Use `npx tsx setup/index.ts --step register` with the appropriate flags.
134
-
135
- For a main channel (responds to all messages):
136
-
137
- ```bash
138
- npx tsx setup/index.ts --step register -- --jid "dc:<channel-id>" --name "<server-name> #<channel-name>" --folder "discord_main" --trigger "@${ASSISTANT_NAME}" --channel discord --no-trigger-required --is-main
139
- ```
140
-
141
- For additional channels (trigger-only):
142
-
143
- ```bash
144
- npx tsx setup/index.ts --step register -- --jid "dc:<channel-id>" --name "<server-name> #<channel-name>" --folder "discord_<channel-name>" --trigger "@${ASSISTANT_NAME}" --channel discord
145
- ```
146
-
147
- ## Phase 5: Verify
148
-
149
- ### Test the connection
150
-
151
- Tell the user:
152
-
153
- > Send a message in your registered Discord channel:
154
- > - For main channel: Any message works
155
- > - For non-main: @mention the bot in Discord
156
- >
157
- > The bot should respond within a few seconds.
158
-
159
- ### Check logs if needed
160
-
161
- ```bash
162
- tail -f logs/nanoclaw.log
163
- ```
164
-
165
- ## Troubleshooting
166
-
167
- ### Bot not responding
168
-
169
- 1. Check `DISCORD_BOT_TOKEN` is set in `.env` AND synced to `data/env/env`
170
- 2. Check channel is registered: `sqlite3 store/messages.db "SELECT * FROM registered_groups WHERE jid LIKE 'dc:%'"`
171
- 3. For non-main channels: message must include trigger pattern (@mention the bot)
172
- 4. Service is running: `launchctl list | grep nanoclaw`
173
- 5. Verify the bot has been invited to the server (check OAuth2 URL was used)
174
-
175
- ### Bot only responds to @mentions
176
-
177
- This is the default behavior for non-main channels (`requiresTrigger: true`). To change:
178
- - Update the registered group's `requiresTrigger` to `false`
179
- - Or register the channel as the main channel
180
-
181
- ### Message Content Intent not enabled
182
-
183
- If the bot connects but can't read messages, ensure:
184
- 1. Go to [Discord Developer Portal](https://discord.com/developers/applications)
185
- 2. Select your application > **Bot** tab
186
- 3. Under **Privileged Gateway Intents**, enable **Message Content Intent**
187
- 4. Restart NanoClaw
188
-
189
- ### Getting Channel ID
190
-
191
- If you can't copy the channel ID:
192
- - Ensure **Developer Mode** is enabled: User Settings > Advanced > Developer Mode
193
- - Right-click the channel name in the server sidebar > Copy Channel ID
194
-
195
- ## After Setup
196
-
197
- The Discord bot supports:
198
- - Text messages in registered channels
199
- - Attachment descriptions (images, videos, files shown as placeholders)
200
- - Reply context (shows who the user is replying to)
201
- - @mention translation (Discord `<@botId>` → NanoClaw trigger format)
202
- - Message splitting for responses over 2000 characters
203
- - Typing indicators while the agent processes