KosmoKrator

productivity

Asana CLI for AI Agents

Use the Asana CLI from KosmoKrator to call Asana tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.

Asana CLI Setup

Asana can be configured headlessly with `kosmokrator integrations:configure asana`.

Install, configure, and verify
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash

# Configure and verify this integration.
kosmokrator integrations:configure asana --set access_token="$ASANA_ACCESS_TOKEN" --enable --read allow --write ask --json
kosmokrator integrations:doctor asana --json
kosmokrator integrations:status --json

Credentials

Authentication type: Bearer token bearer_token. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.

KeyEnv varTypeRequiredLabel
access_token ASANA_ACCESS_TOKEN Secret secret yes Access Token

Command Patterns

The generic command is stable across every integration. The provider shortcut is shorter for humans.

Generic CLI call
kosmo integrations:call asana.asana_create_task '{"name":"example_name","notes":"example_notes","projects":"example_projects","assignee":"example_assignee","due_on":"example_due_on","tags":"example_tags","workspace":"example_workspace"}' --json
Provider shortcut
kosmo integrations:asana asana_create_task '{"name":"example_name","notes":"example_notes","projects":"example_projects","assignee":"example_assignee","due_on":"example_due_on","tags":"example_tags","workspace":"example_workspace"}' --json

Discovery

These commands return structured output for coding agents that need to inspect capabilities before choosing a function.

Discovery commands
kosmo integrations:docs asana --json
kosmo integrations:docs asana.asana_create_task --json
kosmo integrations:schema asana.asana_create_task --json
kosmo integrations:search "Asana" --json
kosmo integrations:list --json

Automation Contexts

The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.

CLI Functions

Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.

asana.asana_create_task

Create a new task in Asana.

Write write
Parameters
name, notes, projects, assignee, due_on, tags, workspace
Generic call
kosmo integrations:call asana.asana_create_task '{"name":"example_name","notes":"example_notes","projects":"example_projects","assignee":"example_assignee","due_on":"example_due_on","tags":"example_tags","workspace":"example_workspace"}' --json
Shortcut
kosmo integrations:asana asana_create_task '{"name":"example_name","notes":"example_notes","projects":"example_projects","assignee":"example_assignee","due_on":"example_due_on","tags":"example_tags","workspace":"example_workspace"}' --json

asana.asana_get_task

Get detailed information about an Asana task.

Read read
Parameters
id
Generic call
kosmo integrations:call asana.asana_get_task '{"id":"example_id"}' --json
Shortcut
kosmo integrations:asana asana_get_task '{"id":"example_id"}' --json

asana.asana_update_task

Update an existing Asana task.

Write write
Parameters
id, name, notes, assignee, due_on, completed, tags
Generic call
kosmo integrations:call asana.asana_update_task '{"id":"example_id","name":"example_name","notes":"example_notes","assignee":"example_assignee","due_on":"example_due_on","completed":true,"tags":"example_tags"}' --json
Shortcut
kosmo integrations:asana asana_update_task '{"id":"example_id","name":"example_name","notes":"example_notes","assignee":"example_assignee","due_on":"example_due_on","completed":true,"tags":"example_tags"}' --json

asana.asana_delete_task

Delete an Asana task permanently.

Write write
Parameters
id
Generic call
kosmo integrations:call asana.asana_delete_task '{"id":"example_id"}' --json
Shortcut
kosmo integrations:asana asana_delete_task '{"id":"example_id"}' --json

asana.asana_list_tasks

List tasks in Asana with optional filters.

Read read
Parameters
project, assignee, workspace, completed_since, limit, offset
Generic call
kosmo integrations:call asana.asana_list_tasks '{"project":"example_project","assignee":"example_assignee","workspace":"example_workspace","completed_since":"example_completed_since","limit":1,"offset":"example_offset"}' --json
Shortcut
kosmo integrations:asana asana_list_tasks '{"project":"example_project","assignee":"example_assignee","workspace":"example_workspace","completed_since":"example_completed_since","limit":1,"offset":"example_offset"}' --json

