nntrivi2001 84e2a9f0ac feat(server-s3): one Linux user per account (S3) — experimental
Server mode can now run each account as its own Linux user (ah-<name>)
when `agenthub server install-system` has set S3 up. The dashboard
reaches a member only through sudo -u / write-as / pane-launch, reads a
member's files only through owner- and type-checked opens, and hooks
are authenticated by peer uid. Local mode and server mode without S3
are unchanged.

EXPERIMENTAL: tested with fake sudo and fake accounts only. It has not
yet been verified on a real install with real member accounts, sudo or
a real Codex login. Do not offer it to real users yet.

- S3 core: provisioning, per-member tmux servers, the proxy key
  gateway, shared tools in /opt, dropped capabilities for children
  (P0–P5)
- P4: plan and quota per member home
- P6: ~/.claude.json seed; opt-in plugin baseline installed as the
  member; managed-settings spike script (not run)
- P7: Codex account pool (`agenthub accounts add --tool codex`)
- Roles merged with main's admin / analyst / developer: analysts write
  only their own rows, under S3 as well
- Per-account prefs: one implementation (Chat UI + onboarding)
- Security reviews F1–F49 (five rounds), each fix with a regression
  test: symlink/TOCTOU-safe member reads, no host writes in a member
  home, credentials and the data dir never served, owner and folder
  account must agree, pane tokens bound to the pane's uid, bounded
  sudo/tmux/git calls and member reads (no hang or crash from a member),
  async route rejections answer 500 instead of exiting
- Docs: docs/SERVER-MODE.md (S3 model, accepted ceilings, operator
  runbook), docs/plans/server-mode/S3-PLAN.md, CLAUDE.md S3 rules

Tests: server 2838/2841 (3 need 127.0.0.1:3000, held on this box);
client 1162/1162; tsc clean; headers check passes.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-09 14:57:10 +07:00

AgentHub

Tiếng Việt · English

A dashboard that runs on your machine to watch and drive your Claude Code (and Codex) sessions from the browser.

Section Tiếng Việt
Requirements Yêu cầu
Option 1 — Through Claude Code Cách 1 — Cài qua Claude Code
Option 2 — From a terminal Cách 2 — Cài bằng terminal
More docs Tài liệu thêm

Requirements

  • Node.js ≥ 22.5
  • git
  • tmux

To install them:

  • Ubuntu: sudo apt install git tmux (get Node.js ≥ 22.5 from https://nodejs.org)
  • macOS: brew install node git tmux

Send each line on its own straight into the Claude Code chat:

/plugin marketplace add https://git.smartgift.io.vn/Smartgift-AI/AgentHub.git
/plugin install agenthub@agenthub
/agenthub:agenthub-open

The last one prints the dashboard's address (by default http://localhost:4820) — open it in the browser and you are done.

Something wrong? Send /agenthub:agenthub-doctor to check and fix it. To update to a new version: /agenthub:agenthub-update. Not using it? Quit so nothing runs in the background: Settings → System → Quit, or agenthub stop — opening Claude Code no longer starts it; agenthub start does. AgentHub's icon beside the clock (top bar / menu bar / notification area) offers Open, Quit and Start AgentHub too; hide it from its menu or in Settings → System.

Option 2 — Install from a terminal (without Claude Code)

Run these in a terminal, one after another:

git clone https://git.smartgift.io.vn/Smartgift-AI/AgentHub.git
cd AgentHub
npm run setup      # install the dependencies + the agenthub command
npm run build      # build the UI
npm start          # run the dashboard

Open http://localhost:4820 in the browser.

npm start stops when the terminal closes. To have the dashboard start every time the machine boots:

agenthub service install

⚠️ Pick only one of the two options. With both installed, every event is counted twice.

More docs

Internal build — all rights reserved.

S
Description
AgentHub (phase 1): self-hosted with Claude plugin
http://localhost:4820
Readme 151 MiB
v2.8.10 Latest
2026-10-16 07:54:43 +00:00
Languages
JavaScript 53.9%
TypeScript 44.9%
Shell 0.6%
CSS 0.4%