Task management for AI agents
Project description
Taskara
Task management for AI agents
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Installation
pip install taskara
Usage
Create a task
from taskara import Task
task = Task(
description="Search for the most common varieties of french ducks",
owner_id="delores@agentsea.ai"
)
Assign the task to an agent
task.assigned_to = "roko@agentsea.ai"
Post a message to the task thread
task.post_message("assistant", "Getting started working on this")
task.status = "in progress"
Create a custom thread for the task
task.create_thread("debug")
task.post_message("assistant", "I'll post debug messages to this thread", thread="debug")
task.post_message("assistant", 'My current screenshot', images=["b64img"], thread="debug")
Store prompts used to accomplish the task
from mllm import RoleThread, RoleMessage
thread = RoleThread()
thread.post(role="system", msg="I am a helpful assistant")
response = RoleMessage(
role="assistant",
text="How can I help?"
)
task.store_prompt(thread, response, namespace="actions")
Store the result
task.output = "The most common type of french duck is the Rouen"
task.status = "success"
Save the task
task.save()
Tracker
Taskara comes with a task tracker server which can be run on docker or kubernetes.
Install surfkit to create a tracker
pip install surfkit
Create a tracker
surfkit create tracker
List trackers
surfkit list trackers
Get tracker logs
surfkit logs tracker <name>
Create a task
surfkit create task --description "Search for french ducks"
List tasks
surfkit list tasks
Get a task
surfkit get task <id>
Integrations
Taskara is integrated with:
- Surfkit A platform for AI agents
- MLLM A prompt management, routing, and schema validation library for multimodal LLMs
- Skillpacks A library to fine tune AI agents on tasks.
- Threadmem A thread management library for AI agents
Community
Come join us on Discord.
Backends
Thread and prompt storage can be backed by:
- Sqlite
- Postgresql
Sqlite will be used by default. To use postgres simply configure the env vars:
DB_TYPE=postgres
DB_NAME=tasks
DB_HOST=localhost
DB_USER=postgres
DB_PASS=abc123
Thread image storage by default will utilize the db, to configure bucket storage using GCS:
- Create a bucket with fine grained permissions
- Create a GCP service account JSON with permissions to write to the bucket
export THREAD_STORAGE_SA_JSON='{
"type": "service_account",
...
}'
export THREAD_STORAGE_BUCKET=my-bucket
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file taskara-0.1.156.tar.gz
.
File metadata
- Download URL: taskara-0.1.156.tar.gz
- Upload date:
- Size: 49.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.7 Darwin/23.4.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | de357d80dc00fafc0ff984b7d562220d541e887248bfa7824405b4e672df0ea9 |
|
MD5 | 306eed45f01684e9c920a6e236b48ef2 |
|
BLAKE2b-256 | 5eacb6ce5bde5966ee766911efcdde4c906d6440e172a4f87720885a422c5763 |
File details
Details for the file taskara-0.1.156-py3-none-any.whl
.
File metadata
- Download URL: taskara-0.1.156-py3-none-any.whl
- Upload date:
- Size: 60.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.7 Darwin/23.4.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 288898358c7feb026c1d59af17808204d87eb8430ca6e92f9f45a67d09fdb621 |
|
MD5 | e30b967092feaff89f719beedfbb2cb5 |
|
BLAKE2b-256 | 4d4562b50eb1bbcb8d2c34d811525cdacedc9362e4da6f3ba7de6ccb5fbc7a68 |