asana.asana_create_subtask

Create a subtask under an existing Asana task.

Write write
Parameters
parent_id, name, notes, assignee
Generic call
kosmo integrations:call asana.asana_create_subtask '{"parent_id":"example_parent_id","name":"example_name","notes":"example_notes","assignee":"example_assignee"}' --json
Shortcut
kosmo integrations:asana asana_create_subtask '{"parent_id":"example_parent_id","name":"example_name","notes":"example_notes","assignee":"example_assignee"}' --json

asana.asana_add_comment

Add a comment to an Asana task.

Write write
Parameters
task_id, text
Generic call
kosmo integrations:call asana.asana_add_comment '{"task_id":"example_task_id","text":"example_text"}' --json
Shortcut
kosmo integrations:asana asana_add_comment '{"task_id":"example_task_id","text":"example_text"}' --json

asana.asana_list_comments

List comments (stories) on an Asana task.

Read read
Parameters
task_id, limit, offset
Generic call
kosmo integrations:call asana.asana_list_comments '{"task_id":"example_task_id","limit":1,"offset":"example_offset"}' --json
Shortcut
kosmo integrations:asana asana_list_comments '{"task_id":"example_task_id","limit":1,"offset":"example_offset"}' --json

asana.asana_create_project

Create a new project in Asana.

Write write
Parameters
name, notes, workspace, team, color
Generic call
kosmo integrations:call asana.asana_create_project '{"name":"example_name","notes":"example_notes","workspace":"example_workspace","team":"example_team","color":"example_color"}' --json
Shortcut
kosmo integrations:asana asana_create_project '{"name":"example_name","notes":"example_notes","workspace":"example_workspace","team":"example_team","color":"example_color"}' --json

asana.asana_get_project

Get detailed information about an Asana project.

Read read
Parameters
id
Generic call
kosmo integrations:call asana.asana_get_project '{"id":"example_id"}' --json
Shortcut
kosmo integrations:asana asana_get_project '{"id":"example_id"}' --json

asana.asana_list_projects

List projects in Asana with optional filters.

Read read
Parameters
workspace, team, archived, limit, offset
Generic call
kosmo integrations:call asana.asana_list_projects '{"workspace":"example_workspace","team":"example_team","archived":true,"limit":1,"offset":"example_offset"}' --json
Shortcut
kosmo integrations:asana asana_list_projects '{"workspace":"example_workspace","team":"example_team","archived":true,"limit":1,"offset":"example_offset"}' --json

asana.asana_list_sections

List sections in an Asana project.

Read read
Parameters
project_id, limit, offset
Generic call
kosmo integrations:call asana.asana_list_sections '{"project_id":"example_project_id","limit":1,"offset":"example_offset"}' --json
Shortcut
kosmo integrations:asana asana_list_sections '{"project_id":"example_project_id","limit":1,"offset":"example_offset"}' --json

asana.asana_list_workspaces

List all workspaces the authenticated user has access to.

Read read
Parameters
none
Generic call
kosmo integrations:call asana.asana_list_workspaces '{}' --json
Shortcut
kosmo integrations:asana asana_list_workspaces '{}' --json

asana.asana_list_teams

List teams in an Asana workspace.

Read read
Parameters
workspace_id
Generic call
kosmo integrations:call asana.asana_list_teams '{"workspace_id":"example_workspace_id"}' --json
Shortcut
kosmo integrations:asana asana_list_teams '{"workspace_id":"example_workspace_id"}' --json

asana.asana_list_users

List users in an Asana workspace.

Read read
Parameters
workspace, limit, offset
Generic call
kosmo integrations:call asana.asana_list_users '{"workspace":"example_workspace","limit":1,"offset":"example_offset"}' --json
Shortcut
kosmo integrations:asana asana_list_users '{"workspace":"example_workspace","limit":1,"offset":"example_offset"}' --json

