authenticate the CLI
Configure interactive or unattended access to an authorised repository.
For: CLI users; CI and agent credential setup
Configure the identity that your terminal, CI runner or agent uses to submit Sorus jobs. You need the beta client, an account and access to the intended repository. For a guided first run, use the Cargo check tutorial.
sign in
For an interactive terminal:
- Run
cargo sorus login. - Open the printed approval page in your signed-in browser session and confirm the device code.
- Run
cargo sorus whoamiand check the active identity. - Run
cargo sorus onboarding statusto confirm account and repository onboarding before submitting a job.
CI and agent credentials
For an unattended caller, obtain the scoped credential through your account’s credential-management process, then:
- Put it in your CI or agent host’s secret mechanism.
- Inject it as
SORUS_TOKENonly into the process that calls Sorus. Alternatively, setSORUS_CREDENTIAL_FILEto the credential file and leaveSORUS_TOKENunset. - Use the default endpoint,
https://app.lathe.run, or setSORUS_ENDPOINTto the endpoint specified during onboarding. - Run
cargo sorus whoamiin that environment to check the selected identity before enabling jobs.
Keep the caller credential out of source, logs and URLs. Do not pass it to a customer build; a build secret needs its own scope and support in the release.
scopes and attribution
Grant only the scopes the task needs: read, submit, settings, credentials or admin authority. Check them against the API reference. API callers send Authorization: Bearer <credential>.
Verify that actions are attributed to the intended user or agent:<name>. Use the agent setup guide for MCP and coding-agent configuration.
authentication failures
For exit 3, check whether the credential is missing, refused, expired, revoked or out of scope. Verify the endpoint, tenant and credential source.
Unset an unintended SORUS_TOKEN before using SORUS_CREDENTIAL_FILE. Re-authorise or rotate the credential through your account’s access process. Keep credentials out of support messages.