NitroStack Python CLI Reference — For AI Code Editors
CLI binary: nitrostack-py (package nitrostack). Alternate: python -m nitrostack.cli.main. Not nitrostack-cli, not npx @nitrostack/cli.
Bash
nitrostack-py --help
Commands
init [name] [--template python-starter|python-pizzaz|python-oauth] [--skip-install] [--force] [--port] [--widget]
dev [--port] [--widget]
start [--port] [--widget]
pack [--dry-run]
generate tool|module|guard|pipe|interceptor|filter|service <name>
install [--production]
upgrade [--version X.Y.Z] [--dry-run] [--allow-downgrade]
validate
register [--name] [--file main.py]
No build. Ports: flags → PORT/MCP_SERVER_PORT/WIDGETS_DEV_PORT → .env → 3000/3001.
Init / skills
Clones https://github.com/nitrocloudofficial/skills-python-sdk.git into .cursor/skills and sibling agent folders. .nitrostack.json stores skillsVersion. --force overwrites skill dirs. upgrade refreshes skills when registry version bumps.
uv
init writes pyproject.toml, .python-version, uv.toml, runs uv lock if uv exists. install prefers uv sync.
Pack
Wheel in dist/. Never includes .env. Always includes .env.example.
Validate
Lint deps, @mcp_app imports, @module imports/exports. Exit 1 on errors.
Typical agent flow
Bash
pip install nitrostack
nitrostack-py init my-server --template python-starter
cd my-server
nitrostack-py dev
# Inspector: MCP_TRANSPORT_TYPE=http MCP_STATELESS=true, URL http://localhost:3000/mcp
nitrostack-py validate
nitrostack-py pack