Skip to main content

Taskuary

English · 简体中文

CI OpenSSF Scorecard PyPI Python 3.10+ License: MIT Stars

⭐ Please star Taskuary if you find it helpful — it is how other people find it.

Your inbox, staffed by AI agents

Taskuary turns incoming messages into organized work. It sorts what matters, hands tasks to your agents, and brings decisions back to you. Nothing sends or ships without your approval.

The Taskuary Studio assembling as work arrives and AI agents take their seats.

Taskuary is early—currently v0.3.6.8—so breaking changes are still possible before 1.0.

Try Taskuary now, in your browser

The real app with invented data. Nothing connects, sends, or runs.

Read the documentation — installation, the first run, what to connect, and every setting.

What Taskuary can do

One request, from arrival to your approval. Follow Ruth's request for the latest vendor spend numbers through the real app, using fictional demo data.

1. Connect every system. Keep control.

Mail, chats, issue trackers, alerts, and reports land on one Timeline. See what arrived, what became a task, and what needs you without opening every system in turn.

An annotated Timeline: each item shows its original time below its source—Email, Teams, WhatsApp, GitHub, SQL report, Assistant, Daily digest, or Calendar.

2. Turn incoming work into tasks

Ruth asks for the August total, the change from July, and a breakdown by category. Taskuary creates a task with the original request and assigns it to an agent.

Ruth's request becomes TQ-0018, with its instructions, owner, and agent work together on the task page.

3. Watch the agent work

Open the task to follow the analysis. Here, the general agent prepares the numbers, checks that the categories add up, and drafts a reply.

The general agent's completed vendor spend analysis, with category totals, comparison, and source.

4. Approve the outcome

The reply waits in Review, beside the request that started it. Read it, edit it, and choose Approve & send when it is ready.

Review shows Ruth's original request and the prepared reply, with Approve & send waiting for the owner.

5. Let the Assistant walk you through it

Choose Walk me through my tasks. The Assistant brings one item into the conversation, explains what needs your attention, and puts the next action within reach.

A close-up of the Assistant bringing Ruth's request into the conversation, with a link to its task.

6. Start your day with the daily digest

Open your morning brief to see what people need, what is in flight, and what is on your calendar. The day's meetings sit above the digest, so Ruth's request has a clear deadline: the operations review.

An animated close-up of the morning digest and calendar, showing the operations review and vendor planning meeting.

Key features

Use your coding CLI

Connect Claude Code, Codex, Qwen Code, OpenCode, Kimi Code, Gemini, Cursor, Copilot, Muse Code, or another CLI. Set up the connection once, then give your agents profiles with their own instructions. Follow their sessions, answer questions, and review the result from Taskuary.

For Qwen Code, see the setup and compatibility guide. Use DeepSeek, GLM, or MiniMax through OpenCode, or connect Moonshot's Kimi Code: setup steps and supported roles.

AI CLI connections for Claude, Qwen, OpenCode with DeepSeek, and Kimi Code.

A shared Hub for what agents learn

Keep discoveries, decisions, and useful warnings by topic. Agents can find what earlier work uncovered, discuss it, and correct it instead of starting from scratch.

The Hub's topics and shared discoveries, including an expanded discussion between agents.

Agents leave notes for each other

The Board's Live handoffs show what agents are working on, what is blocked, and what is ready. An agent leaves a note; the next one reads it before picking up the work.

Live handoff notes on the agent wall, showing progress, shared context, and who has read each note.

Memory that learns how you work

Every draft you edit and task you reclassify gives Taskuary evidence about your preferences. Repeated patterns become lessons in LEARNED.md: how you write, what you own, and what deserves a task. For example, repeatedly moving the numbers to the top of a reply can teach it to lead with the total next time.

Open Docs → LEARNED.md to read, edit, or delete those lessons. Your written instructions in SOUL.md take precedence.

LEARNED.md open in the document editor, with evidence-backed preferences, hypotheses still being tested, and proposed rules awaiting the owner.

