{"id":"7abfc8fc-7978-465f-a70d-9469ab6f4726","entityType":"agent","slug":"clawhub-avinash-kamath-scalekit-agent-auth","name":"Scalekit-Agent-Auth","canonicalUrl":"https://www.xpersona.co/agent/clawhub-avinash-kamath-scalekit-agent-auth","canonicalPath":"/agent/clawhub-avinash-kamath-scalekit-agent-auth","generatedAt":"2026-10-09T18:21:26.295Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"description":"Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores tokens locally - always fetches fresh tokens from Scalekit. Skill: Scalekit-Agent-Auth Owner: Avinash-Kamath Summary: Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores tokens locally - always fetches fresh tokens from Scalekit. Tags: latest:1.0.0 Version history: v1.0.0 | 2026-02-06T08:16:11.709Z | user - Initial release of scalekit-auth skill for secure OAuth token man","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 853 downloads reported by the source. Last updated 4/15/2026.","installCommand":"clawhub skill install kn75vt34z0fg7mvxmkxvswjcp580n8qm:scalekit-agent-auth","sourceUrl":"https://clawhub.ai/Avinash-Kamath/scalekit-agent-auth","homepage":"https://clawhub.ai/Avinash-Kamath/scalekit-agent-auth","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/Avinash-Kamath/scalekit-agent-auth","kind":"source"}],"safetyScore":84,"overallRank":62,"popularityScore":59,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores to"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"stars":null,"forks":null,"downloads":853,"packageName":null,"latestVersion":"1.0.0","tractionLabel":"853 downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-03-01T02:00:00.770Z","emptyReason":null},"lastUpdatedAt":"2026-04-15T00:45:39.800Z","lastCrawledAt":"2026-03-01T02:00:00.770Z","lastIndexedAt":null,"nextCrawlAt":"2026-03-02T02:00:00.770Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.0","createdAt":"2026-02-06T08:16:11.709Z","changelog":"- Initial release of scalekit-auth skill for secure OAuth token management via Scalekit. - Centralizes OAuth token storage, refresh, and retrieval for services like Gmail, Slack, GitHub, and more. - No local token storage; tokens are always fetched from Scalekit. - Includes setup instructions, multi-service support, and both Python and CLI usage examples. - Provides error handling and security best practices for managing credentials and tokens.","fileCount":7,"zipByteSize":8201}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install kn75vt34z0fg7mvxmkxvswjcp580n8qm:scalekit-agent-auth","setupComplexity":"medium","setupSteps":["Python environment detected. Create a strict virtual environment (`python -m venv .venv`) before installing dependencies to prevent system-level package conflicts.","Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-09T18:21:26.295Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-avinash-kamath-scalekit-agent-auth/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"readme":"Skill: Scalekit-Agent-Auth\n\nOwner: Avinash-Kamath\n\nSummary: Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores tokens locally - always fetches fresh tokens from Scalekit.\n\nTags: latest:1.0.0\n\nVersion history:\n\nv1.0.0 | 2026-02-06T08:16:11.709Z | user\n\n- Initial release of scalekit-auth skill for secure OAuth token management via Scalekit.\n- Centralizes OAuth token storage, refresh, and retrieval for services like Gmail, Slack, GitHub, and more.\n- No local token storage; tokens are always fetched from Scalekit.\n- Includes setup instructions, multi-service support, and both Python and CLI usage examples.\n- Provides error handling and security best practices for managing credentials and tokens.\n\nArchive index:\n\nArchive v1.0.0: 7 files, 8201 bytes\n\nFiles: agent_wrapper.py (1774b), get_token.py (868b), README.md (2088b), requirements.txt (43b), scalekit_helper.py (7050b), SKILL.md (7034b), _meta.json (138b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: scalekit-auth\ndescription: Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores tokens locally - always fetches fresh tokens from Scalekit.\nhomepage: https://scalekit.com\nmetadata:\n  openclaw:\n    requires:\n      bins: [\"python3\"]\n    install:\n      - id: python-deps\n        kind: exec\n        command: \"pip3 install scalekit-sdk-python python-dotenv requests\"\n        label: \"Install Python dependencies\"\n---\n\n# Scalekit Auth - Secure Token Management\n\nCentralized OAuth token management for AI agents. No local token storage, automatic refresh, multi-service support.\n\n## Why Use This?\n\n**Problem:** OAuth tokens scattered across config files, no refresh logic, security risks.\n\n**Solution:** Scalekit handles all token lifecycle:\n- ✅ Secure cloud storage (never stored locally)\n- ✅ Automatic token refresh\n- ✅ Multi-service support (Gmail, Slack, Notion, GitHub, etc.)\n- ✅ Always returns fresh, valid tokens\n\n## Installation\n\n### 1. Install Skill\n\n```bash\nclawhub install scalekit-auth\ncd skills/scalekit-auth\npip3 install -r requirements.txt\n```\n\n### 2. Get Scalekit Credentials\n\n1. Sign up at [scalekit.com](https://scalekit.com)\n2. Go to Dashboard → Developers → Settings → API Credentials\n3. Copy:\n   - Client ID\n   - Client Secret\n   - Environment URL\n\n### 3. Configure Credentials\n\nCreate `skills/scalekit-auth/.env`:\n\n```bash\nSCALEKIT_CLIENT_ID=your_client_id_here\nSCALEKIT_CLIENT_SECRET=your_client_secret_here\nSCALEKIT_ENV_URL=https://your-env.scalekit.com\n```\n\n**Or** let the agent ask you on first use.\n\n## Setting Up a Service (e.g., Gmail)\n\n### Step 1: Create Connection in Scalekit Dashboard\n\n1. Go to Scalekit Dashboard → Connections → Add Connection\n2. Select provider (e.g., Gmail/Google)\n3. Configure OAuth:\n   - Get Client ID/Secret from Google Cloud Console\n   - Set Redirect URI (provided by Scalekit)\n4. **Copy the `connection_name`** (e.g., `gmail_u3134a`)\n\n### Step 2: Register with Agent\n\nTell the agent:\n```\n\"Configure Gmail for Scalekit. Connection name is gmail_u3134a\"\n```\n\nAgent stores it in `connections.json`:\n```json\n{\n  \"gmail\": {\n    \"connection_name\": \"gmail_u3134a\",\n    \"identifier\": \"mess\"\n  }\n}\n```\n\n### Step 3: Authorize\n\nFirst API call will prompt:\n```\nAuthorization needed for Gmail.\nLink: https://scalekit.com/auth/... (expires in 1 minute!)\n```\n\nClick link → authorize → done!\n\n## Usage\n\n### From Agent Skills\n\n```python\n#!/usr/bin/env python3\nimport sys\nsys.path.append('./skills/scalekit-auth')\nfrom scalekit_helper import get_token\n\n# Get fresh token for any service\naccess_token = get_token(\"gmail\")\n\n# Use it immediately\nheaders = {\"Authorization\": f\"Bearer {access_token}\"}\nresponse = requests.get(\"https://gmail.googleapis.com/gmail/v1/users/me/messages\", headers=headers)\n```\n\n### From Shell Scripts\n\n```bash\n# Get token via CLI wrapper\nTOKEN=$(python3 skills/scalekit-auth/get_token.py gmail)\n\n# Use in API call\ncurl -H \"Authorization: Bearer $TOKEN\" \\\n  https://gmail.googleapis.com/gmail/v1/users/me/messages\n```\n\n## Configuration Files\n\n### connections.json\nMaps service names to Scalekit connection names:\n\n```json\n{\n  \"gmail\": {\n    \"connection_name\": \"gmail_u3134a\",\n    \"identifier\": \"mess\"\n  },\n  \"slack\": {\n    \"connection_name\": \"slack_x7y9z\",\n    \"identifier\": \"mess\"\n  }\n}\n```\n\n**Note:** `identifier` is auto-set to agent's name (from IDENTITY.md).\n\n### .env\nScalekit API credentials (never commit to git!):\n\n```bash\nSCALEKIT_CLIENT_ID=sk_live_...\nSCALEKIT_CLIENT_SECRET=...\nSCALEKIT_ENV_URL=https://...\n```\n\n## Supported Services\n\nAny OAuth provider Scalekit supports:\n- Gmail, Google Calendar, Google Drive\n- Slack, Notion, Linear, GitHub\n- Salesforce, HubSpot, Zendesk\n- 50+ more\n\nCheck [Scalekit Connectors](https://docs.scalekit.com/connectors) for full list.\n\n## Authorization Flow\n\n```\n1. Agent calls get_token(\"gmail\")\n2. Check if connection configured → if NO, ask user\n3. Check if authorized (status == ACTIVE)\n4. If NOT authorized:\n   - Generate auth link (expires 1 min)\n   - Send to user via Telegram/chat\n   - Wait for authorization\n5. Return fresh access_token\n6. Scalekit auto-refreshes in background\n```\n\n## Error Handling\n\n**Connection not configured:**\n```\nError: gmail not configured. Please:\n1. Create connection in Scalekit dashboard\n2. Provide connection_name\n```\n\n**Authorization expired:**\n```\nAuthorization needed: [link]\n(Link expires in 1 minute - click now!)\n```\n\n**Scalekit credentials missing:**\n```\nScalekit not configured. Please provide:\n- SCALEKIT_CLIENT_ID\n- SCALEKIT_CLIENT_SECRET\n- SCALEKIT_ENV_URL\n```\n\n## Security Best Practices\n\n1. **Never log tokens** - use `[REDACTED]` in logs\n2. **Add .env to .gitignore** - never commit credentials\n3. **Rotate credentials** if exposed\n4. **Use separate Scalekit accounts** for dev/prod\n5. **Auth links expire in 1 min** - act fast!\n\n## Troubleshooting\n\n**\"Module not found\" error:**\n```bash\ncd skills/scalekit-auth\npip3 install -r requirements.txt\n```\n\n**Token returns 401:**\n- Authorization may have expired\n- Agent will prompt for re-authorization\n\n**Connection not found:**\n- Check `connections.json` exists\n- Verify connection_name from Scalekit dashboard\n\n## Example: Gmail Integration\n\n```python\n# In your skill's script\nfrom scalekit_helper import get_token\nimport requests\n\ndef fetch_unread_emails():\n    token = get_token(\"gmail\")\n    \n    headers = {\"Authorization\": f\"Bearer {token}\"}\n    url = \"https://gmail.googleapis.com/gmail/v1/users/me/messages\"\n    params = {\"q\": \"is:unread\", \"maxResults\": 5}\n    \n    response = requests.get(url, headers=headers, params=params)\n    return response.json()\n```\n\n## Publishing Skills with Scalekit Auth\n\nIf your skill uses scalekit-auth:\n\n1. **Document in SKILL.md:**\n   ```markdown\n   ## Prerequisites\n   - Install scalekit-auth skill\n   - Configure [SERVICE] connection in Scalekit\n   ```\n\n2. **Import in scripts:**\n   ```python\n   sys.path.append('./skills/scalekit-auth')\n   from scalekit_helper import get_token\n   ```\n\n3. **Handle errors gracefully** - guide users to configure connections\n\n## API Reference\n\n### get_token(service_name: str) → str\n\nReturns fresh OAuth access token for the service.\n\n**Parameters:**\n- `service_name`: Service identifier (e.g., \"gmail\", \"slack\")\n\n**Returns:**\n- `access_token`: Fresh OAuth bearer token\n\n**Raises:**\n- `ConfigurationError`: Service not configured or Scalekit creds missing\n- `AuthorizationError`: User needs to authorize (sends link to user)\n\n**Example:**\n```python\ntoken = get_token(\"gmail\")\nprint(f\"Token: {token[:10]}...\")  # Never log full token!\n```\n\n## Roadmap\n\n- [ ] Multi-user support (multiple identifiers per service)\n- [ ] Token caching (reduce API calls)\n- [ ] CLI tool (`scalekit-auth config gmail gmail_u3134a`)\n- [ ] Auto-detect service from API URL\n- [ ] Batch token retrieval\n\n## Contributing\n\nFound a bug? Have a feature request? Open an issue on ClawHub!\n\n---\n\n**Remember:** Tokens are secrets. Handle with care. 🔐\n\nFile v1.0.0:README.md\n\n# Scalekit Auth - Secure OAuth Token Management\n\n[![ClawHub](https://img.shields.io/badge/ClawHub-scalekit--auth-blue)](https://clawhub.com)\n[![Python](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)\n\nCentralized OAuth token management for AI agents via [Scalekit](https://scalekit.com). Never store tokens locally again.\n\n## Features\n\n- ✅ **Secure token storage** - No local token files\n- ✅ **Automatic refresh** - Always get fresh, valid tokens\n- ✅ **Multi-service support** - Gmail, Slack, GitHub, 50+ more\n- ✅ **Simple API** - One function call: `get_token(service)`\n- ✅ **Public skill** - Easy to share and reuse\n\n## Quick Start\n\n```bash\n# Install\nclawhub install scalekit-auth\ncd skills/scalekit-auth\npip3 install -r requirements.txt\n\n# Configure credentials in .env\necho \"SCALEKIT_CLIENT_ID=your_id\" > .env\necho \"SCALEKIT_CLIENT_SECRET=your_secret\" >> .env\necho \"SCALEKIT_ENV_URL=https://your-env.scalekit.com\" >> .env\n\n# Set up a service (e.g., Gmail)\npython3 -c \"from scalekit_helper import configure_connection; configure_connection('gmail', 'gmail_u3134a')\"\n\n# Get token\npython3 get_token.py gmail\n```\n\n## Usage in Your Skill\n\n```python\n#!/usr/bin/env python3\nimport sys\nsys.path.append('./skills/scalekit-auth')\nfrom scalekit_helper import get_token\n\n# Get fresh token\ntoken = get_token(\"gmail\")\n\n# Use immediately\nimport requests\nheaders = {\"Authorization\": f\"Bearer {token}\"}\nresponse = requests.get(\"https://gmail.googleapis.com/gmail/v1/users/me/messages\", headers=headers)\n```\n\n## Documentation\n\nSee [SKILL.md](SKILL.md) for complete documentation.\n\n## Setup Workflow\n\n1. **Install skill** via ClawHub\n2. **Get Scalekit credentials** from [app.scalekit.com](https://app.scalekit.com)\n3. **Create connections** in Scalekit dashboard for each service\n4. **Configure** via agent or CLI\n5. **Authorize** when prompted (1-min expiry!)\n6. **Use tokens** seamlessly\n\n## License\n\nMIT\n\n## Links\n\n- [Scalekit Docs](https://docs.scalekit.com/agent-auth/quickstart/)\n- [ClawHub](https://clawhub.com)\n- [OpenClaw](https://openclaw.ai)\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn75vt34z0fg7mvxmkxvswjcp580n8qm\",\n  \"slug\": \"scalekit-agent-auth\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1770365771709\n}\n\nFile v1.0.0:requirements.txt\n\nscalekit-sdk-python\npython-dotenv\nrequests","readmeExcerpt":"Skill: Scalekit-Agent-Auth Owner: Avinash-Kamath Summary: Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores tokens locally - always fetches fresh tokens from Scalekit. Tags: latest:1.0.0 Version history: v1.0.0 | 2026-02-06T08:16:11.709Z | user - Initial release of scalekit-auth skill for secure OAuth token man","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"clawhub install scalekit-auth\ncd skills/scalekit-auth\npip3 install -r requirements.txt"},{"language":"bash","snippet":"SCALEKIT_CLIENT_ID=your_client_id_here\nSCALEKIT_CLIENT_SECRET=your_client_secret_here\nSCALEKIT_ENV_URL=https://your-env.scalekit.com"},{"language":"text","snippet":"\"Configure Gmail for Scalekit. Connection name is gmail_u3134a\""},{"language":"json","snippet":"{\n  \"gmail\": {\n    \"connection_name\": \"gmail_u3134a\",\n    \"identifier\": \"mess\"\n  }\n}"},{"language":"text","snippet":"Authorization needed for Gmail.\nLink: https://scalekit.com/auth/... (expires in 1 minute!)"},{"language":"python","snippet":"#!/usr/bin/env python3\nimport sys\nsys.path.append('./skills/scalekit-auth')\nfrom scalekit_helper import get_token\n\n# Get fresh token for any service\naccess_token = get_token(\"gmail\")\n\n# Use it immediately\nheaders = {\"Authorization\": f\"Bearer {access_token}\"}\nresponse = requests.get(\"https://gmail.googleapis.com/gmail/v1/users/me/messages\", headers=headers)"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: scalekit-auth\ndescription: Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores tokens locally - always fetches fresh tokens from Scalekit.\nhomepage: https://scalekit.com\nmetadata:\n  openclaw:\n    requires:\n      bins: [\"python3\"]\n    install:\n      - id: python-deps\n        kind: exec\n        command: \"pip3 install scalekit-sdk-python python-dotenv requests\"\n        label: \"Install Python dependencies\"\n---\n\n# Scalekit Auth - Secure Token Management\n\nCentralized OAuth token management for AI agents. No local token storage, automatic refresh, multi-service support.\n\n## Why Use This?\n\n**Problem:** OAuth tokens scattered across config files, no refresh logic, security risks.\n\n**Solution:** Scalekit handles all token lifecycle:\n- ✅ Secure cloud storage (never stored locally)\n- ✅ Automatic token refresh\n- ✅ Multi-service support (Gmail, Slack, Notion, GitHub, etc.)\n- ✅ Always returns fresh, valid tokens\n\n## Installation\n\n### 1. Install Skill\n\n```bash\nclawhub install scalekit-auth\ncd skills/scalekit-auth\npip3 install -r requirements.txt\n```\n\n### 2. Get Scalekit Credentials\n\n1. Sign up at [scalekit.com](https://scalekit.com)\n2. Go to Dashboard → Developers → Settings → API Credentials\n3. Copy:\n   - Client ID\n   - Client Secret\n   - Environment URL\n\n### 3. Configure Credentials\n\nCreate `skills/scalekit-auth/.env`:\n\n```bash\nSCALEKIT_CLIENT_ID=your_client_id_here\nSCALEKIT_CLIENT_SECRET=your_client_secret_here\nSCALEKIT_ENV_URL=https://your-env.scalekit.com\n```\n\n**Or** let the agent ask you on first use.\n\n## Setting Up a Service (e.g., Gmail)\n\n### Step 1: Create Connection in Scalekit Dashboard\n\n1. Go to Scalekit Dashboard → Connections → Add Connection\n2. Select provider (e.g., Gmail/Google)\n3. Configure OAuth:\n   - Get Client ID/Secret from Google Cloud Console\n   - Set Redirect URI (provided by Scalekit)\n4. **Copy the `connection_name`** (e.g., `gmail_u3134a`)\n\n### Step 2: Register with Agent\n\nTell the agent:\n```\n\"Configure Gmail for Scalekit. Connection name is gmail_u3134a\"\n```\n\nAgent stores it in `connections.json`:\n```json\n{\n  \"gmail\": {\n    \"connection_name\": \"gmail_u3134a\",\n    \"identifier\": \"mess\"\n  }\n}\n```\n\n### Step 3: Authorize\n\nFirst API call will prompt:\n```\nAuthorization needed for Gmail.\nLink: https://scalekit.com/auth/... (expires in 1 minute!)\n```\n\nClick link → authorize → done!\n\n## Usage\n\n### From Agent Skills\n\n```python\n#!/usr/bin/env python3\nimport sys\nsys.path.append('./skills/scalekit-auth')\nfrom scalekit_helper import get_token\n\n# Get fresh token for any service\naccess_token = get_token(\"gmail\")\n\n# Use it immediately\nheaders = {\"Authorization\": f\"Bearer {access_token}\"}\nresponse = requests.get(\"https://gmail.googleapis.com/gmail/v1/users/me/messages\", headers=headers)\n```\n\n### From Shell Scripts\n\n```bash\n# Get token via CLI wrapper\nTOKEN=$(python3 skills/scalekit-auth/get_token.py gmail)\n\n# Use in API call\ncurl -H \"Author"},{"path":"README.md","content":"# Scalekit Auth - Secure OAuth Token Management\n\n[![ClawHub](https://img.shields.io/badge/ClawHub-scalekit--auth-blue)](https://clawhub.com)\n[![Python](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)\n\nCentralized OAuth token management for AI agents via [Scalekit](https://scalekit.com). Never store tokens locally again.\n\n## Features\n\n- ✅ **Secure token storage** - No local token files\n- ✅ **Automatic refresh** - Always get fresh, valid tokens\n- ✅ **Multi-service support** - Gmail, Slack, GitHub, 50+ more\n- ✅ **Simple API** - One function call: `get_token(service)`\n- ✅ **Public skill** - Easy to share and reuse\n\n## Quick Start\n\n```bash\n# Install\nclawhub install scalekit-auth\ncd skills/scalekit-auth\npip3 install -r requirements.txt\n\n# Configure credentials in .env\necho \"SCALEKIT_CLIENT_ID=your_id\" > .env\necho \"SCALEKIT_CLIENT_SECRET=your_secret\" >> .env\necho \"SCALEKIT_ENV_URL=https://your-env.scalekit.com\" >> .env\n\n# Set up a service (e.g., Gmail)\npython3 -c \"from scalekit_helper import configure_connection; configure_connection('gmail', 'gmail_u3134a')\"\n\n# Get token\npython3 get_token.py gmail\n```\n\n## Usage in Your Skill\n\n```python\n#!/usr/bin/env python3\nimport sys\nsys.path.append('./skills/scalekit-auth')\nfrom scalekit_helper import get_token\n\n# Get fresh token\ntoken = get_token(\"gmail\")\n\n# Use immediately\nimport requests\nheaders = {\"Authorization\": f\"Bearer {token}\"}\nresponse = requests.get(\"https://gmail.googleapis.com/gmail/v1/users/me/messages\", headers=headers)\n```\n\n## Documentation\n\nSee [SKILL.md](SKILL.md) for complete documentation.\n\n## Setup Workflow\n\n1. **Install skill** via ClawHub\n2. **Get Scalekit credentials** from [app.scalekit.com](https://app.scalekit.com)\n3. **Create connections** in Scalekit dashboard for each service\n4. **Configure** via agent or CLI\n5. **Authorize** when prompted (1-min expiry!)\n6. **Use tokens** seamlessly\n\n## License\n\nMIT\n\n## Links\n\n- [Scalekit Docs](https://docs.scalekit.com/agent-auth/quickstart/)\n- [ClawHub](https://clawhub.com)\n- [OpenClaw](https://openclaw.ai)"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn75vt34z0fg7mvxmkxvswjcp580n8qm\",\n  \"slug\": \"scalekit-agent-auth\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1770365771709\n}"},{"path":"requirements.txt","content":"scalekit-sdk-python\npython-dotenv\nrequests"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores tokens locally - always fetches fresh tokens from Scalekit. Skill: Scalekit-Agent-Auth Owner: Avinash-Kamath Summary: Secure OAuth token management via Scalekit. Handles token storage, refresh, and retrieval for third-party services (Gmail, Slack, GitHub, etc.). Never stores tokens locally - always fetches fresh tokens from Scalekit. Tags: latest:1.0.0 Version history: v1.0.0 | 2026-02-06T08:16:11.709Z | user - Initial release of scalekit-auth skill for secure OAuth token man","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":913,"uniquenessScore":50,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T18:21:26.295Z","emptyReason":null},"items":[{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-10T18:48:31.762Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}