For engineering teams

Keep engineering work clear from report to resolution.

A bug gets a key, an owner, a sprint and a history the whole team can read. Developers work from the keyboard, leads plan from the backlog and the board, and an AI agent reads the same issue through documented tools, as the person who connected it.

ACME-12 · Invite link blank after it expires

  1. 2 OctReported
  2. 3 OctTriaged
  3. 3 OctIn Sprint 08
  4. 6 OctReproduced
  5. 8 OctFixed
  6. 9 OctIn the standup

One issue the developer, lead and agent can all follow.

ACME-12 from the first report to the morning standup. Every step below changes the same issue, and its history records who changed what. Pick a step to see the screen at that point.

1 / 6Casey Kim files it · 2 Oct 2026, 9:05am

ACME/Issues/ACME-12
BugMajor

Invite link blank after it expires

Steps. Open an invitation link that is older than seven days.

Expected. A message that the link has expired and a way to request a new one.

Actual. A blank page.

Reporter
Casey Kim
Assignee
Unassigned
Status
Open
Sprint
Unscheduled
Story points
Not estimated

Casey Kim created ACME-122 Oct 2026

2 / 6Casey Kim, lead, triages · 3 Oct 2026, 10:05am

Acme/ACME/Issues

type: Bug #Unresolved assignee: Unassigned3 issues

  • ACME-12Invite link blank after it expiresMajorUnassigned-Open
  • ACME-9Upload stalls at 100% on slow linksMajorUnassigned-Open
  • ACME-7Burndown ignores late additionsCriticalUnassigned-Open

/ focuses the bar, Tab completes the first suggestion and ↵ runs it. Save the query as a view and it becomes a tab above the list, with its count.

3 / 6Casey Kim, lead, plans it · 3 Oct 2026, 10:14am

ACME/Backlog

Sprint 08PlannedMake invitations clearer · 9 issues, 31 points · ends 17 Oct 2026

  • ACME-12Invite link blank after it expires3 points
  • ACME-14Invite email subject names the org2 points
  • ACME-15Resend invite from the members list1 point

6 more issues

BacklogIssues in no sprint

  • ACME-7Burndown ignores late additionsNot estimated
  • ACME-9Upload stalls at 100% on slow linksNot estimated

6 more issues

Assignee
Alex Lee
Estimation
2h
Due date
9 Oct 2026

Casey Kim moved ACME-12 into Sprint 08, Story points: 33 Oct 2026

Casey Kim set Assignee: Unassigned → Alex Lee, Estimation: 2h, Due date: 9 Oct 20263 Oct 2026

4 / 6Alex Lee, developer, picks it up · 5–6 Oct 2026

ACME/Issues/ACME-12
BugMajor

Invite link blank after it expires

Depends on 1

ACME-4Invite expiry setting per org

Alex Lee6 Oct 2026, 2:15pm
@casey reproduced with a ten-day-old link. The log shows the token check returning before the page renders. The fix waits on ACME-4.
Status
In Progress
Spent time
20m of 2h

Alex Lee linked: depends on ACME-45 Oct 2026

Alex Lee changed Status: Open → In Progress6 Oct 2026

Alex Lee logged 20m, Development6 Oct 2026

5 / 6Alex Lee moves the card · 8 Oct 2026, 4:40pm

ACME/Board/Sprint 08

Make invitations clearer

Ends 17 Oct 2026

Open4

2ACME-14
Invite email subject names the org
1ACME-15
Resend invite from the members list
2ACME-9
Upload stalls at 100% on slow links
1ACME-2
Password hint is cut off on small screens

In Progress3

5ACME-11
Swimlane header overlaps count
3ACME-10
Invite landing shows the inviter
8ACME-6
Project-scoped invite links

Fixed4

3ACME-12
Invite link blank after it expires
5ACME-5
Accept invite while signed in
3ACME-4
Invite expiry setting per org
1ACME-13
Invite expiry date shown in UTC

