Skip to main content

CLI Reference

The Nova CLI lets you generate files, apply local assets through vendor integrations, run recipes, scaffold projects, and use development utilities.

Step by step

Not sure what to type? Build the command one section at a time.

Start with nova, then the command and subcommand (if available), and finally the options like --all or -a. Each step shows inline guidance so you don't wonder what to do next.

Get Started

  • Options are recommended — Type the option (flags / switches) you want, like --all or -a. This helps you learn the command faster.
  • Build it step by step — Start with nova, add the command and subcommand, then finish with options like --all or -a. Repeat until it feels natural.

Commands

All commands below show a help screen when run with the --help or -h option, so you can explore safely and avoid accidental runs.

Mix and match

You can freely combine full names and shorthands in the same command. For example, nova generate must lic and nova gen must-haves license both work the same way.

Generators

Create semi-tailored vendor and project files at the monorepo root. Generators read nova.config.json when their output needs project-level values.

info

Generators use nova generate <category> <subcommand>.

GitHub

Category: github · Alias: gh

SubcommandShorthandWhat It Does
funding—Create a .github/FUNDING.yml file for GitHub sponsor links.
issue-templateissueCreate .github/ISSUE_TEMPLATE files for GitHub issue forms.
workflows—Create .github/workflows files for GitHub CI/CD automation.

Must-Haves

Category: must-haves · Alias: must

SubcommandShorthandWhat It Does
agent-conventionsagentCreate agent convention files for coding assistants.
dotenvenvCreate .env and .env.sample files for environment secrets.
editorconfig—Create a .editorconfig file for consistent coding styles.
ignore-files—Create every configured physical ignore file.
licenselicCreate a LICENSE file for project license agreements.
read-mereadCreate a baseline README.md file for your project.

Integrations

Apply local project assets through supported vendor services without storing credentials in nova.config.json. Running nova integration or a vendor category opens an interactive menu; leaf commands remain directly scriptable.

info

Integration commands use nova integration <vendor> <operation> or nova int <alias> <operation>.

Mutating commands print their complete plan before authentication. Use -d, --dry-run to validate without authenticating or changing remote data. Non-interactive mutations require -n, --non-interactive together with -y, --yes.

App Store Connect

Category: app-store-connect · Alias: asc

SubcommandShorthandWhat It Does
creative-assets—Replace selected App Store promotional artwork.
metadata—Update selected localized App Store version metadata.
screenshots—Replace selected iPhone, iPad, Apple Watch, or Mac screenshot sets.

Discord Developer Portal

Category: discord-developer-portal · Alias: ddp

SubcommandShorthandWhat It Does
validate-token—Validate a Discord bot token without storing or printing it.

Google Play Console

Category: google-play-console · Alias: gpc

SubcommandShorthandWhat It Does
graphic-assets—Replace selected Google Play graphic asset sets.
metadata—Update selected localized Google Play listing fields.
screenshots—Replace selected Google Play screenshot sets.

Recipes

Apply scripted edits that automate routine maintenance, using values from nova.config.json when the recipe needs configured project data.

info

All commands in "Recipes" are shaped as nova recipe <category> <subcommand> or nova rcp <alias> <shorthand>.

Recipe categories are navigation menus, not batch commands. Use nova utility run-recipes when you want Nova to run every enabled recipe.

GitHub

Category: github · Alias: gh

SubcommandShorthandWhat It Does
sync-actionssync-actSync GitHub Actions permissions, token defaults, and artifact retention.
sync-featuressync-featSync repository feature flags (issues, wiki, projects, discussions) to GitHub.
sync-identitysync-idSync repository identity (description, homepage URL, topics) to GitHub.
sync-labelssync-labCreate or update configured GitHub repository labels.
sync-policiessync-polSync repository policies (visibility, merge methods, branch settings) to GitHub.
sync-rulesetssync-ruleCreate or update Nova's managed default-branch ruleset.
sync-securitysync-secSync vulnerability, Dependabot, secret scanning, and push protection settings.

License

Category: license · Alias: lic

SubcommandShorthandWhat It Does
update-copyrightupdate-copyRefresh the generated license copyright holder and year range.

Miscellaneous

Category: miscellaneous · Alias: misc

SubcommandShorthandWhat It Does
fix-markdown-tablesfix-md-tablesFormat Markdown and MDX tables throughout the project root.
remove-operating-system-filesremove-os-filesRemove explicitly enabled, untracked operating-system metadata files from the project root.

