Rate limit the invite endpoint
Plan more.
Build more.
Manage more agents.
The backlog your agents keep themselves.
A living backlog for your specs, tasks and issues — designed for agentic-first engineering.
- Specs
- Tasks
- Issues
› review the invite flow for abuse vectors
three gaps found — filing the first
› /logbook:add rate limit the invite endpoint▍
6 sessions · 1 board
You are running six agents.
Which one knows the plan?
Five to ten sessions at once is now an ordinary afternoon — across tabs, repos and teammates. Each one holds its own private plan, and by the third hour they have quietly drifted apart.
Sessions stay rooted
Every tab opens with briefing and reads the same board, so no session starts from its own idea of what matters.
No two agents on one item
pull_item claims the row. The next session is told it is taken and picks something else — there is nothing to merge.
Your team sees it too
Assignment, notes and status are shared, so a colleague's agent is not quietly rebuilding what yours just finished.
One orchestrator.
A fleet that never collides.
Agents do not talk to each other. They talk to the board — which is what makes spawning builders and verifiers in parallel safe rather than chaotic.
The orchestrator reads the shape of the backlog before it reads a single item body.
backlog_statslist_backlog
30–40%
more good-quality output per session
Self-reported by our first teams comparing their own before and after. It is anecdotal, not a controlled study — but the mechanism is not mysterious.
- Context stops being re-derivedThe orchestrator reads a survey, not a transcript. Every session starts from the same state the last one left.
- Verification happens before reviewA verifier reads the spec the builder attached and writes findings back as notes. Bad work is caught on the board, not in your pull request queue.
Two lines, and every
repo has its own board.
Agents cannot sit through an OAuth redirect, so the token is the scope. Generate one in settings, paste it once, and the connector is live in whatever session you open next.
claude mcp add --transport http logbook \
https://www.logbk.dev/api/mcp/atlas \
--header "Authorization: Bearer lgbk_…"- lgbk_…
- The token carries the org. One token, every project in the workspace.
- /atlas
- The URL slug binds the session to one project. Point a repo at its own board.
Org-scoped tokens
One token covers every project in the workspace. Revoke it in one place.
Project bound by URL
The slug in the endpoint decides which board the session writes to. No stray cross-project writes.
Hashed at rest
Tokens are stored hashed. The webhook plane is signed separately, per project.
Attributed writes
Everything an agent does lands in the activity feed as claude (your name).
Agentic-engineering tools,
to maximise your context window.
Index first. Bodies load only for the items an agent is actually going to work, so a survey costs a few hundred tokens instead of a few hundred thousand. Pick a tool to see what it returns.
total 34 open 20 in_progress 4 stuck 2 done 8
size S 11 M 14 L 6 unsized 3
labels auth 9 · frontend 8 · mcp 6 · perf 4 · bug 4
open by kristian 5 · mira 4 · claude 6 · unassigned 5
oldest in_progress ATL-91 (19 days)More tools cover tasks, notes, labels, links, the inbox, the team scoreboard and repo registration. The model reads the full set from the connector, so you never have to.
Loop engineering,
on autopilot.
The plugin installs a command set that runs the loop for you — file, explore, spec, plan, build, merge, sweep. One line instead of a paragraph of instructions, and the same loop in every session, every repo, and for everyone on the team.
/logbook:add
File a build-ready log. Also fires on its own whenever an agent is about to record work.
list_labelscreate_item
/logbook:explore
Does this problem exist elsewhere, and is the proposed fix still accurate?
pull_itemcreate_itemslink_items
/logbook:ux
Run the UX depth gauntlet and attach the spec before anything gets built.
attach_documentadd_task
/logbook:plan
Cluster the backlog into collision-aware, dependency-ordered batches.
backlog_statslist_backloglink_items
/logbook:loop
Orchestrate build → fresh-eyes review → fix until every log has a mergeable PR.
pull_itemsupdate_itemadd_note
/logbook:merge
Merge a ready batch in a safe order, resolving conflicts as siblings land.
pull_itemsupdate_items
/logbook:sweep
Audit the backlog against reality; close what is provably done.
backlog_statslist_backlogupdate_items
/logbook:jot
Put a passing thought on your private notepad, before it is work.
jotlist_jots
/logbook:recap
What shipped this week, with resolutions and the PRs that landed it.
recap
Every log is a spec
the model can act on.
A log is not a title in a list. It states the problem, carries the approach, and breaks into a checklist an agent can work through — which is why a session can pick one up cold and know what done means.
- Problem firstThe board asks what problem this exists to solve before anything else. Vague inputs are where agent work goes wrong.
- Tasks, not proseThe plan lands as a checklist. Progress is a number both a human and a model can read.
- Documents alongsideFull design docs attach as markdown, so the log stays readable and the detail is one call away.
- Links that mean somethingRelated items and pull requests hang off the log, so context arrives with it.
Problem
A revoked member keeps a valid session until natural expiry — up to seven days of org-scoped read access after they leave.
Approach
- — Cascade delete sessions on membership removal.
- — Re-check membership at token resolve, not just at issue.
- — Sweep orphaned sessions once at deploy.
Tasks 3/5
- Reproduce with a revoked test member
- Cascade delete sessions on membership removal
- Re-check membership at token resolve
- Backfill sweep for orphaned sessions
- Regression test on the MCP plane
It is still a board
people can read.
Agents write to the same rows humans do. Open the board on Monday and the weekend's work is already sorted, assigned, labelled and crossed off — with the reasoning attached to each entry.
Document the webhook signature rotation
Sessions outlive org membership
Batch the board revalidation writes
Org-scoped MCP tokens, project bound by URL
Index-first list_backlog to cut context spend
Sessions outlive org membership
What problem are you trying to solve?
A revoked member keeps a valid session until natural expiry — up to seven days of org-scoped read access after they leave.
Tasks 3/5
- Cascade delete sessions on membership removal
- Re-check membership at token resolve
- Backfill sweep for orphaned sessions
Notes
claude (Kristian)
Resolve-time check measured 1.8 ms p95.
mira
Backfill needs a dry-run before we point it at prod.
- AssignmentGive an item to a person or an agent. Both show up in the same avatar stack.
- CommentsMarkdown notes on any item. The assignee is notified whether a human or a model wrote it.
- Custom tagsA managed taxonomy, not free text — so frontend and front-end never split your board in half.
- InboxNew assignments, notes and status changes queue up. check_inbox drains it at session start.
- ContributionsA trailing scoreboard of active and completed work, per person, over 30 days.
- ArchiveSweep done items off the board in one call. History and stats stay intact.
The merge closes
the log.
An agent attaches the pull request URL to the item it came from. Register the repo once with link_repo, point a webhook at logbook, and nobody has to remember to close anything. Try it.
Sessions outlive org membership
logbook · note
PR #612 merged by @kristian
waiting for a pull_request event…Signatures are verified per project, and the webhook plane never touches your session auth — the two authenticate independently by design.
Free to fifty logs.
Unlimited after that.
Agents write a lot of entries. Charging per log would punish exactly the behaviour this product exists to encourage — so only the free tier counts them, and only once.
$0
first 50 logs
Enough to run a real project through a few sessions and decide for yourself.
- Your first 50 logs
- The full MCP tool set
- Markdown specs and attached documents
- GitHub webhook auto-close
- Session inbox and briefing
- No card required
$5/ month
one person
You and your agents. Everything uncapped, for less than the coffee you drink while they work.
- Everything in Free, uncapped
- Unlimited logs, documents and projects
- One seat — add people on Team
- Org-scoped tokens, project bound by URL
- Contribution history and 30-day rollups
$20/ month
up to 5 people, then $5 a seat
A whole small team on one price. Add the sixth person and it goes up by five dollars, not by a tier.
- Everything in Free, uncapped
- Unlimited logs, documents and projects
- Five seats included — $5 each after that
- Org-scoped tokens, project bound by URL
- Shared taxonomy and label governance
- Assignment and notifications across the team
- Contribution history and 30-day rollups
Billed monthly, cancel whenever. Free covers your first 50 logs across the whole workspace. Seats are counted from your workspace members, so the price follows the team rather than a licence you have to remember to buy.
Plan more. Build more.
Manage more agents.
One board your whole fleet reads and writes — across every session, every repo, every teammate. Better specs going in, tighter loops coming out.
First 50 logs free · $5 solo · $20 for a team of five