|
2 | 2 |
|
3 | 3 | [](https://forthebadge.com) [](https://forthebadge.com) [](https://forthebadge.com) [](https://forthebadge.com) [](https://forthebadge.com) |
4 | 4 |
|
5 | | -  |
| 5 | +  |
6 | 6 |
|
7 | | -**Taskmaster AI** is an advanced artificial intelligence solution designed for task and project management, particularly in the field of software development. It acts as an orchestrator of AI agents, capable of maintaining long-term context and effectively managing complex, multi-step tasks. This helps prevent the context loss that often occurs with traditional AI tools during large-scale projects. Taskmaster AI automates the creation of Product Requirement Documents (PRDs), breaks down tasks, plans next steps, and guides AI agents to implement tasks in a coherent and organized manner. It supports multiple AI providers (OpenAI, Anthropic, Google Gemini, etc.) and offers a multi-role configuration (main, research, fallback) to optimize AI resource allocation based on project needs. |
| 7 | +**TaskMaster CLI** is an interactive command-line interface designed to simplify the management of complex projects using **TaskMaster AI**. |
8 | 8 |
|
9 | | -- **Github**: [claude-task-master](https://github.com/eyaltoledano/claude-task-master) |
10 | | -- **Website**: [task-master.dev](https://www.task-master.dev/) |
| 9 | +## About TaskMaster AI |
11 | 10 |
|
12 | | -**Taskmaster CLI** was created to simplify and streamline the use of Taskmaster AI by providing an intuitive, interactive command-line interface. Instead of memorizing complex commands or navigating configuration files manually, users can easily manage AI agents, break down tasks, generate PRDs, and orchestrate project workflows step by step—all directly from the terminal. This tool makes Taskmaster AI more accessible and efficient for developers, allowing them to focus on their projects while the CLI handles the underlying complexity. |
| 11 | +**TaskMaster AI** is an advanced AI agent orchestrator for complex project management, especially in software development. It prevents context loss often seen in traditional AI tools during large-scale projects by maintaining long-term context. TaskMaster AI automates PRD creation, task breakdown, and planning, guiding AI agents to implement tasks coherently. It supports multiple AI providers (OpenAI, Anthropic, Google Gemini, etc.) and features a multi-role configuration (main, research, fallback) to optimize AI resource allocation. |
| 12 | + |
| 13 | +- **Website**: [task-master.dev](https://www.task-master.dev) |
| 14 | +- **GitHub**: [claude-task-master](https://github.com/eyaltoledano/claude-task-master) |
| 15 | +- **Discord**: [TaskMaster AI Community](https://discord.com/invite/taskmasterai) |
| 16 | + |
| 17 | +## Why TaskMaster CLI? |
| 18 | + |
| 19 | +TaskMaster CLI was created to streamline the use of TaskMaster AI with an intuitive and interactive interface. It aims to: |
| 20 | + |
| 21 | +- **Simplify Usage**: Hide the complexity of underlying commands behind a user-friendly interactive interface. |
| 22 | +- **Preserve Core Logic**: Operate as a wrapper without altering the core system of TaskMaster AI. |
| 23 | +- **Automate Workflows**: Optimize common operations to reduce manual intervention. |
| 24 | +- **Enhance Flexibility**: Provide new features for managing tasks, dependencies, and processing order. |
13 | 25 |
|
14 | 26 | --- |
15 | 27 |
|
16 | | -### 📌 Usage |
| 28 | +## 🚀 Getting Started |
| 29 | + |
| 30 | +### Installation |
| 31 | + |
| 32 | +Install TaskMaster CLI globally on your system: |
| 33 | + |
| 34 | +```bash |
| 35 | +npm install -g taskmaster-cli |
| 36 | +``` |
| 37 | + |
| 38 | +### Standard Workflow |
| 39 | + |
| 40 | +1. **Initialize a new project** using the dedicated command. |
| 41 | +2. **Configure your AI models** (main, research, fallback) and response language. |
| 42 | +3. **Generate tasks automatically** from a PRD file (text or Markdown). |
| 43 | +4. **Generate the associated task files**. |
| 44 | +5. **Break down main tasks into subtasks** for better granularity. |
| 45 | +6. **Manage project progress** through the interactive CLI, including CRUD operations, dependency management, complexity analysis, reporting, and more. |
| 46 | + |
| 47 | +--- |
17 | 48 |
|
18 | | -This project is still in development and not yet ready for use, but you can contribute to its development by making pull requests, reporting issues, and suggesting new features ... |
| 49 | +## ✨ Features |
| 50 | + |
| 51 | +TaskMaster CLI provides a comprehensive set of features to manage your entire project lifecycle. |
| 52 | + |
| 53 | +### Functional Scope |
| 54 | + |
| 55 | +- **Initialization & Configuration**: |
| 56 | + - Global package installation. |
| 57 | + - Create new TaskMaster projects. |
| 58 | + - Define main, research, and fallback AI models. |
| 59 | + - Set the response language. |
| 60 | +- **Task Generation & Decomposition**: |
| 61 | + - Generate tasks from a PRD (txt, markdown). |
| 62 | + - Generate task files. |
| 63 | + - Automatically decompose tasks into subtasks. |
| 64 | +- **Task Management (CRUD)**: |
| 65 | + - **View**: Tree display, status filtering, detailed view, and show next task. |
| 66 | + - **Add**: Add tasks/subtasks via AI prompts or from a PRD. |
| 67 | + - **Update**: Modify tasks/subtasks, manage statuses, and convert between tasks and subtasks. |
| 68 | + - **Delete**: Remove tasks, subtasks, and dependencies. |
| 69 | +- **Dependency Management**: |
| 70 | + - Add dependencies to tasks. |
| 71 | + - Automatic validation and correction of inconsistencies. |
| 72 | +- **Analysis, Reporting & Documentation**: |
| 73 | + - Complexity evaluation. |
| 74 | + - Report generation. |
| 75 | + - Synchronization with documentation. |
| 76 | +- **Backup, Restore & Cleanup**: |
| 77 | + - Save and restore the state of all tasks and configurations. |
| 78 | + - Massively clean up data (tasks, subtasks, dependencies). |
| 79 | + |
| 80 | +### Command Tree |
| 81 | + |
| 82 | +``` |
| 83 | +TMAI-CLI |
| 84 | +├── 🚀 Initialization and Configuration |
| 85 | +│ ├── 📦 1 - Install/Upgrade TMAI |
| 86 | +│ ├── ✨ 2 - Initialize TMAI | Update/Fix rules |
| 87 | +│ ├── 🔧 3 - Configure AI models (interactive) |
| 88 | +│ ├── ⏩ Configure AI models (quickly) |
| 89 | +│ └── 🌐 4 - Set response language |
| 90 | +│ |
| 91 | +├── 📄 Generation and Decomposition |
| 92 | +│ ├── 📓 1 - Generate tasks from PRD (AI) |
| 93 | +│ ├── 📄 2 - Generate task files from tasks.json |
| 94 | +│ └── 🏭 3 - Decompose all tasks (AI) |
| 95 | +│ |
| 96 | +├── ✅ Task Management (CRUD) |
| 97 | +│ ├── 🔗 List and Navigation |
| 98 | +│ │ ├── 📋 List tasks |
| 99 | +│ │ ├── 🔎 Show task details |
| 100 | +│ │ └── ➡️ Show next task |
| 101 | +│ │ |
| 102 | +│ ├── ➕ Add tasks |
| 103 | +│ │ ├── ➕ Add task (AI) |
| 104 | +│ │ ├── ➕ Add tasks from PRD (AI) |
| 105 | +│ │ ├── ➕ Add subtask (AI) |
| 106 | +│ │ └── ➕ Add subtask (manual) |
| 107 | +│ │ |
| 108 | +│ ├── ✏️ Update tasks |
| 109 | +│ │ ├── ✏️ Update task (AI) |
| 110 | +│ │ ├── ✏️ Update multiple tasks (AI) |
| 111 | +│ │ ├── ✏️ Update subtask (AI) |
| 112 | +│ │ ├── ✏️ Update task/subtask status |
| 113 | +│ │ ├── ✏️ Convert task to subtask |
| 114 | +│ │ └── ✏️ Convert subtask to task |
| 115 | +│ │ |
| 116 | +│ └── 🗑️ Delete tasks |
| 117 | +│ ├── 🗑️ Delete task (with subtasks) |
| 118 | +│ ├── 🗑️ Delete a subtask |
| 119 | +│ ├── 🗑️ Delete all subtasks from a task |
| 120 | +│ ├── 🗑️ Delete all dependencies (safe) |
| 121 | +│ └── 🗑️ Delete all dependencies (unsafe) |
| 122 | +│ |
| 123 | +├── 🔗 Dependencies |
| 124 | +│ ├── 📎 Add dependency |
| 125 | +│ ├── ✅ Validate dependencies |
| 126 | +│ └── 🔧 Fix dependencies |
| 127 | +│ |
| 128 | +├── 📊 Analysis, Report, Documentation |
| 129 | +│ ├── 📊 Analyze task complexity |
| 130 | +│ ├── 📄 Show complexity report |
| 131 | +│ └── 📚 Sync tasks with README.md |
| 132 | +│ |
| 133 | +├── 💾 Backup, Restore and Clear |
| 134 | +│ ├── 💾 Backup tasks |
| 135 | +│ ├── 🔄 Restore tasks |
| 136 | +│ ├── 🧹 Clear all dependencies |
| 137 | +│ ├── 🧹 Clear all subtasks (only) |
| 138 | +│ └── 🧹 Clear all tasks + related files |
| 139 | +│ |
| 140 | +└── 🚪 Exit |
| 141 | +``` |
19 | 142 |
|
20 | 143 | --- |
21 | 144 |
|
22 | | -### 📌 Scripts |
| 145 | +## 🗺️ Roadmap |
| 146 | + |
| 147 | +- [ ] Automatic dependency regeneration. |
| 148 | +- [ ] Ensure accuracy and consistency in tag application. |
| 149 | + |
| 150 | +--- |
| 151 | + |
| 152 | +## ❤️ Acknowledgements & Contributing |
| 153 | + |
| 154 | +This project would not have been possible without the **TaskMaster AI team**, as it is built entirely on their exceptional ecosystem. |
| 155 | + |
| 156 | +We welcome contributions to improve the project! Whether you want to contribute to **TaskMaster AI Core** or **TaskMaster CLI**, feel free to make pull requests, report issues, or suggest new features. |
| 157 | + |
| 158 | +### For Developers |
| 159 | + |
| 160 | +The following scripts are available for developing the CLI itself. |
23 | 161 |
|
24 | 162 | **Start** |
25 | 163 |
|
@@ -91,8 +229,6 @@ This project is still in development and not yet ready for use, but you can cont |
91 | 229 |
|
92 | 230 | - 📜 `qtype:tasks` - Generate types for tasks.json file. |
93 | 231 |
|
94 | | ---- |
95 | | - |
96 | | -### 📌 Build |
| 232 | +### Build Target |
97 | 233 |
|
98 | | -When using the **build.js** file in this boilerplate, it's important to note the significance of the **target** option. By default, if the target option is not specified in the **build.js** file, it will be set to `browser`. However, for projects utilizing the `bun.js` runtime environment, it's imperative to explicitly set the target to `bun`. This guarantees compatibility with the `bun` shell environment and prevents unexpected behavior. Furthermore, it's noteworthy that the `target` supports three possible values: `browser`, `bun`, and `node`, providing flexibility in defining the build target according to specific project requirements. |
| 234 | +When using the **build.js** file, it's important to note the significance of the **target** option. By default, it is set to `browser`. For projects utilizing the `bun.js` runtime, it's imperative to explicitly set the target to `bun`. This ensures compatibility with the `bun` shell environment. The `target` supports three values: `browser`, `bun`, and `node`. |
0 commit comments