BitFictionBitFiction

$ ./products --highlight=staticbot

Built by us.
Run in your AWS. Driven by your agent.

now live
Staticbot PNG

Staticbot

A managed operations platform for complex, long-running deployment workflows. Staticbot deploys static sites and web apps to S3 + CloudFront in your own AWS account — no vendor lock-in, no PaaS markup — and orchestrates full Supabase and Firebase migrations to self-hosted infrastructure.

It owns the things agents handle poorly: state across sessions, credentials that should never appear in a context window, approval gates before destructive operations, and accumulated operational knowledge from real-world failure modes.

claude — staticbot-mcp
> Deploy my Vite app to AWS on example.com

• list_templates()              → tpl_vite_spa
• create_stack(tpl, "example.com")
                                → stk_3c1d
• create_deployment(stk_3c1d)   → dep_91f0
• start_deployment(dep_91f0)
• get_deployment(dep_91f0)      → WAITING

Add these DNS records to continue:
  example.com         A     ALIAS d1abc.cloudfront.net
  _acm.example.com    CNAME …

[status: https://app.staticbot.dev/d/dep_91f0]

// mcp tools

What an agent can do

Staticbot ships as an MCP server. Any MCP-compatible runtime — Claude Code, Cursor, your own AI SDK app — can drive these workflows end-to-end.

create_template(repoUrl)

Scans a GitHub repo, auto-detects platform, env vars, and builders, and produces a versioned infrastructure template pinned to a commit SHA.

create_stack + start_deployment

Provisions S3 + CloudFront + ACM in your own AWS account. Returns DNS records when WAITING, polls to COMPLETED.

create_migration(sourceType, targetType)

8-phase Lovable/Bolt/Supabase pipeline or 5-phase Firebase pipeline. Targets managed Supabase Cloud or an AES-256 encrypted self-hosted package.

confirm_migration / confirm_sync_run

Discovery and destructive SQL pause for human approval. Best-effort jobs report results but never silently block the pipeline.

trigger_sync + get_sync_run

Continuous sync with a granular diffInventory — new_migrations, changed_functions, frontend_changed, storage_changed, auth_changed.

download_package

Presigned URL + AES-256 password for the self-hosted delivery zip — apply to your own Supabase by following the bundled CLAUDE.md.

// safety

Approval gates, by design

  • PAUSED_FOR_APPROVAL

    Migrations pause after Discovery — the agent must present the inventory and get explicit user consent.

  • PAUSED_FOR_REVIEW

    Destructive SQL in a sync run (DROP TABLE, ALTER COLUMN) is detected and held for review.

  • choice gates

    Data import method, backend switchover, and frontend deploy all require a user decision — the tool descriptions enforce it.

  • repoVersion pinning

    Templates pin to commit SHAs. Every sync tracks fromRepoVersion → toCommitSha for reproducible diffs.

// integrations

Speaks your stack

AWS S3 + CloudFrontACM (auto SSL)Terraform / OpenTofuSupabase (cloud & self-hosted)Firebase → PostgresGitHubMCP (Claude Code, Cursor)

Wire your agent into real infrastructure.

Generate an API key in Staticbot, drop the MCP config into Claude Code or Cursor, and your agent can deploy and migrate against your own AWS — with humans in the loop where it matters.