Jump to related tools in the same category or review the original source on GitHub.

Productivity & Tasks @nonlinear Updated 6/28/2026 382 downloads 0 stars Security: Pass

Token Management OpenClaw Plugin & Skill | ClawHub

Looking to integrate Token Management into your AI workflows? This free OpenClaw plugin from ClawHub helps you automate productivity & tasks tasks instantly, without having to write custom tools from scratch.

What this skill does

Centralized API token management workflow. Store tokens in .env with expiration dates, test permissions via script battery, document capabilities in connections/, set calendar renewal reminders. Prevents re-asking for credentials, ensures token security, tracks expiration.

Install

ClawHub CLI
openclaw skills install @nonlinear/token-management
Node.js (npx)
npx clawhub@latest install token-management

Full SKILL.md

Open original
Metadata table.
nameversiondescriptionlicense
token-management1.0.1Centralized API token management workflow. Store tokens in .env with expiration dates, test permissions via script battery, document capabilities in connections/, set calendar renewal reminders. Prevents re-asking for credentials, ensures token security, tracks expiration.MIT

SKILL.md content below is scrollable.

Token Management

Published: https://clawhub.com/skills/token-management

Purpose: Centralize API token management - storage, testing, documentation, expiration tracking.

Triggers:

  • "adiciona token X"
  • "salva API key pra Y"
  • "preciso de token Z"

πŸ”΄ CRITICAL RULE

ALWAYS check ~/Documents/life/.env FIRST before asking for tokens!


Workflow

When receiving a new token:

  1. Git commit (if applicable)

    • If .env is in a git repo: cd ~/Documents/life && git add -A && git commit -m "Before updating TOKEN_NAME"
    • Safety first!
  2. Ask for expiration date

    • "Quando esse token expira?"
    • Format: YYYY-MM-DD or "1 year" / "never"
  3. Store in .env

    • Location: ~/Documents/life/.env (canonical location)
    • Format: SERVICE_NAME_TOKEN=value # Expires: YYYY-MM-DD
    • Example: WILEY_JIRA_TOKEN=abc123 # Expires: 2027-02-12
  4. Create calendar reminder (if expires)

    • When: 7 days before expiration (1 week warning)
    • Event: "⚠️ Renew [SERVICE] API token (expires in 7 days)"
    • Format: All-day event
    • Command:
      gog calendar create primary \
        --summary "⚠️ Renew SERVICE token" \
        --from "YYYY-MM-DDT00:00:00-05:00" \
        --to "YYYY-MM-DDT23:59:59-05:00" \
        --description "Token expires YYYY-MM-DD. Renew at: [RENEWAL_URL]"
      
  5. Test token permissions

    • Run test battery to discover what token can do
    • Script: Use template below (adapt per service)
    • Document results in connections/ file
    • Example:
      # Test Jira token
      import requests, base64
      
      TOKEN = "..."
      EMAIL = "[email protected]"
      auth = base64.b64encode(f"{EMAIL}:{TOKEN}".encode()).decode()
      
      tests = [
          ("Get user", "GET", "/rest/api/3/myself"),
          ("List projects", "GET", "/rest/api/3/project"),
          ("Search issues", "GET", "/rest/api/3/search", {"jql": "assignee=currentUser()"}),
      ]
      
      for name, method, endpoint, *params in tests:
          r = requests.get(f"https://DOMAIN{endpoint}", 
                          headers={'Authorization': f'Basic {auth}'},
                          params=params[0] if params else None)
          print(f"{'βœ…' if r.ok else '❌'} {name}: {r.status_code}")
      
  6. Document in connections/

    • Create or update ~/Documents/life/connections/SERVICE.md
    • Include:
      • What token offers (read/write/scope)
      • When obtained: YYYY-MM-DD
      • Expiry date: YYYY-MM-DD
      • Renewal link: URL to get new token
      • How to use (code examples)
    • Link to .env variable name
    • Example:
      ## Token Info
      - **Obtained:** 2026-02-12
      - **Expires:** 2027-02-12
      - **Renew at:** https://id.atlassian.com/manage-profile/security/api-tokens
      - **Scope:** read-write
      - **Variable:** `WILEY_JIRA_TOKEN` (~/Documents/life/.env)
      
  7. Update token index

    • Maintain list in this SKILL.md (see below)

When needing API access:

  1. βœ… ALWAYS check .env first: ~/Documents/life/.env
  2. If not found: Check connections/ for setup instructions
  3. If still missing: Ask Nicholas for token

Token Index

Location: ~/Documents/life/.env

Example tokens:

Service Variable Scope Expires Connection Doc
Figma FIGMA_TOKEN read-write YYYY-MM-DD figma.md
Jira JIRA_TOKEN read-write YYYY-MM-DD jira.md
Slack SLACK_TOKEN bot permissions Never slack.md
GitHub GITHUB_TOKEN repo, gist YYYY-MM-DD github.md

Your index: Keep your own list in this section (local copy of skill).


Commands

Add token

# Append to .env (skill will automate)
echo "SERVICE_TOKEN=value" >> ~/Documents/life/.env

Check token exists

grep SERVICE_TOKEN ~/Documents/life/.env

List all tokens

cat ~/Documents/life/.env

.env Location

Canonical location: ~/Documents/life/.env

Why here:

  • βœ… Life infrastructure (shareable, public)
  • βœ… Survives workspace wipes
  • βœ… Consistent with connections/ folder
  • βœ… Not tied to OpenClaw workspace

Python usage:

from dotenv import load_dotenv
load_dotenv('~/Documents/life/.env')  # Or absolute path

Shell usage:

source ~/Documents/life/.env
echo $YOUR_TOKEN_NAME

Created: 2026-02-12
Updated: 2026-02-13 (sanitized for publication)

ClawHub Registry URL: https://clawhub.ai/nonlinear/skills/token-management

Related skills

If this matches your use case, these are close alternatives in the same category.