# ibiz-front-cli **Repository Path**: iBizModeling/ibiz-front-cli ## Basic Information - **Project Name**: ibiz-front-cli - **Description**: 新一代前端cli工具,包含知识查询、项目相关、插件相关、mcp server等内容。 - **Primary Language**: TypeScript - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-22 - **Last Updated**: 2026-05-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ibiz-front-cli ## 简介 `ibiz-front-cli` 是一个面向 iBiz 前端插件开发的命令行工具仓库,主要用于 iBiz 前端框架与 AI 集成。项目希望通过 AI skill 调用该 CLI,完成与 AI 的交联能力编排,将文档查询、项目辅助、插件构建等能力统一沉淀为可复用的命令行入口。 仓库采用 `pnpm workspace + turbo` 的 monorepo 结构,围绕“CLI 消费能力、Core 沉淀能力”的思路组织代码,便于后续持续扩展。当前仓库处于能力建设阶段,CLI 入口和基础命令壳已经具备,知识查询、项目分析、插件构建等能力将持续在 `core` 包中沉淀和完善。 ## 项目结构 仓库采用根配置 + `packages` 分包的 monorepo 结构,核心目录职责如下: | 目录 / 文件 | 职责说明 | | --------------------- | ------------------------------------------------------------------ | | `package.json` | 仓库根配置,定义统一脚本、发布流程、代码规范和开发依赖。 | | `pnpm-workspace.yaml` | 定义 workspace 范围,统一管理 `packages/*` 下的子包。 | | `turbo.json` | 定义 monorepo 任务编排规则,用于构建、开发和缓存控制。 | | `tsconfig.json` | 根级 TypeScript 配置,作为各子包的类型系统基础。 | | `packages/cli` | CLI 入口包,负责命令注册、参数解析、交互适配和调用 `core` 能力。 | | `packages/core` | 核心能力包,承载知识查询、项目分析、插件模板、构建诊断等通用能力。 | | `CHANGELOG.md` | 仓库版本变更记录。 | | `LICENSE` | 开源许可证文件。 | ## 包说明 ### `packages/cli` `cli` 包是命令行工具入口,负责: - 注册 `ibiz-front` 命令 - 解析命令行参数 - 组织命令分发 - 调用 `core` 包暴露的核心能力 `cli` 的定位是“能力消费层”。它只是承载核心能力的一种使用方式,后续如果需要接入更多调用形态,例如 AI skill、脚本编排或其他宿主程序,可以在不改动核心实现的前提下复用已有能力。 ### `packages/core` `core` 包承载核心能力,是项目的主要逻辑层,负责沉淀: - 知识查询能力 - 项目辅助能力 - 插件模板与构建能力 - 后续面向 AI 的能力编排与扩展 将能力集中在 `core` 中,可以实现与 `cli` 的解耦,降低命令层复杂度,方便后续功能扩展、测试覆盖和多入口复用。 ## 架构设计 项目整体采用“入口层 + 能力层”的两层架构,推荐的调用链路如下: ```text AI Skill / 开发者 / 自动化脚本 ↓ ibiz-front CLI ↓ 命令解析与分发 ↓ packages/core ↓ 知识查询 / 项目分析 / 插件模板 / 构建诊断 ↓ 本地项目 / 模板资源 / 文档索引 / 环境信息 ``` 这样设计的目标是: - 将命令输入输出和业务能力解耦,避免 CLI 层堆积复杂逻辑 - 让 `core` 能同时服务 CLI、AI skill、脚本工具和后续其他接入方式 - 让知识查询、项目分析、插件构建能力具备更好的复用性和可测试性 - 为后续增加更多命令、数据源、模板源和智能编排逻辑预留稳定边界 ## AI 集成说明 `ibiz-front-cli` 的目标不是单纯做一个本地脚手架,而是作为 iBiz 前端体系与 AI 协作的执行桥梁。推荐的集成方式是由 AI skill 负责理解意图、组织任务,再调用 `ibiz-front` 完成确定性的本地能力执行。 适合通过 CLI 暴露给 AI skill 的能力包括: - 知识查询:查询文档、模型说明、Design Token、语义化结构 - 项目分析:读取目录结构、环境信息、变更日志和诊断结果 - 插件构建:生成模板、校验插件、构建产物、准备容器环境 这种模式的优势是: - AI 负责理解问题和流程编排,CLI 负责落地执行 - 能力边界清晰,便于权限控制、日志追踪和问题定位 - 后续可以逐步把 CLI 输出标准化为更适合 AI 消费的结构化结果 ## 技术栈 - TypeScript - Node.js - pnpm workspace - Turbo - Tsup - Commander - Prompts - Consola - Ora - fs-extra - giget - Lerna - ESLint - Prettier - Husky ## 快速启动 ### 环境要求 - Node.js 18+ - `pnpm@8.15.9` ### 安装依赖 ```bash pnpm install ``` ### 构建项目 ```bash pnpm build ``` ### 本地调试 CLI ```bash node packages/cli/dist/bin.mjs --help node packages/cli/dist/bin.mjs plugin --help ``` 如果已经完成本地链接或发布安装,可直接使用: ```bash ibiz-front --help ``` ## 使用示例 以下示例展示的是仓库目标命令形态,其中大部分命令仍处于规划或开发阶段,实际可用状态请以下方“功能清单”中的状态列为准。 ```bash # 查看 CLI 帮助 ibiz-front --help # 查看创建插件命令帮助 ibiz-front plugin --help # 列出文档知识清单 ibiz-front list docs ibiz-front docs list # 查询指定文档 ibiz-front docs grid # 查询组件 Design Token ibiz-front token button # 生成指定类型插件 ibiz-front plugin editor my-plugin "demo plugin" ./plugins/my-plugin # 诊断指定插件目录 ibiz-front doctor ./plugins/my-plugin ``` ## 开发约定 为了保证后续命令持续扩展时结构稳定,建议遵循以下约定: - `cli` 只负责参数解析、命令注册、交互适配和结果输出 - `core` 负责承载可复用的查询、分析、模板、构建等核心逻辑 - 新增命令时优先在 `core` 中设计能力接口,再由 `cli` 做一层命令封装 - 尽量让 `core` 的输入输出保持稳定,减少与具体终端交互方式的耦合 - 复杂能力优先以可测试的纯逻辑模块组织,再接入文件系统、模板源和环境依赖 建议的新增命令流程: 1. 在 `packages/core` 中定义能力接口和实现。 2. 在 `packages/cli/src/commands` 中增加命令注册与参数映射。 3. 在 `packages/cli/src/commands/index.ts` 中加载命令。 4. 执行 `pnpm build` 验证打包结果。 5. 通过 `node packages/cli/dist/bin.mjs ` 进行本地调试。 ## 功能清单 以下按能力域列出仓库当前已接入或规划支持的命令能力,命令由 `cli` 暴露,核心逻辑由 `core` 承载并实现。 状态说明: - `已实现`:命令能力已可直接使用 - `开发中`:CLI 入口已接入或部分逻辑已存在,但能力未完整闭环 - `规划中`:命令接口已规划,待后续实现 ### 知识查询 | 命令 | 说明 | 状态 | | ---------------------------- | ------------------------------------------------------------------------------------------------------------- | -------- | | `ibiz-front list ` | 列出所有名称及描述清单,`type` 支持 `docs`、`model`、`token`、`semantic`,同时兼容 `ibiz-front list`。 | `开发中` | | `ibiz-front docs ` | 查询指定名称的文档;`ibiz-front docs list` 可查看文档清单。 | `开发中` | | `ibiz-front model ` | 查询指定名称模型说明文档;`ibiz-front model list` 可查看模型清单。 | `开发中` | | `ibiz-front token [name]` | 查询全局或组件级 Design Token;`ibiz-front token list` 可查看组件清单。 | `开发中` | | `ibiz-front semantic ` | 查询指定名称组件语义化 `classNames` / `styles` 结构及用法示例。 | `开发中` | ### 项目分析 | 命令 | 说明 | 状态 | | ----------------------------- | ----------------------------- | -------- | | `ibiz-front start [path]` | 快速启动项目。 | `开发中` | | `ibiz-front structure [path]` | 列出项目架构说明、目录说明。 | `开发中` | | `ibiz-front changelog [path]` | 列出变更日志。 | `开发中` | | `ibiz-front env [path]` | 列出环境信息,用于 Bug 报告。 | `开发中` | | `ibiz-front bug [path]` | 提交 Bug 至 iBiz 开源仓库。 | `开发中` | ### 插件能力 | 命令 | 说明 | 状态 | | -------------------------------------------------------- | ---------------------------------------- | -------- | | `ibiz-front plugin ` | 生成指定类型插件,同时兼容选项参数写法。 | `开发中` | | `ibiz-front doctor ` | 诊断指定插件,校验是否异常。 | `开发中` | | `ibiz-front build-container ` | 搭建指定插件构建容器到目标位置。 | `开发中` | | `ibiz-front build ` | 构建指定插件到目标位置。 | `开发中` | ## 扩展方式 如果后续需要增强仓库,建议按下面的方向扩展: - 知识查询能力:为 `docs`、`model`、`token`、`semantic` 建立统一索引层和查询协议 - 项目分析能力:沉淀目录扫描、依赖分析、环境采集、问题诊断等通用服务 - 插件能力:建立模板源、渲染器、校验器、构建器和容器适配层 - AI 协作能力:增加更稳定的结构化输出,便于 AI skill 消费和二次编排 - 测试体系:优先为 `core` 建立单元测试和集成测试,再补充 CLI 层冒烟验证 ## 路线图 ### 插件能力 - 第一阶段:补全 `plugin` 命令闭环,支持模板选择、参数注入、目录生成和基础校验 - 第二阶段:实现 `doctor` 能力,提供插件结构检查、依赖检查、构建前诊断和问题提示 - 第三阶段:实现 `build-container` 与 `build`,沉淀插件构建容器、构建流程和产物输出规范 - 第四阶段:将模板、诊断、构建能力统一下沉到 `core`,形成可被 CLI 和 AI skill 复用的稳定接口 ### 知识查询 - 第一阶段:建立 `docs`、`model`、`token`、`semantic` 四类知识索引模型 - 第二阶段:实现 `list`、`docs`、`model`、`token`、`semantic` 查询命令及统一输出格式 - 第三阶段:补充模糊检索、别名映射、组件分类和版本维度过滤能力 - 第四阶段:为 AI skill 输出更稳定的结构化结果,支持后续自动问答和任务编排 ### 项目分析 - 第一阶段:实现 `structure`、`changelog`、`env` 等基础项目读取能力 - 第二阶段:实现 `start` 与 `bug`,打通项目启动辅助和问题反馈入口 - 第三阶段:沉淀目录扫描、环境采集、日志分析等项目诊断基础服务 - 第四阶段:逐步形成面向项目分析和问题定位的标准化能力集合,支撑 AI 辅助排障 ## 许可证 [MIT](./LICENSE)