Asana OpenClaw Plugin & Skill | ClawHub
Looking to integrate Asana 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
Manage Asana via the Asana REST API. Use when you need to list workspaces, projects, tasks, search tasks, comment, update, complete, or create tasks.
Install
npx clawhub@latest install asanaFull SKILL.md
Open original| name | description |
|---|---|
| asana | Manage Asana via the Asana REST API. Use when you need to list workspaces, projects, tasks, search tasks, comment, update, complete, or create tasks. |
SKILL.md content below is scrollable.
Asana
This skill provides a lightweight Asana CLI for OpenClaw.
Auth
Recommended auth is PAT-first.
Priority order:
--tokenorASANA_PAT~/.openclaw/asana/config.jsonwith{ "pat": "..." }- OAuth token at
~/.openclaw/asana/token.json
OAuth remains supported for advanced use, but PAT is the preferred local/operator setup.
Setup
PAT mode (recommended)
node scripts/configure.mjs --mode pat --pat "$ASANA_PAT"
Or set ASANA_PAT in OpenClaw skill config.
OAuth mode (optional)
node scripts/configure.mjs --mode oauth --client-id "$ASANA_CLIENT_ID" --client-secret "$ASANA_CLIENT_SECRET"
node scripts/oauth_oob.mjs authorize --client-id "$ASANA_CLIENT_ID"
node scripts/oauth_oob.mjs token --client-id "$ASANA_CLIENT_ID" --client-secret "$ASANA_CLIENT_SECRET" --code "..."
Storage
This skill stores local state under:
~/.openclaw/asana/config.json~/.openclaw/asana/token.json
Commands
Core CLI:
node scripts/asana_api.mjs me
node scripts/asana_api.mjs list-workspaces
node scripts/asana_api.mjs set-default-workspace --workspace <gid>
node scripts/asana_api.mjs projects --workspace <gid>
node scripts/asana_api.mjs tasks-in-project --project <gid>
node scripts/asana_api.mjs tasks-assigned --workspace <gid> --assignee me
node scripts/asana_api.mjs search-tasks --workspace <gid> --text "quote"
node scripts/asana_api.mjs task <task_gid>
node scripts/asana_api.mjs update-task <task_gid> --name "New name"
node scripts/asana_api.mjs complete-task <task_gid>
node scripts/asana_api.mjs comment <task_gid> --text "Done"
node scripts/asana_api.mjs create-task --workspace <gid> --name "New task"
PAT helpers:
node scripts/asana_api.mjs set-pat <asana_pat>
node scripts/asana_api.mjs clear-pat
OpenClaw config
Recommended skill config:
{
"skills": {
"entries": {
"asana": {
"enabled": true,
"env": {
"ASANA_PAT": "<your-pat>"
}
}
}
}
}
For local/private use, PAT is the best default. Use OAuth only when you specifically need that flow.