360 Secure SkillHub
360 安全技能中心

Asana

提供 Node CLI 脚本,经 Asana REST API 管理任务:查看当前用户、列出工作区/项目/任务、搜索任务、更新、完成、评论、创建任务及设置默认工作区;优先使用 ASANA_PAT,也支持 OAuth;本地配置与令牌存于 ~/.openclaw/asana/。

k0nkupa
k0nkupa
热度 73.89
最近更新 2026-05-11 15:50:52
分类:协作依赖:代码执行 / 第三方 API / 读写文件应用场景:任务管理 / API 集成 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add asana
Metadata
name
asana
description
Manage Asana via the Asana REST API. Use when you need to list workspaces, projects, tasks, search tasks, comment, update, complete, or create tasks.
metadata
{"openclaw":{"homepage":"https://developers.asana.com/docs","primaryEnv":"ASANA_PAT","requires":{"bins":["node"],"env":[]}}}

Asana

This skill provides a lightweight Asana CLI for OpenClaw.

Auth

Recommended auth is PAT-first.

Priority order:

  1. --token or ASANA_PAT
  2. ~/.openclaw/asana/config.json with { "pat": "..." }
  3. 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.