Releases: stroops/sloop
Release list
v0.1.3
Every builtin AI CLI now reports precise fleet status, the status bar gained
model/context/rate-limit awareness, and sloop new launches an agent without
stealing your terminal.
Copilot and Codex auto-install status hooks
sloop hooks installnow wires up all five hook-capable tools —
claude, gemini, cursor, copilot, and codex — instead of stopping at
print+pastefor the last two.- Copilot: sloop owns a dedicated
~/.copilot/hooks/sloop.json(Copilot
loads every*.jsonfile in that directory), so install/uninstall never
touches a hand-written hook file. - Codex: sloop claims its single
notifyslot in~/.codex/config.toml
only when it's free; if something else already runs there,hooks install
prints copy-paste chaining instructions instead of overwriting it. A new
hiddensloop hooks notify <tool>command routes Codex's one-program
payload to the same status markerhooks emitalready writes. - The manifest's per-state event mapping (
hooks.events.*) generalized from
a plain string to{event, matcher}, so a tool's event can be
discriminated by a sub-type (Copilot'snotificationfires for several —
onlypermission_promptmeans "waiting"). - Surveyed gemini-cli, Cursor CLI, and Copilot CLI for a native statusline
mechanism (separate from hooks): none of the three expose one today, so
that gap is now a documented, dated fact in each manifest rather than an
open question.
Status bar: model, context %, rate limit — without repeating a tool's own footer
sloop statusline install <tool>(offered automatically bysloop init)
registers a sloop feed on Claude/Antigravity's own statusline mechanism,
chaining to any command you already had, and enriches the fleet marker
with what the tool reports on every render.- The tmux bar and
sloop psshow model, context-window usage (as a
block-character bar), and git branch at a glance — moved to the left
side, since tmux truncates the right side first on a narrow terminal. - New: 5-hour rate-limit usage, sourced from each provider's own convention
— something no custom statusline script commonly surfaces, so it's always
shown. - Once a tool's own footer already reports model/context/branch (a feed is
wired), the tmux bar stops repeating them and narrows to what only sloop
knows (status, identity, rate limit); tools with no feed (codex/cursor)
keep the full picture. - One marker read and one pane capture now serve a whole render (previously
up to three round trips);~/.sloop/stateno longer grows forever —
sloop killremoves a session's marker immediately, andsloop psprunes
stale ones after 24h.
sloop new — launch an agent without attaching
newisrunminus the attach: same targets/flags/context sync, but your
terminal stays free (-aattaches anyway,-Nforces a fresh instance).
runandnewshare one launch path so the two commands can't drift.- Fixed a tmux target-matching bug: with
ws__claude__secrunning, a bare
-t ws__claudecould silently resolve to it instead of failing, so
attach/send/kill risked hitting the wrong agent. Whole-session targets now
always match exactly.
Also
- Second-account profiles (
config_dir_env, e.g.CLAUDE_CONFIG_DIR) are
now respected everywhere a hook or statusline config path is resolved, not
just the default account dir.
v0.1.2
v0.1.1
Run more than one agent per repo, peek into a waiting agent without leaving your
screen, and a sharper first-run experience — all on top of v0.1.0.
Run multiple agents & accounts
- Named instances:
sloop run claude@review/-n/--nameruns a second agent of the same tool in one
repo (session<repo>__tool__instance);-N/--newauto-names the next free slot (claude·2…). - Profiles: save a tool + env once with
sloop profile add|ls|rm(global~/.sloop/config.yaml) and
launch it assloop run @<name>— e.g. a different account viaCLAUDE_CONFIG_DIR.--env KEY=VAL
injects env one-off without a profile (~/$VARexpanded). The fleet view shows instances as
tool·instance.
Peek (overlay a waiting agent)
sloop peekfloats a waiting agent's live pane over your current screen so you can answer it and
drop back withoutswitch-clientswapping your whole screen;sloop peek setupbinds a key. Needs
tmux ≥ 3.2. Every status bar gains a fleet-wide⏳ N waitingbadge.
Sharper onboarding (init / check / doctor)
sloop initis provider-respecting: it asks about the tools you actually use (Claude-first order),
prompts honestly and skips work that is already done, selects tools per workspace, and no longer
offers to scaffold a provider's folders for it.sloop checkgains more AI-readiness criteria, sourced from each tool's adapter manifest.sloop doctorgroups and colors its output and explains themodeline.
Full Changelog: v0.1.0...v0.1.1
v0.1.0
⚓ Sloop v0.1.0 — first release
The local-first control layer for your AI coding CLIs. One canonical context for every tool, and one cross-repo view of every agent you're running — sitting above Claude Code, Cursor, Codex, Copilot, Gemini & Antigravity, never replacing them or proxying their models.
Highlights
🧭 One canonical context, every tool
Write project guidance once in AGENTS.md; sloop delivers it to each CLI — pointer files (CLAUDE.md, GEMINI.md, …) created only if missing, never clobbering your files. Skills are authored once and symlinked into every tool.
🛰️ Cross-repo fleet view
sloop ps shows every running agent across all your repos and floats the ones waiting on you to the top. It reads what each agent is asking and lets you answer in one keystroke — jump in, reply, approve, or kill in place. Plus sloop ls (your workspaces), sloop restore (relaunch the whole fleet after a reboot), a floating sloop hud popup, and a live per-session status bar.
🔌 Provider-aware by construction
Every tool is a declarative adapter manifest — adding a CLI is adding one file, never editing Go. Status hooks wire each tool's own lifecycle events, so the fleet view knows precisely who's waiting (Claude, Gemini & Cursor auto-install).
🪶 Local-first & lightweight
A single CGO-free Go binary. No daemon, no cloud, no bundled LLM. tmux on macOS/Linux, psmux on native Windows.
Install
brew install stroops/tap/sloop
# or
go install github.com/stroops/sloop/cmd/sloop@v0.1.0Then sloop init in a repo, write your AGENTS.md, and sloop run claude.