Ctrl K
ComunidadGuías…

package.json

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
{
  "name": "scallopbot",
  "version": "0.1.0",
  "description": "An economical and smart bot architecture",
  "main": "dist/index.js",
  "type": "module",
  "bin": {
    "scallopbot": "dist/cli.js",
    "scallopbot-mcp": "dist/mcp-server/index.js"
  },
  "files": [
    "dist",
    "public",
    ".env.example",
    "ecosystem.config.cjs"
  ],
  "engines": {
    "node": ">=24.0.0"
  },
  "scripts": {
    "clean": "rm -rf dist",
    "build:web": "cd web && npm install && npm run build",
    "build": "npm run build:web && rm -rf dist && tsc && node -e \"const fs=require('fs'),p=require('path');function cpDir(s,t){fs.mkdirSync(t,{recursive:true});fs.readdirSync(s,{withFileTypes:true}).forEach(e=>{const sp=p.join(s,e.name),tp=p.join(t,e.name);e.isDirectory()?cpDir(sp,tp):fs.copyFileSync(sp,tp)})}fs.readdirSync('src/skills/bundled').forEach(d=>{const s=p.join('src/skills/bundled',d),t=p.join('dist/skills/bundled',d);if(fs.existsSync(p.join(s,'SKILL.md')))cpDir(s,t)})\"",
    "start": "node dist/cli.js start",
    "dev": "tsx watch src/index.ts",
    "test": "vitest",
    "test:proactive": "vitest run src/e2e/proactive-humanlike.test.ts src/memory/gap-scanner.test.ts src/memory/proactive-evaluator.test.ts src/memory/scheduled-item-state.test.ts src/proactive/message-quality.test.ts src/proactive/message-safety.test.ts src/proactive/timing-model.test.ts src/proactive/feedback.test.ts src/proactive/scheduler.test.ts src/proactive/scheduler-durable-task.test.ts src/channels/telegram-proactive-reply.test.ts",
    "benchmark:intelligence": "vitest run src/routing/routing-quality.test.ts src/memory/retrieval-quality.test.ts src/memory/semantic-index.test.ts src/proactive/feedback.test.ts src/proactive/message-safety.test.ts src/proactive/scheduler.test.ts src/security/redaction.test.ts src/skills/executor.test.ts src/routing/trace-tap.test.ts src/agent/tool-policy-dispatch.test.ts src/brain/outcome-brain.test.ts src/goals/verified-goal.test.ts src/goals/skill.test.ts src/workflow/executor.test.ts src/skills/bundled/mcp/mcp.test.ts src/evolution/fitness.test.ts src/evolution/privacy.test.ts src/evolution/verify.test.ts src/evolution/procedure-skill.test.ts src/evolution/optimizer.e2e.test.ts src/evolution/version-ledger.test.ts src/evolution/units.test.ts src/board/durable-workers.test.ts src/proactive/scheduler-durable-task.test.ts src/e2e/intelligence-scorecard.test.ts src/e2e/intelligence-regression.test.ts --reporter=verbose",
    "benchmark:proactive": "tsx benchmarks/proactive-humanlike-live.ts",
    "benchmark:hardening": "tsx benchmarks/hardening-scorecard.ts",
    "recover:session": "tsx scripts/recover-session.ts",
    "benchmark:evolution-live": "tsx benchmarks/evolution-skill-live.ts",
    "benchmark:memory": "node --expose-gc --import tsx benchmarks/memory-semantic-retrieval.ts",
    "typecheck": "tsc --noEmit && tsc --noEmit -p tsconfig.bench.json",
    "bench:agentic": "tsx evals/agentic/run.ts",
    "postmortem": "tsx scripts/postmortem.ts",
    "bench:compaction": "tsx benchmarks/compaction-recall.ts",
    "bench:locomo": "vitest run -c /dev/null src/eval/locomo-landing.test.ts",
    "bench:codemode": "tsx evals/codemode/bench.ts",
    "lint": "eslint src/",
    "check:secrets": "node scripts/check-no-secrets.mjs",
    "format": "prettier --write src/"
  },
  "keywords": [
    "bot",
    "ai",
    "assistant",
    "llm",
    "economical"
  ],
  "author": "Squarestock",
  "license": "MIT",
  "devDependencies": {
    "@eslint/js": "^9.39.2",
    "@types/bcrypt": "^6.0.0",
    "@types/better-sqlite3": "^7.6.13",
    "@types/js-yaml": "^4.0.9",
    "@types/mailparser": "^3.9.0",
    "@types/node": "^20.0.0",
    "@types/nodemailer": "^8.0.2",
    "@types/ws": "^8.18.1",
    "eslint": "^9.0.0",
    "prettier": "^3.0.0",
    "typescript": "^5.0.0",
    "typescript-eslint": "^8.54.0",
    "vitest": "^3.2.7"
  },
  "dependencies": {
    "@anthropic-ai/sdk": "^0.72.1",
    "acorn": "^8.15.0",
    "afinn-165": "^2.0.2",
    "agent-browser": "^0.31.1",
    "bcrypt": "^6.0.0",
    "better-sqlite3": "^12.6.2",
    "chalk": "^5.6.2",
    "commander": "^14.0.3",
    "discord.js": "^14.26.4",
    "dotenv": "^17.2.3",
    "fflate": "^0.8.2",
    "grammy": "^1.39.3",
    "groq-sdk": "^0.37.0",
    "ical.js": "^2.2.1",
    "imapflow": "^2.2.1",
    "js-yaml": "^4.3.0",
    "mailparser": "^3.9.33",
    "nanoid": "^5.1.6",
    "node-cron": "^4.2.1",
    "nodemailer": "^10.0.13",
    "openai": "^6.17.0",
    "pino": "^10.3.0",
    "tsx": "^4.0.0",
    "ws": "^8.21.0",
    "zod": "^4.3.6"
  },
  "optionalDependencies": {
    "@hapi/boom": "^10.0.1",
    "@slack/bolt": "^4.3.1",
    "@whiskeysockets/baileys": "^7.0.0-rc13",
    "matrix-js-sdk": "^41.9.0"
  },
  "overrides": {
    "undici": "6.28.1"
  }
}