How to Connect Your AI Agent to Asana (Full Setup Guide)
You do not need to understand APIs, tokens, or any technical terminology to do this. The entire process takes four steps, each under two minutes. If you can copy and paste a link, you can connect your AI agent to Asana.
Connecting Asana to Your AI Agent Takes About 15 Minutes
When the person who checked Asana every morning leaves, projects do not stop going overdue — they just stop getting flagged. Connecting your AI agent to Asana puts that visibility back in place, automatically. Here is how to do it.
Once connected, your agent can scan your entire Asana workspace — every team, every project, every task — and deliver summaries, alerts, and briefs without you opening Asana at all. No coding required. You will need an Asana account (any plan, including free) and an active AI agent instance on ClawAgora.
What You Are Setting Up
The connection between your AI agent and Asana works through the Asana REST API. Your agent authenticates using a Personal Access Token (PAT) — a credential you generate from your Asana account that grants API access with the same permissions you have as a user.
Once the agent has the PAT, it can make API calls to read and write data in your Asana workspace. The token is stored as an environment variable on your agent's isolated compute instance, so it never leaves your hosted environment.
Here is the architecture in plain terms:
You (Asana account)
|
| Generate PAT
v
Asana Developer Console
|
| PAT stored as env var
v
Your AI Agent (ClawAgora instance)
|
| API calls using PAT
v
Asana REST API
|
| Returns task/project/team data
v
Agent processes data, delivers via Telegram/Slack/email
No middleware. No third-party integration platform. No OAuth flow to maintain. The PAT is a direct credential that gives your agent the same workspace access you have.
Step 1: Generate a Personal Access Token in Asana
The PAT is your agent's key to Asana. Here is how to create one:
- Log in to Asana at app.asana.com
- Click your profile picture in the top-right corner
- Select My Settings
- Go to the Apps tab
- Click Manage Developer Apps
- Under Personal Access Tokens, click Create New Personal Access Token
- Give it a descriptive name — something like "AI Agent Access" or "ClawAgora Agent"
- Click Create
- Copy the token immediately — Asana shows it only once
Store the token somewhere secure temporarily. You will paste it into your agent's configuration in the next step.
A Note on Token Permissions
A PAT inherits the full permissions of the account that created it. If you are a workspace admin who can see all your projects across every team, your agent will have the same visibility.
If you want to limit what the agent can access:
- Option A: Create a dedicated Asana user account (for example, "agent@yourcompany.com"), invite it only to the projects and teams you want the agent to monitor, and generate the PAT from that account.
- Option B: Start with your own account's PAT for full visibility, then scope down later once you know exactly which projects the agent needs.
Most users start with Option B. Full visibility is more useful than you expect — the agent's ability to spot cross-team patterns depends on seeing the whole picture.
Step 2: Open Your Agent's Configuration on ClawAgora
- Log in to ClawAgora
- Navigate to your Claw dashboard (the instance management panel)
- Click on the agent instance you want to connect to Asana
- Open the Configuration section
This is where you manage your agent's environment variables, identity files, and scheduled routines.
Step 3: Add the Asana PAT as an Environment Variable
In the environment configuration panel:
- Add a new environment variable
- Set the name to
ASANA_PAT - Paste the Personal Access Token you copied from Asana as the value
- Save the configuration
Your agent's instance will pick up the new environment variable. The token is stored on your isolated compute instance — it is not visible to other ClawAgora users or to the platform itself.
Step 4: Instruct Your Agent to Use Asana
Having the API credential is necessary but not sufficient. Your agent also needs instructions on how to use it — what workspace to monitor, what to look for, and what actions are permitted.
Add a section to your agent's IDENTITY.md or SOUL.md that describes the Asana integration. Here is an example:
## Asana Access
You have access to the Asana API via the ASANA_PAT environment variable.
### Workspace
- Workspace name: Acme Corp
- Monitor all teams and projects unless I tell you otherwise
### Read Operations (always permitted)
- List tasks by project, team, or assignee
- Check task status, due dates, and custom fields
- Read comments and activity on tasks
- Scan for overdue or approaching-deadline tasks
- Generate summaries across multiple projects
### Write Operations (ask before executing)
- Create new tasks
- Update task status or assignee
- Add comments to tasks
- Move tasks between sections
### Important Rules
- Never delete tasks
- Never change due dates without my explicit approval
- When summarizing, group by team first, then by project
- Flag overdue tasks prominently in any summary
The specifics depend on your workflow. Some users want their agent to freely create and update tasks. Others prefer read-only access with write operations requiring explicit approval in conversation. Configure what fits your comfort level — you can always expand permissions later.
Step 5: Test the Connection
Send your agent a simple message via Telegram or Slack:
"List my overdue tasks in Asana."
If the connection is working, the agent should return something like:
You have 7 overdue tasks across 3 projects:
Marketing Website Redesign
- Update hero section copy (2 days overdue, assigned to you)
- Finalize testimonial selections (5 days overdue, assigned to Jamie)
Q2 Product Launch
- Competitive analysis document (1 day overdue, assigned to Alex)
- Pricing page update (3 days overdue, unassigned)
Operations
- Vendor contract renewal — CloudHost (4 days overdue, assigned to you)
- Employee handbook update (8 days overdue, assigned to Morgan)
- Office supply reorder (1 day overdue, unassigned)
If the agent reports an authentication error, double-check that the PAT was pasted correctly and that it has not been revoked in Asana's developer console.
Other Good Test Queries
Once the basic connection works, try a few more queries to explore the agent's capabilities:
- "What tasks are due this week across all projects?"
- "Summarize the current status of the Q2 Product Launch project"
- "Which team members have the most tasks assigned right now?"
- "Show me all tasks tagged as high priority that are not yet started"
- "What happened in the Marketing team's projects yesterday?"
Each of these exercises a different part of the Asana API and helps you understand what the agent can surface from your workspace data.
Step 6: Configure Scheduled Asana Routines
Once you have confirmed the connection works interactively, the real power comes from scheduling automatic routines in your agent's HEARTBEAT.md.
Here is an example configuration for a daily standup summary:
## Asana Daily Standup — 7:30 AM weekdays
Scan all Asana projects across all teams.
Compile a standup summary with these sections:
1. Tasks completed yesterday (grouped by team)
2. Tasks in progress today (grouped by team)
3. Overdue tasks (with days overdue and assignee)
4. Tasks due in the next 48 hours
Send the summary to Telegram.
And an overdue alert that runs more frequently:
## Asana Overdue Alert — every 4 hours weekdays
Check all Asana projects for tasks that became overdue since the last check.
If any new overdue tasks are found, send an alert to Telegram with:
- Task name and project
- Assignee (or note if unassigned)
- How many days overdue
- Last activity date on the task
The agent reads these HEARTBEAT.md entries, runs them on the specified schedule, and delivers results to your configured channel. For a deeper dive into how HEARTBEAT.md scheduling works and what else you can automate, see How to Set Up Automated Morning Briefs That Pull from Asana, Email, and Slack.
What Your Agent Can Read and Write: The Full Picture
Here is a comprehensive reference of what becomes available through the Asana API once your agent is connected:
Read Access
| Data Type | What the Agent Can See |
|---|---|
| Tasks | Title, description, assignee, due date, start date, completion status, tags, custom fields, subtasks, dependencies, attachments (metadata) |
| Projects | All tasks within a project, sections, project status, project members, custom field settings |
| Teams | Team membership, projects within each team |
| Workspaces | Full organizational structure, all teams and projects |
| Comments | Task conversation threads, including who said what and when |
| Users | Names, email addresses, team memberships, task assignments |
| Custom Fields | Field names, types, enum options, values per task |
| Search | Full-text search across tasks, with filters for assignee, project, due date, completion status |
Write Access
| Action | What the Agent Can Do |
|---|---|
| Create tasks | Set title, description, assignee, due date, project, section, custom fields, tags |
| Update tasks | Change any field — status, assignee, due date, description, custom fields |
| Add comments | Post comments on any task the agent has access to |
| Move tasks | Change a task's section within a project, or move between projects |
| Create subtasks | Add subtasks to existing tasks |
| Manage followers | Add or remove task followers |
What the Agent Cannot Do
- Delete tasks — The API supports it, but we recommend explicitly prohibiting this in your agent's SOUL.md
- Manage billing or workspace settings — These are admin functions outside the task API
- Access file contents — The agent can see attachment metadata (filename, size) but cannot download and read file contents through the Asana API alone
Scoping Access: Full Workspace vs. Specific Projects
The question of how much of your Asana workspace the agent should see comes down to your use case.
Full workspace access is best when:
- You are a founder or CEO who needs cross-team visibility
- You want the agent to detect cross-project dependencies and resource conflicts
- You run a small team where everyone sees everything anyway
Scoped access (via a dedicated Asana account) is best when:
- You have sensitive projects (HR, legal, finance) that should not be in the agent's context
- You are connecting the agent for a specific team, not the whole organization
- You want to minimize the data surface for security reasons
Either way, you can always change the scope later. Start broad if you are unsure — the agent's summaries become significantly more useful when it can see the full picture.
Troubleshooting Common Issues
"Authentication failed" or "401 Unauthorized"
- Verify the PAT was copied correctly with no trailing spaces
- Check that the token has not been revoked in Asana's Developer Console
- Confirm the environment variable name matches what your agent expects (
ASANA_PAT)
Agent returns empty results when you know tasks exist
- The PAT's account may not have access to the projects you are asking about
- If using a dedicated agent account, verify it has been invited to the relevant projects and teams
Agent is slow to respond to Asana queries
- Large workspaces with thousands of tasks take longer to query
- Consider instructing the agent to cache workspace structure and only fetch task details on demand
- Use specific queries ("overdue tasks in the Marketing project") rather than open-ended ones ("tell me everything about Asana")
Agent creates tasks in the wrong project
- Be explicit in your instructions about default projects for task creation
- Add a rule in SOUL.md: "Always confirm the target project before creating a task"
What to Do Next
With your agent connected to Asana, you have unlocked a powerful set of capabilities. Here is the recommended progression:
- Week 1: Use the agent interactively — ask questions about your Asana data, get comfortable with what it can surface
- Week 2: Set up a daily standup summary in HEARTBEAT.md — experience the proactive pattern
- Week 3: Add overdue alerts and approaching-deadline notifications
- Week 4: If you are ready, enable write operations — let the agent create tasks from email requests or update status from Slack conversations
For use cases and examples of what to do once connected, read AI Agent + Asana: Automate Project Tracking, Standup Summaries, and Overdue Alerts.
If you are setting up your AI agent for the first time and want the full chief-of-staff experience — Asana, email, Telegram, brand voice, and memory — start with How to Set Up an AI Chief of Staff for Your Small Business.
Next: AI Agent + Asana: Automate Project Tracking, Standup Summaries, and Overdue Alerts.