fix: remaining npm→pnpm gaps + dockerignore for pnpm symlinks

- container/.dockerignore (new): exclude agent-runner/node_modules and
  agent-runner/dist so COPY agent-runner/ ./ doesn't clobber the
  pnpm-installed node_modules with host directories. Under npm's flat
  layout this was forgiving; under pnpm's symlink layout it's a hard
  conflict (overlay2 cannot copy onto a symlink target).
- setup/{groups,service}.ts: execSync('pnpm run build') not npm.
- setup/index.ts: usage string.
- scripts/*.ts: usage comments + seed-discord final log.
- .claude/settings.json: permission allowlist entries.
- .claude/skills/{add-whatsapp-v2,add-dashboard}/SKILL.md: docs.
- container/skills/{frontend-engineer,vercel-cli,self-customize}/SKILL.md:
  agent-facing docs still told the container agent to run npm.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
gavrielc
2026-04-17 09:53:00 +03:00
parent 504e5296c9
commit 22498ae69c
16 changed files with 40 additions and 38 deletions

View File

@@ -10,7 +10,7 @@
* channel adapters, so there's no Gateway conflict.
*
* Usage:
* npx tsx scripts/init-first-agent.ts \
* pnpm exec tsx scripts/init-first-agent.ts \
* --channel discord \
* --user-id discord:1470183333427675709 \
* --platform-id discord:@me:1491573333382523708 \

View File

@@ -22,7 +22,7 @@
*
* Idempotent — safe to re-run.
*
* Usage: npx tsx scripts/migrate-group-claude-md.ts
* Usage: pnpm exec tsx scripts/migrate-group-claude-md.ts
*/
import fs from 'fs';
import path from 'path';

View File

@@ -1,7 +1,7 @@
/**
* Seed the v2 central DB with a Discord agent group + messaging group.
*
* Usage: npx tsx scripts/seed-discord.ts
* Usage: pnpm exec tsx scripts/seed-discord.ts
*/
import path from 'path';
@@ -73,4 +73,4 @@ try {
}
}
console.log('Done! Run: npm run build && node dist/index.js');
console.log('Done! Run: pnpm run build && node dist/index.js');

View File

@@ -2,7 +2,7 @@
* Quick integration test: create a session DB, insert a message,
* run the v2 poll loop with the Claude provider, verify output.
*
* Usage: npx tsx scripts/test-v2-agent.ts
* Usage: pnpm exec tsx scripts/test-v2-agent.ts
*/
import Database from 'better-sqlite3';
import fs from 'fs';

View File

@@ -4,7 +4,7 @@
* Mock adapter → onInbound → router → session DB → Docker container →
* agent-runner → Claude → messages_out → delivery → mock adapter.deliver()
*
* Usage: npx tsx scripts/test-v2-channel-e2e.ts
* Usage: pnpm exec tsx scripts/test-v2-channel-e2e.ts
*/
import Database from 'better-sqlite3';
import fs from 'fs';

View File

@@ -6,7 +6,7 @@
* 3. Container runs v2 agent-runner, polls inbound.db, queries Claude, writes outbound.db
* 4. Poll outbound.db for messages_out response
*
* Usage: npx tsx scripts/test-v2-host.ts
* Usage: pnpm exec tsx scripts/test-v2-host.ts
*/
import Database from 'better-sqlite3';
import fs from 'fs';