From aurora
Mint and refresh UiPath Automation Cloud OAuth tokens via the External Application client-credentials grant. Reads UIPATH_CLIENT_ID and UIPATH_CLIENT_SECRET from .env, requests the scope list from policy.yaml::uipath_scopes, writes the live access token to UIPATH_ACCESS_TOKEN so the uipath CLI can use it without re-auth, and refreshes proactively before the 1-hour expiry. Use this skill at the start of every Conductor run, before any uipath CLI or uipath-python SDK call, and whenever Sentry emits a `kind: auth_failed` event.
How this skill is triggered — by the user, by Claude, or both
Slash command
/aurora:aurora-authThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
UiPath Automation Cloud uses OAuth 2.0 with the client-credentials grant for confidential External Applications. AURORA mints tokens at runtime — never relies on a stale `UIPATH_ACCESS_TOKEN` in `.env` — and writes them back so the `uipath` CLI and `uipath-python` SDK both see fresh credentials.
UiPath Automation Cloud uses OAuth 2.0 with the client-credentials grant for confidential External Applications. AURORA mints tokens at runtime — never relies on a stale UIPATH_ACCESS_TOKEN in .env — and writes them back so the uipath CLI and uipath-python SDK both see fresh credentials.
aurora start bootkind: auth_failedexpires_at is within 5 minutespython scripts/mint_token.py [--scopes "OR.Folders OR.Tasks ..."]
If --scopes is omitted, reads policy.yaml::uipath_scopes and joins with spaces.
The script:
UIPATH_URL, UIPATH_CLIENT_ID, UIPATH_CLIENT_SECRET from .env (or environment)/orchestrator_ from UIPATH_URL, appends /identity_/connect/tokengrant_type=client_credentials&client_id=…&client_secret=…&scope=… (form-encoded).env as UIPATH_ACCESS_TOKEN=… (replaces any existing line)~/.uipath/aurora-token.json with {access_token, expires_at, scope} for the daemon's in-process cacheinvalid_client, invalid_scope, network — and the corresponding remediation hintTokens have expires_in: 3600. AURORA refreshes when now > expires_at - 300s (5-minute buffer). The Conductor's daemon mode (lib/aurora/conductor.py) holds the cache and refreshes opportunistically; agents in Claude Code subagent mode invoke the script directly when needed.
UIPATH_ACCESS_TOKEN in .env. Curl-test tokens use a subset of scopes; AURORA requests the full list..env. Never log it. The script must redact client_secret from any error trace.offline_access for a confidential External App. That's user-scope only..env populated with UIPATH_URL, UIPATH_CLIENT_ID, UIPATH_CLIENT_SECRETCLAUDE.md)Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub mlbrilliance/uipath-for-coding-agents --plugin aurora