with one click
manage-ui
新增、修改或删除 Cat 项目面向用户的前端页面(`web/src/main/`)。用于用户侧列表、详情、表单等界面。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
新增、修改或删除 Cat 项目面向用户的前端页面(`web/src/main/`)。用于用户侧列表、详情、表单等界面。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
生成、解释和修改 Cat 项目的 `priv/config/catalog_schema.yaml`。当任务涉及 Catalog schema、Class / Property 定义、ClassProperty 绑定、Property.constraint、Class.subject_page_layout、claim_display、subject_explore_config,或需要为新领域生成可同步的 Catalog YAML 时使用。
解释、生成和修改 Cat 项目的 `priv/config/class_ingestors_schema.yaml`。当任务涉及 class ingestor 的概念、YAML 语法,或 `steam`、`wikidata` 的 provider 配置时使用。手动调用触发。
使用 Cat 项目的 `mix cat.api_admin` 命令完成管理端操作任务。用于读取 `openapi/admin_openapi.yaml` 查找管理端接口,并调用管理端 API 查询列表、查看详情或执行管理端写操作。手动调用触发。
新增或修改 Cat 项目的管理端 API(`/api/admin/<context>/<action>`)。用于 `api_admin` 计划层、admin 列表/详情/写操作的后端实现。
Add and manage user-facing API endpoints in the Cat project using the CatApiSpec DSL. Use for the `api` plan layer, frontend/public APIs, schemas, generated request modules, and routes. For `/api/admin/...` endpoints use `manage-api-admin`.
创建和维护 Cat 项目的 PRD。用于按 domain 总览 + 粗粒度 feature 文档组织 docs/prds,包括 docs/prds/{domain}/overview.md、data_model.md、features/{feature_title}.md;也用于判断 feature 粒度、迁移旧版 aspect PRD,或生成可按 feature 复制到其他系统的产品规格。
| name | manage-ui |
| description | 新增、修改或删除 Cat 项目面向用户的前端页面(`web/src/main/`)。用于用户侧列表、详情、表单等界面。 |
用户侧前端位于 web/src/main/,使用 React + React Query + Redux Toolkit,样式用 .sass 缩进语法(禁止 Tailwind、禁止 TypeScript)。入口 web/index.html,路由 basename /web。
新增页面 — 5 步:
Task Progress:
- [ ] Step 1: API 层 — 在 web/src/main/api/<context>.js 中封装后端调用
- [ ] Step 2: 页面组件 — web/src/main/pages/<group>/<Page>.jsx
- [ ] Step 3: 样式 — web/src/main/styles/<name>.sass,并在 main.jsx 中 import
- [ ] Step 4: 路由注册 — 在 routes.jsx 中添加 Route
- [ ] Step 5: 更新 docs/prds/{domain}/features/{feature}.md 的 `## ui`
修改页面 — 按既有风格扩展对应文件;API 变动时先走 manage-api。
删除页面 — 反向:PRD → 路由 → 样式 import → 页面组件 → API(确认无其他引用再删)。
在 web/src/main/api/<context>.js 中封装调用。request 封装、错误处理(formatApiErrorMessage)、GET / POST 模式与 admin 侧一致,参考 manage-ui-admin/references/api-layer.md。
web/src/main/pages/<group>/,参考 pages/subjects/SubjectDetail.jsx、pages/posts/PostDetail.jsxuseQuery / useMutation),共享的 preload slice 放 shared/store/web/src/main/components/ 与 web/src/shared/ 里找web/src/main/styles/ 新建 <name>.sass(缩进语法),在 web/src/main/main.jsx 顶部 import './styles/<name>.sass' 注册pages/api-docs/api-docs.sass)并同样 import在 web/src/main/routes.jsx 的 <Routes> 内添加 <Route>,路径相对 basename /web(实际 URL 为 /web/<path>)。多词路径使用 kebab-case。
在 docs/prds/{domain}/features/{feature}.md 的 ## ui 小节中记录用户侧页面、入口、交互流程、状态展示、表单规则、空状态和错误状态。PRD 已按 domain + feature 分层,不再创建或更新 docs/prds/{domain}/ui.md 这种 aspect 文件。
选择 feature 的规则:
docs/prds/{domain}/overview.md 的 Feature 列表和 features/ 下已有文档。## ui。manage-prd 的规则创建 / 更新 feature,并同步 overview.md 的 Feature 列表。manage-api 完成 API 与同一 feature 的 ## api 更新。