nova.config.json

Category: nova-config · Alias: config

SubcommandShorthandWhat It Does
normalize-ordernorm-orderNormalize top-level nova.config.json key order without changing configured data.

package.json

Category: package-json · Alias: pkg

SubcommandShorthandWhat It Does
cleanupcleanRemove unsupported keys and reorder remaining keys in workspace package.json files.
normalize-artifactsnorm-artNormalize files, bin, man, directories, private, and publishConfig in workspace package.json files.
normalize-bundlernorm-bunNormalize types, module, sideEffects, and esnext bundler fields in workspace package.json files.
normalize-dependenciesnorm-depNormalize dependency fields and optionally pin versions in workspace package.json files.
normalize-modulesnorm-modNormalize exports, main, type, browser, and imports fields in workspace package.json files.
normalize-toolingnorm-toolNormalize scripts, gypfile, config, and workspaces in workspace package.json files.
sync-environmentsync-envSync engines, os, cpu, libc, devEngines, and packageManager in workspace package.json files.
sync-identitysync-idSync name, version, description, keywords, displayName, and license to workspace package.json files.
sync-ownershipsync-ownSync homepage, bugs, author, contributors, funding, and repository to workspace package.json files.

README

Category: read-me · Alias: read

SubcommandShorthandWhat It Does
update-badgesupdate-badgeRefresh the generated README badge region.
update-creditsupdate-creditRefresh the generated README credits region.
update-documentationupdate-docRefresh the generated README documentation region.
update-headerupdate-headRefresh the generated README header region.
update-introductionupdate-introRefresh the generated README introduction region.

Scaffolding

Bootstrap full project starters as monorepo workspaces. Each scaffold creates a ready-to-use workspace with all necessary config files, dependencies, and build setup.

info

All commands in "Scaffolding" are shaped as nova scaffold <category> <subcommand> or nova scaf <alias> <shorthand>.

App

Category: app · Alias: none

SubcommandShorthandWhat It Does
android—Scaffold a native Android workspace.
apple—Scaffold a SwiftUI Apple workspace.
astro—Scaffold an Astro workspace.
discord-bot—Scaffold a Discord bot workspace.
expressjsexpressScaffold an Express.js workspace.
nextjsnextScaffold a Next.js workspace.
vite—Scaffold a Vite workspace.

Docs

Category: docs · Alias: none

SubcommandShorthandWhat It Does
docusaurus—Scaffold a Docusaurus documentation workspace.

Package

Category: package · Alias: pkg

SubcommandShorthandWhat It Does
github-actionactionScaffold a bundled GitHub Action package.
homebridge—Scaffold a dynamic-platform Homebridge plugin.
pfsense—Scaffold a WebGUI-managed pfSense package.

Starter

Category: starter · Alias: start

SubcommandShorthandWhat It Does
base—Scaffold a base monorepo project without a framework workspace.

Tool

Category: tool · Alias: none

SubcommandShorthandWhat It Does
serverless—Scaffold a distributable CLI with a user-deployed serverless service.

Utilities

Tools for diagnostics, quick checks, and development helpers.

info

All commands in "Utilities" are shaped as nova utility <subcommand> or nova util <shorthand>.

SubcommandShorthandWhat It Does
changeloglogRecord changes and release versioned changelogs.
configureconfigCreate or edit this project's nova.config.json configuration file.
run-recipesrun-rcpRun all enabled recipes and finalize workspace package.json files.
run-scriptsrun-scrRun package.json scripts by pattern with sequential, parallel, and explicit child-environment controls.
run-workspacesrun-wsRun dependency-aware package scripts across configured Nova workspaces.
transpilexpileTranspile TypeScript with filtered diagnostics, emitting compiled output for project-owned files.
type-checktype-chkRun full TypeScript type checking scoped to project-owned files, filtering out third-party diagnostics.
versionverGenerate a Markdown-ready snapshot of your development stack versions (e.g., node --version).

Troubleshooting

Exit Codes

CodeMeaningResult
0SuccessResponse of the executed command.
1ErrorHelp text displayed.

Quick Fixes

  • Prefer explicit command, subcommands, and options for clarity, fewer mistakes, and predictable behavior. For example, nova utility version --all instead of the alternate variants.