Skip to main content

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

taskara-0.1.249.tar.gz (57.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

taskara-0.1.249-py3-none-any.whl (68.5 kB view details)

Uploaded Python 3

File details

Details for the file taskara-0.1.249.tar.gz.

File metadata

  • Download URL: taskara-0.1.249.tar.gz
  • Upload date:
  • Size: 57.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.1 Darwin/24.3.0

File hashes

Hashes for taskara-0.1.249.tar.gz
Algorithm Hash digest
SHA256 be097d714f565c324109466472f7609438d6a1cc8ba6c2079629a0c687934acf
MD5 25dd66786d084ea576094495168e5c4b
BLAKE2b-256 4283867be6c20de7cd0ace39381dc72231a1409666a88175d02061b3e4ceb758

See more details on using hashes here.

File details

Details for the file taskara-0.1.249-py3-none-any.whl.

File metadata

  • Download URL: taskara-0.1.249-py3-none-any.whl
  • Upload date:
  • Size: 68.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.1 Darwin/24.3.0

File hashes

Hashes for taskara-0.1.249-py3-none-any.whl
Algorithm Hash digest
SHA256 8b81614a3ff5872aae1dfbdefaaa5f7604db36bdf88892c3af58577543313d34
MD5 acc376450f768455bb8501ae9cd368b9
BLAKE2b-256 54a04d2b3a0b1a276fa4f90a2c1fe634526b3e54061779555187d0a02184c949

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page