PostHog Exception Triage Agent with Claude Code

The failure worth designing against is a confident issue: a stack trace, a guessed root cause, and an impact figure that came from how bad the message sounded. Being thorough about context before committing to anything is this harness's habit, and this template asks for the same discipline, since the count in the issue has to come back from a query and the cause line does not exist at all.

Loading preview…
Free to start · guided setup

Watch it work before it's live

Run a staged conversation — no account needed. The agent handles it for real while a simulated world answers its tool calls; nothing touches real accounts, and nothing is actually sent.

TypeError: t.workspaceId is undefined

user_8841 (dana.okoro@brightsidehealth.io)web app, project Production

at resolveWorkspace (assets/index-4f2a91.js:1:88214), at WorkspaceSwitcher (assets/index-4f2a91.js:1:91002), at renderWithHooks. Thrown on /settings/members three minutes into the session, with flag new-workspace-switcher active.

Set up in minutes

Using this template drops you into a guided setup. It asks exactly this, nothing else:

  1. Connect PostHog

    One sign-in. The agent acts through your account, scoped to what this template uses.

  2. Connect Linear

    One sign-in. The agent acts through your account, scoped to what this template uses.

  3. Connect Slack

    One sign-in. The agent acts through your account, scoped to what this template uses.

  4. Triage rules

    How you decide an exception matters and where it goes - the person and occurrence counts for each severity, the window you count over, the Linear team that receives issues, and the exceptions you already know about and want left alone.

  5. Runs on Claude Code

    Preselected for this page — connect your Claude Code account during setup, or switch to NoClick's built-in models with one click.

  6. Watch it handle a test run

    A staged conversation against a simulated world — then it’s live.

Why Claude Code for this agent

Impact is a returned number

One aggregate query over your window decides whether this hit one person or nine hundred. Using what came back, including when it comes back empty, is the whole guard.

Search Linear before filing

An open match means no new issue. Checking first is unglamorous, and it is the difference between a triage agent and a duplicate generator.

Before you fork

Is all that reading worth it for one exception?

For a browser extension throwing on your pricing page, no, and that run should end quickly once the frames are read. The reading earns its place on the exceptions where nobody can tell what the user did, which is where an event trail and a recording link save an engineer an afternoon. Point the trigger at the hard ones rather than at everything.

Run it with a different agent

Put PostHog Exception Triage Agent to work on Claude Code

Free to start. Guided setup, a test run against staged conversations, and it's live.