neuron-explorer
Steering-first neuron explorer for Qwen3.5-4B: push every MLP neuron, keep every rollout, browse the results
翻譯準備中
一個主控台,支援每台機器上所有 Claude Code、Codex 與 Grok 會話。一鍵切換帳號,即時速率限制與各模型使用情形。
AI 翻譯
One console for every Claude Code, Codex, and Grok session on every machine. One-click account switching, live rate limits, and usage for every model.
開發工具JavaScript · PowerShellGitHub @xDope7137上線中營運者未確認
試用過了嗎? 點一下就好,不需要登入。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Claude Code、Codex CLI 與 Grok 網頁 UI——一個 fleet 看板,管理已在您機器上執行的 coding‑agent 會話。可於手機批准工具權限,從任何裝置驅動任一會話,且仍能在終端機中恢復。
AI 翻譯
Claude Code, Codex CLI and Grok web UI — one fleet board for the coding-agent sessions already running on your machines. Approve tool permissions from your phone, drive any session from any device, and still resume it in the terminal.
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
The agents are running. Go live your life.
Web control plane for the coding-agent CLIs already on your machines.
Claude Code, OpenAI Codex CLI and Grok: one fleet board, every device, tool approvals on your phone.
The agents already run fine. That was never the hard part.
The hard part is the minute after. A run stops on a tool approval and sits there until you
happen to wander back to the terminal. Overnight runs die at 2am on a one-tap decision. Three
sessions across two machines become three terminals you have to remember to check. A laptop lid
closes and the SSH session goes with it.檢視完整 README ↗Web control plane for the coding-agent CLIs already on your machines. Claude Code, OpenAI Codex CLI and Grok: one fleet board, every device, tool approvals on your phone.
termdeck.io · Landing page · Install · How it works · FAQ
The agents already run fine. That was never the hard part.
The hard part is the minute after. A run stops on a tool approval and sits there until you happen to wander back to the terminal. Overnight runs die at 2am on a one-tap decision. Three sessions across two machines become three terminals you have to remember to check. A laptop lid closes and the SSH session goes with it.
Termdeck is the board that watches all of it, and pushes you the one moment that needs a human.
This is the design, and it is the one claim a wrapper cannot copy.
Termdeck does not run agents in its own sandbox and it does not keep its own copy of your
conversations. It renders the CLI's own session files, on your machine:
~/.claude/projects/<slug>/<id>.jsonl, $CODEX_HOME/sessions, ~/.grok.
Three things fall out of that, for free:
claude --resume <id> at your desk. Native storage, real cwd, no export step.| Claude Code | OpenAI Codex CLI | Grok | |
|---|---|---|---|
| Render every past session | ● | ● | ● |
| Drive turns from the browser | ● | ● | ● |
| Inline tool approvals | ● | ● | ● |
| Steer a running turn mid-flight | ● | ● | ○ |
| Model + reasoning effort per turn | ● | ● | ● |
| Native plan mode | ● | ● | ○ |
| Resumable in its own CLI afterwards | ● | ● | ● |
The engine is picked per chat. They share one sidebar, one transcript renderer and one permission card, so there is nothing new to learn when you switch.
| One fleet board | Every machine you connect: laptop, desktop, VM, the box under the desk. Sessions sorted by who needs you, not by which terminal they live in. |
| Approve from your phone | Web Push fires with no browser open. Allow or Deny on the notification itself, or tap through to the session. |
| One approvals inbox | Every request waiting on you, across chats and machines, in one list you can answer in bulk. |
| Answer the agent inline | AskUserQuestion renders as real options. No switching to a terminal to type 2. |
| Take over a terminal session | The view-only lock, released. Close the idle CLI client and drive from the web. |
| Switch model and effort mid-run | Per turn. Drop to a cheap model for the mechanical part, jump to the big one for the hard part. |
| Docked diff review | Changed files with +/− counts, next to the transcript, and a pull request opened from the same dock. |
| Terminals canvas | Every chat as a live pane on one grid, across machines. |
| Background shells | A dev server a chat started keeps running after the reply, and the chat picks up when a shell finishes. |
| Fleet-wide search | Every session on every machine, by prompt, project or host. |
| Cost and pace meters | API-equivalent cost per project, token totals, cache-read rate, and rolling and weekly limit pacing before you hit the wall. |
| Switch accounts | Saved engine logins per machine, each with its own usage meter. |
| Install to your home screen | PWA with a push subscription per device. The device you are looking at keeps the others quiet. |
Two minutes, and no inbound port on your machine.
1. Sign up at termdeck.io/signup with GitHub, or email and password, and start the 14-day trial.
2. Add a machine (Settings, then Machines and accounts). You get a one-liner carrying that machine's token:
curl -fsSL https://termdeck.io/install.sh | TERMDECK_AGENT_TOKEN=agt_… sh
$env:TERMDECK_AGENT_TOKEN="agt_…"; iwr https://termdeck.io/install.ps1 | iex
Or with npm, the same install on any platform (termdeck-agent):
npx termdeck-agent install --token agt_…
npx termdeck-agent status, logs, repair and uninstall cover the rest of the agent's life.
3. Add a project folder. Its sessions are already there.
macOS, Linux and Windows. The agent installs as a user service (launchd / systemd --user /
schtasks, with a @reboot cron fallback) and keeps itself updated. Full unit templates in deploy/AGENT-SETUP.md.
The agent dials out over a reverse WebSocket. There is no inbound port, no firewall rule and no tunnel on your side. Turns run on your machine: the agent spawns the CLI, reads its stream and keeps a numbered log, so a dropped link or a restart of the master is a viewer going away, not a lost run. The agent and the browser time termdeck.io and edge.termdeck.io and connect through whichever answers faster. If the one in use fails, they move to the other at once.
your machine termdeck.io
┌────────────────────────┐ ┌──────────────────────────┐
│ ~/.claude ~/.codex │ │ master │
│ ▲ │ │ ├─ session list cache │
│ │ watch + read │ │ ├─ browser WebSocket │
│ ┌────┴─────┐ │ │ └─ Web Push │
│ │ agent │ ──── reverse WS ────▶ │ │
│ │ index, │ │ │ │
│ │ runs │ │ │ │
│ └────┬─────┘ (dial-out, TLS) └───────────┬──────────────┘
│ │ spawn │
│ claude / codex / grok your browser
└────────────────────────┘ (phone, laptop, tablet)
The agent is in this repo. Read it before you run it. That is why it is here. It is a fixed list
of typed capabilities, not a remote shell: reads confined to the transcript roots and the open
chat's project folder, a few narrow named writes, processes it started itself. It redacts its own
token out of its logs, never logs anything it serves, and stages every self-update behind a compile
check with a .rollback/ snapshot and two watchdogs.
Start at agent/agent.js and agent/capabilities.js.
The second one is the whole list of what a machine will answer.
53 load-bearing invariants, each one carrying the failure that produced it: docs/INVARIANTS.md.
A preview is a PAINT, read from the TAIL. Seeds and
?tail=1parse only the file's last bytes;startLinekeepstotalLinesexact, because it is the cursor every?sincesplice rides.
A delta may only be spliced onto the cursor it was fetched at. A live push landing inside a
?sincefetch is what duplicated the transcript, on screen and in the cache, whenever a second chat was live.
3,056 commits · 1,013 production deploys · 112 days 738 test files · 53 invariants · 0 build steps
| Termdeck | Happy | Claude Remote Control | |
|---|---|---|---|
| Claude Code | ● | ● | ● |
| OpenAI Codex CLI | ● | ● | ○ |
| Grok | ● | ○ | ○ |
| Sees sessions it didn't start | ● | ○ | ○ |
| Push approval to phone | ● | ● | ● |
| Take over a terminal session | ● | ○ | ○ |
| No extra subscription | ○ | ● | ● |
Anthropic's Remote Control is good and it comes with your Claude plan, if you run one engine and only the sessions you switch it on for. Happy is free, open source and end-to-end encrypted, for sessions you start through its wrapper. Termdeck is for every session, on every machine, in all three engines. Longer write-ups: termdeck.io/vs.
Yes. That is the feature the product exists for. When a turn blocks on a tool approval, Web Push fires with no browser open. Tap Allow or Deny on the notification, or open the session for the full card. The run continues from your pocket.
No, and deliberately. There is one way to run Termdeck: connect a machine to your account and drive it through the cloud. Your code and your transcripts never leave your machine (the agent reads and renders them in place), but the control plane is hosted.
Yes. claude --resume <id> and codex resume <id>. Native storage, real cwd, and Codex resumes the
thread before every web turn so terminal appends are picked up. Round-trip parity is a hard rule, and
it is tested.
Yes. Full turn driving over one shared codex app-server per machine, including native plan mode,
with Claude Code and Grok in the same sidebar.
A fixed list of typed capabilities, not a shell. Reads are confined to the transcript roots and the
open chat's project folder (read only). Paths are never sent from the server: the master names a
session id and the agent resolves it against its own disk. The writes are narrow and named: a file
you attach (into ~/.termdeck/uploads, never your project), the project instruction file, checkpoint
restore, and the engine account switching you ask for. Processes it may signal are ones it started,
plus a terminal client you asked to take over. The code is in
agent/capabilities.js; termdeck.io/docs/security is the long version.
The coding agent it drives is another matter: in full access mode it can do anything you can. That is what the permission rules are for.
Starter is $9.99 a month for 1 machine, Pro is $19.99 for 10 machines with unlimited projects and saved logins, your whole usage history and a bigger terminal grid. Every account starts with a 14-day trial of either; a card is needed and the first charge is on day 15. Details: termdeck.io/docs/plans. You bring your own Claude / Codex / Grok subscription; Termdeck never resells inference.
This repo is the agent and the documentation: the parts that run on your machine, so you can read them before you trust them. The hosted control plane (session index, browser WebSocket, push, billing) is not open source.
agent/ the thin agent: root-confined capabilities, self-update, log redaction
install.sh / .ps1 the one-liners the dashboard hands you, as termdeck.io serves them
deploy/ systemd / launchd / schtasks units, heal + uninstall scripts
docs/ARCHITECTURE.md how the pieces fit
docs/INVARIANTS.md 53 load-bearing rules and the failure behind each one
agent/ is the installed agentagent/ holds exactly the files termdeck.io serves to an installing machine, laid out flat the way
they land in ~/.termdeck/agent/. Some of them (the transcript parsers, the session index, the
disk primitives) are shared with the master, which runs the same modules: one copy of the rules,
because two copies of a transcript parser drift and a drifted parser renders a chat differently
depending on which side read it.
Every release is signed offline (agent/update-signature.js), and an
installed agent takes an update only when the signature and every file hash check out.
If this is the thing you keep wishing existed, a ⭐ helps other people find it.
Built by Bhavik Patel · termdeck.io · @termdeck