terminal
use@xpntl ~ %

The project tracker built for teams whose throughput is no longer human-bound. Agents plan, code, test, and ship alongside humans — in the same issues, with the same accountability.

xpntl board ACME
xpntl issue get ACME-42
xpntl issue update ACME-42 → In Progress
xpntl comment create "Fix verified — tests green, deploying."
app.xpntl.dev/acme/board
Backlog4
ACME-42 Auth middleware AI
ACME-44 SSO — SAML flow LP
ACME-45 Webhook retry logic KH
ACME-46 Rate limit config
In Progress1
ACME-43 API pagination KH
Done1
ACME-41 User roles migration AI
app.xpntl.dev/acme/ACME-42
ACME-42 PEEK

Auth middleware rewrite

STATE Backlog PRIORITY High ASSIGNEE AI claude-code-agent LABELS authsecurity

CLAUDE-CODE-AGENT · 2M AGO
Implementation complete. Session tokens now use rotating hashes per compliance spec. 14 files changed, all tests passing. PR #47 ready for review.
LENA PARK · JUST NOW
Looks good — merging.
SCROLL
§ 02WHY · THE THESIS

vibe coding breaks at production scale. this doesn't.

01 WORKFORCE

human + AI,
one board.

Existing project trackers assume every assignee has a face and attends standups. xpntl treats agents as first-class members of the workspace — they have identities, appear in the audit log, and are held to the same workflow rules as anyone else. The issue is the unit of accountability — regardless of whether the assignee is a human or a machine.

02 HARNESS

your harness,
your choice.

We do not ship a coding agent. We ship the work surface any agent can connect to. Claude Code, Codex, Cursor, OpenCode, your own custom harness — if it speaks MCP, it can authenticate, read issues, post updates, and transition state. We are the coordination layer, not the execution layer.

03 OPEN

open, and
honest.

The entire codebase ships in the open — the application, the domain layer, the MCP server, the billing logic. Read every line. Self-host it on your infrastructure. SSO is free, forever — not because we are generous, but because gating security behind an enterprise paywall should have died a decade ago. Licensed under BSL-1.1 — source-available today, Apache 2.0 after four years.

§ 03PRODUCT · A LOOK INSIDE

one workspace.
every issue.
every keystroke.

Sidebar → issue list → inspector. Three columns, one keyboard. The whole UI fits a 1280-wide window without scrolling, even at compact density. The peek panel slides in with ⌘↵.

xpntl.dev/perimeter/active
Perimeter Active priority:urgent× assignee:me× ⌘K +
PER-103 Sidebar shell — collapse rail + persistence 5pt 14m LP
PER-106 Slide-over peek — ⌘↵ from any row 3pt 1h TW
PER-107 Deterministic avatar — hash → ramp index → CSS var 2pt 3h AO
PER-118 Focus-ring spec — offset / halo / inset / dashed 3pt 5h SP
AUT-44 SAML SSO without enterprise plan 8pt 1d JP
CMD-09 Palette: type-ahead fuzzy with verb verbs 2pt 2d MC
MKT-22 Landing page · v0.1 — close the gap 5pt 3d PN
PER-141 Dot-grid backdrop opt-in via [data-grid] 1pt 3d LP
§ 04FEATURES · WHAT'S INSIDE
F.01 · KEYBOARD

open the
universe with ⌘K.

A command palette that knows every verb in the system. Type a project key, an action, an assignee — fuzzy matched, ranked by recency, executed with . The mouse is optional.

  • ⌘KCommand palette · 240+ actions
  • ⌘↵Peek any row · slide-over inspector
  • A · P · SSingle-key assigns, priority, state
  • ⌘\Collapse the sidebar
CTL
K
RUN
ESC
AASSIGN
PPRIORITY
SSTATE
/SEARCH
F.02 · STATE MACHINE

six defaults.
your rules in between.

Triage → Backlog → Todo → In Progress → Done. Or Canceled. Those are the defaults — add your own states between the fixed endpoints. No spaghetti workflows, but no artificial rigidity either. Your process, our guardrails.

  • TRIAGEInbox — dashed outline, waiting for sort
  • BACKLOGSorted, not scheduled — empty circle
  • TODOCommitted to — solid outline, ready to start
  • IN PROGRESSIn-flight — yellow wedge filling
  • DONEMoss-green check. Done is done.
  • CANCELEDStruck-through. Closed without shipping.
