yiwenlu66/PiloTY
PiloTY: AI pilot for PTY operations via MCP - enables AI agents to control interactive terminals like a human
Platform-specific configuration:
{
"mcpServers": {
"PiloTY": {
"command": "npx",
"args": [
"-y",
"PiloTY"
]
}
}
}Add the config above to .claude/settings.json under the mcpServers key.
<p align="center"> </p>
PiloTY (PTY for your AI Copilot) is an MCP server that gives an agent a persistent, interactive terminal.
If you have used Claude Code / Codex to run shell commands, you have probably hit the same wall: tool calls tend to be stateless. Each call starts "fresh", so environment variables disappear, interactive programs cannot be driven reliably, and long-running processes get cut off or orphaned while the agent is thinking.
PiloTY exists to make the agent's terminal behave more like a human's: start something in a real terminal, come back later, and keep going.
Warning: PiloTY exposes unrestricted terminal access. Treat it like giving the agent your keyboard.
tail -f, journalctl -f, kubectl logs -f, CI logs, service restarts.python, ipython, pdb).sudo, SSH passwords, key passphrases).less, man, top, vim can work, but cursor-heavy programs often require screen snapshots instead of plain text output.PiloTY is meant to be launched by an MCP client over stdio.
Add it to Codex CLI as an MCP server:
codex mcp add piloty -- uvx --from git+https://github.com/yiwenlu66/PiloTY.git pilotyIf you prefer SSH-based Git fetch:
codex mcp add piloty -- uvx --from git+ssh://git@github.com/yiwenlu66/PiloTY.git pilotyIf you already have a local clone:
codex mcp add piloty -- uv --directory /path/to/PiloTY run pilotyRun the server command directly (without adding it to an MCP client):
Loading reviews...