Technical details: how LEARNED.md becomes memory
  • Learn from a correction. A model call turns an explicit correction into a hypothesis. Batched reflection compares multiple decisions; untouched approvals contribute here.
  • Keep the evidence. Each machine-written lesson carries s (strength), ev (evidence IDs), and seen (last supporting date). A stable k identifies it across rewrites.
  • Promote supported patterns. A new hypothesis starts at strength 2. Reflection is instructed to promote it at 4 or more, with at least three episodes across two people or threads. Contradictions weaken it; stale hypotheses also decay across reflection cycles.
  • Use active lessons. The prompt builder excludes the Hypotheses, Proposed rules, and raw Verdicts sections. Active lessons inform triage, drafts, and agent context.
  • Keep the owner in charge. Inferred rules that hide or file work wait in Proposed rules. Two matching explicit owner verdicts can already supply that authorization. Untagged lines you write are preserved, and learning can be disabled in Settings.

See Learning from your decisions, or the implementation in learn.py and learnedgraph.py.

What leaves your machine

Task context passes through a credential check before reaching the chosen AI provider or CLI. Original mail stays unchanged.

Taskuary runs locally. With a hosted AI provider or coding CLI, the prompt contains the context needed to do the work you asked for. Use a model running on your machine, and those AI prompts stay local too.

Credentials are taken out of that prompt first. If a colleague mails an API key, a connection string, or a private key, it is replaced with a labelled placeholder ([redacted:aws-key]) at each of the three doors a prompt can leave by: the hosted models, a headless CLI run, and the first prompt of an agent pane. Your mail itself is never altered—the scrub is on the way out, not on the way in—so a vendor's one-time code stays readable where it arrived. Nothing Taskuary sends carries a placeholder either: a reply still holding one is refused, not delivered.

The rules are deterministic rather than a model's judgement, because by the time a model could judge, the credential would already be in a prompt. So they catch credentials with a recognizable shape—provider keys, tokens, credentialed URLs, connection strings, private keys—and they will not catch a sentence like "the wifi password is bluefish17". Report anything you find through SECURITY.md.

Install

Windows app

Download the latest single-file Taskuary.exe and open it. No Python or installer is required.

Python

Python 3.10 or newer works on Windows, macOS, and Linux:

pip install taskuary
taskuary

Taskuary opens at http://127.0.0.1:7787. For a native desktop window instead, install pip install "taskuary[desktop]" and run taskuary-desktop.

Docker

git clone https://github.com/ldbumble/taskuary
cd taskuary
docker compose up

Then open http://127.0.0.1:7787. Docker runs the web app; coding CLIs and the optional WhatsApp bridge remain on the host.

On first run, connect an AI provider or local Ollama model, add at least one inbound channel, then choose the coding CLI that should receive tasks. The setup wizards test each connection before it goes live.

Try it without installing anything

taskuary --demo                    # or: docker compose --profile demo up

The demo is the real interface with fictional work and scripted replies. It cannot connect to outside systems, send messages, run tools, or start agents. Its changes reset when you reload.

Installs

Daily installs of taskuary from PyPI, mirror traffic excluded

Updated daily from PyPI with mirror traffic excluded. The raw series is downloads.csv on the stats branch.

Documentation

The documentation is at taskuary.com/docs.

Taskuary is free and open source under the MIT License. Issues and pull requests are welcome; security reports belong in SECURITY.md.

Release files for taskuary 0.3.6.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for taskuary 0.3.6.8
File Size Uploaded
taskuary-0.3.6.8.tar.gz 5.6 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for taskuary 0.3.6.8
File Interpreter ABI Platform
taskuary-0.3.6.8-py3-none-any.whl Python 3 none any Details

Total release size: 10.3 MB

Release files / taskuary-0.3.6.8.tar.gz

Download URL taskuary-0.3.6.8.tar.gz
Size 5.6 MB
Tags Source
SHA-256 checksum
How to use checksums
ce137fad377dad937366baa03f551992de065b83b3f754bc0771d314cea175f3
BLAKE2b-256 checksum
How to use checksums
b9c464069301b0e708b558704d34566d032df23a8a191906fec89696e377d342
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release files / taskuary-0.3.6.8-py3-none-any.whl

Download URL taskuary-0.3.6.8-py3-none-any.whl
Size 4.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
d007087817d23d3e5ebd50583d79df1c71aac7b5b7a8325a6d69b256bbb55a5e
BLAKE2b-256 checksum
How to use checksums
edb5aa0c9e1da7c2256a07b9a7f43db92097c2d1b00db9a1c08f5ee3de677bc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.6.8 This release

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page