- Status
- In development
- Version
- v0.1.0
- Runs on
- TypeScript control plane and Go agent
Every server panel that has had a serious CVE had the same shape of bug.
The web tier could reach a root-level primitive directly. Kaname answers that structurally, not with a hardening checklist.
What Kaname does.
The hard line
Three tiers, one hard line
The browser talks to the control plane; the control plane talks to an agent on each host. Only the agent touches systemd, Docker and the filesystem.
No shell in the control plane
The control plane has no child_process, no SSH client and no container-socket dependency. It cannot execute anything on a host.
Typed verbs, not commands
The agent exposes enumerated RPC methods that decode into typed parameters. There is no exec(command) among them, and a conformance test keeps that true.
Agents dial out
The agent binds no network port. It connects to the control plane over WSS with a signed assertion.
What you notice
Mutations are jobs
Restarting a service returns a job that moves queued → running → succeeded, streams its log, and survives a control-plane restart.
Reachability and health are separate
A server can be connected and critical, or disconnected and unknown. Both are always shown; neither collapses into one dot.
Running it
One panel for a small fleet
Infrastructure, websites, files, email, databases, security, backups, monitoring, logs and a terminal, in one place, owned entirely by the person running it.
One-command install
Installs the control plane, the panel, Postgres and Caddy as a Compose project and pairs the first agent on the same box.
How it runs.
Run the installer on a fresh server. It prints an address and a setup token.
Open the panel, set a domain later from inside it, and get HTTPS.
Pair each additional host with an agent. Agents dial out; no inbound ports.
Every change to a host is a job with a log you can watch and a state that survives restarts.
Install.
curl -fsSL https://raw.githubusercontent.com/FutureForge-Studios/kaname/main/install.sh \
| sudo shThe installer ships with the first tagged release. Until then Kaname runs from source.
Kaname (要, the keystone) is a self-hosted control panel for a small fleet of Linux servers, built for an owner-operator rather than a hosting reseller. It is in development: the code runs from source against a simulated fleet, and the published installer waits on the first tagged release.
The idea
Three tiers, with a hard line between them. The browser talks to the control plane over HTTPS. The control plane talks to kanamed, one agent per host, over WSS with a signed assertion. Only the agent touches systemd, Docker and the filesystem.
The control plane never executes anything on a managed host. It has no child_process, no SSH client and no container-socket dependency. The agent's RPC methods are enumerated verbs that decode into typed parameter structs, and there is no exec(command) among them. A conformance test keeps that list honest.
Two consequences you notice immediately
Mutations that reach a host are jobs. Restarting a service returns 202 and a job whose state moves from queued to running to succeeded, streams its log, and survives a control-plane restart. Not a spinner that lies.
Reachability and health are separate axes. A server can be connected and critical, or disconnected and unknown. Both are always shown.