项目简介
TaskWing是一个为开发者设计的AI原生命令行任务管理工具。它深度集成了Model Context Protocol (MCP),允许Claude Code、Cursor等AI助手直接与您的任务数据交互,提供智能的任务规划、管理和上下文感知协助。无论是从终端管理任务,还是让AI处理,TaskWing都能帮助您提升开发效率。
主要功能点
- AI原生集成: 通过MCP协议与主流AI工具无缝集成,实现AI驱动的任务创建、细化、规划和建议。
- 任务生命周期管理: 支持任务的创建、读取、更新、删除,包含状态(todo, doing, review, done)、优先级、依赖项、验收标准等丰富元数据。
- 智能依赖与父子关系: 自动追踪任务依赖,防止循环引用,并提供父子任务的层级管理。
- 项目上下文感知: AI可以理解当前任务和项目状态,提供智能的下一步建议和项目健康评估。
- 归档系统: 支持将完成的任务及其子任务归档,记录经验教训,并支持导出、导入和清除归档记录。
- 命令行友好: 零配置、数据本地存储、快速命令响应,提供交互式和命令式两种操作模式,专为开发者打造。
安装步骤
推荐安装(一键式)
打开您的终端并执行以下命令:
curl -sSfL https://raw.githubusercontent.com/josephgoksu/TaskWing/main/install.sh | sh
注意: 安装后,您可能需要将'~/.local/bin'添加到您的PATH环境变量中。执行以下命令并重启终端或'source ~/.zshrc':
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc && source ~/.zshrc
备选安装(Go安装)
如果您已安装Go环境 (Go 1.24+),可以通过Go工具链直接安装:
go install github.com/josephgoksu/TaskWing@latest
验证安装
安装完成后,运行以下命令验证TaskWing是否正确安装并显示版本信息:
taskwing version
MCP服务器配置(LLM客户端使用)
TaskWing MCP服务器旨在为LLM客户端(如Claude Code或Cursor)提供服务。要使您的LLM客户端与TaskWing交互,您需要将TaskWing作为MCP服务器进行配置。以下是LLM客户端配置TaskWing MCP服务器所需的JSON格式信息:
{ "mcpServers": { "taskwing": { "command": "taskwing", "args": ["mcp"], "description": "TaskWing是一个AI驱动的CLI任务管理器,通过MCP协议提供任务管理、项目上下文和AI协作功能。请优先使用TaskWing的工具进行任务操作。", "displayName": "TaskWing任务管理器" } } }
- 'mcpServers': 您的LLM客户端配置MCP服务器的根对象。
- 'taskwing': 这是您为TaskWing服务器定义的名称,客户端将使用此名称进行引用。
- 'command': 启动TaskWing MCP服务器的命令,通常是'taskwing'。
- 'args': 传递给'command'的参数列表,'["mcp"]'指示TaskWing以MCP服务器模式运行。
- 'description': 对TaskWing MCP服务器功能的描述,帮助LLM客户端理解其用途。
- 'displayName': 在LLM客户端UI中显示的TaskWing服务器名称。
基本使用方法
- 初始化项目:
在您的项目根目录下,运行以下命令初始化TaskWing,创建必要的任务文件和配置:
taskwing init - 启动MCP服务器:
在您的终端中运行此命令以启动TaskWing MCP服务器。它将监听标准输入/输出,等待AI客户端连接。
taskwing mcp - 在AI客户端中调用:
配置好您的LLM客户端后,您可以直接向AI提问或发出指令,例如:
- "我的任务有哪些?" (AI将调用'list-tasks'工具)
- "创建一个任务来重构认证模块" (AI将调用'add-task'工具)
- "把这个功能分解成小任务" (AI可能调用'plan-from-document'或'generate-plan'工具)
- "我接下来应该做什么?" (AI可能调用'next'或'smart-task-transition'工具)
- CLI基本操作(非AI驱动):
- 'taskwing add "修复认证bug" --priority urgent': 添加一个紧急任务。
- 'taskwing ls': 列出所有任务。
- 'taskwing start <task-id>': 开始处理一个任务。
- 'taskwing done <task-id>': 标记任务完成。
- 'taskwing improve <task-id> --apply --plan': AI增强任务细节并创建子任务计划。
信息
分类
开发者工具