Skip to main content

LLM-friendly Markdown task notes CLI

Project description

task-notes

PyPI | GitHub | 中文文档

task-notes is an LLM/agent-friendly task CLI that stores project plans in Markdown checklists.

It supports nested task trees, selector-based operations (1, 1.2, 2.1.3), rich terminal output, and machine-safe JSON mode.

Install

From PyPI:

pip install task-notes

With uvx (no global install):

uvx --from task-notes task --help

Install as a global tool with uv:

uv tool install task-notes
task --help

Quick Start

task new app-redesign "Clarify scope" "Implement features" "Ship"
task add app-redesign --parent 2 "Implement ls/show output"
task show app-redesign
task next app-redesign
task check app-redesign --path 1
task edit app-redesign --path 2.1 "Implement ls/show/tree output"

Commands

task ls [--json]
task show <project> [--json]
task next <project> [--json]
task new <project> <content...> [--json]
task add <project> [--parent <selector>] <content...> [--json]
task edit <project> --path <selector> <content> [--json]
task edit <project> -i [--json]
task del <project> --path <selector> [--json]
task rm <project> [--json]
task check <project> --path <selector> [--json]
task uncheck <project> --path <selector> [--json]
task toggle <project> --path <selector> [--json]
task version [--json]

Data Directory and Safety

  • Default tasks directory: ~/.task-notes
  • You can override with --tasks-dir <path>
  • Non-default directories are blocked by default
  • To allow a non-default directory, explicitly add:
--unsafe-external-dir

Example:

task --unsafe-external-dir --tasks-dir ./tasks ls

Interactive Edit

task edit <project> -i

Keys:

  • Up/Down or j/k: move cursor
  • Space: select target task
  • Enter: confirm selection
  • q or Esc: cancel

JSON Output (Recommended for Tools/LLMs)

task show app-redesign --json

In automation, prefer --json to avoid parsing terminal formatting.

Development

Run tests:

uv run python -m unittest discover -s tests -p 'test_*.py' -v

Build and check package:

uv build
uvx twine check dist/*

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

task_notes-0.1.2.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

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

task_notes-0.1.2-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file task_notes-0.1.2.tar.gz.

File metadata

  • Download URL: task_notes-0.1.2.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for task_notes-0.1.2.tar.gz
Algorithm Hash digest
SHA256 d93f8d4005508e294753de4e911b4a960c9c8549c8fccd5571ae6c48bfe6efb2
MD5 e37cd5d8b7fae7310c65578b3fcf7c6d
BLAKE2b-256 aa32e8b2d3cad28f0467696f6390ca5a430100f50020e9043e7b0c569952aec0

See more details on using hashes here.

File details

Details for the file task_notes-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: task_notes-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for task_notes-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f4cec796d5151b93125c777ced76b1411939612a82bc64e5cef5c72844f33040
MD5 10fa6008a58d2b4d5391c9cf8cd33bc9
BLAKE2b-256 eaa23f98aad8860dd76d623aeb79aac9ca05b7b283e4e3d1ce648f9b50a5e6f6

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