# CLI Overview

> The commands @askrjs/cli actually ships, how to target a project with --cwd, and which generators do not exist.

Source: [https://askrjs.com/docs/tooling/cli-overview](https://askrjs.com/docs/tooling/cli-overview)

Status: stable. Packages: @askrjs/cli.

**Published packages are authoritative.** Examples may lag behind a published contract. When guidance differs, verify the exports and TypeScript declarations in your installed package, then file an issue.

## Example

Run the project-local published CLI, inspect help before scripting it, and keep CI commands pinned by package-lock.json.

```sh
npx askr --version
npx askr --help
npx askr create --help
npx askr openapi --check
```

## Available commands

askr --help is the generated source of truth for the current command set. It covers scaffolding and generation; analysis, diagnosis, repair, and full project checks; database, OpenAPI, and SSG workflows; agent skills; and dependency maintenance. The command table rendered below comes directly from the installed CLI snapshot, and each command accepts its own --help flag for command-specific usage and examples.

## Help and version

Running askr with no arguments, or with --help/-h, prints the same top-level help text: a usage line, the command table, global options, and a handful of worked examples. --version (or -v) prints the installed @askrjs/cli version by walking up from the executable's directory until it finds the package.json whose name is @askrjs/cli. An unrecognized command prints Unknown command: &lt;name&gt; and points you back at askr --help rather than silently doing nothing.

## Project-local execution

@askrjs/cli can be installed globally (npm install -g @askrjs/cli) or run through a project-local installation. Project-aware commands expose --cwd in their own help when they support targeting a directory other than the current one; check askr &lt;command&gt; --help rather than assuming the flag is universal. This matters for scripting: a CI job or monorepo tool can invoke a supported command such as askr update --cwd packages/app without changing its own working directory first.

## CI usage

Several commands fit CI directly: askr analyze --check and askr check fail on project diagnostics, askr openapi --check fails without writing when the checked-in artifact drifts, askr database validate checks an installed @askrjs/orm schema, and askr outdated --json emits deterministic machine-readable output. Because update and upgrade never run an install or touch a lockfile, they can be followed by the normal install-and-test job. --workspace and --tag flags let a dependency-maintenance matrix target one package or one dist-tag at a time.

## Published commands

These commands come from `@askrjs/cli`. Planned generators are not available commands.

- `askr add --help`
- `askr analyze --help`
- `askr check --help`
- `askr create --help`
- `askr database --help`
- `askr docs --help`
- `askr doctor --help`
- `askr generate --help`
- `askr openapi --help`
- `askr skills --help`
- `askr ssg --help`
- `askr outdated --help`
- `askr repair --help`
- `askr update --help`
- `askr upgrade --help`

## Documentation navigation

[Previous](https://askrjs.com/docs/tooling/index.md) | [Next](https://askrjs.com/docs/tooling/create/index.md)
