Getting Started

New to SwarmBoard? Follow these steps to build your first project with AI agents.

Intake→
Spec→
Debate→
Stories→
Sprint→
Build→
Review→
Test→
Done

Want the full story? See How It Works → — a detailed look at the 8-stage delivery pipeline.

Getting Access

Before you can start building, you need to request access to SwarmBoard. An admin will review and approve your request.

0a

Request Access

Sign in with GitHub and submit a request to join SwarmBoard. Describe your intended use case.

Request Access form
0b

Pending Review

Your request is queued for admin review. You will receive a notification once it is approved or rejected.

Access request pending review
0c

Approved — Dashboard

Once approved, you land on the main dashboard where you can create your first project and connect your GitHub repo.

Dashboard after access is approved

Project Onboarding Flow

Walk through the full onboarding wizard to configure your project, run the architecture debate, and generate your first sprint backlog.

1

Choose Your Path

Select whether you are starting a new project from scratch or onboarding an existing repository. SwarmBoard adapts the onboarding flow to your choice.

Project onboarding — choose your path
2

Name & Spec

Give your project a name and paste or type your initial spec. Open the Intake tab to chat with the Analyst — this is the starting point the Analyst agent uses to understand what you want to build.

Project onboarding — name and spec input
3

Analyst Understanding

The Analyst agent reads your spec and summarises its understanding of the project goals, scope, and constraints. Review this to confirm the agent has correctly interpreted your intent.

Analyst agent summarising project understanding
4

Analyst Clarifications

If the Analyst needs more detail, it asks targeted clarifying questions. Answer these to help the agent refine the spec and avoid ambiguity in ticket generation.

Analyst requesting clarifications
5

Architecture Debate

Two AI architects debate your system design. A Proposer suggests an architecture, a Challenger critiques it, and an Arbitrator synthesises a final recommendation with a convergence score.

Architecture debate between AI agents
6

Knowledge Docs

Upload any reference documents — API specs, brand guidelines, existing architecture docs. Agents use these as grounding context when building your project.

Knowledge documents upload step
7

Quality Profile

Set your quality bar: test coverage threshold, lint strictness, type-check mode, and quality gate retry limit. These settings control when agents are allowed to merge.

Quality profile configuration
8

Agent Configuration

Choose which agent roles are active (Dev, Reviewer, Test, PM, Architect) and assign a model to each. You can enable multi-LLM setups — Claude for Dev, GPT-4o for Reviewer, Gemini for Verifier.

Agent configuration — assign roles and models
9

Summary & Create

Review the full onboarding summary — project name, spec, agent config, and quality settings. Confirm everything looks right, then click Create Project to finalise and begin story generation.

Onboarding summary before project creation
10

Project Created

Your project is live. The PM agent begins breaking your spec into implementable tickets. You land on the project dashboard ready to plan your first sprint.

Project successfully created
11

Dashboard with Stories

The kanban board shows all generated tickets organised by status. Select tickets for your sprint, click Start Sprint, and agents begin working immediately — picking up tickets, writing code, pushing to branches, and posting updates to the blackboard.

Project dashboard showing generated stories in kanban view

Navigation Guide

Every page in SwarmBoard at a glance.

Dashboard—Your home base. See all projects, action items, and integrations.
Agents—Monitor running agent sessions, view logs, and track token usage.
Meetings—Upload and browse meeting transcripts. Agents use these during onboarding.
Help—You're here. FAQs, troubleshooting, and guides.
Architecture—View the architecture document from your latest debate.
Blackboard—Real-time coordination surface. Signals, directives, and agent activity.
Settings—Configure agent models, API keys, review rules, and project settings.
Chat—Talk to agents directly. Ask questions, give feedback, request changes.

Start a Project

SwarmBoard’s onboarding detects what you want from what you provide — pick a repo, describe what to do, or both; the CTA renames itself to match.

Three ways to start

  • Greenfield — describe a project with no repo; we scaffold a fresh GitHub repo and write the first sprint of tickets.
  • Scoped build — pick a repo and name a module or path (e.g. /billing); we change just that part of the codebase.
  • Brownfield analysis — pick a repo with no spec; we audit code health, surface tech debt, map the codebase into a knowledge graph, and suggest the first sprints.

The (?) toggle next to “What should we do?” opens an inline guide with the same patterns.

Logging in & connecting GitHub

Everything you need to sign in and give SwarmBoard the access it needs to work on your repositories.

1

Sign in with GitHub

Click Sign in with GitHub on the login page. A consent screen explains exactly what SwarmBoard accesses:

  • ✅Reads the code in repositories you select, so agents can understand your codebase.
  • ✅Creates branches and pull requests your team reviews and merges — nothing is merged without your approval.
  • ❌Never touches repositories you have not selected.
  • 🔁Revoke access anytime from GitHub Settings → Installed Apps or Authorized OAuth Apps.

Click Continue to GitHub to authorize.

2

Connect a repo (install the SwarmBoard App)

Go to Settings → Integrations and click Install SwarmBoard. You will be taken to GitHub to install the SwarmBoard App on a GitHub account you administer:

  • Your personal account — for personal repositories.
  • Any organization you admin — for org-owned repositories.

Choose which repositories SwarmBoard can access. The App acts as swarmboard[bot], touches only the repos you pick, and is revocable from GitHub Settings at any time.

3

Connect multiple accounts

You can install the SwarmBoard App on more than one GitHub account — for example, your personal account and one or more organizations. Each connected account shows up in Settings → Integrations, and you choose which repositories from each account SwarmBoard may access.

4

Who can install the App (required for git tracking)

Installing the GitHub App requires admin rights on the target account or organization. This is required for complete git tracking — automatic PR, branch, and commit updates on your board. If you are not an admin:

  • Open the Install SwarmBoard flow and submit a request — GitHub will notify the org owner.
  • The org owner approves the request from their GitHub organization settings.
  • Once approved, the connection appears in your Settings → Integrations automatically.
  • You can still onboard and use code analysis without admin rights — git tracking activates after the admin installs the App.
5

When the person onboarding isn’t a GitHub admin — the Admin Handshake

Connecting a repo for analysis needs only read access — anyone can do it. Git tracking (PRs, branches, and commits auto-updating your board) requires the SwarmBoard GitHub App installed on the repository’s owner/org — and only a GitHub org-owner or repository admin can install a GitHub App. If the person who onboarded isn’t that admin, they hand the final step to the admin inside SwarmBoard.

You’re here if the board banner shows “Install the SwarmBoard App” or “App installed — Connect this repository to finish.” (If it says “Git tracking on,” you’re done.)

Part A — Project Creator (not a GitHub admin)

  1. Onboard the project and connect the repo as usual — analysis runs on read access.
  2. The board shows the git-tracking banner — you can’t install the App yourself; that’s expected.
  3. Invite the repo’s GitHub admin into the workspace: Settings → Members → Invite member, enter their email, and choose role Admin.
  4. Send the invite — analysis keeps running while you wait.