Alex Lee changed Status: In Progress → Fixed8 Oct 2026

Alex Lee logged 1h 25m, Development8 Oct 2026

Focus the card, Space to pick it up, the arrow keys to move it, Space to drop. Fixed is a done status, so ACME-12 is resolved and Casey, who filed it, is told.

6 / 6Alex’s agent, before standup · 9 Oct 2026, 9:10am

Your agentconnected as @alex

Is anything still open on ACME-12?

  • get_issueissue: "ACME-12", detail: "full"

ACME-12 is Fixed, resolved 8 Oct 2026, 4:40pm, with 1h 45m spent of 2h. ACME-4, which it depended on, is Fixed too. The decision record Invitation links and expiry references it.

/mcp__nothingleft__standup-summary

  • search_issuesupdated by: me updated: Yesterday .. Today sort by: updated desc
  • search_issuesassignee: me #Unresolved
  • get_issue_activityissue: "ACME-12"
  • list_notificationsunread_only: true
Done
ACME-12 Invite link blank after it expires, now Fixed
In progress
ACME-10 Invite landing shows the inviter
Blocked or waiting
Nothing
Time logged
1h 25m
Waiting on you
Nothing unread

Every call here reads; nothing changed. Had Alex asked for a change, it would be made as @alex, within Alex’s role and token.

Hand-drawn product views with fictional data. The tracker never writes to your repository: nothing here changes code, opens a pull request or deploys.

Fixed once, and it shows everywhere.

The sprint chart and the decision record read the same ACME-12. Nobody updates a report or edits a wiki page to say the bug is gone.

ACME/Reports/Burndown

Sprint 08 · Story points · as of 13 Oct 2026

  • Remaining
  • Ideal
On 8 Oct 2026, remaining work in Sprint 08 fell from 25 to 22 story points: the 3 points of ACME-12, resolved when Alex moved it to Fixed.Project reports
ACME/Knowledge base/Decisions/Invitation links and expiry

Decision record · Published to project members

Invitation links and expiry

Invitation links expire after seven days (INVITE_TTL_DAYS). An expired link must explain itself and offer a new one. A blank page or a redirect to sign-in is a bug.

Decided 2 Oct 2026. The expiry message is shown on the invitation landing page itself, before any sign-in prompt. See resolved issue ACME-12 for the first instance.

On ACME-12, under Referenced by

Invitation links and expiryDecisions · ACME

The key in the article links to the issue and is struck through once it is resolved. The issue lists every runbook or write-up that mentions it, so the next person who opens ACME-12 finds the reasoning.Knowledge base

Less to set up, less to click.

Engineers spend the day in the issue, not in the tracker’s settings. The keyboard reaches the common moves, the names are the ones people already say, and permissions come in five fixed roles.

The keyboard first

Single keys work anywhere outside a text field.

c
Create an issue
/
Focus search, Tab to complete, ↵ to run
gtheni
Go to the project’s issues
gthenb
Go to the board
aors
Assignee or status picker on an issue
⌘↵
Submit the comment (Ctrl ↵ elsewhere)
Space
Pick up a card or backlog row, arrows to move
?
Every shortcut, on any page
All keyboard shortcuts

Names you can say out loud

The app, the search bar and the agent’s tools take the same names. No UUID is ever required input.

  • ACME-12

    Issue keys count up from 1 and never skip; acme-12 finds it too.

  • @alex

    People by username, in comments, queries and agent calls.

  • In Progress

    Statuses, priorities and sprints by name, not by ID.

assignee: @alex sprint: {Sprint 08} status: {In Progress}

Five roles, already decided

No role editor, no permission schemes, no transition rules: any status can follow any status.

