BYOK Claude Code skill

The BYOK ("bring your own key") path runs the same auto-instrument procedure as the hosted UI, but entirely inside your Claude Code session against your own Anthropic key. No GitHub App, no Everscribe network calls during the scan, no server-side agent — just a markdown skill Claude Code reads and follows.

Use this when your source code can't leave your machine, when you'd rather not connect a GitHub App, or when you simply prefer the terminal.

Want a dry run first? Clone github.com/everscribe/ai-assisted-setup-demo and invoke /everscribe-setup against it. It's a deliberately un-instrumented multi-tenant SaaS demo we maintain as a no-stakes target — you'll see the full procedure end-to-end against a known-good codebase before pointing it at your real repo.

What you need

  • Claude Code installed and signed in with your Anthropic account
  • The es CLI to download the skill (or you can download SKILL.md from the docs manually)
  • A project on Everscribe with an ingest API key — see Generate an API key

Install the skill

es skills download setup

Writes the skill markdown to ~/.claude/skills/everscribe-setup/SKILL.md. Restart Claude Code and the skill becomes available as the slash command /everscribe-setup.

To browse what's available without installing:

es skills list

See CLI · Skills for the full command reference.

Run the skill

Open your repo in Claude Code and invoke:

/everscribe-setup

The skill walks through a fixed procedure:

  1. Fetch the supported-SDKs manifest from everscribe.io — Claude reads it to know which languages have shipping SDKs.
  2. Detect your project's language by looking at markers like go.mod, package.json, etc. If your service is in a language we don't yet ship an SDK for, the skill stops cleanly with a request-language link.
  3. Ask which domains to instrument — auth / billing / admin / data / etc. Press enter for "all security-relevant."
  4. Ask the embed question — yes/no on whether to also wire up the audit-trail web component + a tenant-scoped embed-token endpoint.
  5. Verify your env vars — checks for EVERSCRIBE_PROJECT_ID and EVERSCRIBE_API_KEY in your environment. If missing, points you at the dashboard to mint a key. The skill never reads, stores, or transmits the plaintext key.
  6. Discover handlers — Claude greps for framework patterns, reads handler files, builds a candidate list with event-name proposals + confidence levels per handler.
  7. Refine via Claude Code chat — same conversational interface as the hosted UI's chat pane, just in your terminal. "Exclude the admin handlers", "rename user.signup to account.created", "why low confidence on handleRefund?".
  8. Generate the diff — Claude uses its native Edit tool to apply the changes. Uses everscribe.NewFromEnv(...) — never embeds plaintext keys.
  9. Commit to a new branch without touching your working tree — runs git commit-tree + git update-ref so the diff lands on everscribe/setup-<timestamp> while your checkout stays clean.
  10. Offers to open the PR with gh — if you have the GitHub CLI installed, Claude can run gh pr create for you. Otherwise it prints the push + PR-create commands and lets you do it manually.

How it differs from the hosted flow

Hosted UI BYOK skill
Anthropic key Ours Yours
Source code visibility Sent to Anthropic via our servers Sent to Anthropic via your Claude Code
GitHub access Required (our GitHub App) Not required
Working tree Untouched Untouched (commits via plumbing)
Output A real pull request A local branch — push and PR yourself
Telemetry We see scan + PR stats None — we have zero visibility
Cost Included Your Anthropic usage

The agent's behavior is identical — same handler-detection rules, same event-naming conventions, same tenant-source inference. See Behavior reference.

Updating the skill

When we ship a new version of the procedure, re-run:

es skills download setup --force

--force overwrites your existing SKILL.md. Restart Claude Code afterward — it caches skill content on startup.

To check what version you have installed vs what's published:

head -5 ~/.claude/skills/everscribe-setup/SKILL.md   # local version
es skills list                                       # published version