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
Metadata
Release files for taskara 0.1.249
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| taskara-0.1.249.tar.gz | 57.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| taskara-0.1.249-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 126.4 kB
Release files / taskara-0.1.249.tar.gz
| Download URL | taskara-0.1.249.tar.gz |
|---|---|
| Size | 57.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
be097d714f565c324109466472f7609438d6a1cc8ba6c2079629a0c687934acf
|
|
BLAKE2b-256 checksum How to use checksums |
4283867be6c20de7cd0ace39381dc72231a1409666a88175d02061b3e4ceb758
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.10.1 Darwin/24.3.0
|
Release files / taskara-0.1.249-py3-none-any.whl
| Download URL | taskara-0.1.249-py3-none-any.whl |
|---|---|
| Size | 68.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8b81614a3ff5872aae1dfbdefaaa5f7604db36bdf88892c3af58577543313d34
|
|
BLAKE2b-256 checksum How to use checksums |
54a04d2b3a0b1a276fa4f90a2c1fe634526b3e54061779555187d0a02184c949
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.3 CPython/3.10.1 Darwin/24.3.0
|