Observer
Reads issues, boards and articles. Changes nothing.
Contributor
Files, edits, links, comments, logs time and moves issues into sprints.
Project Admin
Also plans, starts and finishes sprints and shapes boards, statuses and fields.
Org Admin
Project Admin on every project, plus people and settings.
Org Owner
Everything an Org Admin can, plus transferring ownership.
The permission matrix

The agent works as you, never around you.

Every write an agent makes happens under the token of the person who connected it, with that person’s permissions. It can never do more than their role allows, the token’s scopes can narrow it further, and each change lands in the activity log under their name.

The MCP server calls the same public API as the web app. Deleting something, or taking away someone’s access, stops and asks the person in their agent app before anything happens.

Check every tool and what it changesMCP and AI agents

Scopes a developer’s token might hold

issues:read
Read projects, issues, members, and search
issues:write
Create and change issues, tags, links, files and shared saved views
comments:write
Comment
time:write
Log time

A refusal is real. When the role allows an action but the token does not, the answer names the missing scope:

This access token does not have the time:write scope

The tool reference marks each tool Reads only or Changes data, so a team can decide which scopes an agent gets before it connects.

It tracks the work, and it reads your repository.

Connect GitHub or GitLab and the issue shows the branches and pull requests that name it, with a badge on the board and a rule that can close it on merge. It reads and never writes back, and deployment data is not built in today.

A good fit for

  • Engineering teams that file bugs, plan sprints and follow a board in one project or several.
  • Developers who would rather press s than hunt for a status menu, and say ACME-12 instead of pasting a link.
  • Teams that want an AI agent to read and update the tracker as the person who connected it, and no further.

From your repository

  • Branches, commits and pull requests that name ACME-12 show on ACME-12, with review and CI state.
  • A badge on list rows and board cards: Merged, CI failing, Changes requested, In review and more.
  • Automations that move the issue when a branch is pushed, a pull request opens or the fix merges.

Not built today

  • Deployment data. Nothing reports what is released where; Fixed means someone, or a merge rule, set it to Fixed.
  • Writing back to GitHub or GitLab. No comments on pull requests, no commit statuses.

Questions engineering teams ask.

About Git, agents, setup and the keyboard. Short answers here, the rest in the manual.

Does it connect to our Git repository?

Yes, GitHub and GitLab, including GitHub Enterprise and self-managed GitLab. Name the issue in a branch, a commit message or a pull request and the issue shows that work, with its review and CI state. Automations can move the status when a pull request opens or merges. The connection only reads; deployment status is not built. GitHub and GitLab

Can an agent change issues without anyone knowing?

No. An agent connects with a personal access token, acts as the person who created it and can never do more than their role allows; the token’s scopes can narrow that further. Every change it makes is in the activity log under that person’s name. Deleting something, or changing roles and access, stops and asks the person in their agent app first. MCP tool reference

Do we have to design a workflow and roles before the first sprint?

No. A new project starts with statuses, priorities and types, and there are no transition rules: any status can follow any status. There are five built-in roles and no permission schemes to maintain. A Project Admin edits the lists when the team needs to. Permissions

Can developers work without the mouse?

Mostly. c creates an issue, / focuses search, g then b opens the board, a and s open the assignee and status pickers on an issue, and ⌘ ↵ or Ctrl ↵ submits a comment. On the board and the backlog, Space picks up a card, the arrow keys move it and Space drops it. Press ? on any page for the full list. Keyboard shortcuts

What does the standup summary read, and does it change anything?

It searches the issues you updated since yesterday and the ones still assigned to you, reads their history for status moves, comments and time, and lists your unread mentions, assignments and due dates. It changes nothing and marks nothing read, so a token with issues:read is enough. MCP and AI agents

What does it cost an engineering team?

Nothing during beta, for any team size. The first 20 members of every organisation stay free once billing exists. We will give notice before charging for seats beyond that; nothing is priced today. Pricing

Put your next bug through it.

Join the beta, create a project and file the bug you are working on now. Statuses, priorities, a board and five roles are ready; connect an agent when you want one.