Pyre

Pyre is an incident-learning workspace. It moves an investigation through intake, evidence collection, causal analysis, action planning, review, publication preparation, and follow-up without losing the facts and decisions behind the response.

Pyre incident overview for a checkout API outage with investigation stages, impact, scope, and open questions.
The overview keeps incident stage, impact, scope, open questions, and decisions in one retained workspace surface.

Why It Was Made

Pyre was made to test composition across the platform. An incident is not only a page of local state. It needs a project, a collaboration channel, evidence files, external sources, specialist analysis, workflow execution, presence, and an audit trail. The example shows where each responsibility belongs and which authority unlocks it.

Surface Map

SurfaceWhat this example declaresWhy it matters
UIworkspace-left, workspace scope, one instance per workspaceThe investigation is a durable workspace capability.
Storagepyre with retained persistenceThe domain model survives UI remounts and remains package-scoped.
Host APIsProjects, channels, channel messages, specialist management, workflows, and VFSPyre composes existing platform records rather than copying their contracts.
External accessCredential metadata, credential use, and bounded HTTPSource access stays in host-governed transports.
PresenceInvestigation participationThe surface can distinguish active collaborators from durable incident membership.
SpecialistPackaged investigation specialistAnalysis is a declared package contribution with its own authority.
QuickJS MCPPackage-runtime server and toolsHeadless tools expose bounded incident operations outside the webview.
AuthorityView, investigate, approve, plus each host capabilityThe UI can explain exactly which step is unavailable and why.

The implementation uses sdk.auth, sdk.authorization, sdk.channels, sdk.credentials, sdk.http, sdk.mcp, sdk.presence, sdk.projects, sdk.specialist, sdk.storage, sdk.vfs, and sdk.workflows.

Walk Through the Investigation

1. Establish the factual frame

The overview captures impact, time window, affected systems, regions, open questions, and decisions. These facts anchor every later claim.

2. Collect evidence

Pyre evidence view with incident evidence records, source details, and verification state.
Evidence records retain provenance while VFS holds host-governed files and receipts.

Pyre can provision a project chat root and write evidence snapshots through VFS. It reads credential metadata and uses host-mediated HTTP for approved external sources. Secret values never enter miniapp JavaScript.

3. Build a causal analysis

Pyre causal analysis view connecting evidence to why-chain claims and confidence.
The analysis view separates evidence, claims, confidence, and unresolved questions instead of presenting model output as fact.

The packaged specialist can help structure analysis, but its invocation remains an explicit permissioned host operation. Workflow runs carry the incident context through the platform workflow surface. Approval authority stays separate from investigation authority, so analysis cannot silently publish itself.

What to Read in the Code

Run It Locally

pnpm --filter @tap-examples/pyre dev

Link apps/pyre/.tap-package once. Mixed desktop and QuickJS changes use one watched package graph. Authority reductions can refresh automatically; added or broadened authority requires review before the changed generation is accepted.

Browse the source or return to the example gallery.