Skip to main content

Version-controlled task management for AI agents

Project description

TaskManager.exe

Version-controlled task management for AI agents. Agents use familiar file editing tools; versioning and sync happen transparently via jj (jujutsu).

Problem

AI agents using file-based task systems lose work when:

  • Multiple agents edit the same file
  • Context resets mid-task and overwrites with stale state
  • No history to recover from
  • Agents go in circles - after context reset, they repeat mistakes because they don't know what was already tried

Installation

Requires Python 3.11+ and jj.

pipx install taskmanager-exe
# or
uvx taskmanager-exe

Quick Start

# Initialize in your repo
taskman init

# Install MCP server config
taskman install-mcp claude    # or: cursor, codex

# Install Claude Code skills (optional)
taskman install-skills

To create a worktree with its own .agent-files/:

taskman wt my-feature    # creates worktrees/my-feature/ with git worktree + jj clone

How It Works

Agent
  │
  ├── Edit tool ────────► .agent-files/ (jj repo)
  │   (file ops)                │
  │                        push/pull
  └── MCP Server ───────────────┼──────────────────►
      (batch/sync)              ▼
                        .agent-files.git/ (bare origin)
  • Agents edit files with their normal Edit tool
  • jj auto-snapshots every change (no explicit commit needed)
  • MCP tools handle sync and history queries
  • Bare git origin serializes concurrent access across worktrees

CLI Commands

taskman init                    # create .agent-files.git/ + .agent-files/
taskman wt <name>               # create worktrees/<name>/ with git worktree + jj clone
taskman install-mcp <agent>     # install MCP config (claude, cursor, codex)
taskman install-skills          # install skill files to ~/.claude/commands/
taskman uninstall-mcp <agent>   # remove MCP config
taskman uninstall-skills        # remove skill files

taskman describe <reason>       # create named checkpoint
taskman sync <reason>           # full sync: describe + fetch + rebase + push
taskman history-diffs <file> <start> [end]    # diffs across revision range
taskman history-batch <file> <start> [end]    # file content at each revision
taskman history-search <pattern> [file] [limit]  # search history

taskman stdio                   # run MCP server (stdio transport)

MCP Tools

When installed, these tools are available to agents:

Tool Description
describe(reason) Create named checkpoint
sync(reason) Full sync workflow
history_diffs(file, start, end) Aggregate diffs across range
history_batch(file, start, end) File content at all revisions
history_search(pattern, file, limit) Search history for pattern

Direct jj Commands

Agents can also use jj directly for simple operations:

jj status                    # current state
jj log                       # view history
jj diff                      # see changes
jj restore --from <rev> <file>  # restore file from revision

Task File Structure

.agent-files/
  STATUS.md           # Task index, session state
  LONGTERM_MEM.md     # Architecture (months+)
  MEDIUMTERM_MEM.md   # Patterns, gotchas (weeks)
  tasks/
    TASK_<slug>.md    # Individual tasks
    _archive/         # Completed tasks

Sync Model

Sync at task boundaries:

  • Session start: pull
  • /continue: pull
  • /handoff: push
  • Task complete: push

On conflict, agent resolves with Edit tool, then calls sync again.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

taskmanager_exe-0.2.1.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

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

taskmanager_exe-0.2.1-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file taskmanager_exe-0.2.1.tar.gz.

File metadata

  • Download URL: taskmanager_exe-0.2.1.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for taskmanager_exe-0.2.1.tar.gz
Algorithm Hash digest
SHA256 011c0900cfc871c775100fbca2c5d40d1141b43335e22b42557cbb322c17deea
MD5 24aaea482d7c46fbc11b110263453d75
BLAKE2b-256 45caf706cf017a851258fd0c1e24d0a796640e622920aa27fd1adda5c46ae8c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for taskmanager_exe-0.2.1.tar.gz:

Publisher: publish.yml on charles-cooper/TaskManager.exe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file taskmanager_exe-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for taskmanager_exe-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 16fdd858c2ae5405b9bdbe598c5b40633ad8fde132b5d222f81f1cd737922360
MD5 7956af0c7e0a917b74273c300c3e02dd
BLAKE2b-256 4848e241b53bde5dd6d2fbafd32edaabf704f94d6483005f4bdf653626f34ab9

See more details on using hashes here.

Provenance

The following attestation bundles were made for taskmanager_exe-0.2.1-py3-none-any.whl:

Publisher: publish.yml on charles-cooper/TaskManager.exe

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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