Skip to main content

LLM-friendly Markdown task notes CLI

Project description

task-notes

一个面向 LLM/Agent 的任务管理 CLI。
用 Markdown checklist 保存任务,支持多级子任务、稳定 selector(如 1.2.3)、文本/JSON 双输出,以及 Rich 终端展示。

功能

  • 单项目单文件:<project>.md
  • 多级树状任务
  • selector 定位:11.22.1.3
  • 原子写入 + 文件锁(并发安全)
  • Rich 展示(ls 表格、show 树)
  • edit 支持交互选择(方向键/jk + Space + Enter)
  • --json 机读输出

安装与运行

使用 uv(推荐)

在项目目录内:

uv run task --help

临时执行(不安装到全局):

uvx --from . task --help

安装为全局工具:

uv tool install --editable .
task --help

使用 pip

pip install .
task --help

默认数据目录与安全策略

  • 默认目录:~/.task-notes
  • 可自定义目录:--tasks-dir <path>
  • 安全限制:默认禁止写入非 ~/.task-notes 目录;若要使用其他目录,必须显式加:
--unsafe-external-dir

示例:

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

快速开始

task new app-redesign "梳理需求" "实现功能" "验收发布"
task add app-redesign --parent 2 "实现 task ls/show"
task show app-redesign
task next app-redesign
task check app-redesign --path 1
task edit app-redesign --path 2.1 "实现 ls/show/tree 输出"

命令概览

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 edit <project> -i

按键:

  • ↑/↓j/k:移动光标
  • Space:选择当前任务
  • Enter:确认并编辑文本
  • q / Esc:取消

JSON 输出

适合 tools/LLM 集成:

task show app-redesign --json

错误时返回非 0,并输出:

  • ok: false
  • error_code
  • error_message

开发

运行测试:

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

发布到 PyPI(建议流程)

uv build
uvx twine check dist/*
# uvx twine upload 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.0.tar.gz (16.1 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.0-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: task_notes-0.1.0.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":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.0.tar.gz
Algorithm Hash digest
SHA256 e4a1ff7ff782f40f9cf9b052c89e5c194b826a88fb2df2abf433db454c7e2350
MD5 710d337c3c4f26dc86f4c530f6f2b0bb
BLAKE2b-256 979c9dfbb68dabe481027da2ba823aac9700e4f3e2e90cf84499fed57552af53

See more details on using hashes here.

File details

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

File metadata

  • Download URL: task_notes-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6400ca99e26364519f419b9ac1e4ad22e55fff49ec3934c6e682d242d5f7b65b
MD5 d5420e6a2fec7204cc82fc39408648e2
BLAKE2b-256 a20b0dc1a55859be89e2a022c695487bbdfc36939b547f5e065a54d22de7a5c5

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