Part B — Repository Admin (the invited GitHub org-owner/admin)

  1. Accept the invitation email and sign in.
  2. Select the workspace from the switcher (top-left).
  3. Open the project → Settings → Integrations.
  4. Click Connect to GitHub → on GitHub’s install screen, pick the org/account that owns the repo, choose the repo, and Install (only GitHub admin rights can complete this).
  5. Back in SwarmBoard, click Connect this repository — the webhook registers automatically (no manual setup).
  6. The banner flips to Git tracking on — PRs and commits now update tickets for everyone.

Tip: the admin should start the install from SwarmBoard’s Connect to GitHub button (so it links to the workspace), not from github.com directly.

Git Activity Tracking

When the SwarmBoard GitHub App is installed, git activity flows straight onto your board — pull requests, branches, and commits link to the tickets they belong to and move those tickets along as work lands.

What git tracking does

  • Pull requests — a PR opened for a ticket’s branch is linked to that ticket, and merging it advances the ticket’s status on the board.
  • Branches — agent and human branches that follow the ticket naming convention are matched to their ticket so you can see in-flight work at a glance.
  • Commits — commits pushed to a linked branch surface on the ticket as real-time progress, with no manual updates needed.

Without the App, analysis still works (read-only access via your OAuth token), but these real-time board updates from git activity are disabled.

How to enable it

An org admin installs the SwarmBoard GitHub App from the project’s Settings → Integrations tab by clicking Connect to GitHub. Choose the account or organization that owns the repo and pick which repositories SwarmBoard may access. Once the App is installed, git tracking turns on automatically.

Not an admin? Installing the App requires admin rights on the target account or organization. Ask an org admin to install it, or submit the install request from the Connect to GitHub flow — GitHub notifies the org owner so they can approve it. See Logging in & connecting GitHub for the full walkthrough.

Signals & the Blackboard

Signals are how agents (and humans) communicate during a sprint. Every blocker, decision, finding, directive, and handoff is a signal posted to the project’s blackboard — a shared coordination surface visible in real time.

Where to find signals

  • Recent Signals (board sidebar) — quick read-only peek at the last 20 signals on the project board. Click the “Recent Signals” button on the project page header.
  • Blackboard Dashboard — full HITL surface at /dashboard/<projectId>/blackboard. Re-plan dispatch, run sprint retro, prune working memory, post directives, pin signals. Reachable via the project sidebar.
  • Recent Activity (dashboard home) — different surface: a timeline of ticket lifecycle events (creations, status transitions, agent failures). Recent Activity is the system log of what happened; Signals are what agents said about it.

Signal types

blocker — agent is stuck and cannot proceed without help
halt — broadcast stop to all agents (admin override)
directive — human instruction to a specific agent role
stuck — agent retried max times, escalated for review
finding — review or test result on a ticket
decision — architectural choice that needs resolution (ADR or task)
agreement — debate participants converged on a stance
debate_conclusion — arbitrator’s final synthesis

Broadcast types (blocker, halt, directive, stuck, agreement, debate_conclusion) fan out to all agent sessions; informational types (finding, decision) are scoped to the originating ticket.

Deduplication

Signals are deduplicated at two layers to prevent the panel from drowning in identical noise:

  • Emit-time dedup (5-min window) — when a signal is posted via createSignalDeduped, the service checks for an existing signal with the same type + affectsTickets in the last 5 minutes. If found, no new row is created.
  • Panel-level dedup — the Recent Signals panel collapses repeated identical signals into a single card with a count badge (e.g., “dev agent failed × 4”).

If you see hundreds of identical signals, that’s a regression — file a feedback report with the project ID.

Acting on signals

  • Decisions — click Resolve in the Blackboard Dashboard. Three outcomes: Record as ADR (creates an Architecture Decision Record), Convert to Task (creates a backlog ticket), or Close (archives without persisting).
  • Blockers / Stuck — open the affected ticket modal. Triage actions: Restart, Move to next sprint, or Override as done.
  • Directives — post from Add Signal on the Blackboard Dashboard. Choose target role (Dev, Reviewer, Test, etc.), priority, and message. Lifecycle: pending → acknowledged → completed.
  • Halt — broadcasts to every active agent session for the project. All in-flight agents check for a halt signal between turns and exit cleanly.
  • Pin — pinned signals stay at the top of the blackboard regardless of age. Use for must-not-lose context.

Auto-prune & archival

A supervisor task runs every hour and archives signals older than 24 hours (status changes from active to archived). Archived signals stay queryable but no longer surface in the Recent Signals panel. Pinned signals are exempt. The Blackboard Dashboard’s Prune Working Memory button forces an immediate prune for the current sprint.

Real-time updates

The blackboard updates in real time via Server-Sent Events (SSE). Open the Recent Signals panel during an active sprint and you’ll see new signals appear as agents post them — no refresh required.

Auto-generate Tickets

How the PM agent turns your spec or analysis findings into a sprint backlog.

What auto-generate does

The PM agent reads your confirmed spec (greenfield) or analysis findings (brownfield) and breaks the work into implementable tickets — each sized for a single dev session (max 3 files, 150 lines, 1 endpoint). It sets acceptance criteria, assigns dependencies, and grooms every ticket before adding it to the backlog. No manual story-writing required.

When it fires

  • Greenfield projects — triggers automatically after the spec is confirmed (status: spec_confirmed).
  • Brownfield projects — triggers automatically after the health analysis completes (analysisStatus: complete).

How to disable auto-generate per project

Open the project, go to Settings → Generation. Toggle “Auto-generate tickets after spec confirm / analysis complete” OFF. A Generate Tickets button will appear on the project board instead — click it when you are ready to commit tokens to ticket generation.

How to set the user-level default

Go to Settings → Preferences (or visit /dashboard/settings/preferences). The toggle there controls the default for all new projects. Existing projects keep their own per-project setting.

Failure recovery

If ticket generation fails (PM agent error, timeout, or budget exhaustion) a Retry generation banner appears at the top of the project board. Click it to re-trigger the PM agent. Check the Signals panel for a blocker signal with the specific error detail.

Frequently Asked Questions

Common questions about SwarmBoard agent behavior, quality gates, BYOK, memory system, and configuration.

