-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
107 lines (107 loc) · 6.76 KB
/
package.json
File metadata and controls
107 lines (107 loc) · 6.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
{
"name": "backbeat",
"version": "0.8.1",
"main": "dist/index.js",
"bin": {
"beat": "./dist/cli.js"
},
"files": [
"dist",
"README.md",
"LICENSE"
],
"directories": {
"doc": "docs"
},
"scripts": {
"pretest": "rm -rf test-db test-logs",
"test": "echo '\n⚠️ WARNING: Running full test suite crashes Claude Code instances!\n\n✅ Safe commands (run these from Claude Code):\n npm run test:core\n npm run test:handlers\n npm run test:repositories\n npm run test:adapters\n npm run test:implementations\n npm run test:services\n npm run test:cli\n npm run test:integration\n\n❌ Full suite: Use npm run test:all (only in local terminal/CI)\n' && exit 1",
"test:all": "npm run test:core && npm run test:handlers && npm run test:services && npm run test:repositories && npm run test:adapters && npm run test:implementations && npm run test:cli && npm run test:scheduling && npm run test:checkpoints && npm run test:error-scenarios && npm run test:integration",
"test:services": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/services/task-manager.test.ts tests/unit/services/recovery-manager.test.ts tests/unit/services/process-connector.test.ts tests/unit/services/handler-setup.test.ts tests/unit/services/loop-manager.test.ts --no-file-parallelism",
"test:full": "npm run test:all && npm run test:worker-handler",
"test:unit": "NODE_OPTIONS='--max-old-space-size=2048' vitest run --no-file-parallelism",
"test:core": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/core --no-file-parallelism",
"test:handlers": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/services/handlers/dependency-handler.test.ts tests/unit/services/handlers/schedule-handler.test.ts tests/unit/services/handlers/checkpoint-handler.test.ts tests/unit/services/handlers/persistence-handler.test.ts tests/unit/services/handlers/queue-handler.test.ts tests/unit/services/handlers/loop-handler.test.ts --no-file-parallelism",
"test:worker-handler": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/services/handlers/worker-handler.test.ts --no-file-parallelism --testTimeout=60000",
"test:repositories": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/implementations/dependency-repository.test.ts tests/unit/implementations/task-repository.test.ts tests/unit/implementations/database.test.ts tests/unit/implementations/checkpoint-repository.test.ts tests/unit/implementations/output-repository.test.ts tests/unit/implementations/worker-repository.test.ts tests/unit/implementations/loop-repository.test.ts --no-file-parallelism",
"test:adapters": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/adapters --no-file-parallelism",
"test:implementations": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/implementations --exclude='**/dependency-repository.test.ts' --exclude='**/task-repository.test.ts' --exclude='**/database.test.ts' --exclude='**/checkpoint-repository.test.ts' --exclude='**/output-repository.test.ts' --exclude='**/worker-repository.test.ts' --exclude='**/loop-repository.test.ts' --no-file-parallelism",
"test:scheduling": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/services/schedule-manager.test.ts tests/unit/services/schedule-executor.test.ts tests/unit/services/handlers/schedule-handler.test.ts --no-file-parallelism",
"test:checkpoints": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/implementations/checkpoint-repository.test.ts tests/unit/services/handlers/checkpoint-handler.test.ts --no-file-parallelism",
"test:cli": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/cli.test.ts tests/unit/cli-init.test.ts tests/unit/cli-services.test.ts tests/unit/retry-functionality.test.ts tests/unit/read-only-context.test.ts --no-file-parallelism",
"test:error-scenarios": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/unit/error-scenarios --no-file-parallelism",
"test:integration": "NODE_OPTIONS='--max-old-space-size=2048' vitest run tests/integration --no-file-parallelism",
"test:coverage": "NODE_OPTIONS='--max-old-space-size=2048' npm run test:unit -- --coverage && NODE_OPTIONS='--max-old-space-size=2048' npm run test:integration -- --coverage",
"test:watch": "NODE_OPTIONS='--max-old-space-size=2048' vitest --watch",
"test:e2e": "tsx tests/e2e/test-runner.ts",
"test:e2e:run": "tsx tests/e2e/test-runner.ts run",
"test:e2e:results": "tsx tests/e2e/test-runner.ts results",
"test:stress": "vitest tests/stress --timeout 300000",
"test:quality": "./scripts/validate-test-quality.sh",
"test:audit": "echo 'Run /audit-tests command in Claude for full audit'",
"posttest": "rm -rf test-db/*.db test-db/*.db-wal test-db/*.db-shm",
"prebuild": "npm run clean",
"build": "tsc",
"build:dev": "tsc --project tsconfig.dev.json",
"build:watch": "tsc --project tsconfig.dev.json --watch",
"dev": "tsx src/index.ts",
"dev:watch": "tsx watch src/index.ts",
"start": "node dist/index.js",
"test:ui": "vitest --ui",
"clean": "rm -rf dist logs test-logs test-db tsconfig.tsbuildinfo",
"typecheck": "tsc --noEmit",
"lint": "biome lint src/ tests/",
"format": "biome format src/ tests/",
"format:fix": "biome format --write src/ tests/",
"check": "biome check src/ tests/",
"check:fix": "biome check --write src/ tests/",
"validate": "npm run typecheck && npm run check && npm run build && npm run test:all",
"prepublishOnly": "npm run build && test -f dist/cli.js || (echo 'ERROR: dist/cli.js missing - build failed silently' && exit 1)"
},
"keywords": [
"mcp",
"ai-agents",
"multi-agent",
"codex",
"gemini",
"automation",
"task-delegation",
"backbeat"
],
"author": "dean0x",
"license": "MIT",
"description": "AI coding agent orchestration at scale. Karpathy optimization loops, multi-agent pipelines, DAG dependencies, autoscaling workers. Claude, Codex, Gemini.",
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "https://github.com/dean0x/backbeat.git"
},
"bugs": {
"url": "https://github.com/dean0x/backbeat/issues"
},
"homepage": "https://github.com/dean0x/backbeat#readme",
"engines": {
"node": ">=20.0.0"
},
"type": "module",
"dependencies": {
"@clack/prompts": "^1.0.1",
"@modelcontextprotocol/sdk": "^1.24.3",
"better-sqlite3": "^12.8.0",
"cron-parser": "^4.9.0",
"picocolors": "1.1.1",
"zod": "^3.25.76"
},
"devDependencies": {
"@biomejs/biome": "^2.4.4",
"@types/better-sqlite3": "^7.6.13",
"@types/node": "^24.3.0",
"@vitest/coverage-v8": "^4.0.18",
"@vitest/ui": "^4.0.18",
"tsx": "^4.20.4",
"typescript": "^5.9.2",
"vitest": "^4.0.18"
}
}