Skip to main content
Beta. The CLI is published on npm as appstack-cli. review, --dry-run, --json, and --skill never modify files, so they are safe to run against any project. integrate and upgrade always ask for confirmation before writing.
The Appstack CLI does what the Mobile SDK pages describe, without you doing it by hand. It detects your project, runs deterministic checks first, then hands a framework-specific playbook to a coding agent — Claude Code or Codex — running headlessly. It is deliberately scoped to the SDK lifecycle. It never creates Appstack organizations, apps, campaigns, links, or dashboard resources — do those in the dashboard.

Requirements

  • Node.js 20 or newer.
  • Claude Code or Codex, installed and authenticated. Only the agent-backed runs need one — --json, --skill, and --dry-run work without any agent.
  • A Swift/iOS, Kotlin/Android, React Native, Flutter, or Unity project.

Install

Run it once, without installing anything:
Or install it globally, which gives you the shorter appstack command:

Interactive mode

Run appstack with no arguments in an interactive terminal to open the guided walkthrough. It detects the apps in your repository, lets you pick a workflow and an execution mode, masks API keys as you type them, and asks for confirmation before anything is written to disk.

Commands

integrate

Installs and configures the SDK using your app’s existing package manager and startup architecture.

review

Audits an existing integration. Deterministic checks plus a read-only semantic pass. Never writes.

upgrade

Resolves the latest stable release, reads the migration surface, updates dependencies and lockfiles, then verifies the app.

integrate

Installs the SDK and wires up the configure call in the right place for your project’s architecture.
Pass the API key for a single-platform app with --api-key, or set APPSTACK_API_KEY. See API keys for cross-platform apps.

review

The one to reach for first. It reports what is actually wired up versus what the docs expect, and it cannot change your files.

upgrade

Targets the latest stable release from the official registry by default. Pin a specific version with --to:

Flags

API keys

The CLI never creates keys, and it instructs the agent not to print key values. Grab the key for each app from its project settings in the Appstack dashboard. For a single-platform app:
For a cross-platform app, pass both keys as flags or as environment variables:

Continuous integration

--json gives you the deterministic inspection with no agent involved, so it runs anywhere Node does:

No coding agent installed?

Use --skill to print the full playbook for your specific project and paste it into whichever assistant you already use:
This is the same content as the copyable prompt at the top of each SDK page, but resolved against your actual project rather than generic.

How it works

The CLI is a thin, deterministic harness — project detection, version resolution, safety boundaries, and verification contracts. The Appstack integration expertise lives in a bundled skill, sourced from appstack-tech/appstack-skills, with one reference per platform. Claude Code is preferred when both agents are available.

Troubleshooting

“No coding agent found.” Install Claude Code or Codex, or run the command with --skill and paste the playbook into your agent. codex is not available.” You passed --driver codex but only Claude Code was detected, or neither was. Drop the flag to use whatever is installed. “No installed Appstack SDK version was detected. Run appstack integrate instead.” You ran upgrade on a project that has no Appstack SDK yet. More than one app detected. Pass --framework to pick one, or --install-dir to point at a single app’s directory.

Source

The CLI is open source at appstack-tech/appstack-cli.