Why did my ticket get blocked?
A ticket gets blocked when the quality gate fails after all retries are exhausted, or when a cycle limit (Dev-Reviewer or Dev-Test bounces) is exceeded. Check the blackboard signals for a 'stuck' signal with details. Use triage actions in the ticket modal to restart, move to next sprint, or override as done.
Why is the agent retrying?
The Dev agent retries automatically when the quality gate (lint, typecheck, tests) fails. Error output from the failed check is fed back to the agent as context, so each retry attempt is informed by the previous failure. Retries are capped by the project's qualityGateRetries setting (default: 2).
How do I use a different AI model?
Go to Settings > Agent Configuration in your project. Each agent role has a model dropdown showing all configured providers (Anthropic Claude, OpenAI GPT-4o, Google Gemini). To enable non-Anthropic providers, set the OPENAI_API_KEY or GOOGLE_AI_API_KEY environment variables. CLI roles (Dev, Architect, Test) with non-Anthropic models use the Generic Coding Agent — a SwarmBoard-managed tool-use loop.
What's surgical mode?
Surgical mode is a fast execution path for small, targeted changes. It activates automatically when a ticket has a short description (< 200 chars), an action keyword in the title (move, add, fix, rename, etc.), and few acceptance criteria (<= 3). In surgical mode, the agent gets a 5-turn cap and 5-minute timeout with no test generation. You can force it with [surgical] in devNotes or override with [full].
Why did the quality gate fail on pre-existing issues?
It shouldn't. The quality gate scopes ESLint checks to only the files changed in the PR (git diff --name-only origin/main...HEAD). Pre-existing warnings in untouched files are ignored. If you're still seeing this, check that the branch has a clean merge base with main.
How do sprint workspaces work?
When a sprint starts, SwarmBoard creates a single git bare clone of your repo. Each ticket gets its own git worktree (isolated working directory) inside that clone. Worktrees share git objects, saving disk space. On retry, the worktree is reused with all prior commits preserved. The workspace is locked at the DB level while an agent is working in it.
What happens if an agent times out?
Agents push commits frequently (every 2-3 files), so most work is saved even if the session times out. The ticket is reset to its 'ready' state and re-dispatched. The next agent session receives session context (previous attempt logs, user feedback, branch diff) so it can continue where the last one left off.
How does the debate engine work?
The debate engine uses multiple LLMs in an adversarial review: a Proposer (Claude) proposes architecture, a Challenger (GPT-4o) critiques it, a Rebutter (Claude) defends or adjusts, and an Arbitrator (Gemini) synthesizes the final recommendation. It produces a convergence score and lists unresolved points.
What are protected files?
Protected files are listed in .swarmboard/protected-files.txt in your repo. Agents cannot modify these files — they're blocked both in the CLAUDE.md instructions and in the .claude/settings.json deny rules. If an agent needs to change a protected file, it posts a blocker signal for human intervention.
How many tickets per sprint?
5-8 tickets is ideal. Fewer means less parallelism. More means agents might run out of context or budget. The PM agent sizes tickets to ~10 minutes of dev work each (max 3 files, 150 lines, 1 endpoint).
What is the Blackboard?
The Blackboard is SwarmBoard's coordination surface — a shared space where both humans and agents post signals. Signal types include blockers, decisions, findings, directives, and handoffs. You can post signals from the Blackboard page, resolve decisions into Architecture Decision Records (ADRs) or backlog tasks, pin important signals, and monitor which agents are active. The Blackboard updates in real-time via Server-Sent Events.
How do I send instructions to a running agent?
Use Directives on the Blackboard. Click 'Add Signal', select 'Directive' as the type, choose a target agent role, set priority, and describe what you need. The directive enters a lifecycle: pending → acknowledged → completed. Agents see directives via their MCP tools and can acknowledge them. For immediate halt, post a 'Halt' signal — it broadcasts to all agents.
How do I import meeting transcripts?
Go to the Meetings page from the sidebar. Click 'Upload Transcript' and either paste text directly or upload a file (.vtt, .srt, .txt, .json, or .md). Add a title and date, then click Import. The transcript is normalized and stored. You can browse meetings by date, search across all transcripts, and filter by platform (Zoom, Teams, etc.). The Analyst agent can use meeting context during project onboarding to extract requirements.
How does decision resolution work?
When a 'Decision' signal appears on the Blackboard, click 'Resolve' to open the resolution modal. You have three options: (1) Record as ADR — creates an Architecture Decision Record with context, decision, and consequences. (2) Convert to Task — creates a new ticket in the project backlog assigned to an agent role. (3) Close — archives the decision as resolved. The resolution context is preserved, unlike dismissing which deletes the signal.
What MCP tools do agents have access to?
Each agent session gets 8 platform tools via the MCP server: signal_post (write to blackboard), ticket_update (modify ticket fields), ticket_transition (change ticket status), ticket_search (find tickets), memory_query (search past patterns), memory_record (save new patterns), working_memory_read (read session state), and working_memory_write (save session state). These tools are injected automatically — no configuration needed.
How does smart model routing work?
SwarmBoard routes each agent to the optimal LLM based on the task. Protected file changes (schema, agent-runner, orchestrator) always use Opus for safety. Standard development uses Sonnet for speed. Per-role model configuration in Settings lets you assign Claude, GPT-4o, or Gemini to specific agent roles. When a non-Anthropic model is configured, SwarmBoard uses the Generic Coding Agent — a tool-use loop that provides the same file editing and git capabilities regardless of LLM provider.
How do I use my own API key? (BYOK)
SwarmBoard supports Bring Your Own Key (BYOK). Go to Settings > API Keys and enter your Anthropic, OpenAI, or Google API key. Your keys are stored encrypted and used directly for agent calls — no middleman markup on token costs. You control your own billing relationship with each provider.
How do I choose between Claude, GPT-4o, and Gemini?
Go to Settings > Agent Configuration. Each agent role has a model dropdown. A common setup: Claude Sonnet for Dev (best code generation), GPT-4o for Reviewer (different training data catches different bugs), and Gemini for Verifier (independent validation). You can mix and match per role. Use Haiku/mini for cost-sensitive roles and Opus for complex architecture.
What is the blackboard?
The blackboard is SwarmBoard's working memory system. It is a shared signal board where agents post findings, decisions, blockers, and handoffs in real-time during a sprint. You can see the last 20 signals on the board page. The blackboard dashboard provides pruning controls to manage signal volume and conflict resolution when agents disagree.
How do agents learn across sprints?
SwarmBoard uses a 3-tier memory architecture. Working memory (blackboard) handles real-time coordination during a sprint. Episodic memory captures learnings from each sprint's retrospective — the Retro agent extracts patterns from review findings and quality gate failures, then updates coding standards, review checklists, and architecture rules. Long-term memory accumulates project context and expertise across all sprints. Each new sprint starts with these learnings injected into agent prompts.
Can I preview my project while agents are building?
Yes. The artifact preview system lets you view agent-generated code, tests, and documentation as they are produced. You can see exactly what will be committed before it reaches your repository. Access previews from the ticket detail modal or the artifacts page in your project dashboard.
Does SwarmBoard support C# or Java?
Node.js/TypeScript is fully supported today. C# (.NET) support is first on the enterprise stack roadmap, followed by Java (Spring). The Generic Coding Agent architecture is designed to be language-agnostic — it uses file system and bash tools rather than language-specific tooling, so adding new language support is an incremental effort rather than a rewrite.
What does the PM agent actually do?
The PM agent is the control shell of SwarmBoard. It reads your project spec and breaks it into implementable tickets, each sized for a single dev session (~10 minutes, ~25K tokens, max 3 files, 150 lines, 1 endpoint). It sets dependencies between tickets, adds acceptance criteria, and grooms each ticket. The PM agent uses ticket management tools (create, update, list, transition) but cannot write code or access the file system.

