todoist_tools.py
"""
Example showing how to use the Todoist Tools with Agno
Requirements:
- Sign up/login to Todoist and get a Todoist API Token (get from https://app.todoist.com/app/settings/integrations/developer)
- uv pip install todoist-api-python
Usage:
- Set the following environment variables:
export TODOIST_API_TOKEN="your_api_token"
- Or provide them when creating the TodoistTools instance
"""
from agno.agent import Agent
from agno.models.google.gemini import Gemini
from agno.tools.todoist import TodoistTools
# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------
# Example 1: All functions available (default behavior)
todoist_agent_all = Agent(
name="Todoist Agent - All Functions",
role="Manage your todoist tasks with full capabilities",
instructions=[
"You have access to all Todoist operations.",
"You can create, read, update, delete tasks and manage projects.",
],
id="todoist-agent-all",
model=Gemini("gemini-3.5-flash"),
tools=[TodoistTools()],
markdown=True,
)
# Example 3: Exclude dangerous functions
todoist_agent = Agent(
name="Todoist Agent - Safe Mode",
role="Manage your todoist tasks safely",
instructions=[
"You can create and update tasks but cannot delete anything.",
"You have read access to all tasks and projects.",
],
id="todoist-agent-safe",
model=Gemini("gemini-3.5-flash"),
tools=[TodoistTools(exclude_tools=["delete_task"])],
markdown=True,
)
# Example 1: Create a task
# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
print("\n=== Create a task ===")
todoist_agent_all.print_response(
"Create a todoist task to buy groceries tomorrow at 10am"
)
# Example 2: Delete a task
print("\n=== Delete a task ===")
todoist_agent.print_response(
"Delete the todoist task to buy groceries tomorrow at 10am"
)
Run the Example
1
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activate
uv venv --python 3.12
.venv\Scripts\activate
2
Install dependencies
uv pip install -U agno google-genai todoist-api-python
3
Export environment variables
export GOOGLE_API_KEY="your_google_api_key_here"
export TODOIST_API_TOKEN="your_todoist_api_token_here"
$Env:GOOGLE_API_KEY="your_google_api_key_here"
$Env:TODOIST_API_TOKEN="your_todoist_api_token_here"
4
Run the example
Save the code above as
todoist_tools.py, then run:python todoist_tools.py