asana.asana_get_user

Get detailed information about an Asana user.

Read read
Parameters
id
Generic call
kosmo integrations:call asana.asana_get_user '{"id":"example_id"}' --json
Shortcut
kosmo integrations:asana asana_get_user '{"id":"example_id"}' --json

asana.asana_get_user_task_list

Get the user task list for a given user and workspace.

Read read
Parameters
user_id, workspace_id
Generic call
kosmo integrations:call asana.asana_get_user_task_list '{"user_id":"example_user_id","workspace_id":"example_workspace_id"}' --json
Shortcut
kosmo integrations:asana asana_get_user_task_list '{"user_id":"example_user_id","workspace_id":"example_workspace_id"}' --json

asana.asana_list_tags

List tags in an Asana workspace.

Read read
Parameters
workspace, limit, offset
Generic call
kosmo integrations:call asana.asana_list_tags '{"workspace":"example_workspace","limit":1,"offset":"example_offset"}' --json
Shortcut
kosmo integrations:asana asana_list_tags '{"workspace":"example_workspace","limit":1,"offset":"example_offset"}' --json

asana.asana_create_tag

Create a new tag in Asana.

Write write
Parameters
name, workspace, color
Generic call
kosmo integrations:call asana.asana_create_tag '{"name":"example_name","workspace":"example_workspace","color":"example_color"}' --json
Shortcut
kosmo integrations:asana asana_create_tag '{"name":"example_name","workspace":"example_workspace","color":"example_color"}' --json

asana.asana_get_current_user

Get the currently authenticated Asana user.

Read read
Parameters
none
Generic call
kosmo integrations:call asana.asana_get_current_user '{}' --json
Shortcut
kosmo integrations:asana asana_get_current_user '{}' --json

Function Schemas

Use these parameter tables when building CLI payloads without calling integrations:schema first.

