Loading...
Loading...
Compare original and translation side by side
.mdp/.mdp/.mdp/settings.json.mdp/project.mdcompletedstartedname.mdp/settings.json.mdp/project.mdcompletedstartednamebun install -g github:varunpandey0502/markdown-projectsbun install -g github:varunpandey0502/markdown-projectsmdp project create -p . --preset software
mdp issue create -p . -t "Fix login bug" --type bug --priority High
mdp issue list -p .
mdp issue update -p . --id ISS-1 -s "In Progress"mdp project create -p . --preset software
mdp issue create -p . -t "修复登录bug" --type bug --priority High
mdp issue list -p .
mdp issue update -p . --id ISS-1 -s "In Progress".mdp/
├── settings.json # Schema config: statuses, priorities, labels, types (committed)
├── project.md # Project identity: title, description, instructions, health, log (committed)
├── issues/ # Flat directory of issue folders
│ └── ISS-1-add-auth/
│ └── ISS-1-add-auth.md
├── milestones/ # Flat directory of milestone folders
│ └── M-1-v1-release/
│ └── M-1-v1-release.md
├── docs/ # Documentation
└── templates/ # Issue/milestone templates.mdp/
├── settings.json # 架构配置:状态、优先级、标签、类型(已提交)
├── project.md # 项目标识:标题、描述、操作说明、健康状态、日志(已提交)
├── issues/ # 议题文件夹的扁平目录
│ └── ISS-1-add-auth/
│ └── ISS-1-add-auth.md
├── milestones/ # 里程碑文件夹的扁平目录
│ └── M-1-v1-release/
│ └── M-1-v1-release.md
├── docs/ # 文档
└── templates/ # 议题/里程碑模板.mdp/settings.json{
"issues": {
"prefix": "ISS",
"statuses": {
"triage": [], "backlog": [...], "unstarted": [...],
"started": [...], "completed": [...], "canceled": []
},
"priorities": [...], "labels": [...], "types": [...]
},
"milestones": {
"prefix": "M",
"statuses": {
"backlog": [], "planned": [...], "in_progress": [...],
"completed": [...], "canceled": []
},
"priorities": [...], "labels": [...]
}
}.mdp/project.md---
title: My Project
description: Optional one-line project description
instructions: Optional free-text guidance for LLMs and collaborators
health: on-track
log: []
createdAt: 2025-01-01T00:00:00.000Z
updatedAt: 2025-01-01T00:00:00.000Z
---{ name, description }.mdp/settings.json~/.mdp/settings.jsonsettings.json~/.mdp/settings.json.mdp/settings.json{
"issues": {
"prefix": "ISS",
"statuses": {
"triage": [], "backlog": [...], "unstarted": [...],
"started": [...], "completed": [...], "canceled": []
},
"priorities": [...], "labels": [...], "types": [...]
},
"milestones": {
"prefix": "M",
"statuses": {
"backlog": [], "planned": [...], "in_progress": [...],
"completed": [...], "canceled": []
},
"priorities": [...], "labels": [...]
}
}.mdp/project.md---
title: 我的项目
description: 可选的单行项目描述
instructions: 为LLM和协作者提供的可选自由文本指导
health: on-track
log: []
createdAt: 2025-01-01T00:00:00.000Z
updatedAt: 2025-01-01T00:00:00.000Z
---{ name, description }.mdp/settings.json~/.mdp/settings.jsonsettings.json~/.mdp/settings.json-p <path>-f json|table-q-V{ "ok": true, "data": {...} }{ "ok": false, "error": {...} }-p <path>-f json|table-q-V{ "ok": true, "data": {...} }{ "ok": false, "error": {...} }mdp project create -p <path> [--preset <name>] [-F|--force] [--with-templates] [--no-with-templates] [--issue-prefix <prefix>] [--milestone-prefix <prefix>] [--tags <tags>] [--title <title>] [--description <desc>] [--instructions <text>]mdp project get -p <path> [--no-include-content]mdp project settings -p <path>mdp project stats -p <path>mdp project fix -p <path> [--dry-run]mdp project create -p <path> [--preset <name>] [-F|--force] [--with-templates] [--no-with-templates] [--issue-prefix <prefix>] [--milestone-prefix <prefix>] [--tags <tags>] [--title <title>] [--description <desc>] [--instructions <text>]mdp project get -p <path> [--no-include-content]mdp project settings -p <path>mdp project stats -p <path>mdp project fix -p <path> [--dry-run].mdp/project.mdmdp project log add -p <path> -b "message" [--author <name>] [--health on-track|at-risk|off-track] [--dry-run]mdp project log list -p <path>mdp project log get -p <path> --index <n>mdp project log update -p <path> --index <n> [-b <body>] [--author <name>] [--health <health>] [--dry-run]mdp project log delete -p <path> --index <n> [--dry-run].mdp/project.mdmdp project log add -p <path> -b "消息" [--author <名称>] [--health on-track|at-risk|off-track] [--dry-run]mdp project log list -p <path>mdp project log get -p <path> --index <n>mdp project log update -p <path> --index <n> [-b <内容>] [--author <名称>] [--health <健康状态>] [--dry-run]mdp project log delete -p <path> --index <n> [--dry-run]~/.mdp/settings.jsonmdp project list [--tag <tag>]tagDescriptionsmdp project add <path> [--tags <tags>]mdp project remove <path>mdp project tag <path> --add <tags> | --remove <tags>--add~/.mdp/settings.jsonmdp project list [--tag <标签>]tagDescriptionsmdp project add <path> [--tags <标签>]mdp project remove <path>mdp project tag <path> --add <标签> | --remove <标签>--addmdp tagmdp tag listmdp tag add <tag> [-d "description"]""mdp tag update <tag> -d "description"mdp tag remove <tag> [--force]--forcemdp tagmdp tag listmdp tag add <标签> [-d "描述"]""mdp tag update <标签> -d "描述"mdp tag remove <标签> [--force]--forcemdp issue create -p <path> -t "Title" [options]| Option | Description |
|---|---|
| Issue title (required) |
| Issue type (config-driven) |
| Initial status (default: first status in config) |
| Priority level (default: null) |
| Comma-separated labels |
| Assignee identifier |
| Milestone ID |
| Effort points (positive integer) |
| Actual effort spent |
| Due date (YYYY-MM-DD) |
| Comma-separated issue IDs |
| Parent issue ID |
| Comma-separated issue IDs |
| Comma-separated checklist items |
| Short description |
| Full markdown body (or |
| Template name from .mdp/templates/ |
| Preview without creating |
mdp issue create -p <path> -t "标题" [选项]| 选项 | 描述 |
|---|---|
| 议题标题(必填) |
| 议题类型(由配置驱动) |
| 初始状态(默认:配置中的第一个状态) |
| 优先级(默认:空) |
| 逗号分隔的标签列表 |
| 经办人标识 |
| 里程碑ID |
| 工作量预估(正整数) |
| 实际花费的工作量 |
| 截止日期(格式:YYYY-MM-DD) |
| 逗号分隔的依赖议题ID列表 |
| 父议题ID |
| 逗号分隔的关联议题ID列表 |
| 逗号分隔的检查项列表 |
| 简短描述 |
| 完整Markdown内容(或使用 |
| 来自 |
| 预览创建结果而不实际创建 |
mdp issue list -p <path> [options]| Option | Description |
|---|---|
| Comma-separated status filter |
| Comma-separated type filter |
| Priority filter |
| Comma-separated labels filter |
| Filter by assignee ( |
| Filter by milestone ID ( |
| |
| Filter by parent issue ID ( |
| Created after date (YYYY-MM-DD) |
| Created before date (YYYY-MM-DD) |
| Due before date (YYYY-MM-DD) |
| Due after date (YYYY-MM-DD) |
| Sort: id, title, status, priority, type, created, updated, estimate, spent, dueDate (default: id) |
| Sort order: asc, desc (default: asc) |
mdp issue list -p <path> [选项]| 选项 | 描述 |
|---|---|
| 逗号分隔的状态筛选条件 |
| 逗号分隔的类型筛选条件 |
| 优先级筛选条件 |
| 逗号分隔的标签筛选条件 |
| 按经办人筛选( |
| 按里程碑ID筛选( |
| |
| 按父议题ID筛选( |
| 筛选指定日期之后创建的议题(格式:YYYY-MM-DD) |
| 筛选指定日期之前创建的议题(格式:YYYY-MM-DD) |
| 筛选指定日期之前截止的议题(格式:YYYY-MM-DD) |
| 筛选指定日期之后截止的议题(格式:YYYY-MM-DD) |
| 排序字段:id、title、status、priority、type、created、updated、estimate、spent、dueDate(默认:id) |
| 排序顺序:asc(升序)、desc(降序)(默认:asc) |
mdp issue get -p <path> --id <id> [--no-include-content]mdp issue get -p <path> --id <id> [--no-include-content]mdp issue update -p <path> --id <id> [options]| Option | Description |
|---|---|
| New title |
| New type |
| New status |
| New priority |
| Set assignee ( |
| Set milestone ( |
| Set estimate ( |
| Set spent ( |
| Set due date ( |
| Set parent issue ( |
| Set labels (replaces all) |
| Add labels |
| Remove labels |
| Set blockedBy (replaces all) |
| Add to blockedBy (with cycle detection) |
| Remove from blockedBy |
| Set relatedTo (replaces all) |
| Add to relatedTo |
| Remove from relatedTo |
| Add checklist items |
| Remove checklist items by text |
| Check items by text |
| Uncheck items by text |
| Replace markdown body |
| Preview without writing |
mdp issue update -p <path> --id <id> [选项]| 选项 | 描述 |
|---|---|
| 新标题 |
| 新类型 |
| 新状态 |
| 新优先级 |
| 设置经办人( |
| 设置关联里程碑( |
| 设置工作量预估( |
| 设置实际花费工作量( |
| 设置截止日期( |
| 设置父议题( |
| 设置标签(替换所有现有标签) |
| 添加标签 |
| 移除标签 |
| 设置依赖议题(替换所有现有依赖) |
| 添加依赖议题(包含循环检测) |
| 移除依赖议题 |
| 设置关联议题(替换所有现有关联) |
| 添加关联议题 |
| 移除关联议题 |
| 添加检查项 |
| 按文本移除检查项 |
| 按文本标记检查项为已完成 |
| 按文本标记检查项为未完成 |
| 替换Markdown内容 |
| 预览更新结果而不实际写入 |
mdp issue delete -p <path> --id <id> [--dry-run]mdp issue delete -p <path> --id <id> [--dry-run]mdp issue log add -p <path> --id <id> -b "message" [--author <name>] [--dry-run]
mdp issue log list -p <path> --id <id>
mdp issue log get -p <path> --id <id> --index <n>
mdp issue log update -p <path> --id <id> --index <n> [--author <a>] [-b <body>] [--dry-run]
mdp issue log delete -p <path> --id <id> --index <n> [--dry-run]mdp issue log add -p <path> --id <id> -b "消息" [--author <名称>] [--dry-run]
mdp issue log list -p <path> --id <id>
mdp issue log get -p <path> --id <id> --index <n>
mdp issue log update -p <path> --id <id> --index <n> [--author <a>] [-b <内容>] [--dry-run]
mdp issue log delete -p <path> --id <id> --index <n> [--dry-run]echo '<json-array>' | mdp issue batch-create -p <path> [--dry-run]titleissue createtypestatusprioritylabelsassigneemilestoneestimatespentdueDateblockedByparentrelatedTochecklistdescriptioncontenttemplatelabelsblockedBystring[]{
"ok": true,
"data": {
"total": 3, "succeeded": 2, "failed": 1,
"results": [
{ "ok": true, "data": { "id": "ISS-4", "title": "...", "filePath": "..." } },
{ "ok": false, "error": { "code": "INVALID_STATUS", "message": "...", "index": 2 } }
]
}
}echo '<json-array>' | mdp issue batch-create -p <path> [--dry-run]titleissue createtypestatusprioritylabelsassigneemilestoneestimatespentdueDateblockedByparentrelatedTochecklistdescriptioncontenttemplatelabelsblockedBystring[]{
"ok": true,
"data": {
"total": 3, "succeeded": 2, "failed": 1,
"results": [
{ "ok": true, "data": { "id": "ISS-4", "title": "...", "filePath": "..." } },
{ "ok": false, "error": { "code": "INVALID_STATUS", "message": "...", "index": 2 } }
]
}
}echo '<json-array>' | mdp issue batch-update -p <path> [--dry-run]idissue updatetitletypestatusprioritylabelsaddLabelsremoveLabelsassigneemilestoneestimatespentdueDateblockedByaddBlockedByremoveBlockedByparentrelatedToaddRelatedToremoveRelatedToaddChecklistremoveChecklistcheckuncheckcontentstring[]changesfilePathecho '<json-array>' | mdp issue batch-update -p <path> [--dry-run]idissue updatetitletypestatusprioritylabelsaddLabelsremoveLabelsassigneemilestoneestimatespentdueDateblockedByaddBlockedByremoveBlockedByparentrelatedToaddRelatedToremoveRelatedToaddChecklistremoveChecklistcheckuncheckcontentstring[]changesfilePathmdp milestone create -p <path> -t "Title" [options]| Option | Description |
|---|---|
| Milestone title (required) |
| Initial status (default: first status in config) |
| Priority level (default: null) |
| Comma-separated labels |
| Start date (YYYY-MM-DD) |
| Due date (YYYY-MM-DD) |
| Comma-separated checklist items |
| Short description |
| Full markdown body |
| Template name from .mdp/templates/ |
| Preview without creating |
mdp milestone create -p <path> -t "标题" [选项]| 选项 | 描述 |
|---|---|
| 里程碑标题(必填) |
| 初始状态(默认:配置中的第一个状态) |
| 优先级(默认:空) |
| 逗号分隔的标签列表 |
| 开始日期(格式:YYYY-MM-DD) |
| 截止日期(格式:YYYY-MM-DD) |
| 逗号分隔的检查项列表 |
| 简短描述 |
| 完整Markdown内容 |
| 来自 |
| 预览创建结果而不实际创建 |
mdp milestone list -p <path> [options]| Option | Description |
|---|---|
| Comma-separated status filter |
| Priority filter |
| Comma-separated labels filter |
| |
| Sort: id, title, status, priority, created, updated, dueDate, completion (default: id) |
| Sort order: asc, desc (default: asc) |
mdp milestone list -p <path> [选项]| 选项 | 描述 |
|---|---|
| 逗号分隔的状态筛选条件 |
| 优先级筛选条件 |
| 逗号分隔的标签筛选条件 |
| |
| 排序字段:id、title、status、priority、created、updated、dueDate、completion(默认:id) |
| 排序顺序:asc(升序)、desc(降序)(默认:asc) |
mdp milestone get -p <path> --id <id> [--no-include-content]mdp milestone get -p <path> --id <id> [--no-include-content]mdp milestone update -p <path> --id <id> [options]| Option | Description |
|---|---|
| New title |
| New status |
| New priority |
| Set start date ( |
| Set due date ( |
| Set labels (replaces all) |
| Add labels |
| Remove labels |
| Add checklist items |
| Remove checklist items by text |
| Check items by text |
| Uncheck items by text |
| Replace markdown body |
| Preview without writing |
mdp milestone update -p <path> --id <id> [选项]| 选项 | 描述 |
|---|---|
| 新标题 |
| 新状态 |
| 新优先级 |
| 设置开始日期( |
| 设置截止日期( |
| 设置标签(替换所有现有标签) |
| 添加标签 |
| 移除标签 |
| 添加检查项 |
| 按文本移除检查项 |
| 按文本标记检查项为已完成 |
| 按文本标记检查项为未完成 |
| 替换Markdown内容 |
| 预览更新结果而不实际写入 |
mdp milestone delete -p <path> --id <id> [--dry-run]mdp milestone delete -p <path> --id <id> [--dry-run]mdp milestone progress -p <path> --id <id>mdp milestone progress -p <path> --id <id>mdp milestone log add -p <path> --id <id> -b "message" [--author <name>] [--dry-run]
mdp milestone log list -p <path> --id <id>
mdp milestone log get -p <path> --id <id> --index <n>
mdp milestone log update -p <path> --id <id> --index <n> [--author <a>] [-b <body>] [--dry-run]
mdp milestone log delete -p <path> --id <id> --index <n> [--dry-run]mdp milestone log add -p <path> --id <id> -b "消息" [--author <名称>] [--dry-run]
mdp milestone log list -p <path> --id <id>
mdp milestone log get -p <path> --id <id> --index <n>
mdp milestone log update -p <path> --id <id> --index <n> [--author <a>] [-b <内容>] [--dry-run]
mdp milestone log delete -p <path> --id <id> --index <n> [--dry-run]mdp search -p <path> -q "query text" [--limit <n>]--entity projectmdp search -p <path> -q "查询文本" [--limit <n>]--entity projectmdp project create -p . --preset softwaremdp issue create--type--labelsmdp issue batch-createmdp issue batch-updatemdp issue update --id ISS-1 -s "In Progress"mdp milestone progressmdp issue listmdp project create -p . --preset softwaremdp issue create--type--labelsmdp issue batch-createmdp issue batch-updatemdp issue update --id ISS-1 -s "In Progress"mdp milestone progressmdp issue list