From 250601dc784abc0737dd9707aeeeca31b66e2edc Mon Sep 17 00:00:00 2001 From: HIsheR Date: Mon, 26 Oct 2026 16:19:32 +0800 Subject: [PATCH] =?UTF-8?q?iter(g172):=20=E5=88=97=E8=A1=A8=E5=91=BD?= =?UTF-8?q?=E4=BB=A4=E6=94=AF=E6=8C=81=20JSON=20=E8=BE=93=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .ua/index.json | 4 ++-- AGENTS.md | 2 +- llms-full.txt | 4 ++-- llms.txt | 2 +- packages/tools/cli/bin/ua.js | 4 ++++ packages/tools/cli/ua.manifest.json | 4 ++-- 6 files changed, 12 insertions(+), 8 deletions(-) diff --git a/.ua/index.json b/.ua/index.json index 5caebf5..7574392 100644 --- a/.ua/index.json +++ b/.ua/index.json @@ -1,6 +1,6 @@ { "$schema": "ui-arch-registry-index/0.1", - "generatedAt": "2026-10-26T08:16:48.747Z", + "generatedAt": "2026-10-26T08:18:29.931Z", "repoRoot": ".", "packages": [ { @@ -3654,7 +3654,7 @@ "entry": "bin/ua.js", "exports": [ "ua index:扫描 packages/ 两层目录的 ua.manifest.json,生成 .ua/index.json 与 llms.txt", - "ua list:列出注册表内所有包与组件数", + "ua list:列出注册表内所有包与组件数;--json 输出「包 + 组件 id」结构化数组,--components 逐组件展开", "ua info <包名|组件id>:包名返回摘要,组件 id 返回 props 表 + 步骤 + 示例;--json 输出原始清单", "ua docs:生成人类文档站 apps/docs/index.html + demo.html 与 Agent 全量文档 llms-full.txt", "ua style:注释规范门禁(导出必须 /*** ***/、接口字段行尾注释、行注释中文),违规退出码 1", diff --git a/AGENTS.md b/AGENTS.md index 8db0a4d..71f4bb0 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -50,7 +50,7 @@ 可用工具:`list_components` / `get_component` / `search_components` / `get_tokens`(返回 --ua-* 令牌清单,避免硬编码颜色间距)/ `list_recipes` / `get_recipe`(取跨组件组合配方:骨架代码 + 要点 + 用到的组件 id,配好再逐个 `get_component` 查参数)。 -2. **CLI**:`node packages/tools/cli/bin/ua.js list | search <关键词> | info | index | docs | style | verify | changelog` +2. **CLI**:`node packages/tools/cli/bin/ua.js list [--json|--components] | search <关键词> | info [--json] | index | docs | style | verify | changelog`(`--json` 给脚本与 Agent 用,不必解析文本) 3. **静态索引**:`.ua/index.json`(机器可读索引)、`llms.txt`(速览)或 **`llms-full.txt`(全量 Agent 文档:逐组件参数 / 回调 / 手把手步骤 / 令牌 / 组合配方,无图形纯文本,喂给 Agent 首选)**。 diff --git a/llms-full.txt b/llms-full.txt index 4becde3..6136d6b 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -1,6 +1,6 @@ # @ui-arch 组件库 Agent 文档(无图形版) -> 自动生成于 2026-10-26T08:16:48.747Z,数据源:各包 ua.manifest.json,勿手改。人类版文档站:apps/docs/index.html。 +> 自动生成于 2026-10-26T08:18:29.931Z,数据源:各包 ua.manifest.json,勿手改。人类版文档站:apps/docs/index.html。 > 组件 = 普通函数,传 props 返回 DOM;状态用 signal 双向绑定:读 signal() 写 signal(v)。 ## 快速上手 @@ -2077,7 +2077,7 @@ import '@ui-arch/tokens/tokens.css'; then use var(--ua-color-accent) etc. in any API 速览: - ua index:扫描 packages/ 两层目录的 ua.manifest.json,生成 .ua/index.json 与 llms.txt -- ua list:列出注册表内所有包与组件数 +- ua list:列出注册表内所有包与组件数;--json 输出「包 + 组件 id」结构化数组,--components 逐组件展开 - ua info <包名|组件id>:包名返回摘要,组件 id 返回 props 表 + 步骤 + 示例;--json 输出原始清单 - ua docs:生成人类文档站 apps/docs/index.html + demo.html 与 Agent 全量文档 llms-full.txt - ua style:注释规范门禁(导出必须 /*** ***/、接口字段行尾注释、行注释中文),违规退出码 1 diff --git a/llms.txt b/llms.txt index 81bdd91..b9f7bfa 100644 --- a/llms.txt +++ b/llms.txt @@ -128,7 +128,7 @@ - 描述: ua 命令行与 MCP 注册表服务:把各包 ua.manifest.json 汇总成机器可读索引(.ua/index.json)、Agent 全量文档(llms-full.txt)与人类文档站,并提供清单一致性门禁。 - API: - ua index:扫描 packages/ 两层目录的 ua.manifest.json,生成 .ua/index.json 与 llms.txt - - ua list:列出注册表内所有包与组件数 + - ua list:列出注册表内所有包与组件数;--json 输出「包 + 组件 id」结构化数组,--components 逐组件展开 - ua info <包名|组件id>:包名返回摘要,组件 id 返回 props 表 + 步骤 + 示例;--json 输出原始清单 - ua docs:生成人类文档站 apps/docs/index.html + demo.html 与 Agent 全量文档 llms-full.txt - ua style:注释规范门禁(导出必须 /*** ***/、接口字段行尾注释、行注释中文),违规退出码 1 diff --git a/packages/tools/cli/bin/ua.js b/packages/tools/cli/bin/ua.js index 643bba7..f3b3879 100644 --- a/packages/tools/cli/bin/ua.js +++ b/packages/tools/cli/bin/ua.js @@ -125,6 +125,10 @@ function loadIndex() { function cmdList(args = []) { const { packages } = loadIndex(); if (!packages.length) return console.log('(no packages indexed)'); + if (args.includes('--json')) { // 机器可读:包 + 组件 id 清单,脚本 / Agent 不必解析文本 + console.log(JSON.stringify(packages.map((p) => ({ name: p.name, version: p.version, type: p.type, description: p.description, components: (p.docs?.components ?? []).map((c) => c.id) })), null, 2)); + return; + } if (args.includes('--components')) { let total = 0; for (const p of packages) { diff --git a/packages/tools/cli/ua.manifest.json b/packages/tools/cli/ua.manifest.json index 399242d..b3b9c08 100644 --- a/packages/tools/cli/ua.manifest.json +++ b/packages/tools/cli/ua.manifest.json @@ -13,7 +13,7 @@ "entry": "bin/ua.js", "exports": [ "ua index:扫描 packages/ 两层目录的 ua.manifest.json,生成 .ua/index.json 与 llms.txt", - "ua list:列出注册表内所有包与组件数", + "ua list:列出注册表内所有包与组件数;--json 输出「包 + 组件 id」结构化数组,--components 逐组件展开", "ua info <包名|组件id>:包名返回摘要,组件 id 返回 props 表 + 步骤 + 示例;--json 输出原始清单", "ua docs:生成人类文档站 apps/docs/index.html + demo.html 与 Agent 全量文档 llms-full.txt", "ua style:注释规范门禁(导出必须 /*** ***/、接口字段行尾注释、行注释中文),违规退出码 1", @@ -43,4 +43,4 @@ ], "components": [] } -} +} \ No newline at end of file