Docs/Get started
.md

For AI agents

Shipabase is built to be installed by a coding agent. Give it one prompt, it reads the rules, you review the diff.

Let your agent do it

1 prompt · Claude Code, Cursor, Codex…
Add Shipabase analytics to this app using the @shipabase/js package.
Read node_modules/@shipabase/js/llms.txt first and follow it exactly.
1. Install @shipabase/js with this project's package manager.
2. Call init() once on the client at app startup, with the app key from an env var
   (NEXT_PUBLIC_SHIPABASE_KEY for Next.js, VITE_SHIPABASE_KEY for Vite, SHIPABASE_KEY for Node).
   In Next.js App Router, do it in a "use client" providers component inside useEffect,
   and wrap app/layout.tsx with it.
3. Find the 5–10 most important user actions (signup, core feature used, upgrade, etc.)
   and add trackEvent() calls named in snake_case object_verb form (e.g. project_created).
4. Props: only non-personal values (plan, count, duration, variant).
   NEVER emails, names, user IDs, IPs or free text typed by users.
5. Show me the list of events you added, then tell me to open the Shipabase dashboard
   Setup page to confirm the first event arrived.
Paste it in your agent, at the root of your project.

MCP server#

Connect the Shipabase MCP server and your agent can create apps, check that the first event arrived and read your stats. You sign in once in the browser; disconnect an agent anytime in Settings → AI agents.

Terminal
claude mcp add --transport http shipabase https://api.shipabase.dev/mcp

Then type /mcp in Claude Code and sign in.

The rules your agent follows#

The same rules ship inside the package at node_modules/@shipabase/js/llms.txt, so the agent works offline and with the exact version you installed.

Rule
InstallUse the project’s package manager.
init onceOn the client, at startup. Key from NEXT_PUBLIC_SHIPABASE_KEY, VITE_SHIPABASE_KEY or SHIPABASE_KEY, never hardcoded.
Name eventssnake_case, object_verb, past tense. Constant strings. 5–15 events is typical.
PropsMax 20 keys. Values are string, number or boolean. No nesting.
NeverPersonal data in props (emails, names, user IDs, IPs, tokens, free text). No cookies, localStorage or custom identifiers. The API masks what it detects, but don’t rely on it.
VerifyOpen the dashboard Setup page: it shows the first event.

Point your tools at the docs#

URLWhat it is
/llms.txtThe rules above, plus an index of every page
/llms-full.txtAll docs in one Markdown file, for context windows
/docs/<page>.mdAny page as plain Markdown: append .md to its URL
Copy as MarkdownButton at the top of every page