57dc91585d
Internal SmartGift build of a Claude Code monitoring dashboard. Lanes: a durable unit of parallel agent work, one per working directory, tracked across session restarts. Managed lanes are git worktrees the dashboard provisions and can reset or remove behind a three-check destroy guard and a counted preflight; adopted lanes are directories you already own and are never destroyable. Pipelines: a lane moves through pipeline stages. A stage the agent declares with evidence renders green; a stage inferred from the tool-event stream renders dashed amber and never counts as done. Detection is forward-only within a 30-minute window, and never writes the declared stage. Workspace: one page at /run with a lane grid, the selected lane's pipeline, and a full Claude console behind a disclosure.
135 lines
5.0 KiB
JSON
135 lines
5.0 KiB
JSON
{
|
|
"name": "agent-dashboard",
|
|
"version": "1.4.6",
|
|
"bin": {
|
|
"ccam": "bin/ccam.js"
|
|
},
|
|
"description": "Real-time dashboard for tracking Claude Code agent activity",
|
|
"private": true,
|
|
"type": "commonjs",
|
|
"main": "server/index.js",
|
|
"files": [
|
|
"server",
|
|
"scripts",
|
|
"data",
|
|
"mcp",
|
|
"statusline",
|
|
"README.md"
|
|
],
|
|
"author": "Nguyễn Ngọc Trí Vĩ",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://git.smartgift.io.vn/Smartgift-AI/Claude-Code-Monitor.git"
|
|
},
|
|
"bugs": {
|
|
"url": "https://git.smartgift.io.vn/Smartgift-AI/Claude-Code-Monitor/issues"
|
|
},
|
|
"license": "UNLICENSED",
|
|
"homepage": "https://git.smartgift.io.vn/Smartgift-AI/Claude-Code-Monitor#readme",
|
|
"keywords": [
|
|
"claude",
|
|
"claude-code",
|
|
"anthropic",
|
|
"agent",
|
|
"dashboard",
|
|
"real-time",
|
|
"monitoring",
|
|
"activity-tracking",
|
|
"mcp",
|
|
"model-context-protocol",
|
|
"nodejs",
|
|
"express",
|
|
"react",
|
|
"websocket",
|
|
"sqlite",
|
|
"better-sqlite3",
|
|
"web-push",
|
|
"vapid",
|
|
"notifications",
|
|
"productivity",
|
|
"developer-tools"
|
|
],
|
|
"scripts": {
|
|
"prepare": "git config core.hooksPath .husky || true",
|
|
"postinstall": "node scripts/postinstall.js",
|
|
"dev": "node scripts/dev.js",
|
|
"dev:raw": "concurrently -n server,client -c blue,green \"npm run dev:server\" \"npm run dev:client\"",
|
|
"dev:server": "node --watch server/index.js",
|
|
"dev:client": "cd client && npm run dev",
|
|
"build": "cd client && npm run build",
|
|
"start": "node server/index.js",
|
|
"setup": "npm install && (cd client && npm install) && (cd vscode-extension && npm install) && npm run link-cli",
|
|
"update:pull-setup": "git pull --ff-only && npm run setup",
|
|
"mcp:install": "npm --prefix mcp install",
|
|
"mcp:build": "npm --prefix mcp run build",
|
|
"mcp:start": "npm --prefix mcp run start",
|
|
"mcp:start:http": "npm --prefix mcp run start:http",
|
|
"mcp:start:repl": "npm --prefix mcp run start:repl",
|
|
"mcp:dev": "npm --prefix mcp run dev",
|
|
"mcp:dev:http": "npm --prefix mcp run dev:http",
|
|
"mcp:dev:repl": "npm --prefix mcp run dev:repl",
|
|
"mcp:typecheck": "npm --prefix mcp run typecheck",
|
|
"mcp:docker:build": "docker build -f mcp/Dockerfile -t agent-dashboard-mcp:local .",
|
|
"mcp:podman:build": "podman build -f mcp/Dockerfile -t localhost/agent-dashboard-mcp:local .",
|
|
"desktop:install": "cd desktop && node scripts/install.js",
|
|
"desktop:dev": "npm run build && cd desktop && npm run dev",
|
|
"desktop:build": "cd desktop && npm run build",
|
|
"desktop:dmg": "npm run build && cd desktop && npm run dmg",
|
|
"desktop:dmg:arm64": "npm run build && cd desktop && npm run dmg:arm64",
|
|
"desktop:dmg:x64": "npm run build && cd desktop && npm run dmg:x64",
|
|
"desktop:dmg:universal": "npm run build && cd desktop && npm run dmg:universal",
|
|
"desktop:win": "npm run build && cd desktop && npm run win",
|
|
"desktop:win:portable": "npm run build && cd desktop && npm run win:portable",
|
|
"desktop:test": "cd desktop && npm test",
|
|
"install-hooks": "node scripts/install-hooks.js",
|
|
"seed": "node scripts/seed.js",
|
|
"import-history": "node scripts/import-history.js",
|
|
"reconcile-tokens": "node scripts/import-history.js --reconcile-tokens",
|
|
"clear-data": "node scripts/clear-data.js",
|
|
"test": "node --test server/__tests__/*.test.js && cd client && npm test",
|
|
"test:server": "node --test server/__tests__/*.test.js",
|
|
"test:client": "cd client && npm test",
|
|
"test:mcp": "npm --prefix mcp run test",
|
|
"format": "prettier --write .",
|
|
"format:check": "prettier --check .",
|
|
"openapi:yaml": "node scripts/generate-openapi-yaml.js",
|
|
"link-cli": "npm link || node -e \"console.warn('ccam CLI not linked globally (no permission?). Link manually with: npm link')\"",
|
|
"monitoring:install": "npm install --prefix monitoring",
|
|
"monitoring:setup": "npm run monitoring:install",
|
|
"monitoring:up": "npm --prefix monitoring run start",
|
|
"monitoring:down": "npm --prefix monitoring run stop",
|
|
"monitoring:start": "npm --prefix monitoring run start:foreground",
|
|
"monitoring:docker:up": "docker compose -f monitoring/docker-compose.yml up -d",
|
|
"monitoring:docker:down": "docker compose -f monitoring/docker-compose.yml down",
|
|
"monitoring:verify": "node monitoring/scripts/verify.js",
|
|
"docker:up": "docker compose up -d --build",
|
|
"docker:down": "docker compose down",
|
|
"docker:full:up": "docker compose -f docker-compose.full.yml up -d --build",
|
|
"docker:full:down": "docker compose -f docker-compose.full.yml down"
|
|
},
|
|
"dependencies": {
|
|
"adm-zip": "^0.5.16",
|
|
"cors": "^2.8.5",
|
|
"cross-spawn": "^7.0.6",
|
|
"express": "^4.21.2",
|
|
"multer": "^2.0.0",
|
|
"redoc": "^2.5.3",
|
|
"swagger-ui-express": "^5.0.1",
|
|
"tar": "^7.4.3",
|
|
"uuid": "^11.1.0",
|
|
"web-push": "^3.6.7",
|
|
"ws": "^8.18.0"
|
|
},
|
|
"optionalDependencies": {
|
|
"better-sqlite3": "^12.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"concurrently": "^9.1.2",
|
|
"js-yaml": "^4.1.0",
|
|
"prettier": "^3.8.1"
|
|
},
|
|
"engines": {
|
|
"node": ">=20.0.0"
|
|
}
|
|
}
|