CLI reference
pip install linkworldlinkworld --helpCommands
Section titled “Commands”linkworld init <slug>
Section titled “linkworld init <slug>”Scaffold a new app in ./<slug>.
| Flag | Default | Description |
|---|---|---|
--lang | python | python or typescript |
--name | derived from slug | Display name |
--description | empty | One-line description |
--github-owner | your-org | Used in the GHCR image URL |
--directory | ./<slug> | Override target dir |
linkworld init tax-bot --lang python --github-owner youlinkworld init tax-bot-ts --lang typescript --github-owner youlinkworld login
Section titled “linkworld login”Open a browser to GitHub OAuth. The CLI receives a JWT and stores it
at ~/.config/linkworld/config.json.
# OAuth flowlinkworld login
# Fallback: paste an admin-issued JWTlinkworld login --token eyJhbGc...linkworld deploy
Section titled “linkworld deploy”Build the Docker image, push to GHCR, register the version with the
platform, and (by default) promote it to current_version.
| Flag | Default | Description |
|---|---|---|
--version | derived from manifest | Override the version published |
--skip-build | off | Don’t build/push; just register an existing image |
--no-promote | off | Register the version but don’t make it current |
--manifest | linkworld.app.yaml | Override the manifest path |
# Common case: build + push + registerlinkworld deploy
# CI flow: image already in GHCR, just registerlinkworld deploy --skip-build --version 1.2.3linkworld secrets
Section titled “linkworld secrets”Manage dev-default secrets visible to every tenant install of an app. Tenant-specific overrides live in the tenant’s app-settings UI.
linkworld secrets set OPENAI_KEY=sk-real-... --app tax-bot --description "LLM key"linkworld secrets list --app tax-botlinkworld secrets get OPENAI_KEY --app tax-bot # metadata only, never the valuelinkworld secrets delete OPENAI_KEY --app tax-botKey format: ^[A-Z][A-Z0-9_]{0,63}$ (uppercase, digits, underscore;
first char letter). Values are encrypted at rest with AES-256-GCM and
never displayed after creation.
Exit codes
Section titled “Exit codes”| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | Bad input (invalid slug, missing required flag) |
| 2 | Platform error (4xx/5xx, network) |
| 3 | Auth error (no token, expired, suspended) |