Point your agent at this stack
Point your agent at this stack.
Auth, billing, queues, and deploys are already wired. Your agent builds the feature; lint and CI check that it fits the architecture.
Set up boringstack.xyz for meIt reads /agents.md and runs the installer. Five phases, no prompts.
Bun + Elysia · auth, billing, tenant boundaries
Example: SELECT against accountPlans without tenant scope.
Move fast. Keep the boundaries.
Your agent writes the code. Lint and CI check the contracts it has to preserve. Remove a boundary below and see what catches the change.
Go on. Try breaking it.
await db.select()
.from(accountPlans)
.where(eq(accountPlans.accountId, accountId));✓ Boundary intact.
drizzle-conventions/account-scoped-tables-require-whereThe example preserves the contract. Remove it and see what catches the change.
Account-scoped queries need a tenant boundary. This rule catches the missing filter before the change ships.
Inspect the check ↗One repo. All the moving parts.
Explore the layers. Auth, billing, queues, and deploys are already connected, with explicit contracts between them.
Configuration is part of the contract. Your agent can read it, too.
The difficult parts, wired in.
Tenant-aware data, auth, and billing belong in the first clone. The API brings them together with rules that check the boundaries.
Accounts & permissions
Memberships, roles, and account-scoped queries.
Billing & webhooks
Stripe hooks, signature verification, and plan features.
Background work
BullMQ workers and retry-aware job handling.
Audit & email
Audit trails and transactional email integrations.
One instruction. Then your first feature.
The setup is documented for your agent and readable by you. Start with the map; pull in the details as you build.
Give your agent the map.
Setup instructions, health checks, and the rules it must preserve. One fetch to get its bearings.
Read the agent contractLet the stack assemble.
Preflight, scaffold, rename, boot, and health check. Five phases from a fresh project to a running stack.
Follow the quickstartBuild something that matters.
Add a feature with the contracts in place. Open the relevant recipe or runbook when you need it.
Build your first featurePrefer to run the installer yourself?
curl -fsSL https://boringstack.xyz/install.sh | sh -s -- --project acmeGitHub auth is optional. Without it, the installer clones the public repository. Five phases, no prompts.