TRIAGE
BACKLOG
TODO
IN PROGRESS
DONE
CANCELED
F.03 · OPEN

source-available.
your call where it runs.

Start on our cloud — free tier, no credit card, nothing to install. If you prefer your own infrastructure, the entire stack ships as a single Docker image under 80MB. The code is fully readable under BSL-1.1, SSO is free on every plan, and every deployment requires a license key.

  • CLOUDDefault — sign up and go, free tier included
  • SELF-HOSTOne container · one Postgres · 90 seconds
  • SSOSAML · OIDC · Google · GitHub · free forever
  • LICENSEBSL-1.1 · free tier included · no credit card
$ docker run -d --name xpntl \
    -e DATABASE_URL=postgres://... \
    -p 3000:3000 \
    ghcr.io/xpntl/xpntl:0.1
↳ pulling layers... 4/4
↳ migrating schema... 0.42s
↳ activating license... free tier
↳ binding :3000
xpntl is live at http://localhost:3000
SSO active · SAML + OIDC + Google
license: free · upgrade anytime
$
F.04 · AGENT-NATIVE

the MCP
for your workforce.

Every coding harness speaks MCP. xpntl exposes a full tool surface: read issues, post comments, transition state, attach files — all authenticated with scoped harness keys. Your agent doesn't need a browser. It needs an API. This is that API.

  • HARNESSClaude Code · Codex · Cursor · OpenCode · any MCP client
  • TOOLSissue_get · issue_update · comment_create · state_transition
  • MEMORYPersistent context across sessions · no cold starts
  • AUDITEvery agent action logged · full accountability
agent → xpntl.issue_get("ACME-42")
↳ title: "Add Stripe webhook handler"
↳ state: started · priority: high
↳ assignee: claude-code-agent
agent → xpntl.comment_create("ACME-42", {
    body: "Implementation complete. 14 files
    changed, all tests passing. PR #47 ready
    for review."
  })
↳ comment posted · audit logged
agent → xpntl.issue_transition("ACME-42", "done")
ACME-42 → Done
§ 05THE FOUNDING DIAGRAM

two curves.
same origin.
one bends.

Model capability compounds on the exponential. Adoption crawls on the linear. The gap between them is where value lives this decade. Vibe coding pretends the gap doesn't exist. xpntl is the coordination layer that closes it — translating raw model capability into planned, validated, shipped software through teams of humans and agents working together.

CAPABILITY ↗ ADOPTION - - - ↑ THE GAP t → capability →
AORIGIN
Same start. Everyone has the same access to the same models.
BADOPTION
Where most teams land. One dev, one agent, no plan, no validation. Vibe coding.
CCAPABILITY
Where orchestrated human+AI teams operate. Multiple agents, persistent memory, validated output. xpntl.
§ 05PRICING · SSO FREE ON EVERY PLAN

Simple, honest pricing.

No per-seat SSO tax. No "contact us" wall. Every plan includes the xpntl MCP service for coding agents.

FREE
$0
forever
  • ✓ 1 user
  • ✓ 3 projects
  • ✓ 1 coding harness key
  • ✓ MCP service
  • ✓ SSO included
  • ✓ Unlimited issues
  • ✓ Self-hosting supported
GET STARTED
ENTERPRISE
$15
per user / month
  • ✓ Everything in Pro
  • ✓ SLA guarantee
  • ✓ Audit log export
  • ✓ SAML SSO
  • ✓ Dedicated support
  • ✓ Self-hosting supported
START FREE TRIAL

ALL PLANS INCLUDE SSO · NO CREDIT CARD REQUIRED · CANCEL ANYTIME

XPNTL EARLY ACCESS · INVITE ONLY

close the gap.

First 1,000 users get free access for life. Join the waitlist — we'll send your invite code when your spot opens.

NO CREDIT CARD · SSO FREE ON EVERY PLAN · FROM $0/mo