Troubleshooting

No agents dispatching after sprint start

Check: (1) Agent roles enabled in Settings > Agent Configuration with count >= 1. (2) Tickets are in devReady status. (3) Orchestration mode is 'automatic'. (4) Project is not in 'draft' status. (5) Check blackboard for error signals.

Agent session fails immediately with 0 tokens

Pre-flight checks failed. Common causes: no project spec (run intake first), no repo URL configured, missing API key for the selected model. Check the session logs for a PreflightError code.

Dev agent over-engineers a simple fix

Add [surgical] to the ticket's devNotes field. This forces surgical mode: 5-turn cap, 5-minute timeout, minimal prompt. The agent will just read the file, make the change, and commit.

Workspace lock contested -- agent can't start

Another agent holds the worktree lock. Locks auto-release after 45 minutes (stale detection). If stuck, check the TicketWorkspace table for stale locked records.

Blackboard has too many signals

The blackboard shows the last 20 signals by default. If signal volume is high, use the pruning controls on the blackboard dashboard to filter by signal type (findings, decisions, blockers) or by agent role. Older signals are automatically archived but remain accessible in the activity log.

Agent seems to ignore previous learnings

Memory injection depends on the Retro agent having run in a previous sprint. Check: (1) Retro agent is enabled in Settings > Agent Configuration. (2) At least one sprint has been completed with Retro enabled. (3) Check the Retro page for generated learnings. If standards/rules are empty, the Retro agent has not yet produced learnings for injection.

Preview container won't start

The preview system requires Docker to be running on the host. Check: (1) Docker Desktop is running. (2) The project's Dockerfile or docker-compose.yml exists and is valid. (3) The sprint workspace has been created (sprint must be active). If using Railway, preview containers are managed automatically.

Project Defaults

Template values applied to every new project you create — configurable at Settings → Defaults. Each project can override these values individually; existing projects are never affected by changes here.

What project defaults control

  • Stack & Brownfield — default technology stack, analysis depth, and boundary mode applied to new projects.
  • Quality & Standards — quality profile (speed / balanced / maximum), coding standards list, and architecture pattern selection.
  • Agent Configuration — default number of dev agents and reviewers, and the AI model assigned to each role.

Architecture Patterns

Choose one of four primary patterns: Clean (dependency inversion), Layered MVC (traditional controller-service-model separation), Microservices (independently deployable bounded contexts), or Custom (define your own rules). Use the Advanced rules expander to fine-tune per-pattern rules and enable/disable individual requirements.

How to change defaults

Go to Settings → Defaults. Expand the section you want to change, make your selection, and click Save Defaults. New projects created after saving will inherit the updated values.

Organization Members

How roles, invites, and GitHub repository access work together in an org.

Three-role model

RoleWhat they can doGitHub repo access needed?
AdminManages members, org settings, invites, and all project contentYes — to push branches and open PRs
MemberCreates tickets, reviews code, triggers agent runsYes — to push branches and open PRs
ViewerReads tickets and sprint boards; no write actionsNo — read-only on SwarmBoard only

Invite flow

  1. An Admin or Owner opens the Members page and clicks + Invite Member.
  2. Enter the invitee’s email and choose their role (Admin / Member / Viewer).
  3. An invite email is sent with a join link valid for 7 days.
  4. The invitee clicks the link and accepts — their membership becomes active.

GitHub repository access — why it matters

SwarmBoard org membership controls access to the SwarmBoard UI. It does not automatically grant access to the underlying GitHub repository. When a Member or Admin’s agents try to push branches or open PRs, the GitHub API will reject them unless the user also has collaborator access on each project’s GitHub repo.

After inviting a non-viewer member, SwarmBoard shows a reminder card listing each configured project repo with a direct link to https://github.com/<org>/<repo>/settings/access — click Add to repo to add the collaborator in one click.

Auto-adding users to GitHub repos is intentionally NOT done — auto-modifying customer GitHub configurations would require members:write scope on their org, which carries significant security and audit risk. The manual reminder is by design.

Last-admin guard

You cannot remove or demote a member if they are the last admin in the org. The Remove button is replaced with a Last admin badge. To resolve: promote another member to admin first, then remove or demote the original admin.

Transferring admin

To hand over the admin role: open the Members page, change another member’s role to Admin using the role dropdown, then change your own role to Member or Viewer. Because the last-admin guard prevents you from demoting yourself while you are the only admin, the transfer must happen in that order.

Project Health Score

Your composite health score is a weighted average of four signals — Architecture, Testing, Complexity, and Documentation. Scans run automatically; the dashboard refreshes every 60 seconds. Each card on the Project Health page has its own “?” explainer that links here.

Health Gauge

The radial gauge encodes the composite score from 0 to 100. The needle position maps directly to the score, and the colour band underneath labels the zone: Healthy at 80+, Watch at 60-79, At risk below 60. The arrow row under the score reports the change over the last 7 days so you can see the direction of travel at a glance.

Architecture signal

Architecture measures the structural health of your codebase: dependency direction, cyclomatic coupling between modules, layering violations, and the presence of “god modules” that touch too many areas. Scores below 50 typically indicate excessive coupling — a refactor pass or a fresh boundary review usually lifts the score quickly.

Testing signal

Testing combines line coverage, branch coverage, the ratio of test files to source files, and recent pass rates. A score above 70 means most of the codebase is exercised by tests and refactors are low-risk. Below 50 typically means large modules have no tests at all — the platform’s Test agent can close the gap incrementally if you enable it.

Complexity signal

Complexity tracks per-function cyclomatic complexity, average file length, and nesting depth. Higher is better — it means small, simple, single-purpose functions. A low complexity score flags hot spots where bugs hide and where onboarding takes the longest. Aim for 70+; if a single file is dragging the score down, consider extracting helpers or splitting the file.

Documentation signal

Documentation measures the presence of a README, doc comments on exported APIs, ADRs (architecture decision records), and onboarding notes. Higher means a new contributor (or AI agent) can find their footing without spelunking through every file. Below 40 usually means the README is stale or the major modules have no design notes — a one-shot “document the boundaries” ticket usually lifts the score by 20+ points.

Critical Findings panel

The Critical Findings panel only shows findings with severity Critical or Warning — the actionable subset. Informational findings are deferred behind the “View All Findings” toggle so the panel stays focused on what to fix this sprint.

