用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/cyberuni/cyber-asana --skill init-asana命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | init-asana |
| description | Use this skill when setting up cyber-asana — PAT, workspace GID, connection verify, optional registry. |
When the user is setting up cyber-asana for the first time, or when commands fail with auth or workspace errors.
Before running any cyber-asana command:
npm view cyber-asana version. Use this value as <exact> for every npx cyber-asana@<exact> in this skill and all other cyber-asana skills (never @latest, never a literal placeholder).npx cyber-asana@<exact> --version (or cyber-asana --version if globally installed).If it fails (npx install prompt, command not found, or other non-zero exit):
cyber-asana from npm (no package.json change).npx --yes cyber-asana@<exact> --versionnpx cyber-asana@<exact> <subcommand> (no --yes) or cyber-asana if globally installed.cyber-asana as a devDependency instead. Note drawbacks: it modifies package.json and may need ignoring in unused-dependency tools (e.g. knip). If they decline both, skip CLI steps.echo "Token set: ${ASANA_ACCESS_TOKEN:+yes}${ASANA_TOKEN:+ (deprecated ASANA_TOKEN set)}"
echo "Workspace set: ${ASANA_WORKSPACE_GID:+yes}${ASANA_WORKSPACE:+ (deprecated ASANA_WORKSPACE set)}"
If not set, guide the user:
export ASANA_ACCESS_TOKEN=... in the file their shell loads on login)ASANA_TOKEN, tell them it still works as a deprecated fallback but new setup should use ASANA_ACCESS_TOKENOr pass per-command with --token <pat>.
Ensure the CLI is available first (see Ensure cyber-asana CLI), then run:
cyber-asana workspace list --toon
# or, if using npx without global install:
npx cyber-asana@<exact> workspace list --toon
If it fails, the token is invalid or not set. Fix credentials and retry.
Read the { gid, name } rows from the output (--toon is the token-efficient format; use --json for raw JSON). Ask the user which workspace to use.
Add to the user's shell profile:
export ASANA_WORKSPACE_GID=<workspace-gid>
This avoids passing --workspace on every command. Keep workspace GID in env — not in committed repo config (.agents/cyber-asana.json stores projects only).
cyber-asana --version
# or, if using npx without global install:
npx cyber-asana@<exact> --version
A successful version print confirms the CLI runs with credentials loaded. If workspace-scoped commands still fail, recheck ASANA_WORKSPACE_GID from step 4.
For repos that work against a fixed set of Asana projects, use the pin-asana-projects skill. It searches projects by keyword with project search, confirms selections with the user, and pins them in .agents/cyber-asana.json via config add.
For AI agents, prefer connecting the cyber-asana MCP server as an ambient,
always-available session integration first — then reach for the on-demand
skills (standup, sprint report, sync, etc.) as needed. Add the cyber-asana MCP
server to your host (see readme — MCP Server)
and set CYBER_ASANA_MCP_FORMAT=toon in its env for token-efficient output.
Both servers can run together with separate config keys and credentials:
asana; an MCP app registration, whose ASANA_CLIENT_ID and ASANA_CLIENT_SECRET belong in the host config's auth block (not ASANA_ACCESS_TOKEN).cyber-asana; PAT via ASANA_ACCESS_TOKEN and workspace via ASANA_WORKSPACE_GID (steps 2–4 above). For OAuth instead of a PAT, it needs its own API app via ASANA_API_CLIENT_ID / ASANA_API_CLIENT_SECRET — an MCP app's credentials will not work.See reference.md for dual-config JSON examples and routing guidance.