بنقرة واحدة
manage-ui
新增、修改或删除 Cat 项目面向用户的前端页面(`web/src/main/`)。用于用户侧列表、详情、表单等界面。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
新增、修改或删除 Cat 项目面向用户的前端页面(`web/src/main/`)。用于用户侧列表、详情、表单等界面。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
生成、解释和修改 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 更新。