Files
AgentHub/package.json
T
nntrivi2001 c946b73d11 chore: v2.8.71 — remote clients (company hub), artifacts shared with chosen people, folders and viewable copies, fixes
Remote clients (docs/plans/remote-clients/README.md, B1–B3 for the Claude pool):
- server/hub/ holds the hub-only code (devices, remote sessions, upload ingest,
  LAN gateway), required only in server mode; hub-boundary.test.js keeps local
  code from importing it.
- A local install enrolls with `agenthub remote login` or Settings → AI tools →
  Company hub; the "Company account" AI Proxy (reserved name agenthub.company)
  sends a session through the hub's gateway, which adds a pool account's token —
  no credential reaches the machine. Only those sessions are uploaded, hourly
  and at their end; secret-shaped strings are redacted on the client.
- Gateway refuses: unknown device (401), a message without a session id, an
  unregistered session under AGENTHUB_REMOTE_GATE=block, a user over quota
  (EQUOTA), a purged session (410). Device tokens 90 days, conversations 30.
- New alert rule type remote_unmonitored: a company-account session its device
  never registered; a late registration clears the flag instead.
- The hub imports a session once per upload round (chunks carry `more`),
  not once per chunk.

Artifacts:
- Share an artifact with chosen people (artifact_shares, PATCH sharedWith,
  GET /api/artifacts/people) besides everyone; a "Shared with you" tab.
  Only the owner or an admin sees or edits who it is shared with; audited.
- Folders: each account's own arrangement (agenthub.artifacts.folders pref).
- A claude.ai page keeps a copy viewable without the publishing account: its
  HTML file (and supporting files) snapshotted at publish, or the copy Claude
  saves for a Doc / Slides / Design in artifacts-export/ (a synchronous
  PostToolUse hint hook, scripts/artifact-export-hint.js, admin switch),
  attached to the page at Stop. Viewed in HtmlFrame's sandbox, Markdown, or
  pdf.js (pdfjs-dist 6.4.299, legacy build, loaded only for a PDF).

Fixes:
- tmux: a cached /proc/<pid>/exe of an exited server falls back to PATH's
  tmux (stop the last pane, start again within 10 s failed with ENOENT).
- shelves: a shelf restores beside changes in other files.
- chat: a finished reply ends the turn even with no hook at all.
- Settings → AI tools: profile list display tweaks.
2026-11-04 15:16:49 +07:00

97 lines
2.8 KiB
JSON

{
"name": "agenthub",
"version": "2.8.71",
"bin": {
"agenthub": "bin/agenthub.js"
},
"description": "Local control surface for Claude Code agents - session monitoring, parallel lanes, terminal runs, and Claude Code configuration management",
"private": true,
"type": "commonjs",
"main": "server/index.js",
"files": [
"server",
"scripts",
"data",
"statusline",
"README.md"
],
"author": "Nguyễn Ngọc Trí Vĩ",
"repository": {
"type": "git",
"url": "git+https://git.smartgift.io.vn/Smartgift-AI/AgentHub.git"
},
"bugs": {
"url": "https://git.smartgift.io.vn/Smartgift-AI/AgentHub/issues"
},
"license": "UNLICENSED",
"homepage": "https://git.smartgift.io.vn/Smartgift-AI/AgentHub#readme",
"keywords": [
"claude",
"claude-code",
"anthropic",
"agent",
"dashboard",
"real-time",
"monitoring",
"activity-tracking",
"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 && npm --prefix client install && npm run link-cli",
"update:pull-setup": "git pull --ff-only && npm run setup",
"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 scripts/test-server.js && cd client && npm test",
"test:server": "node scripts/test-server.js",
"test:client": "cd client && npm test",
"format": "prettier --write .",
"format:check": "prettier --check .",
"openapi:yaml": "node scripts/generate-openapi-yaml.js",
"link-cli": "npm link || node -e \"console.warn('agenthub CLI not linked globally (no permission?). Link manually with: npm link')\""
},
"dependencies": {
"@lydell/node-pty": "^1.2.0-beta.18",
"adm-zip": "^0.6.1",
"cors": "^2.8.5",
"express": "^5.3.0",
"js-yaml": "^5.5.0",
"multer": "^2.5.0",
"swagger-ui-express": "^5.0.1",
"systray2": "^2.1.4",
"tar": "^7.4.3",
"web-push": "^3.6.7",
"ws": "^8.18.0"
},
"optionalDependencies": {
"better-sqlite3": "^13.0.3"
},
"devDependencies": {
"concurrently": "^9.1.2",
"prettier": "^3.8.1"
},
"engines": {
"node": ">=22.5.0"
}
}