Slashback — Development skill for Claude Code
A live Claude Code session running slash commands on itself, over SSH or inside T3 Code.
How to install Slashback
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open Aaryan-Kapoor/self-compact and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Slashback does
A live Claude Code session running slash commands on itself, over SSH or inside T3 Code.
Alternatives in Development
- Zoetrope — Watch a Claude Code session as a live flow graph, in your terminal or your browser 584 ★
- Dario — A local OpenAI- and Anthropic-compatible proxy that brings your Claude Pro/Max subscription to Cursor, Cline 485 ★
- Handmux — A mobile vibe-coding cockpit — built on tmux: drive your live session, Claude Code / Codex — anything a termin 162 ★
README

slashback
slashback lets a running Claude Code session execute `/compact`, or another allowlisted slash command, against itself, exactly as if a human had typed it at the prompt. It works in a session reached over plain SSH and in a session launched by T3 Code. The SSH path was worked out and verified on 2026-09-09 against Claude Code 2.1.263–2.1.267 running under a bare SSH login, with no tmux or screen in between, on Linux 7.0.0-30-generic, and the T3 path on 2026-09-27.
On the SSH path, the short version is that the only thing the TUI treats as a real command is a keystroke arriving on its terminal input, so the whole problem reduces to getting characters onto that input from inside a tool call. Every channel that looks like it should carry a command turns out not to, and the one channel that does, the pty master, belongs to `sshd` and is fenced off from the obvious `/proc` route. The unlock is to duplicate the master file descriptor out of `sshd` with `pidfd_getfd`, and the sections below explain both why the easy doors are locked and why this one opens.
The one-line answer
From inside the session, arm the injector detached, handing it this session's own pid and session id from the environment Claude Code exports to every tool shell, then end the turn immediately and say nothing else:
LOG="${CLAUDE_CONFIG_DIR:-$HOME/.claude}/slashback.log"
setsid python3 slashback.py \
--pid "$CLAUDE_PID" --session "$CLAUDE_CODE_SESSION_ID" --log "$LOG" >/dev/null 2>&1 &
disown
A second or two after the turn ends and the prompt goes idle, `/compact` appears on the input line and submits itself, and the TUI parses and runs it the same way it would for a human. The command defaults to `/compact`; pass a different one with `--command`. `--dry-run` runs every step except the keystrokes and is the way to test an instal
Related Skills
Y
Malleable coding agent app. Use Claude Code and Codex to code and reshape the app itself live.
Cc Fm Mod
claude.fm in your Claude Code prompt: a live spectrum under the composer, local or over SSH
CLI Agent MCP
MCP (stdio) server that lets Claude Desktop drive a local headless CLI coding agent (Claude Code or Cursor) as
TokenUsage
Live token usage tracking for Claude Code inside Obsidian
Claude Session Keepalive
Self-scheduling keepalive for Claude Code's 5h rate-limit window. Reads the exact reset timestamp from the API
Global Review
Start a global / cross-project / meta session — review the knowledge base itself or work its meta-backlog
Related Agents
49agents
49Agents bills itself as the first 2D agentic IDE — all agents, all terminals, all projects, all machines, one
Founder
founder orchestrator — plans, delegates, and stewards long sessions. Spawns coding subagents instead of writin
Review Orchestrator
Coordinates the full review pipeline — code review, architecture, security, and performance in parallel. Aggre