skills/inngest-api-cli/SKILL.md
Use when operating Inngest API resources from the terminal with `npx inngest-cli@latest api`: Cloud/local run debugging, event-run lookup, function traces, function invocation, app syncs, webhooks, environments, keys, account checks, and Insights queries. Provides prescriptive command routing for agents: which CLI command to run for a run ID, event ID, app ID, function ID, Cloud environment, API key, missing ID, or potentially mutating operation. Use `inngest-cli` for dev server setup/general CLI workflows and `inngest-api` only when raw REST API v2 docs or OpenAPI fallback are needed.
npx skillsauth add inngest/inngest-skills inngest-api-cliInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill when the task is operational: inspect, debug, sync, invoke, or query Inngest API resources through the terminal. This skill is intentionally prescriptive so agents can act without guessing.
For general CLI setup, inngest dev, Docker, local testing, MCP setup, or
self-hosted inngest start, use inngest-cli. For code changes, pair this
with the domain skill that owns the code pattern: inngest-setup,
inngest-durable-functions, inngest-events, inngest-steps,
inngest-flow-control, inngest-realtime, or inngest-middleware.
Verify the current CLI surface before relying on memory:
npx inngest-cli@latest api --help
npx inngest-cli@latest api <command> --help
The active API command is inngest api. If prompt context or old docs mention
inngest alpha api, switch to inngest api.
Use inngest-api only when:
For complete command flags, read references/cli-commands.md after this skill triggers.
inngest api.--prod.INNGEST_ENV=<name> or --env.INNGEST_API_KEY for Cloud API access.--api-key <secret> unless the user
explicitly accepts process-list and transcript exposure.Common targets:
npx inngest-cli@latest api health
npx inngest-cli@latest api --prod get-account
INNGEST_ENV=staging npx inngest-cli@latest api --prod get-webhooks
npx inngest-cli@latest api --api-host http://127.0.0.1 --api-port 8288 health
For local app work:
Start the user's app with local dev mode when applicable, for example
INNGEST_DEV=1 npm run dev.
Start the dev server:
npx inngest-cli@latest dev
Prefer Dev Server MCP tools, when available, to list local functions, send test events, inspect runs, and watch status.
Use npx inngest-cli@latest api ... for API-compatible local checks,
command-help verification, and workflows not exposed through MCP.
If the local API says the dev server is unavailable, start inngest dev or
switch to Cloud with --prod when the user is debugging deployed runs.
Use this table before asking the human for more context.
| Situation | Command path |
| --- | --- |
| Check CLI/API reachability | api health |
| Confirm Cloud auth | api --prod get-account |
| List environments | api --prod get-account-envs --limit 10 |
| List event keys | api --prod get-account-event-keys --limit 10 |
| List signing keys | api --prod get-account-signing-keys --limit 10 |
| List webhooks | api --prod get-webhooks |
| User gives a run ID | api --prod get-function-run <run_id> |
| Need step-level detail | api --prod get-function-trace <run_id> --include-output |
| User gives an event ID | api --prod get-event-runs <event_id> --limit 5 --include-output |
| Sync a known app ID | api --prod sync-app --app-id <app_id> --url <serve_url> |
| Invoke a known app/function ID | api --prod invoke-function --app-id <app_id> --function-id <function_id> --data '<json>' |
| Discover Insights tables | api --prod get-insights-tables |
| Discover event schemas for Insights | api --prod get-insights-event-schemas --limit 25 |
| Draft an Insights query | api --prod query-insights-prompt --prompt '<request>' |
| Run an Insights query | api --prod query-insights --query '<sql>' |
If a command accepts positional IDs, prefer positional IDs in examples because
they are shorter and match current help. Flag forms such as --run-id are also
accepted by the current CLI for many path parameters.
When the user gives a run ID:
npx inngest-cli@latest api --prod get-function-run <run_id>
npx inngest-cli@latest api --prod get-function-trace <run_id> --include-output
Summarize status, failed spans, retry state, timing, error names/messages, and the likely code boundary to inspect. Do not paste full traces unless asked.
When the user gives an event ID:
npx inngest-cli@latest api --prod get-event-runs <event_id> --limit 5 --include-output
Pick the relevant run from the response, then fetch the run and trace. If multiple runs are plausible, explain the candidates and use timestamps, function IDs, or failure status to choose.
Do not immediately ask the user for app IDs, function IDs, or run IDs.
Try, in order:
get-event-runs.get-functions or
get-app have appeared.Ask the user for the ID only after those sources cannot provide it.
Read before write. List or fetch the relevant resource first, then mutate only when target and intent are clear.
Confirm before running these against Cloud unless the user already specified the account/environment and exact intent:
create-envpatch-envcreate-webhooksync-appinvoke-functionquery-insights callsFor repeatable invocation tests, use a stable idempotency key:
npx inngest-cli@latest api --prod invoke-function \
--app-id <app_id> \
--function-id <function_id> \
--idempotency-key <stable_test_key> \
--data '{"example":true}'
For complex JSON, use --body-file to avoid quoting mistakes.
Use Insights when the question is analytic, when logs only give partial clues, or when the user asks about trends, frequency, volume, failures over time, or event/run data.
Start small:
npx inngest-cli@latest api --prod get-insights-tables
npx inngest-cli@latest api --prod get-insights-event-schemas --limit 25
npx inngest-cli@latest api --prod query-insights-prompt \
--prompt "Show failed functions in the last 24 hours"
Inspect generated SQL before running broad queries. Add limits and time windows when possible.
--raw only when a downstream command needs exact response bodies.page.hasMore is true, continue with
--cursor when complete results are needed.data on list responses as an empty list unless an error is
present.The CLI is beta. If behavior differs from this skill:
https://api-docs.inngest.com/llms.txt.https://api-docs.inngest.com/api-specs/v2.json.inngest-api skill for raw REST API fallback.Some launch material may mention aliases such as get-run or
invoke-function-by-slug. Use them only if current api --help exposes them.
If absent, use get-function-run and invoke-function.
tools
Use when upgrading an existing TypeScript codebase from Inngest SDK v3 to v4, or when fixing mixed v3/v4 API usage. Covers detecting current SDK usage, moving triggers into createFunction options, replacing EventSchemas with eventType/staticSchema, moving serve options to the client, updating realtime imports, rewriting step.invoke string IDs, checkpointing/serverless runtime settings, Connect option changes, and verification.
tools
Use when installing or running the Inngest CLI and Dev Server for local development, local testing, serve endpoint debugging, Docker or Docker Compose setup, MCP configuration, self-hosted `inngest start`, or deployment workflow checks. Covers `inngest dev`, `inngest start`, auto-discovery, config files, environment variables, `@inngest/test`, local event sending, platform gotchas, and production/self-hosted server flags.
development
Use when analyzing an existing TypeScript or JavaScript codebase to decide where and how to introduce Inngest. Covers repository discovery, framework and package detection, finding durability gaps in HTTP handlers, webhooks, cron jobs, queues, long-running jobs, AI agents, polling loops, and side-effect-heavy code, then producing and implementing an incremental integration plan.
tools
Use when the user explicitly asks for the Inngest REST API v2, raw HTTP, OpenAPI, API docs, API authentication, or an endpoint that the Inngest CLI does not expose. Covers api-docs.inngest.com, llms.txt, the OpenAPI v2 spec, Bearer authentication with API keys or signing keys, production and local base URLs, raw curl/fetch requests, request-shape discovery, pagination, secret redaction, and when to prefer the `inngest-api-cli` skill instead.