Install Flaggr agent skills with npx, or the Flaggr plugin for Claude Code and Codex (npx @flaggr/plugin) — teach coding agents to set up, evaluate, toggle and roll out flags safely, add browser analytics, and report and triage errors.
Last updated October 25, 2026
Flaggr ships agent skills — packaged instructions that teach coding agents (Claude Code, Devin, Cursor, and any agent that reads SKILL.md conventions) how to drive flaggr.dev correctly: evaluation, toggles, rollout safety, SDK wiring, browser analytics, and error and crash reporting.
| Skill | Use it for |
|---|---|
flaggr-setup | Connecting and first-time setup |
flaggr | Feature flags: evaluate, create, toggle, health, audit |
flaggr-rollouts | Progressive delivery: canaries, rollback, targeting, experiments |
flaggr-openfeature | Wiring flags into code: @flaggr/sdk, Go, Python, OFREP |
flaggr-analytics | Browser analytics: Sites, the script tag, Web Vitals, conversions, vitals by variant |
flaggr-errors | Errors, crashes and performance: setup per platform, issues, source maps, release health |
Agents load the one that matches the task, so asking for "set up error tracking" or "why did LCP get worse" brings in the right instructions without loading the rest.
Install with npx
# Auto-detects .agents/skills, .claude/skills, or .devin/skills in your project
npx @flaggr/skills
# Install globally — available in every project
npx @flaggr/skills --global
# Explicit target directory
npx @flaggr/skills --target .claude/skillsPreview first: npx @flaggr/skills --list and --dry-run.
Claude Code and Codex plugins
The Flaggr plugin is published to npm as @flaggr/plugin. One install adds these skills and connects the hosted MCP server at https://flaggr.dev/mcp — sign-in is OAuth, so there are no tokens to copy. In Codex it also adds the Flaggr app entry.
Claude Code
Inside Claude Code, add Flaggr's marketplace:
/plugin marketplace add https://flaggr.dev/plugins/marketplace.json
Then install the plugin:
/plugin install flaggr@flaggr
Or from a terminal: npx @flaggr/plugin --claude. It runs the same two steps with the claude CLI, for your user.
Either way needs Node.js 18 or later: Claude Code downloads the plugin with npm, so npm must be on the PATH Claude Code sees (a session started from an IDE or the desktop app may not see an nvm or mise install). No Node.js? Add just the MCP server, without the skills: claude mcp add --transport http --scope user flaggr https://flaggr.dev/mcp.
Then start a new session (or run /reload-plugins), run /mcp, select plugin:flaggr:flaggr (the Flaggr plugin's server) and choose Authenticate.
Codex
npx @flaggr/plugin --codexThe installer needs Node.js 18 or later. It writes a one-plugin Flaggr catalog to ~/.flaggr/codex-marketplace (keep that directory: Codex reads the catalog from there), registers that directory as a Codex marketplace, and runs codex plugin add flaggr@flaggr.
| Codex version | What you get |
|---|---|
| 0.143 or later | The plugin from npm |
| 0.131–0.142 | A local copy of the plugin (these versions can't install from npm) |
| Older | Nothing: upgrade Codex first (codex plugin add arrived in 0.131) |
Then open Codex and sign in to Flaggr when prompted. Codex runs the bundled flaggr-setup skill on install and lists the Flaggr app under Explore — choose Pin to sidebar.
npx @flaggr/plugin with no flag installs into every client it finds on your PATH; --dry-run prints the commands without running them. If you already have a marketplace named flaggr (a checkout of the plugin, say), the installer keeps it and installs from it, refreshing it first where the client can; for Codex it then writes nothing to ~/.flaggr.
Updates
- Claude Code: inside Claude Code, choose Update now under
/plugin→ Installed → flaggr, or run/plugin marketplace update flaggr, which refreshes the catalog and updates the plugins installed from it. From a terminal, runclaude plugin update flaggr@flaggr(ornpx @flaggr/plugin --claudeagain); in a terminal,claude plugin marketplace update flaggronly refreshes the catalog. Then run/reload-pluginsor restart Claude Code. To get updates automatically, turn on auto-update under/plugin→ Marketplaces → flaggr. - Codex 0.143 or later: automatic. Codex picks up a new version the next time the Codex app or TUI starts.
- Codex 0.131–0.142: re-run
npx @flaggr/plugin --codexto refresh the local copy.
Prefer to wire the server yourself? See Connect Claude, Codex & AI Assistants. To run the server locally over stdio with a token instead — a personal access token (fgp_…) for every project you can access, or a project API token (fgr_…) for one — use npx -y @flaggr/mcp-server@latest (see the MCP server guide). It needs version 0.3.0 or later: earlier versions can run shell commands taken from a crafted url passed to the login tool. @latest installs the newest release on npm, so until npm view @flaggr/mcp-server version prints 0.3.0 or later, use the hosted server instead.
Bundled skills
flaggr-setup
Onboarding — runs when the plugin is installed in Codex, and whenever you ask to set up or reconnect Flaggr:
- Connects through the client's native OAuth flow and verifies it with
get_connection - Explains read / write / admin access and what a
403means - Walks the setup checklist with
get_onboarding_status: project, service, first flag, SDK, browser analytics
flaggr
Core operations — the default skill agents load when you mention flags:
- Evaluation (
evaluate_flag,POST /api/flags/evaluate, batch eval) - Flag CRUD and toggles (
toggle_flag,bulk_toggle_flags) - Health and safety (
get_flag_health,check_and_rollback_flag, toggle-impact analysis) - Auth — token minting, Bearer scopes, public-flag evaluation
- REST quick reference: sparse fieldsets (
fields),limitwithoffsetor a cursor, bulk updates withsummary, the version-rollback route, andIf-None-Match(304), which only thepixel-griddemo list answers
flaggr-rollouts
Progressive delivery workflows — activated when you ask for rollouts, canaries, or kill switches:
start_canary_rollout— starts a persisted canary rollout plan gated on the flag's pre-canary error rate / p99, shown under Releasescheck_and_rollback_flag— circuit-breaker rollback on error/latency driftsimulate_flag_targeting— blast-radius estimation before changing rules- Cohorts, overrides, experiments (their variants are assigned only on the control plane) and bandits (experimental)
The flaggr and flaggr-rollouts skills tell agents that impact analysis, toggle-impact checks and circuit-breaker rollbacks see only the evaluations https://flaggr.dev serves and the exposures reported to it. The data plane (api.flaggr.dev) records none.
flaggr-analytics
Browser analytics (real-user monitoring) — activated when you ask about Web Vitals, page views, conversions or the analytics script:
- Creating a Site (
create_site) and adding thea.jstag with itssite_…id, thedata-*options, Content Security Policy and version pinning - Tagging events with the page's flag variants:
window.__FLAGGR_FLAGS__, which@flaggr/sdk0.5.0 and later fills in, or by hand for other providers - Conversions (
flaggr:conversion) and remote collection control with the_flaggr_analyticsflag (levels, sampling, the attribute floor) - Reading the results:
get_web_vitals,query_browser_segments,get_flag_rum_reportfor a variant's effect on vitals, errors and conversions, and the/api/analytics/*routes - Verifying the install (
list_recent_browser_events), and what the script and the ingest keep
flaggr-errors
Error and crash reporting, Sentry-style — activated when you ask to capture errors, read a stack trace, triage issues, upload source maps or look at latency:
- Setup per platform: the analytics script's
data-track-errors,flaggrErrors()in@flaggr/sdk(browser and Node.js), the Go SDK'serrorreportpackage,@flaggr/react-nativefor React Native and Expo, andPOST /api/ingest/server-eventsfrom any language, with which credential each needs - Triage with
list_issues,get_issue(including the flag variants an issue's events carried) andupdate_issue_status, and how resolved issues regress - Source map uploads (
PUT /api/projects/{id}/sourcemaps, or the CLI'ssourcemaps upload), release health and crash-free sessions, and the issue alert conditions - Performance: transactions and traces (
get_performance,get_server_trace) - Which version of each SDK and of the CLI each integration needs
flaggr-openfeature
SDK integration — activated when wiring Flaggr into application code:
@flaggr/sdk:createFlaggr, the React and Next.js provider, and thestream/batch/pollupdate modes- Flaggr's Go SDK and Python SDK (v0.1.1; Python installs from its GitHub release tag)
- OpenFeature OFREP providers, with the base URL
https://api.flaggr.dev/api - Transport selection — when to use REST eval vs SSE push vs Connect-RPC
Authentication
With the plugin, the hosted connector signs in with OAuth. Without it, skills use a token: a project API token (fgr_…, created in the project's settings) for SDKs and flag evaluation, or a personal access token (fgp_…, Profile → Personal access tokens) for scripts and the local MCP server. API tokens and personal access tokens can't create tokens. For read-only exploration, the public pixel-grid demo service works with no token at all — try it in the API explorer.
See also
- MCP server guide — the underlying tool surface
- API explorer — live Try-It for every endpoint
- Authentication — token types and scopes