tasq
Local-first task tracking

No duplicate work. Agents stay aligned.

The project tracker you share with your agents. They claim work, prove it is done, and pick up where the last session died. You stay in the loop.

npx @tasq-run/cli@0.4.0 demo
coordination / live modellocal
planner
builder
human
shared ledgertasq
taskclaimattemptevidence

Stop losing the thread

Tasks, owners, attempts and evidence survive model changes, process crashes and handoffs.

Make ownership explicit

Expiring claims and monotone fences prevent two workers from quietly acting as the current owner.

Keep authority separate

An agent can propose, execute and report without silently granting itself permission or completion.

Tasq Local 0.4.0 is available now. You and your agents share one machine and one store. Server and cross-machine coordination are not shipped yet.

Verify product status

An agent said done.
Was it?

Most task tools treat “I ran the command” and “the work is finished” as the same event. Tasq keeps them apart, so every handoff has something you can inspect.

01Task

The outcome still owed

02Claim

Temporary right to work

03Attempt

One execution, not the goal

04Evidence

The receipt it actually happened

05Decision

Independent when policy requires

06Done

Explicit and auditable

your own work
tasq add "Renew the domain" --due 2026-09-01 --priority 2
tasq next
tasq done <id>

For you

A real tracker, not a scratchpad.

Areas, goals, projects and tasks. Due dates, recurrences and dependencies. tasq next tells you what to do now. One SQLite file you own, no account and no cloud.

your own work
tasq add "Renew the domain" --due 2026-09-01 --priority 2
tasq next
tasq done <id>

For your agents

One command to plug them in.

Claude Code, Codex or any MCP client reads the same ledger you do. They take work with an expiring claim, so two agents never start the same task, and they cannot mark anything done without a receipt you can inspect.

connect an agent
tasq agent install claude --space my/project --actor claude:main

See the shared state locally.

The read-only Console shows tasks, claims, resources, evidence, resolution decisions and audit history from the same local ledger. It binds only to loopback.

The real Tasq Local Console showing a mature coordination workspace
local console
TASQ="$HOME/.local/share/tasq/node_modules/.bin/tasq"
"$TASQ" web --tenant robotics/team-a
"$TASQ" web status --tenant robotics/team-a --json
This is not tasq.run and it is not a hosted dashboard. Keep the listener on 127.0.0.1; do not expose it through a generic reverse proxy.

Clean boundaries

Own the truth.
Not the whole stack.

Tasq is deliberately headless. Your models, workflows and providers stay replaceable because Core owns only coordination state.

01Agent runtime

Reasoning, tools, execution

02Policy

Priority and domain decisions

03Connector

Provider credentials and I/O

04Tasq kernel

Durable coordination truth

No stored code Injected clock No provider ontology

Use what exists.
See what does not.

Every status below comes from the versioned product matrix. A designed server never masquerades as a shipped endpoint.

ShapeStatusWhat it isEntrypoints
Tasq CoreIntegrationEmbedded TypeScript kernelembedded_typescript, extension_sdk, protocol_adapters, replication_kernel
Tasq LocalCertifiedCLI, stdio MCP and read-only Consolecli_json, mcp_stdio, local_console, markdown_projection
Tasq ServerCandidateAuthenticated self-hosted network productserver_daemon, rest, remote_mcp, remote_enrollment, hosted_console
Tasq CloudCandidateManaged Tasq Server operationcloud_control_plane, cloud_bff

Today: Local 0.4.0 is a protected public alpha. Server, remote clients and Cloud have source candidates but are still not shipped.

Inspect product truth

Start local

Give your agents something durable to agree on.

Install the protected alpha, create one workspace and connect the first independent actor.

Install the public alpha