Kirusshenkin

TerminalOs — DevOps skill for Claude Code

DevOps community

macOS terminal that runs your servers — SSH, Docker, live metrics, SFTP and keys over one connection per host, unlocked by Touch ID, with an MCP server so Claude Code and Claude Desktop can operate th.

How to install TerminalOs

This entry records only its repository, not the path inside it, so there is no exact command to give. Open Kirusshenkin/terminalOs and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What TerminalOs does

macOS terminal that runs your servers — SSH, Docker, live metrics, SFTP and keys over one connection per host, unlocked by Touch ID, with an MCP server so Claude Code and Claude Desktop can operate them under a per-host policy and an audit log.

Alternatives in DevOps

  • Skill Claw — OpenClaw instance administration — manage hosts across macOS, Ubuntu/Debian, Docker, OCI, and Proxmox 2.8k ★
  • Codeg — Aggregate and browse AI coding agent sessions (Claude Code, Codex, Gemini CLI, etc.) in one place 850 ★
  • Workers MCP — Talk to a Cloudflare Worker from Claude Desktop 646 ★

README

Phosphor

**A macOS terminal that also runs your servers.**

Shell, Docker, metrics, keys and files — over one SSH connection per host. Unlocked with your fingerprint. Green on black, because that is how it should look.

*SSH client · Docker manager · server monitor · SFTP · `authorized_keys` editor · MCP server for Claude Code and Claude Desktop · macOS 26 · Swift 6 · MIT*

![Terminal](docs/images/01-terminal.png)


The problem

You keep four windows open to do one job. A terminal for the shell. A second terminal for `docker logs -f`. A third for `htop`. A browser tab for whatever dashboard someone installed on the box. Each of them logs in separately, each one asks for the key passphrase again, and none of them knows what the others are looking at.

Phosphor opens **one SSH connection per host** and multiplexes everything through it — the interactive shell, container logs, `docker` commands, `/proc` snapshots, SFTP transfers, port forwards. One login. One tunnel through your proxy. One place where the state lives.

And because that state is already in the app, it also exposes an **MCP server**: Claude Code and Claude Desktop can use your servers through your connections, your keys and your access policy — with every call written to an audit log.


What it does

Docker, without leaving the terminal

![Docker](docs/images/02-docker.png)

The container list is a sidebar, not a separate app. Inspect, stats, mounts, environment and live logs with `--tail` and a filter, streamed over the SSH connection you already have. Environment values whose name looks like a secret (`PASS`, `KEY`, `TOKEN`, `SECRET`) are masked in the UI and never copied into the audit log.

No Docker Engine API to expose, no socket to tunnel: it shells out to `docker` with JSON output, which works on every box where Docker already runs.

Metrics that cost one channel

![Metrics](docs/images/03-metrics.png)

Per-core load, memory with the cache br