BETA RELEASE
Triggers for your agents, with you in the loop.
Personal AI automation that lives on your machine. Cron, files, and events wake your agents — watch, steer, or take over from one inbox.
Run it three ways — the lk CLI, the desktop app, or the terminal UI.
WIRED TO YOU
Organization automation watches repositories. Yours watches you.
Workflows trigger on what happens to you — a mention, an assignment, a question in your channel — across the places you work. Being personal is the point: your agents act with your context, your credentials, and your taste.
You get mentioned
@you lands on an issue, or your name comes up in a channel. That message wakes a loop on your machine, which drafts a reply and leaves it in your inbox for approval.
Your review is requested
A pull request is assigned to you, or someone asks you to review. Your loop takes the first pass — review notes and a risk summary are waiting by the time you open it.
Your own rhythm
Morning triage, nightly cleanups — cron loops tuned to how you work, not to your organization's pipeline.
THE DECLARATION
That's the whole thing — one on: block, in the workflow file. Filters run before delivery, so an event you didn't ask for never reaches your machine. And me is you, resolved from the account you connected: until it is, it matches nothing rather than everyone.
And personal doesn't mean stuck: when a loop proves itself, promote it — export it to your team's repository as a GitHub Agentic Workflows file.
ATTENTION LEVELS
Every action gets exactly the attention it deserves.
A policy you write — and explicitly trust — grades every action an agent proposes. Your attention is the scarce resource; loopkeep spends it deliberately.
auto-approve
Routine work flows through. Logged in the event trail, never interrupting you.
notify
Worth knowing, not worth stopping for. Bundled quietly into your inbox.
ask-first
The run pauses and asks. Approve, steer, or abort — right from the inbox.
deny
Never allowed. A built-in floor that no policy layer — and no agent — can relax.
And when you want the wheel: take over a live run — loopkeep opens claude in your terminal or multiplexer so you drive it directly, then hand it back. The floor stays on the whole time.
WORKS WITH
It runs in the tools you already have.
No new surface to learn: attended runs open in your terminal, take-over lives in your multiplexer, and wake signals arrive from the platforms your team already uses.
loopkeep finds your installed terminals and opens attended runs in the one you choose.
- Terminal.app
- iTerm2
- Ghostty
- WezTerm
- kitty
- Alacritty
Take-over and attended runs live in a pane, driven by whichever multiplexer you run.
- herdr
- tmux
- cmux
- zellij
Wake runs from the platforms your team already works in — the connectors.
- GitHub
- Slack
ARCHITECTURE PRINCIPLES
Three principles we never break.
The event travels, and stops there
The gateway checks that the event is genuine, works out which of your workflows it matches, and hands the event to your machine. It is held only until that machine takes it — at most a day if the machine is offline — and then it is gone. It never goes to anyone else's device.
Your code never leaves
Repositories, files, env, secrets, prompts, run transcripts — all of it stays on the machine. Signing in uploads no content, and the connector credentials we hold deliver events; they are never used to read your source.
Works when the cloud is down
Expired auth, no network, a full outage — cron, file-watch, runs, and your inbox keep working indefinitely. There is no kill switch to your automation.
CONTROL / DATA PLANE
Control plane and data plane, kept apart.
The Console owns sign-in, devices, connections, and entitlements. Delivery is a separate gateway: it verifies the webhook, matches it against the triggers your daemon declared, and forwards the matching ones. Your daemon holds a single outbound WebSocket and opens no inbound ports.
- Persistent outbound WebSocket (WSS), no inbound ports
- Store-and-forward, at-least-once, idempotency keys
- Filters run at the gateway — an event you didn't subscribe to is never delivered
SOURCES
GitHub · Slack
CONSOLE
control plane — login · devices · connectors
gateway — verify → match → wake signal
YOUR MACHINE
loopkeepd starts the matched run — code and secrets stay here
CONNECTORS
Connecting is just an install.
GitHub
Install the shared GitHub App on your account or organization — that's the whole setup. Issues, comments, pull requests, reviews, pushes, and CI results can all wake a workflow, and authorizing the install is what teaches loopkeep which login is you.
Slack
One “Add to Slack” OAuth flow. No app to build, no token to paste. A mention, a DM, your name in a channel, an emoji reaction — any of them can start a run.
NO LOCK-IN
Your workflows are markdown files in your repository.
Definitions live in .loopkeep/ as plain markdown with GitHub Agentic Workflows-compatible frontmatter — versioned, reviewed, and portable like any other code.
Import and run locally
Bring a GitHub Agentic Workflows file and run it on your machine — before push, with minute-level cron, and no Actions bill.
Promote what works
Export a proven loop to GitHub Agentic Workflows and it becomes your team's automation — every feature classified green, yellow, or red, nothing degrades silently.
Engine-neutral
Runs the claude CLI you already sign in with — API keys optional. Other engines can connect over the same adapter protocol.
PRICING
You pay for server resources. Everything else is free.
The line is simple — remote operations that consume Console resources are paid. Anything that runs entirely on your own machine stays free.
Free
Starter$0One machine + 1 connection
- One paired desktop
- cron / file-watch / git / manual
- One remote connection (GitHub or Slack)
- 100 wake signals a day
- Remote revoke for a stolen device
- Runtime independent (runs indefinitely)
Pro
ScaleComing soonConsole resources
- Up to 5 paired desktops
- Up to 10 GitHub and Slack connections
- 5,000 wake signals a day
- Start a manually-triggerable workflow from the Console on an online device
- Remote supervision and controls from the Console
GET STARTED
Get loopkeep.
Install the CLI, run the desktop app, or live in the terminal UI — one runtime, all on your machine.
$ curl -fsSL https://loopkeep.run/install.sh | shCurrently macOS (Apple silicon) only