48 lines
2.8 KiB
JSON
48 lines
2.8 KiB
JSON
{
|
||
"name": "@ui-arch/cli",
|
||
"type": "tooling",
|
||
"description": "ua 命令行与 MCP 注册表服务:把各包 ua.manifest.json 汇总成机器可读索引(.ua/index.json)、Agent 全量文档(llms-full.txt)与人类文档站,并提供清单一致性门禁。",
|
||
"tags": [
|
||
"cli",
|
||
"tooling",
|
||
"mcp",
|
||
"docs",
|
||
"gate"
|
||
],
|
||
"api": {
|
||
"entry": "bin/ua.js",
|
||
"exports": [
|
||
"ua index:扫描 packages/ 两层目录的 ua.manifest.json,生成 .ua/index.json 与 llms.txt",
|
||
"ua list:列出注册表内所有包与组件数",
|
||
"ua info <name>:查看单个包的清单详情(api / 约定 / 文档步骤)",
|
||
"ua docs:生成人类文档站 apps/docs/index.html + demo.html 与 Agent 全量文档 llms-full.txt",
|
||
"ua style:注释规范门禁(导出必须 /*** ***/、接口字段行尾注释、行注释中文),违规退出码 1",
|
||
"ua verify:清单一致性门禁(id 唯一 / exports 对应 / props 必带 n t d / steps≥3 / demo 锚点存在)",
|
||
"ua commit-lint <文件|message>:提交信息门禁(type 枚举 / scope 规则 / subject 中文祈使 ≤50 字符),规范见 COMMITTING.md,违规退出码 1",
|
||
"ua mcp:零依赖 stdio MCP server,暴露 list_components / get_component / search_components"
|
||
],
|
||
"keyTypes": [
|
||
"ua.manifest.json 清单结构",
|
||
"MCP tool 入参 schema"
|
||
]
|
||
},
|
||
"usage": "node packages/tools/cli/bin/ua.js <index|list|info <name>|docs|tokens|style|verify|commit-lint|mcp>;仓库内等价于 npm run index / docs / style / verify",
|
||
"conventions": [
|
||
"零依赖:只用 node 标准库,Node >= 18",
|
||
"清单是单一来源:代码注释、文档站、llms-full.txt、MCP 全部从 ua.manifest.json 派生",
|
||
"门禁只增不改:新增校验必须能被人手复现,报错要指出文件与字段"
|
||
],
|
||
"docs": {
|
||
"intro": "工程层工具包(private,不发布)。所有 Agent 与人都通过它读取组件库:清单驱动索引、文档、MCP 三件套,外加 style / verify 两道门禁。",
|
||
"steps": [
|
||
"装好依赖后先跑 npm run check 确认基线全绿(build → style → typecheck → smoke → index → verify)",
|
||
"查组件:ua list 看全量,ua info <包名> 看单包 api 与约定",
|
||
"查令牌:ua tokens 打印全部 --ua-* 变量(颜色带暗色值),--json 输出结构化数组;写样式前先查,禁止硬编码",
|
||
"改完清单跑 npm run docs:同时刷新人类文档站与 llms-full.txt(Agent 首选喂料)",
|
||
"在 ~/.workbuddy/mcp.json 注册 ua mcp 后,Agent 可直接调 list_components / get_component / search_components / get_tokens",
|
||
"在 ~/.workbuddy/mcp.json 注册 ua mcp 后,Agent 可直接调 list_components / get_component / search_components"
|
||
],
|
||
"components": []
|
||
}
|
||
}
|