← All skills
asana
94 / 100 · Low risk
Fine to try. Some of what it can do is expected: a coding skill usually runs build and test commands.
By LeoYeAI/agent-master-skills (GitHub) · coding · 2,186 stars · scanned at commit 8f88f9a
Asana API integration with managed OAuth. Access tasks, projects, workspaces, users, and manage webhooks. Use this skill when users want to manage work items, track projects, or integrate with Asana workflows. For other third party apps, use the api-gateway skill (https://clawhub.ai/byungkyu/api-gateway).
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
This is disclosed by the author in the skill's SKILL.md or README. Expected for a coding skill.
Found in 49 places.
Show 17 more
- skills/asana-api/SKILL.md, line 77
python <<'EOF' - skills/asana-api/SKILL.md, line 90
python <<'EOF' - skills/asana-api/SKILL.md, line 118
python <<'EOF' - skills/asana-api/SKILL.md, line 131
python <<'EOF' - skills/asana-api/SKILL.md, line 149
GET /asana/api/1.0/tasks - skills/asana-api/SKILL.md, line 162
python <<'EOF' - skills/asana-api/SKILL.md, line 187
GET /asana/api/1.0/tasks/{task_gid} - skills/asana-api/SKILL.md, line 193
python <<'EOF' - skills/asana-api/SKILL.md, line 204
POST /asana/api/1.0/tasks - skills/asana-api/SKILL.md, line 221
python <<'EOF' - skills/asana-api/SKILL.md, line 234
PUT /asana/api/1.0/tasks/{task_gid} - skills/asana-api/SKILL.md, line 240
python <<'EOF' - skills/asana-api/SKILL.md, line 253
DELETE /asana/api/1.0/tasks/{task_gid} - skills/asana-api/SKILL.md, line 259
GET /asana/api/1.0/projects/{project_gid}/tasks - skills/asana-api/SKILL.md, line 265
GET /asana/api/1.0/tasks/{task_gid}/subtasks - skills/asana-api/SKILL.md, line 271
POST /asana/api/1.0/tasks/{task_gid}/subtasks - skills/asana-api/SKILL.md, line 288
GET /asana/api/1.0/workspaces/{workspace_gid}/tasks/search
and 29 more places
Sends data to these websites: gateway.maton.ai, ctrl.maton.ai
This is disclosed by the author in the skill's SKILL.md or README.
Found in 57 places.
Show 17 more
- skills/asana-api/SKILL.md, line 67
import urllib.request, os, json - skills/asana-api/SKILL.md, line 68
req = urllib.request.Request('https://ctrl.maton.ai/connections?app=asana&status=ACTIVE') - skills/asana-api/SKILL.md, line 70
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) - skills/asana-api/SKILL.md, line 78
import urllib.request, os, json - skills/asana-api/SKILL.md, line 80
req = urllib.request.Request('https://ctrl.maton.ai/connections', data=data, method='POST') - skills/asana-api/SKILL.md, line 83
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) - skills/asana-api/SKILL.md, line 91
import urllib.request, os, json - skills/asana-api/SKILL.md, line 92
req = urllib.request.Request('https://ctrl.maton.ai/connections/{connection_id}') - skills/asana-api/SKILL.md, line 94
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) - skills/asana-api/SKILL.md, line 119
import urllib.request, os, json - skills/asana-api/SKILL.md, line 120
req = urllib.request.Request('https://ctrl.maton.ai/connections/{connection_id}', method='DELETE') - skills/asana-api/SKILL.md, line 122
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) - skills/asana-api/SKILL.md, line 132
import urllib.request, os, json - skills/asana-api/SKILL.md, line 133
req = urllib.request.Request('https://gateway.maton.ai/asana/api/1.0/tasks?project=PROJECT_GID') - skills/asana-api/SKILL.md, line 136
print(json.dumps(json.load(urllib.request.urlopen(req)), indent=2)) - skills/asana-api/SKILL.md, line 163
import urllib.request, os, json - skills/asana-api/SKILL.md, line 164
req = urllib.request.Request('https://gateway.maton.ai/asana/api/1.0/tasks?project=1234567890&opt_fields=name,completed,due_on')
and 37 more places
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'asana' ] || [ -L ~/.agents/skills/'asana' ]; then echo 'A skill folder named asana already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/LeoYeAI/agent-master-skills' "$d" && git -C "$d" checkout --quiet '8f88f9a0dd5a1075d4f0c7626f9d960844d57575' -- 'skills/asana-api' && mkdir -p ~/.agents/skills && cp -R "$d"/'skills/asana-api' ~/.agents/skills/'asana' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'asana' ~/.claude/skills/'asana' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for LeoYeAI/agent-master-skills shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/LeoYeAI/agent-master-skills/)
Score history
| Date | Version | Score |
|---|
| 2026-11-08 | 8f88f9a | 94 |
| 2026-11-07 | 8f88f9a | 84 |