Use the category tabs (All / Architecture / Testing / Complexity / Documentation) to slice the list. Each row shows the metric, its actual value, the threshold it crossed, and a short remediation hint. Click a row for the full finding description and source file references.

7-day Forecast panel

The forecast projects where your health score will land 7 days from now based on the recent trend. The shaded uncertainty band widens as confidence drops; if confidence falls below 60% a “low confidence” pill appears and you should treat the prediction as directional only. Confidence usually grows once the project has more than two weeks of scan history.

Risk factors below the chart highlight the signals most likely to drag the score down. They are sorted by predicted impact, so address the top one first if the trend is declining.

Recent Alerts panel

Recent Alerts is a 24-hour rolling log of threshold breaches, new critical findings, and forecast risks. Repeat alerts within a 5-minute window are collapsed into a single row with a count badge so the list stays readable. When the platform opens a remediation ticket from an alert, the alert links directly to that ticket. Older alerts auto-archive and stay queryable from the full alerts page in your project sidebar.

Analysis Recovery

Brownfield analysis runs can take 5–20 minutes per project. If the worker crashes, is restarted (e.g. a deploy), or runs out of memory mid-pass, the run could previously stay frozen at “analyzing” forever.

How recovery works

  • A heartbeat is written every 30 seconds while the worker is alive.
  • If the heartbeat goes stale for 5+ minutes, a reconciler marks the run as “interrupted” (or “complete” if all three passes had already finished).
  • The amber “still working” variant means the heartbeat just hasn’t ticked yet — usually self-resolves.
  • The red “interrupted” variant means recovery already happened; click Resume Analysis to start a fresh run.

How to use the project board

The project board is your main workspace during an active sprint. Here is what each part of the board does.

Sprint Controls

The sprint action buttons let you manage the lifecycle of a sprint. Start Sprint commits the selected tickets and dispatches agents to begin work. Add Tickets pulls backlog tickets into the running sprint without restarting it. Dispatch re-scans all pending tickets and sends agents to any that are waiting. Halt pauses all running agents gracefully — useful if you spot a problem mid-sprint. Close Sprint archives the sprint after reviewing the results. Reset Sprint returns active tickets to their previous state, which is helpful when a sprint went off-track.

Recent Signals

The Recent Signals panel shows a live feed of what agents are reporting during the current sprint: blockers, decisions, findings, and directives. Click the button to open the panel. The panel is read-only — to send a directive or resolve a decision, use the Blackboard from the project sidebar.

Repeated identical signals within a 5-minute window are collapsed into a single entry with a count badge so the feed stays readable.

Delivery Pipeline

The delivery pipeline shows which stage each ticket is at across six lanes:

  • Context — the agent reads the spec and sets up its workspace.
  • Breakdown — the architect agent defines the structure and approach.
  • Execution — the developer agent builds the feature.
  • Review — the reviewer agent checks the code for correctness and standards.
  • Done — the code has been merged to the main branch.
  • Blocked — the ticket is stuck and waiting for human triage.

Click any stage to filter the board to only the tickets at that point. Counts update live as agents make progress.

Active Sprint

The sticky bar at the top of the board shows the current sprint name, its status badge (planning, active, halted), and a progress counter showing how many tickets are done out of the total. A live count of running agents appears when work is in flight. While the sprint is active, a Halt button lets you pause all agents immediately. Once halted, the button changes to Resume to restart work. The progress bar turns green when every ticket in the sprint reaches Done.

Sprint Columns

The kanban columns show where each ticket stands in the current sprint. Tickets start in the leftmost column and move right as agents work through them:

  • New — ticket just created, not yet sized.
  • Groomed — spec confirmed, ready for sprint planning.
  • Dev Ready — queued for a developer agent to pick up.
  • In Dev — an agent is actively writing code.
  • In Review — a reviewer agent is checking the code.
  • Done — code merged to main branch.
  • Blocked — stuck; click the ticket for triage options.

Empty columns are hidden by default to keep the board uncluttered. Click Show all to reveal them.

Hidden Columns

Empty columns are hidden by default to reduce visual noise during active sprints. The counter in the top-left of the board shows how many columns are currently hidden. Click Show all to reveal every column — useful when you want to confirm that nothing slipped into an unexpected state. Click Hide empty to return to the compact view. Columns that contain tickets are always visible regardless of this toggle.

Backlog

The backlog holds tickets that have not yet been assigned to a sprint. When the active sprint is running and backlog tickets exist, a Backlog (N) toggle appears at the top of the board — click it to show those tickets in the columns. Use Add Tickets in the sprint controls to move selected backlog tickets into the current sprint. Tickets created manually via Create Ticket land in the backlog first and can be edited or reprioritized before being committed to a sprint.

Knowledge Graph

The Knowledge Graph surfaces three at-a-glance rails to help you understand the health of your codebase.

At Risk Files

Files flagged as at risk have a high concentration of recent changes, unresolved blockers, or dependency warnings. Agents prioritise these when planning refactors — review the list before each sprint to decide which risks need human attention.

Most Depended On

These files are imported by the highest number of other modules in your codebase. Changes here ripple widely — the graph helps you spot and protect these load-bearing files before an agent accidentally breaks a large surface area.

Unwired Files

Unwired files exist in your source tree but are not imported by any other module. They may be dead code, a feature built but never wired, or a draft. Review this list to prune stale files and avoid confusion during sprints.

Architecture Debate

Convergence Score

The convergence score measures how much the Proposer and Challenger LLMs agreed by the end of the debate. A score above 80 means strong consensus — the recommendation is reliable. Below 60 indicates significant unresolved disagreement; review the open points section before accepting the architecture proposal.

Blackboard — Active Signals

The Active Signals tile shows the most recent coordination events from agents and humans. Each signal has a color-coded kind: blocker (red), decision (blue), finding (green), directive (orange), and handoff (purple). Signals older than the current sprint are archived automatically but remain searchable in the activity log.

Meetings — Platform Filter

Use the platform chips (Zoom, Teams, Google Meet, etc.) to filter your meeting list to a single source. This is useful when reviewing transcripts from a specific vendor or when your team uses different platforms for different meeting types (e.g. Zoom for standups, Teams for stakeholder reviews).

Quality Profile

The Quality Profile controls the trade-off between delivery speed and code correctness. Each preset configures a bundle of quality checks: the gate (lint, typecheck, tests), cross-boundary review, sprint verifier, retro agent, test coverage requirement, commit format, auto-PR creation, and bug fast-track. Custom mode lets you toggle each check independently. The score bar summarises the current configuration — higher scores mean more checks, slower sprints, and fewer regressions.

More Resources

Signed in? See the full User Guide for detailed answers on every feature.

Token Budget

Your monthly token allowance across all agents. Resets on the 1st of each month.

When the token meter runs low, agents pause gracefully and will not pick up new work until the budget is refreshed or increased. You can see your current usage on the dashboard token meter. Upgrading your plan or adding BYOK keys can increase the effective budget — BYOK usage is billed directly to your AI provider key and does not draw from the platform meter.