asana.asana_create_task 7 parameters
Schema command
kosmo integrations:schema asana.asana_create_task --json
ParameterTypeRequiredDescription
name string yes Name of the task.
notes string no Free-form textual description (supports HTML).
projects array no Array of project GIDs to add the task to.
assignee string no User GID to assign the task to, or "me".
due_on string no Due date in YYYY-MM-DD format.
tags array no Array of tag GIDs to add to the task.
workspace string no Workspace GID (required if not adding to a project).
asana.asana_get_task 1 parameters
Schema command
kosmo integrations:schema asana.asana_get_task --json
ParameterTypeRequiredDescription
id string yes The task GID.
asana.asana_update_task 7 parameters
Schema command
kosmo integrations:schema asana.asana_update_task --json
ParameterTypeRequiredDescription
id string yes The task GID to update.
name string no New name for the task.
notes string no New description.
assignee string no User GID to assign the task to, or "me".
due_on string no Due date in YYYY-MM-DD format.
completed boolean no Set to true to mark the task complete.
tags array no Array of tag GIDs to set on the task.
asana.asana_delete_task 1 parameters
Schema command
kosmo integrations:schema asana.asana_delete_task --json
ParameterTypeRequiredDescription
id string yes The task GID to delete.
asana.asana_list_tasks 6 parameters
Schema command
kosmo integrations:schema asana.asana_list_tasks --json
ParameterTypeRequiredDescription
project string no Project GID to filter tasks by.
assignee string no User GID to filter by assignee, or "me".
workspace string no Workspace GID to filter tasks by.
completed_since string no Only return tasks completed after this ISO 8601 date.
limit integer no Max number of tasks to return (1–100).
offset string no Cursor for pagination from a previous response.
asana.asana_create_subtask 4 parameters
Schema command
kosmo integrations:schema asana.asana_create_subtask --json
ParameterTypeRequiredDescription
parent_id string yes GID of the parent task.
name string yes Name of the subtask.
notes string no Description for the subtask.
assignee string no User GID to assign the subtask to, or "me".
asana.asana_add_comment 2 parameters
Schema command
kosmo integrations:schema asana.asana_add_comment --json
ParameterTypeRequiredDescription
task_id string yes GID of the task to comment on.
text string yes Comment text (supports Markdown).
asana.asana_list_comments 3 parameters
Schema command
kosmo integrations:schema asana.asana_list_comments --json
ParameterTypeRequiredDescription
task_id string yes GID of the task to list comments for.
limit integer no Max number of comments to return (1–100).
offset string no Cursor for pagination from a previous response.
asana.asana_create_project 5 parameters
Schema command
kosmo integrations:schema asana.asana_create_project --json
ParameterTypeRequiredDescription
name string yes Name of the project.
notes string no Free-form description of the project.
workspace string yes Workspace GID where the project will be created.
team string no Team GID to add the project to.
color string no Color for the project (e.g. "dark-pink", "dark-green").
asana.asana_get_project 1 parameters
Schema command
kosmo integrations:schema asana.asana_get_project --json
ParameterTypeRequiredDescription
id string yes The project GID.
asana.asana_list_projects 5 parameters
Schema command
kosmo integrations:schema asana.asana_list_projects --json
ParameterTypeRequiredDescription
workspace string no Workspace GID to filter projects by.
team string no Team GID to filter projects by.
archived boolean no Filter by archived status.
limit integer no Max number of projects to return (1–100).
offset string no Cursor for pagination from a previous response.
asana.asana_list_sections 3 parameters
Schema command
kosmo integrations:schema asana.asana_list_sections --json
ParameterTypeRequiredDescription
project_id string yes GID of the project to list sections for.
limit integer no Max number of sections to return (1–100).
offset string no Cursor for pagination from a previous response.
asana.asana_list_workspaces 0 parameters
Schema command
kosmo integrations:schema asana.asana_list_workspaces --json
ParameterTypeRequiredDescription
No parameters.
asana.asana_list_teams 1 parameters
Schema command
kosmo integrations:schema asana.asana_list_teams --json
ParameterTypeRequiredDescription
workspace_id string yes GID of the workspace to list teams for.
asana.asana_list_users 3 parameters
Schema command
kosmo integrations:schema asana.asana_list_users --json
ParameterTypeRequiredDescription
workspace string yes Workspace GID to filter users by.
limit integer no Max number of users to return (1–100).
offset string no Cursor for pagination from a previous response.
asana.asana_get_user 1 parameters
Schema command
kosmo integrations:schema asana.asana_get_user --json
ParameterTypeRequiredDescription
id string yes The user GID.
asana.asana_get_user_task_list 2 parameters
Schema command
kosmo integrations:schema asana.asana_get_user_task_list --json
ParameterTypeRequiredDescription
user_id string yes GID of the user.
workspace_id string yes GID of the workspace.
asana.asana_list_tags 3 parameters
Schema command
kosmo integrations:schema asana.asana_list_tags --json
ParameterTypeRequiredDescription
workspace string yes Workspace GID to filter tags by.
limit integer no Max number of tags to return (1–100).
offset string no Cursor for pagination from a previous response.
asana.asana_create_tag 3 parameters
Schema command
kosmo integrations:schema asana.asana_create_tag --json
ParameterTypeRequiredDescription
name string yes Name of the tag.
workspace string yes Workspace GID where the tag will be created.
color string no Color for the tag (e.g. "dark-pink", "dark-green").
asana.asana_get_current_user 0 parameters
Schema command
kosmo integrations:schema asana.asana_get_current_user --json
ParameterTypeRequiredDescription
No parameters.

Permissions

Headless calls still follow the integration read/write permission policy. Configure read/write defaults with integrations:configure. Add --force only for trusted automation that should bypass that policy.