Authentication Commands
Islo supports two authentication methods:
- OAuth 2.0 (default) - Browser-based login for interactive use
- API Keys - For CI/CD, scripts, and programmatic access
islo login
Authenticate with Islo via browser-based OAuth flow.
Syntax:
Behavior:
- Starts a local HTTP server on port 9876 (override with
ISLO_OAUTH_PORT). - Opens your default browser to the Descope authorization URL.
- You authenticate via Google, email, or SSO.
- Descope redirects to localhost with an authorization code.
- The CLI exchanges the code for access and refresh tokens.
- Tokens are stored securely on your system (see Token Storage).
Troubleshooting:
If the browser doesn’t open automatically:
- Copy the URL printed in the terminal.
- Paste it into your browser manually.
- Complete the login flow.
- The CLI catches the callback automatically.
islo logout
Clear stored authentication tokens.
Syntax:
islo switch
Switch between organizations you belong to.
Syntax:
Behavior:
- Prints your current organization.
- Opens a browser for an OAuth flow that lets you pick a different org.
- Replaces your stored credentials with the new org’s tokens.
After the flow, run islo status to confirm the new org.
Integrations Login
Connect external services so sandbox sessions and Islo features can use them without you managing credentials in islo.yaml or env vars.
Syntax:
Supported integrations:
github— GitHub repo and code access (personal + team)slack— Slack workspace notifications (team)linear— Linear project management and issues (team)notion— Notion workspace for notes and docs (team)atlassian— Atlassian (Jira, Confluence) (team)anthropic(alias:claude) — Anthropic API key for Claude models (personal)cursor— Cursor API key for Cursor CLI in sandboxes (personal)openai— OpenAI API key for GPT models (personal)
“Personal” connections apply only to your user. “Team” connections apply to everyone in the org.
Examples:
Integration tokens are stored securely and used automatically when needed.
islo status
Show your authentication state, connected integrations, project configuration, and sandboxes.
Syntax:
Output:
Sections for authentication state, connected integrations, project configuration from islo.yaml, environment/secret guidance, and your sandboxes.
Example output:
Token Storage
Islo stores tokens securely using platform-specific backends:
Token Types
The CLI automatically refreshes expired access tokens using the refresh token. If the refresh token expires, you’ll need to run islo login again.
OAuth Port Configuration
The OAuth callback uses port 9876 by default. To use a different port:
Session Expiration
The CLI refreshes expired access tokens automatically. When the refresh token itself expires or becomes invalid, the next command prints a message asking you to login again. Re-authenticate with:
See Troubleshooting → Authentication for the full message variants.
API Key Authentication
For CI/CD pipelines, scripts, and other non-interactive callers, use an API key instead of OAuth. Set ISLO_API_KEY in the environment and the CLI skips the browser flow:
API Key vs OAuth
See API Keys for creating, listing, rotating, and using keys.