Package Tiers

SwarmBoard offers two packages with different capability sets.

Product Spine

AI-powered product delivery for existing codebases. Enables PM, Architect, Dev, Reviewer, and Test agents. Includes brownfield repository analysis, sprint planning, and quality gates. Designed for teams with an existing product codebase who want to accelerate delivery.

Swarm Build

Everything in Product Spine plus automated code generation, greenfield project scaffolding, and the ability to create new GitHub repositories from scratch. Designed for teams starting new projects or wanting full autonomous code generation.

Repository Quota

Your plan includes a maximum number of active repositories (projects).

The quota indicator on the dashboard shows used slots out of the total allowed. When you reach the limit, new project creation is disabled until you upgrade your plan or archive an existing project. Archived projects do not count against the quota and remain accessible in read-only mode.

Capability Tier

Controls which agent roles are active for a project.

Full Delivery (the default) enables all roles — PM, Architect, Dev, Reviewer, Test. Other tiers let teams disable specific roles to match their workflow. For example, “Review Only” keeps code review but skips automated testing. You can change the capability tier at any time in Settings → Project Defaults without affecting in-progress work.

Guardrails

Platform-level safety controls that intercept risky agent actions before they execute.

What guardrails protect against

Guardrails intercept actions in six categories: network (unexpected outbound calls), destructive (mass deletions, force-pushes to protected branches), privilege (unexpected permission escalations), exfiltration (writing secrets to logs or disk), injection (prompt injection via untrusted content), and pii (personal data written to repositories).

Guardrail Metrics Dashboard

Admins can view aggregate guardrail activity in the Guardrail Metrics Dashboard. Summary cards show total blocks, warnings, and redactions for the selected time window. The category breakdown identifies which guardrail types trigger most often, and the timeline shows daily event volume to help tune false-positive rates.

Feedback Lifecycle

Every piece of user feedback moves through a structured pipeline before becoming a shipped feature.

The nine states are: Submitted → Acknowledged → Triaged → Analyst Drafting → Admin Review → Approved as Story → In Progress → Done. Two terminal off-ramps — Declined and Duplicate — are also possible.

When status reaches Done, the linked SwarmBoard ticket has merged and deployed to production. You can track your feedback’s progress from the My Feedback page.

Blackboard

The blackboard is SwarmBoard’s shared coordination surface where agents and humans post signals in real time.

What the blackboard does

Every blocker, decision, finding, directive, and handoff during a sprint appears as a signal on the blackboard. Agents read and post signals automatically — you can observe the live feed without doing anything. Use the Blackboard Dashboard for interactive controls: re-plan dispatch, run sprint retro, prune working memory, and post directives.

Blackboard Dashboard vs Recent Signals panel

The Recent Signals panel (project sidebar) is a quick read-only view of the last 20 signals. The Blackboard Dashboard is the full HITL surface with interactive controls, pinned signals, and signal resolution. Both update in real time via SSE.

PM Collaboration Actions

Four actions on the Blackboard Dashboard let you intervene in the PM agent’s work.

Re-plan Now

Regenerates the PM agent’s dispatch plan for the active sprint. Existing in-flight tickets continue unchanged — only new ticket dispatches use the updated plan. Use this when priorities shift mid-sprint or after adding or removing tickets manually.

Run Sprint Retro

Polls all agents for lessons learned, records them in the SprintRetro table, and archives processed signals. Results are visible on the Board → Quality tab. You can optionally add human observations before running the retro.

Prune Working Memory

Evicts stale or low-priority entries from the agent’s short-term context to free token budget. Pinned entries are exempt. Use this when agents are running slowly due to context overflow or when a sprint closes and old context is no longer relevant.

Send Directive

Posts a free-text instruction directly to the PM agent as a signal. The PM picks it up on the next dispatch tick and may generate new tickets, update priorities, or change sprint focus. Keep directives concise and action-oriented.

PM Agent Queued Recovery

What to do when a PM session is created but never starts.

If a PM session sits in the worker queue for more than 2 minutes without transitioning to running, a recovery banner appears. This usually means a transient Redis or queue hiccup. The platform retries automatically every 2 minutes (up to 3 attempts). You can also click Retry now to push a fresh dispatch immediately. No data is lost — the session state is preserved between retries.

Agent Configuration

Choose which AI model runs each agent role and how many instances to run in parallel.

Model assignment

Each agent role has a model dropdown: Claude (Sonnet / Opus / Haiku), GPT-4o, or Gemini. A common setup is Claude Sonnet for Dev (best code generation), GPT-4o for Reviewer (different training data catches different bugs), and Gemini for Verifier (independent validation). To enable non-Anthropic models, set the OPENAI_API_KEY or GOOGLE_AI_API_KEY environment variables.

Instance counts

More dev instances run more tickets in parallel — useful for large sprints. Each dev needs its own worktree, so token cost scales linearly. 1-4 Dev instances are supported. For PM and Architect, 1 is enough — multiple instances create conflicting plans.

Claim a Ticket (Human Contributor)

Take over a ticket and work on it yourself instead of letting an AI agent handle it.

How claiming works

Claiming a ticket creates a feature branch on your project’s repository and pins the ticket to you as the human contributor. Once claimed, the ticket moves to “In Dev” and AI agents will not auto-dispatch to it. You’ll see the branch name and a one-click checkout snippet — run it in your terminal to start coding.

Finishing and releasing

Push commits to the branch and open a pull request to finish. To release a claim without completing the work, click Release claim — the ticket returns to Dev Ready and the branch remains on GitHub.

Theme Preference

Choose how the SwarmBoard interface looks.

Dark (default) uses dark backgrounds for low-light comfort. Light uses white backgrounds for bright environments. System follows your operating system light/dark mode setting automatically. Your choice is saved locally and applied on every page load. Find the toggle in Settings → Preferences.

User Profile

Account-level settings including timezone and display preferences.

The timezone preference controls how dates and times appear across the dashboard — sprint deadlines, ticket timestamps, and activity feeds all use your local timezone. Display name and avatar are managed via your GitHub account. Access your profile at Settings → Profile.

GitHub Webhook

Connect your GitHub repository to receive push and pull_request events in SwarmBoard.

What webhooks enable

GitHub webhooks allow SwarmBoard to auto-link commits and PRs to tickets, update branch protection rules, and trigger smart notifications when code is pushed. The health indicator in the webhook panel turns green within 30 seconds of the first successful delivery.

Setup options

Auto-register — click the button in Settings → Integrations and SwarmBoard calls the GitHub Hooks API automatically using your OAuth token (requires admin:repo_hook scope). Manual setup — copy the webhook URL and secret, paste them in your repo’s Settings → Webhooks → Add webhook, set Content-Type to application/json, and select the recommended events.

