Connect Asana and Outlook to OpenCode and it can handle the mail and calendar side of a task, then record it back in Asana. It reads the task, drafts an Outlook email or adjusts the calendar, and adds the people involved as followers so nothing drops. Asana is where the work and ownership live while Outlook is the inbox, calendar, and contacts. The two together let the agent keep scheduling and correspondence tied to the plan.
Pick the operations you want and each becomes a tool the agent can call directly while it works.
Get the authenticated user (handy for testing credentials).
List users in a workspace (resolve assignees/followers).
Get a specific user by their gid.
List workspaces and organizations the user can access.
List teams in an organization.
List custom fields available in a workspace.
List all member records for a workspace.
Add a user (invite them) to a workspace or organization.
Remove a user from a workspace or organization.
Search across all object types in a workspace (typeahead / autocomplete).
Get a team's details.
List users in a team.
Add a user to a team.
Remove a user from a team.
List projects, optionally filtered by workspace.
Get a single project's details.
Create a new project in a workspace (optionally in a team).
Update a project's name, notes, or archived status.
Delete a project.
Duplicate a project (creates an async Job — poll the returned job_gid for completion).
List members/memberships of a project.
Add users to a project as members.
Remove users from a project.
Add followers to a project.
Remove followers from a project.
Get task counts for a project (total, completed, incomplete, etc.).
List status updates on a project.
Post a status update on a project (On Track, At Risk, Off Track).
Delete a project status update.
List status updates for a project, portfolio, or goal (modern API).
Create a status update for a project, portfolio, or goal (modern API).
Delete a status update.
Get a project brief.
Create a project brief (rich-text overview for a project).
Update a project brief's title or content.
Delete a project brief.
List project templates available in a workspace or team.
Instantiate a new project from a project template.
Save an existing project as a project template.
Poll an async job (e.g. from duplicate_project / create_project_from_template). Returns the job status and a ``new_project`` link when complete.
List custom field settings (definitions) attached to a project.
List sections within a project.
Get a single section by its gid.
Create a section in a project.
Rename or update a section.
Delete a section from a project.
List tasks in a specific section.
Search tasks in a workspace by text.
Get a single task with its fields.
Create a task (name, notes, assignee, due date, projects).
Update a task (rename, reassign, complete, set due date).
Delete a task.
Duplicate a task (optionally into the same project under a new name).
List tasks belonging to a project.
Add a task to a project (optionally into a section).
Remove a task from a project.
Move/place a task into a project section.
Set or change the parent task of a task (makes it a subtask).
List projects that a task belongs to.
List a task's subtasks.
Create a subtask under a parent task.
Get tasks that a task depends on (its dependencies).
Set tasks that must be completed before this task (dependencies).
Remove task dependencies.
Get tasks that depend on this task (dependents / blocking tasks).
Mark tasks as depending on this task (add dependents).
Remove dependent tasks from this task.
Add followers to a task.
Remove followers from a task.
List tasks that have a specific tag.
List task templates in a project.
Instantiate a task from a task template.
Add a comment (story) to a task.
List stories (comments + activity) on a task.
Get a single story (comment or activity event) by its gid.
Edit the text of a comment (story) on a task.
Delete a comment (story) from a task.
List tags in a workspace.
Get a tag by its gid.
Create a new tag in a workspace.
Update a tag's name or color.
Delete a tag.
Tag a task.
Remove a tag from a task.
List all tags on a task.
Get a custom field definition.
Create a custom field definition in a workspace.
Update a custom field's name, description, or settings.
Delete a custom field definition from the workspace.
Set a custom field value on a task.
Add a custom field to a project.
Remove a custom field from a project.
List file attachments on a task.
Delete a file attachment.
List time tracking entries on a task.
Log a time entry on a task.
Update the duration or date of an existing time tracking entry.
Delete a time tracking entry.
Get a user's personal 'My Tasks' task list.
List tasks in a user's My Tasks list.
List portfolios accessible to a user in a workspace.
Get a single portfolio's details.
Create a new portfolio.
Update a portfolio's name or public setting.
Delete a portfolio.
List projects (items) in a portfolio.
Add a project to a portfolio.
Remove a project from a portfolio.
Add members to a portfolio.
Remove members from a portfolio.
List goals in a workspace (requires premium/business plan).
Get a single goal's details.
Create a goal in a workspace or team.
Update a goal's name, status, notes, or dates.
Delete a goal.
List parent goals for a goal (supporting relationship traversal).
Set a metric on a goal (defines how goal progress is measured).
Update the current value of a goal's metric.
Add followers / collaborators to a goal.
Remove followers / collaborators from a goal.
Trigger a rule that uses an 'incoming web request' trigger.
Configuration for sending an email
Configuration for reading emails from inbox
Configuration for replying to an email
Configuration for forwarding an email
Configuration for getting a specific email by ID
Configuration for marking an email as read or unread
Configuration for deleting an email
Configuration for moving an email to a different folder
Configuration for creating an email draft
Configuration for listing mail folders
Configuration for creating a new mail folder
Configuration for getting attachments from an email
Configuration for getting mailbox settings
Configuration for updating auto-reply settings
Configuration for copying a message to another folder
Configuration for updating message properties
Configuration for sending an existing draft
Configuration for creating a reply draft
Configuration for creating a reply-all draft
Configuration for creating a forward draft
Configuration for adding an attachment to a message
Configuration for deleting an attachment
Configuration for updating a folder
Configuration for deleting a folder
Configuration for moving a folder
Configuration for copying a folder
Configuration for listing inbox rules
Configuration for getting a specific rule
Configuration for creating an inbox rule
Configuration for updating an inbox rule
Configuration for deleting an inbox rule
Configuration for listing master categories
Configuration for getting a specific category
Configuration for creating a category
Configuration for updating a category
Configuration for deleting a category
Configuration for getting MIME content
Configuration for sending MIME message
Configuration for listing calendar events
Configuration for creating a calendar event
Configuration for getting a calendar event
Configuration for updating a calendar event
Configuration for deleting a calendar event
Configuration for canceling a calendar event
Configuration for accepting an event invitation
Configuration for declining an event invitation
Configuration for tentatively accepting an event invitation
Configuration for dismissing an event reminder
Configuration for snoozing an event reminder
Configuration for finding available meeting times
Configuration for getting free/busy schedule
Configuration for listing recurring event instances
Configuration for listing calendars
Configuration for listing calendar groups
Configuration for getting room lists
Configuration for listing contacts
Configuration for creating a contact
Configuration for getting a contact
Configuration for updating a contact
Configuration for deleting a contact
Configuration for listing contact folders
Configuration for creating a contact folder
Configuration for getting a contact folder
Configuration for updating a contact folder
Configuration for deleting a contact folder
OpenCode is an open, model-agnostic command-line coding agent. In NoClick it runs hosted and gains your apps as tools, so it can act on real systems rather than just edit files. Wire an integration into the agent and OpenCode can use that app’s operations directly while it works. It is a flexible choice when you want an open agent with broad model support and real tool access.
NoClick runs OpenCode for you with Asana and Outlook wired in as tools. Connect your account and run.