Skip to Content
Grepr AI agentsWork on issues with AI agents

Work on issues with AI agents

An agent with Works on issues turned on files issues, works on them, and records what it found on the issue board. An agent works on an issue in an investigation started on that issue, called a run on the issue. A run starts on an issue in one of two ways: you hand the issue to the agent, or the agent picks the issue up from the Ready column.

An agent’s issue settings are on its Issues step: Works on issues, whether it can put issues in Ready, and which Ready issues it picks up. When you create an agent, they’re in the wizard’s Memory and issues section.

Issue states

Every issue is in one of six states, and the board has a column for each one. By default, the Closed column shows issues closed in the last 7 days. To move an issue, drag its card to another column, use the move menu on its card, or click its state on the issue page. You can move an open issue to any other open state. Agents can too, except that an agent moves an issue to Ready only when it’s allowed to. See Let an agent put issues in Ready.

A sighting records that a problem happened again: when an agent’s investigation, such as one started by an alert, finds a problem that an issue already tracks, the agent records a sighting on that issue. Only agents record sightings, so an issue gets them only while an agent investigates that problem.

StateWhat it meansHow issues move
TriageFiled, but not yet confirmed or prioritized. A person decides what happens next.Agents file issues here, or in Ready when they’re allowed to. Issues also come back here from In progress and Closed, as described for those states.
ReadyConfirmed and waiting for someone to take it on.The first person or agent to join it, such as with Add me, moves it to In progress. Agents with pickup turned on pick up the issues that match their filters.
In progressSomeone is working on it.When an agent’s run on it ends or an agent is removed from it, and no one is left working on it, the issue moves to Triage. When you click Finish my part, the issue stays where it is, for you to move.
WaitingBlocked on a person or an outside event.The issue stays here until someone moves it or its expiry passes. When the blocker clears, move the issue to where the work stands, such as Ready or In progress.
MonitoringA fix is in, and you’re watching for the problem to come back.See Monitor a fix.
ClosedDone, with a resolution that says why.See Close and reopen an issue.

An open issue can have an expiry, set in Expires at. When the expiry passes, Grepr closes the issue as Expired. If an agent set the expiry and someone is still working on the issue, the issue closes after they finish. Expires at on the issue page then names who the issue is waiting for, and if you’re one of them, you can click Finish my part there. To end someone else’s assignment, remove them from the issue’s assignees.

Monitor a fix

Move an issue to Monitoring when a fix is in and you want to confirm that the problem doesn’t come back. A Monitoring issue needs an expiry or a revisit time. If it has neither when you move it, you set an expiry: if nothing else happens, the issue closes as Expired at that time. An agent can also set a revisit time, when it checks on the issue again.

Every other assignee must finish before an issue moves to Monitoring, and the move finishes your own assignment. To move the issue while someone is still working on it, choose Move anyway: they stay assigned and keep working on it.

An agent that moves an issue to Monitoring watches it, shown as Watching on the card and Watched by on the issue page. On a new sighting, or when the revisit time comes, Grepr starts a run of that agent on the issue. The agent checks whether the fix holds and moves the issue to where the work stands. A sighting doesn’t move a Monitoring issue by itself.

An issue loses its watcher when it leaves Monitoring, when the agent can no longer work on the issue, or when you click Remove next to Watched by, which removes the agent from the issue. See Remove an agent from an issue. If no agent watches a Monitoring issue, it moves back to Ready at its revisit time, so that an agent with pickup can check it again. Without a revisit time, it stays in Monitoring until its expiry.

Close and reopen an issue

When you close an issue, you choose a resolution:

ResolutionWhen to use itOn a new sighting
FixedThe problem is resolved.The issue reopens in Triage, marked Regressed.
DuplicateAnother issue tracks the same problem. You choose that issue.The sighting is recorded on the issue it duplicates.
Not a problemThe behavior is expected this time.The sighting is counted, and the issue stays closed.
IgnoredThe problem never needs action. Only people can choose this resolution, such as with Ignore from now on on the issue page.The sighting is counted, and the issue stays closed.
ObsoleteWhat the issue was about no longer exists.The issue reopens in Triage, while its expiry, if it has one, is still ahead.
ExpiredGrepr sets this resolution when the issue’s expiry passes.Agents can’t record sightings on it, so they file a new issue instead.

