asana

asana is a skill for Claude Code, Codex from withoneai/one-agent-plugin. It costs 0 tokens per session (5,637 once invoked), scanned A, a copy of 2-chat, MIT.

A connection that lets an agent read and change Asana work data, including tasks, projects, goals, portfolios, tags, and sections.

In plain words
What is it for?
Use it to organize projects, update tasks, manage goals, and track work in Asana.
Why use it?
It removes the need to switch between the coding agent and Asana for routine work-management updates.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/withoneai/one-agent-plugin/asana
Any agent
npx skills add withoneai/one-agent-plugin --skill asana
Clone the repo
git clone --depth 1 https://github.com/withoneai/one-agent-plugin

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for asana

README.md
[![agentmods](https://agentmods.dev/badge/skills/withoneai/one-agent-plugin/asana.svg)](https://agentmods.dev/skills/withoneai/one-agent-plugin/asana)
Your own site
<a href="https://agentmods.dev/skills/withoneai/one-agent-plugin/asana"><img src="https://agentmods.dev/badge/skills/withoneai/one-agent-plugin/asana.svg" alt="Measured on agentmods" height="20"></a>
Per session 0 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,637 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 80% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.05637
Opus 5 $0.00000 $0.02818
Sonnet 5 $0.00000 $0.01127
Haiku 4.5 $0.00000 $0.00564

Measured 4d ago against content hash 980f76290c11, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

asana scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

80% identical to 2-chat — 313 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

platforms/one-asana/skills/asana/SKILL.md · 200 lines

How it starts

The opening of the file, as written. The whole thing — 200 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Asana through One

Asana is a scalable work management platform that helps teams organize projects, set company-wide goals, automate workflows, and track progress in real time—all within a single, integrated workspace.

One exposes Asana through four MCP tools. The table below carries real action ids from One's knowledge base, so for a common operation you can skip search and go straight to reading the action's parameters.

How to run an action

  1. Find the action in the table below, or call search_one_platform_actions with platform asana if it is not listed.
  2. Call get_one_action_knowledge with the action id. Do this every time, including for actions in this table. The table gives you the id, not the parameters.
  3. Call execute_one_action with parameters copied from that knowledge.

Never guess a parameter name, a body field, or an enum value. The knowledge has the real schema, and a guessed field is either a 400 or a silent write of the wrong thing.

Before you start

Call list_one_integrations once and confirm Asana is connected. If it is missing, the user has not connected it: say so and point them at https://app.withone.ai rather than reaching for raw HTTP.

Each connection carries an access field. If it reports {"policy": "methods", "methods": ["GET"]} the agent is read-only here, so plan a read-only answer instead of attempting a write that will be refused.

Before a write

Creates, updates, deletes and sends land on a real Asana account and cannot be recalled. State the action and the specific target in one line before the first write in a task, and let the user stop you. Reads need no confirmation.

Actions

Tasks

Action Method Path Action id
Get a Task GET /tasks/{{taskGid}} conn_mod_def::GJ0Bj8Jm9nY::lSCoFwHZQRqoecS5VnEKqg
Get a Task’s Dependencies GET /tasks/{{taskGid}}/dependencies conn_mod_def::GJ0BkMvbOrs::ED60gVbcQVC0AWrNyDaJnw
Get a Task’s Subtasks GET /tasks/{{taskGid}}/subtasks conn_mod_def::GJ0BksZRxl0::xYJYqDjwQG6Xqct-V3_5ZQ
Get a Workspace Task by Custom ID GET /workspaces/{{workspaceGid}}/tasks/custom_id/{{customId}} conn_mod_def::GJ0BkDzQ42U::jHUkZ1gOQb23LQpec6Sywg
Get Multiple Tasks GET /tasks conn_mod_def::GJ0BkiBD6NE::VvBsHRfETZKCr5On77ZGuw
Get Tasks for a Tag GET /tags/{{tagGid}}/tasks conn_mod_def::GJ0BlOdq6Xk::ZimKB8opRwi3METk6lilxQ
List a Project’s Tasks GET /projects/{{projectGid}}/tasks conn_mod_def::GJ0Bk2jM_T0::FjnidkW2RUaBsB5eoIK9Sw
List a Task’s Dependents GET /tasks/{{taskGid}}/dependents conn_mod_def::GJ0BkYVKn_8::2ka0h_RkRnq0lgaTIbtyGg
List Tasks from a User Task List GET /user_task_lists/{{userTaskListGid}}/tasks conn_mod_def::GJ0BlYd3qEw::ZUbuJFurShGpO8S1YpZWiQ
List Tasks in a Section GET /sections/{{sectionGid}}/tasks conn_mod_def::GJ0BlEGAHhQ::DW8K4KmnTNqhHA_yDZGVsw
Search Tasks in a Workspace GET /workspaces/{{workspaceGid}}/tasks/search conn_mod_def::GJ0BmJsc69Q::2k2XfYayTCahfyAcdAYtYA
Add a Project to a Task POST /tasks/{{taskGid}}/addProject conn_mod_def::GJ0Bi1o6GZk::R8fHKPrpTnOl6Z7whAxLfA

Read the full file on GitHub · 200 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago First seen · 200 lines · 0 tokens per session scan A 980f76290c11

Subscribe to this mod's changes

asana is a skill published in the GitHub repository withoneai/one-agent-plugin (1 stars, last pushed 15d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 5,637 tokens. A static security scan graded it A with 0 findings. It is 80% identical to 2-chat, differing in 313 lines, and is treated as a copy.