by xichan96
Multi-device terminal server for AI coding agents. Server-side VTE, session persistence, file browser, web preview, plugin system. Self-hosted.
# Add to your Claude Code skills
git clone https://github.com/xichan96/dinottyLast scanned: 6/26/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-06-26T07:52:01.037Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how dinotty compares with popular alternatives.
dinotty is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by xichan96. Multi-device terminal server for AI coding agents. Server-side VTE, session persistence, file browser, web preview, plugin system. Self-hosted. It has 712 GitHub stars.
Yes. dinotty passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/xichan96/dinotty" and add it to your Claude Code skills directory (see the Installation section above).
dinotty is primarily written in TypeScript. It is open-source under xichan96 on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh dinotty against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
A terminal built for coding agents.
Run Claude Code, opencode, Codex, or OpenClaw on any device -- simple, extensible, multi-device, never lose a session.
One session across phone · iPad · desktop
Stop mid-task on your computer, continue on your phone, then return to your desktop and pick up exactly where you left off. Sessions survive disconnects and restore on refresh.
Everything is a pane — build your terminal like building blocks
Terminals, plugins, files, SSH, and web previews are all panes. Drag them around to assemble your own workspace.
The desktop client delivers a professional experience comparable to iTerm2:
Split Broadcast — Draggable multi-pane split, type in one pane and execute in all panes simultaneously:
Command Bookmarks — Right-click terminal text to bookmark, group management, one-click execution:
SSH Connection & File Browser — Built-in SSH client, remote sessions feel just like local, full SFTP file management:
Workspace Management & Mission Control — Multi-workspace isolation, Mission Control overview, quick switching:
Plugin System — Hot-reloadable JS plugins with built-in CC Switch, JSON Formatter, and more:
Unified Layout System - Terminal, plugin, file browser, and web preview are all panes; draggable split, cross-tab move, extract as new tab:
Terminal coding agents - Claude Code, opencode, Codex, OpenClaw - are powerful, yet confined to a single window. Dinotty sets them free. One terminal. Every device. Every possibility.
Half-done on your laptop. Pick up your phone, keep going. Back to your laptop, exactly as you left it.
JS plugins with hot reload. CC Switch, JSON Formatter, Claude Code dialog management - built in. Custom commands, terminal interaction, event subscriptions, CLI integration - the API is ready.
Terminal, files, web preview, Git changes, SSH remote. Drag to split, move across tabs. All in one flow.
Server-side VTE. PTY survives disconnects. Refresh the page, you're back where you were.
Self-hosted. No subscriptions. No relay. Your data stays on your machine.
| Dinotty | Remote Desktop (VNC/RDP/Parsec) | |
|---|---|---|
| Data transmitted | Text only (JSON, bytes) | Full screen pixels at 30-60 fps |
| Bandwidth | ~1–10 KB/s typical | ~1–10 MB/s (100–1000x more) |
| Mobile data friendly | ✅ Works on 3G/4G without lag | ❌ Choppy, high latency, burns data |
| Weak signal tolerance | ✅ Auto-reconnect, no frame loss | ❌ Frozen screen, input lag |
| Battery consumption | Low (text rendering) | High (video decoding) |
| Resolution adaptation | Native text at any size | Scaled bitmap, blurry on phone |
| Interaction | Native touch, custom keyboard | Simulated mouse, tiny desktop UI |
See comparison with other solutions for details.
Download the installer or binary for your platform from GitHub Releases:
| Platform | Format | Notes |
|---|---|---|
| macOS | .dmg |
Open and drag to Applications |
| Linux | .deb |
sudo dpkg -i dinotty_*.deb |
| Windows | .exe / source build |
Run dinotty-server.exe from PowerShell, or build from source |
You can also build from source, see "Quick Start" below.
macOS Note: Since the app is unsigned, macOS may show "Dinotty" is damaged and can't be opened. Run the following command after installation to remove the restriction:
xattr -cr /Applications/Dinotty.app
Linux one-liner install:
VERSION=$(curl -s https://api.github.com/repos/xichan96/dinotty/releases/latest | sed -n 's/.*"tag_name": *"\([^"]*\)".*/\1/p' | sed 's/^v//') && curl -LO "https://github.com/xichan96/dinotty/releases/download/v${VERSION}/dinotty-server_${VERSION}-1_amd64.deb" && sudo dpkg -i "dinotty-server_${VERSION}-1_amd64.deb"
Linux startup:
# systemd
systemctl start dinotty
systemctl enable dinotty # auto-start on boot
# Docker container
nohup dinotty-server &
Windows startup:
# PowerShell
.\dinotty-server.exe -p 8999
# Optional: override the default shell before auto-detection
$env:DINOTTY_SHELL = "pwsh.exe"
.\dinotty-serve