Closing an issue as Fixed clears its expiry, so a new sighting reopens it however long after the fix it comes.

Every other assignee must finish before an issue closes. To close it anyway, choose Close anyway, which finishes their assignments.

You can reopen a closed issue to Triage or Ready, with these rules:

  • Only people can reopen an issue closed as Ignored or Expired. To reopen an Expired issue, or any issue whose expiry has passed, first clear or extend its expiry.
  • An agent can reopen an issue closed as Not a problem only when it comments with evidence that the issue doesn’t already have.

How an agent finds issues

Before an agent acts on a problem or files an issue, it searches the board for the problem and reads what it finds, including guidance comments. The search also finds issues people closed as Ignored or Not a problem, so an agent doesn’t redo work a person ruled out. The issue page shows which runs each guidance comment was given to.

An issue’s entities, such as entity:service=checkout, say what the problem is. When an agent files an issue from an alert, it names at least one entity from the alert.

How an agent works on an issue

When a run on an issue starts, the agent joins the issue as an assignee, and an issue in Ready moves to In progress. The issue page lists the issue’s runs with their status and a link to each one, and the issue’s card shows an agent whose run is waiting to start.

When the run ends:

  • The agent’s assignment is finished.
  • The agent posts a comment on the issue that says how the run ended, with a link to the run. The comment includes the run’s summary unless the agent already commented on the issue or the run failed.
  • If the issue is still In progress, with no one assigned and no other run on it, the issue moves to Triage, where a person decides what happens next. To keep an issue In progress, add yourself to it with Add me.

An agent can close an issue it’s assigned to, or move it to Monitoring and watch it. Either move finishes the agent’s own assignment. Another assignee’s active assignment prevents the move, and only a person can move the issue anyway. See Monitor a fix and Close and reopen an issue.

The same rules apply to an agent that joins an issue during another investigation, such as one started by an alert.

Hand an issue to an agent

To hand an issue to an agent:

  1. On the issue page, click Hand to an agent.
  2. Choose the agent, and optionally add a note for it.
  3. To start the run ahead of the agent’s other queued runs, select Work on this next. The run never stops a run that’s already running.
  4. Click Hand off.

You can hand an agent an open issue that the agent’s service account can view and edit. The agent’s page shows whose issues it works on. An agent that still has a run on the issue can’t be handed it again: comment on the issue to steer the run, or cancel the run first.

If the agent’s run never starts, because it was discarded while waiting, failed to start, or was cancelled, the issue’s history says so, with a link to the run.

When you continue an investigation that was on an open issue, the new investigation works on that issue too, as if you handed the issue to the agent. If the issue is closed, the new investigation isn’t on an issue.

Let an agent pick up Ready issues

To let an agent pick up issues on its own, open the agent’s Issues step, turn on Pick up Ready issues, and choose which issues it takes: a priority, labels, entities, and teams. An issue must match every filter you set. Labels are the dependable way to route issues to an agent.

The agent picks up issues in Ready that no one is assigned to and no run is on, most urgent first, then the one that has been in Ready the longest. It follows these rules:

  • It starts runs only in free run slots, and starts none while it has as many runs on issues as Runs on issues at once. Keep slots free for alerts and the issues people hand it.
  • It picks up only issues its service account can view and edit.
  • It doesn’t pick up an issue again during the same stay in Ready.
  • Agents pick up an issue at most two times before a person acts on it again, by moving, changing, commenting on, or handing off the issue.
  • After three runs on issues in a row fail or never start, the agent picks up nothing for 30 minutes.

Pausing an agent discards its runs on issues that are waiting to start, so that other agents can pick those issues up.

Let an agent put issues in Ready

By default, an agent files issues in Triage for a person to review, and can’t move an issue to Ready. To let an agent file issues in Ready and move issues there, choose Allow Ready on the agent’s Issues step. Agents whose pickup filters match an issue in Ready pick it up, and every agent can see the other agents’ pickup filters, so an agent can label an issue for the agent that handles it.

Remove an agent from an issue

To take an agent off an issue, remove it from the issue’s assignees. Its assignment ends and its runs on the issue are cancelled. Until someone hands it the issue again or unlocks the issue’s assignees, the agent can only comment on the issue. If no one else is working on an issue that is In progress, the issue moves to Triage.

Last updated on