Product Spine Flow

How SwarmBoard tracks your team’s work when developers push code and open pull requests on Product Spine projects.

Feature Branch Detection

When you create a Git branch with the ticket id in the name (feat/T-123-add-login, T-123/refactor, bugfix/T-99), SwarmBoard’s webhook handler reads the branch name, finds the ticket, and moves it to In Dev. The branch must follow the convention exactly — case-insensitive T-XXX somewhere in the branch name.

PR Tracking

When you open a pull request from a tracked branch, SwarmBoard moves the ticket to Review Ready. Approvals move it to Merge Ready (when all required reviews are in). Merging the PR moves it to Done. All driven by GitHub webhooks — no need to manually update the ticket.

Manual State Override

If a ticket’s state was set automatically by SwarmBoard (from a branch or PR event) and you change it manually in the board UI, you’ll be asked to justify the override. The justification is recorded in the ticket history alongside the original automatic transition. Helps the team understand why state moved.

Product Spine vs Swarm Build

Product Spine is the human-led package: developers write code, SwarmBoard observes Git activity and updates ticket state. Swarm Build adds AI dev/test agents that generate code automatically — agents create branches, open PRs, and merge them. Your org’s package determines which flow applies. Switch packages in Org Settings → Package.

Sprint Curation

When PM finishes generating tickets, the sprint enters Planning. On Spine projects, the sprint does not auto-start — you stay in control. Pick which tickets you want in this sprint, then click Start Sprint. The board switches to active tracking, and ticket state moves automatically as you push code.

GitHub Activity Tracking

SwarmBoard reads three GitHub webhook event types: branch creation (start tracking), push to a tracked branch (work-in-progress signal), and pull request lifecycle (state transitions). Connect a webhook in Project Settings → Integrations. Without a webhook, ticket state stays manual.

Organization Roles

Four roles control what members can do within an organization (RBACv7).

RoleCapabilities
FounderOrg creator — has all four role slugs. Cannot be transferred.
AdminManages members, org settings, and billing.
ArchitectDesign decisions, dispatch approval, project review.
ContributorCreates and views tickets, chats with agents. Draft-only on Spine until promoted.

Organization Invites

How to invite members to collaborate on your organization’s projects.

Invite flow

  1. An Admin or Founder opens the Members page and clicks + Invite Member.
  2. Enter the invitee’s email and choose their role (Admin / Architect / Contributor).
  3. An invite email is sent with a join link valid for 7 days.
  4. The invitee clicks the link and accepts — their membership becomes active.

Joining without an invite

Every approved SwarmBoard user gets their own workspace auto-created on admin approval. The join page at /orgs/<orgId>/join is only reachable via an invite link — if you arrived without one, your personal workspace is already set up on the dashboard.

Organization Settings

Manage your organization’s identity, members, security, and billing in one place.

Settings sections

  • Health — composite org health score and critical findings.
  • Members — invite, remove, and change roles for org members.
  • Settings — org identity (name, slug), package tier, repo quota, scan retention, capability gate, agent auth, notifications, security, and danger zone.
  • Audit Log — every privileged action recorded with actor, timestamp, and change details.

Founder-only actions

Some actions are restricted to the org Founder: deleting the organization, changing the package tier, and managing billing. These actions are flagged inline with a crown icon in the Settings UI. The Founder role cannot be transferred — it stays with the account that created the org.

Role Privileges

Platform-wide privilege overrides for each org role.

The Role Privileges Matrix (admin-only) lets platform administrators override the default privilege set for each role — Admin, Architect, Contributor. Empty cells inherit the role’s default; overrides apply platform-wide across all orgs. Every change is recorded in the audit log.

To revert a cell, click Reset to default — the override row is deleted and the audit log records the reset. The full privilege matrix is documented at docs/roles.md.

Repository Picker

Select your GitHub repository during project onboarding — no URL pasting required.

SwarmBoard fetches your repositories automatically using your connected GitHub OAuth token and presents them as a searchable list. Select a repo and onboarding continues with that URL automatically. If you don’t see your repo (private repo in a different org, or newly created), use the URL fallback field at the bottom of the picker list.

Repository Analysis (Brownfield)

How SwarmBoard scans an existing codebase to build a product knowledge base.

Three-pass analysis

SwarmBoard clones your repo and runs three passes: a structural pass (module map, imports, routes), a heuristic pass (Haiku — dead code and module types), and a deep pass (Opus — per-module findings and top issues). The resulting analysis feeds directly into ticket generation.

Brownfield vs greenfield

Brownfield means analysing an existing codebase — the PM agent reads the findings to generate improvement tickets. Greenfield means building from a spec with no existing code. You choose the mode during onboarding; it cannot be changed after project creation.

Ticket Generation from Analysis

How the PM agent converts brownfield analysis findings into implementable tickets.

Auto-handoff

For brownfield projects, ticket generation triggers automatically once the analysis status reaches complete. The PM agent reads the module findings and top issues to produce improvement tickets — each sized for a single dev session.

If auto-handoff didn’t fire

On older projects (created before the auto-handoff fix) or when the PM agent’s WIP slot was busy at the moment analysis finished, a recovery banner appears. Click Generate Tickets Now to dispatch the PM agent manually.

Create a Repository (Greenfield)

SwarmBoard can create a new GitHub repository for you during onboarding.

If you don’t have a GitHub repo yet, the Create a Repo for Me option uses your connected OAuth token to create a new private repository under the org you choose. Onboarding then continues with that repo URL automatically. This option is only available on Swarm Build — Product Spine requires an existing codebase.

Project Modes

Every project is either greenfield (building from scratch) or brownfield (analysing an existing repo).

Greenfield

You provide a spec; the PM agent breaks it into tickets; agents build from scratch. Optionally connect a GitHub URL as architecture reference (locked mode) — the URL is treated as inspiration and will NOT be cloned or analysed.

Brownfield

Connect an existing repo; SwarmBoard analyses it and generates improvement tickets. The analysis results — module map, findings, health score — guide agent work. Brownfield mode is the basis of Product Spine.

Platform Updates

What happens to your work when SwarmBoard deploys a new version.

During a platform deploy, all ongoing agent work continues normally — only new sessions are paused. Your queued request is held and retried automatically once the deploy completes (typically 5-10 minutes). You can also click Retry now after the deploy finishes. No data is lost. The amber “Platform is Updating” banner appears at the top of the page when a deploy is in progress.

Cycle Time

How long tickets spend in each board column — your key flow metric.

Metrics shown

The Cycle Time view shows average, median, and 95th-percentile time-in-column over the last 30 days. It also shows reviewer responsiveness (PR open to first review) and approval-count progress over time — helping you identify where work stalls in the pipeline.

Access

Cycle Time is visible to org owners and architects. Contributors see only their own PR state. Find it on the project board under the Quality tab.

Architecture Debate

