使用说明
老年人
Markdown原生项目管理。 todo.md 和 roadmap.md 是真理的唯一来源。CLI、Web GUI和MCP服务器——所有这些都由无损降价引擎提供支持。
快速开始
npx aginear init # Creates todo.md, roadmap.md, .devplan/config.json
npx aginear list # View tasks
npx aginear serve # Launch web GUI at http://localhost:4040
设置
需要Node.js>=18。
cd your-repo
npx aginear init
这将创建:
your-repo/
├── todo.md # Your tasks (editable by hand or via CLI/GUI)
├── roadmap.md # Your milestones
├── .devplan/
│ └── config.json # Per-repo configuration
└── .gitignore # .devplan/ entry appended automatically
这两个markdown文件都是您可以直接编辑的——AGINEAR保留了您添加的每一个字节的格式(空行、散文、注释)。
全局安装(可选)
npm install -g aginear
Markdown格式
todo.md
# My Project
## Backlog
- [ ] Set up database @aditya #backend !high ^2025-06-01
- [ ] Write API docs #docs
## In Progress
- [ ] Build auth flow @aditya #backend !critical
- [x] Design token schema
- [ ] Implement JWT validation
- [ ] Add RS256 support
- [ ] Write auth middleware
Notes about the auth flow.
## Done
- [x] Initialize repo
章节 是 ## 标题——它们成为GUI中的看板列。
任务 是 - [ ] (不完整)或 - [x] (完整)列出项目。
子任务 在其父级下缩进2个空格。深度可达3层。
备注 在任务(不是列表项)下缩进纯文本。
内联元数据 可以出现在任务标题的任何位置:
| 标记 | 含义 | 示例 |
|---|---|---|
@name |
受让人 | @aditya |
#tag |
标签(允许多个) | #backend #api |
!priority |
优先级 | !critical, !high, !medium, !low |
^YYYY-MM-DD |
到期日 | ^2025-06-01 |
路线图.md
# Product Roadmap
## MVP Launch
status: in-progress
progress: 60%
Core features for initial release.
- [x] User authentication
- [x] Basic CRUD
- [ ] Payment integration
## V2 Features
status: planned
- [ ] Analytics dashboard
- [ ] Export to CSV
里程碑 是 ## 标题。
元数据 是 key: value 标题下的行:
status:—planned,in-progress,completed,blockedprogress:—0%到100%
描述 是元数据和任务项之间的任何散文文本。
CLI参考
任务管理
# List all tasks
aginear list
aginear list --section "In Progress"
aginear list --tag backend
aginear list --assignee aditya
# Add a task
aginear add "Implement search"
aginear add "Build dashboard" --section "In Progress" --assign aditya --priority high --tag frontend --tag ui --due 2025-06-01
# Mark complete / uncomplete
aginear done "search" # Fuzzy matches title
aginear done 3 # By displayed list number
aginear done 0e0023 # By ID prefix (shown in list output)
# Move between sections
aginear move "search" --to "In Progress"
# Edit properties
aginear edit "search" --title "New title" --assign bob --priority medium --due 2025-07-01
# Remove
aginear remove "search"
任务标识
所有需要 <query> argument使用此策略解决任务:
- 数值 --在显示的列表中按位置匹配(
aginear done 3) - 6-8个十六进制字符 --按任务ID前缀匹配(
aginear done 0e0023) - 否则 --任务标题上不区分大小写的子字符串匹配(
aginear done "auth flow")
如果多个任务匹配,您将看到一个消歧列表。
路线图管理
# View roadmap
aginear roadmap
# Add milestone
aginear roadmap add "V3 Features" --status planned
# Update milestone
aginear roadmap update "MVP" --status completed --progress 100
Web图形用户界面
aginear serve # http://localhost:4040
aginear serve --port 8080 # Custom port
特征:
- 列间带有拖放功能的看板
- 单击任何任务以编辑标题、受让人、优先级、标签、截止日期
- 通过复选框切换任务完成
- 带有进度条和状态徽章的路线图时间线视图
- 当磁盘上的文件发生更改时,通过WebSocket进行实时更新
初始化
aginear init
创造 todo.md, roadmap.md,以及 .devplan/config.json 默认情况下。跳过任何已存在的文件。追加 .devplan/ 到 .gitignore.
MCP服务器
AGINEAR包括一个MCP服务器,因此AI编码代理(Claude Desktop、Cursor、Claude Code等)可以读取和修改您的项目任务。
Claude桌面设置
添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"aginear": {
"command": "npx",
"args": ["aginear", "mcp"],
"cwd": "/absolute/path/to/your/repo"
}
}
}
光标设置
添加到 .cursor/mcp.json 在您的项目中:
{
"mcpServers": {
"aginear": {
"command": "npx",
"args": ["aginear", "mcp", "--cwd", "."]
}
}
}
Claude代码的设置
添加到 .claude/settings.json 在您的项目中:
{
"mcpServers": {
"aginear": {
"command": "npx",
"args": ["aginear", "mcp", "--cwd", "."]
}
}
}
可用工具
| 工具 | 描述 | 输入 |
|---|---|---|
get_todos |
获取所有任务,可选择过滤 | { section?, tag?, assignee?, priority? } |
add_task |
添加新任务 | { title, section?, assignee?, tags?, priority?, due? } |
update_task |
更新现有任务 | { search, updates: { title?, assignee?, priority?, tags?, due?, completed? } } |
move_task |
将任务移动到其他部分 | { search, to_section } |
complete_task |
将任务标记为已完成 | { search } |
remove_task |
删除任务 | { search } |
get_roadmap |
获取完整路线图 | {} |
update_milestone |
更新里程碑状态/进度 | { search, status?, progress? } |
这 search 参数通过ID前缀或不区分大小写的标题子字符串进行匹配。
配置
.devplan/config.json 是可选的。如果缺少,AGINEAR将使用合理的默认值。
{
"files": {
"todo": "./todo.md",
"roadmap": "./roadmap.md"
},
"gui": {
"port": 4040
},
"columns": ["Backlog", "In Progress", "Review", "Done"],
"tags": {}
}
| 密钥 | 默认值 | 描述 |
|---|---|---|
files.todo |
./todo.md |
todo文件的路径(相对于配置目录) |
files.roadmap |
./roadmap.md |
路线图文件的路径(相对于配置目录) |
gui.port |
4040 |
web GUI的端口 |
columns |
["Backlog", "In Progress", "Review", "Done"] |
看板列名 |
tags |
{} |
标签名到十六进制颜色映射 |
从以下位置向上走即可解决配置问题 cwd 寻找 .devplan/config.json (比如 .git).配置中的文件路径是相对于包含以下内容的目录解析的 .devplan/.
REST API
跑步时 aginear serve,这些端点可用:
待办事项
| 方法 | 端点 | 主体 | 描述 |
|---|---|---|---|
GET |
/api/todos |
-- | JSON格式的完整todo文档 |
POST |
/api/todos/tasks |
{ title, section?, assignee?, tags?, priority?, due? } |
添加任务 |
PATCH |
/api/todos/tasks/:id |
{ title?, assignee?, tags?, priority?, dueDate?, completed? } |
更新任务 |
DELETE |
/api/todos/tasks/:id |
-- | 删除任务 |
POST |
/api/todos/tasks/:id/move |
{ section, position? } |
移动任务 |
POST |
/api/todos/tasks/:id/complete |
-- | 切换完成 |
路线图
| 方法 | 端点 | 主体 | 描述 |
|---|---|---|---|
GET |
/api/roadmap |
-- | JSON格式的完整路线图文档 |
PATCH |
/api/roadmap/milestones/:id |
{ status?, progress? } |
更新里程碑 |
双向通信
连接到 ws://localhost:4040 (同一端口)。当磁盘上的文件发生更改时,服务器会广播这些消息:
{ "type": "todos_updated", "data": { "title": "...", "sections": [...] } }
{ "type": "roadmap_updated", "data": { "title": "...", "milestones": [...] } }
发展
git clone https://github.com/Legorobotdude/AGINEAR.git
cd AGINEAR
pnpm install
pnpm -r build
pnpm -r test # 89 tests across core + mcp
项目结构
packages/
core/ # Shared CST parser, mutator, serializer (lossless round-tripping)
cli/ # CLI commands (commander + chalk)
mcp/ # MCP server (@modelcontextprotocol/sdk, stdio transport)
web/ # Express server + React SPA (Vite + Tailwind + @dnd-kit)
发布新版本
-
在两个地方碰撞版本:
publish-package.json--the"version"字段(这是npm看到的)packages/cli/src/index.ts--the.version()呼叫指挥官(这就是aginear --version打印)
-
构建、打包和验证:
pnpm run publish:build pnpm run publish:pack # creates aginear-<version>.tgz in repo root -
发布:
cd dist && npm publish --access public
这 publish:build 脚本执行以下操作:
- 构建所有工作空间包(
pnpm -r build) - 捆绑包
cli,mcp,以及server进入点dist/通过tsup,内联@devplan/*工作区deps,同时将第三方deps保持在外部 - 复制web客户端资产,
publish-package.jsonREADME和许可证dist/ - 将节点设置为
dist/cli.js
关键设计决策
- 无降价AST库 --自定义逐行CST解析器,保留每个字节。
serialize(parse(input)) === input. - markdown文件外没有状态 --The
.md文件就是数据库。配置仅用于首选项。 - 微型安装 --所有内容都通过tsup/Vite打包成约94 KB(gzip压缩),并由npm安装第三方deps。
许可证
麻省理工学院