docsloth.dev
Quickstart
Six steps from a checkout to a published release and a share link. No account, no licence callback, and no telemetry unless you explicitly turn it on. Every command below is part of the documented CLI surface; the repository README records the tested build and test flows for this tree.
Actions
Actions
- Copy command
Every command block below has a working Copy button. Commands run on 127.0.0.1 only: no account, no provider spend, and no data leaves the machine.
- Run sample
Opens the runnable request sequences the automated suite exercises, each with the version and environment it was last verified in.
1. Install and start the engine
The engine runs from source on 127.0.0.1:4310 and serves the studio on 127.0.0.1:4311. It prints the bootstrap token and orgId your first calls need; keep that terminal open.
pnpm --dir docsloth-core install --frozen-lockfile bash scripts/dev.sh2. Create a docs project and sign in
init writes a schema-valid docsloth.config.json. Store the startup values with auth login; credentials are written mode 0600 and the token is never printed back. Until the CLI is published, run it from the checkout with npx --yes "$CLI".
docsloth init docsloth auth login --token "$BOOTSTRAP_TOKEN" --org "$ORG_ID" --api http://127.0.0.1:4310 # from a checkout today: export CLI="$PWD/docsloth-core/packages/cli" npx --yes "$CLI" init --dir "$HOME/my-docs" npx --yes "$CLI" auth login --token "$BOOTSTRAP_TOKEN" --org "$ORG_ID" \ --api http://127.0.0.1:4310 --dir "$HOME/my-docs"3. Verify and onboard
verify checks the config shape. onboard creates the software, attaches the config sources, resolves local locators against the docs project and runs the analyze job on the engine.
npx --yes "$CLI" verify --dir "$DOCS" npx --yes "$CLI" onboard --dir "$DOCS"4. Generate the program
generate creates a documentation program and one page per locale, then requests the editor plan. Every step returns JSON; the software id is remembered in .docsloth/state.json.
npx --yes "$CLI" generate --dir "$DOCS"5. Publish and share
publish swaps the release pointer atomically. --share also mints a read-only /s/<id> link that works without an account (default expiry seven days); add --public to publish the release itself publicly.
npx --yes "$CLI" publish --dir "$DOCS" --share curl -s "http://127.0.0.1:4310/s/<share-id>"6. Or self-host with docker compose
The compose profile brings up PostgreSQL 17, the API, the worker and Keycloak. It needs the three owner values below; the studio at http://127.0.0.1:4311 stays local-dev only. The profile has known gaps on this tree — read the verified status in the core repository README and compose.yaml before deploying.
export POSTGRES_PASSWORD='<database password>' export APP_BASE_URL='https://docs.example.com' export KC_ADMIN_PASSWORD='<keycloak admin password>' docker compose -f docsloth-core/compose.yaml up -d