A multi-architect AI debate that designs your system structure before any code is written.

How the debate works

A Proposer (Claude) suggests an architecture. A Challenger (GPT-4o) critiques it. A Rebutter (Claude) defends or adjusts. An Arbitrator (Gemini) synthesises the final recommendation, produces a convergence score, and lists unresolved points.

Output

The debate produces an Architecture Decision Record (ADR) that is injected into every subsequent agent prompt. The debate result is visible on the project’s Architecture tab.

Knowledge Graph

A live map of how your codebase is wired together — modules, dependencies, and health signals in one view.

Reading the graph

Each dot is a module; colour shows health; dot size shows how many other modules depend on it; lines show imports, calls, and data flow. The swimlane layout (UI → Routes → Services → Data) makes dependency flow read left-to-right. Glowing dots are the most-depended-on modules — changes there ripple furthest.

Insights rail

The right-hand Insights rail highlights At Risk modules (high coupling, low test coverage), Most Depended On (high blast radius), and Unwired files (built but not integrated). Use these lists to guide sprint priorities.

Meeting Transcripts

Import meeting transcripts so agents can extract specs, action items, and risks.

Importing transcripts

Go to the Meetings page and click Upload Transcript. Paste text directly or upload a file (.vtt, .srt, .txt, .json, or .md). Add a title and date, then click Import. The transcript is normalised and stored.

How agents use transcripts

The Analyst agent uses meeting context during project onboarding to extract requirements. KPI tiles on the Meetings page show meeting count, specs extracted, action items, and link coverage. You can filter by platform (Zoom, Teams, Meet, Otter, Fireflies), date range, status, and project link.

Bring Your Own API Key (BYOK)

BYOK lets your organization use its own Anthropic API key for agent dispatch. When enabled, all agent sessions bill to your Anthropic account instead of the platform's shared key. Your key is encrypted at rest using AES-256-GCM with a per-environment key-encryption key, and is only decrypted at the moment of dispatch.

How to set up BYOK

Navigate to Org Settings → Anthropic API Key (BYOK), paste your key (format: sk-ant-…), and click Test and Save. SwarmBoard validates the key against the Anthropic API before persisting it. Once saved, enable the BYOK toggle to start using your key for dispatch. Revoking the key immediately stops all BYOK dispatches — the platform falls back to the shared key if BYOK is disabled.

Analysis Result Summary

After a brownfield repository analysis completes, SwarmBoard shows a transparent summary card on the project board. The card tells you how many files were scanned, how many issues (findings) were discovered, how many of those findings became tickets, and how many sprints those tickets are estimated to need — based on your sprint capacity (default: 10 tickets per sprint).

Gap warning: If some findings were not linked to tickets (due to a PM session interruption, timeout, or de-duplication), the card shows a warning row — for example, “39 findings are not yet linked to a ticket. Click See breakdown to review which findings need attention.” The sprint estimate is always calculated from the total finding count, not just the tickets created so far, because the gap can be resolved in subsequent PM runs.

The See breakdown button opens the Knowledge Graph and Findings list where you can inspect each finding individually. Click Dismissto hide the card for the current browser session.

Supported tech stacks

Business Domain Mapping classifies your code’s data layer (Core Entity, Aggregate Root, Value Object, etc.) using stack-specific extractors. The table below shows what currently ships. If your stack is “In progress” or “Not yet supported”, the Knowledge Graph still renders correctly — you just won’t see the colored data-role chips on data nodes yet.

TypeScript / PrismaSupportedTypeScript / Prisma data model extraction, Knowledge Graph rendering, and business-role classification are fully supported. Analyst Chat is partially supported.
SupportedData model extraction
SupportedBusiness-role classification
SupportedKnowledge Graph rendering
PartialAnalyst Chat
TypeScript / DrizzleSupportedSupports `pgTable`/`mysqlTable`/`sqliteTable` declarations plus `relations()` blocks. Data model extraction, Knowledge Graph rendering, and business-role classification are fully supported.
SupportedData model extraction
SupportedBusiness-role classification
SupportedKnowledge Graph rendering
PartialAnalyst Chat
TypeScript / TypeORMSupportedSupports `@Entity()` decorated classes with column + relationship decorators. Data model extraction, Knowledge Graph rendering, and business-role classification are fully supported.
SupportedData model extraction
SupportedBusiness-role classification
SupportedKnowledge Graph rendering
PartialAnalyst Chat
Python / SQLAlchemySupportedSupports SQLAlchemy 2.x (DeclarativeBase) and Flask-SQLAlchemy 1.x (db.Model) declarative styles. Data model extraction, Knowledge Graph rendering, and business-role classification are fully supported.
SupportedData model extraction
SupportedBusiness-role classification
SupportedKnowledge Graph rendering
PartialAnalyst Chat
Python / Django ORMSupportedSupports `models.Model` classes with field + Meta declarations. Abstract bases are skipped. Data model extraction, Knowledge Graph rendering, and business-role classification are fully supported.
SupportedData model extraction
SupportedBusiness-role classification
SupportedKnowledge Graph rendering
PartialAnalyst Chat
C# / .NET (EF Core)SupportedC# / .NET (EF Core) data model extraction and business-role classification are supported for entity models defined via data annotations or DbSet declarations, and Analyst Chat receives the classified domain model. Projects that configure entities exclusively through the Fluent API (IEntityTypeConfiguration) are being expanded. Knowledge Graph rendering is partially supported (LLM-assisted — review for accuracy).
SupportedData model extraction
SupportedBusiness-role classification
PartialKnowledge Graph rendering
SupportedAnalyst Chat
Java / Hibernate, JPASupportedJava / Spring Boot with JPA/Hibernate data model extraction, Knowledge Graph rendering, and business-role classification are supported. Knowledge Graph rendering is partially supported (LLM-assisted — review for accuracy).
SupportedData model extraction
SupportedBusiness-role classification
PartialKnowledge Graph rendering
Not yet supportedAnalyst Chat
Ruby / ActiveRecordNot yet supportedBusiness Domain Mapping is not yet available for Ruby projects. We are tracking demand to prioritize this stack — let us know if this is important to your team.
Not yet supportedData model extraction
Not yet supportedBusiness-role classification
Not yet supportedKnowledge Graph rendering
Not yet supportedAnalyst Chat
Go / GORMNot yet supportedBusiness Domain Mapping is not yet available for Go projects. We are tracking demand to prioritize this stack — let us know if this is important to your team.
Not yet supportedData model extraction
Not yet supportedBusiness-role classification
Not yet supportedKnowledge Graph rendering
Not yet supportedAnalyst Chat
OtherNot yet supportedBusiness Domain Mapping is not yet available for this technology stack. See our supported stacks page for the current coverage matrix.
Not yet supportedData model extraction
Not yet supportedBusiness-role classification
Not yet supportedKnowledge Graph rendering
Not yet supportedAnalyst Chat