بنقرة واحدة
jetlinks-crud
在 JetLinks 脚手架中实现标准或高级 CRUD 开发。适用于需要新增或修改实体、服务、控制器、查询流程、批量更新,或处理与 CRUD 相关副作用,同时遵循当前模块现有风格的场景。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
在 JetLinks 脚手架中实现标准或高级 CRUD 开发。适用于需要新增或修改实体、服务、控制器、查询流程、批量更新,或处理与 CRUD 相关副作用,同时遵循当前模块现有风格的场景。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
在当前 JetLinks 工作区中应用共享编码规范。适用于需要确认注解和导入、遵循本地命名与包结构、保持最小改动,判断模块是否应该补 i18n,实现 LocaleUtils、I18nEnumDict、messages_zh/messages_en、权限动作文案,补充 TraceHolder / MonoTracer / FluxTracer 链路追踪埋点,为常驻任务、缓存、队列等能力设计 MBean 运维可观测性,平衡人类可读性与大模型理解成本来编写代码注释,或当具体场景暴露公共组件、基类、框架、工具类等通用能力缺口时避免硬编码特调并从共同根因修复的场景。
将 JetLinks 开发请求路由到当前工作区中最合适的 focused skill。适用于尚不确定应使用哪个 JetLinks 技能,或任务同时涉及模块落点、通用编码规范、响应式实践、CRUD、跨边界调用、事件与订阅流程、前端页面改造以及交付准备的场景。
沉淀 JetLinks 开发过程中的可复用知识。适用于任务完成后判断是否值得沉淀、先给出沉淀建议,并在用户确认后将经验整理为 worklog、knowledge、playbook、提示词或 skill 更新;若已成熟到可抽成通用 skill,则继续询问是否并入官方技能仓库 PR 的场景。
发现 JetLinks 工作区结构并选择正确模块,必要时创建新模块。适用于需要梳理当前仓库结构、定位业务模块、识别软链接模块,或在低上下文脚手架中创建新模块的场景。
为 JetLinks 代码变更准备合规交付内容。适用于需要创建符合分支策略的提交、起草或审查中文 Conventional Commit、生成 shell 可执行的 git commit 命令、遵循 JetLinks 提交标题规范、避免直推受保护分支、落实后端新增功能或行为变动的测试门禁、收集测试证据,或编写包含测试、覆盖率、代码注释 / 公共契约(含 SPI 必要 @since / @see)、TraceHolder 与 MBean 运维可观测性结论的 PR 描述的场景。
在当前 JetLinks 工作区中使用统一 AssetsHolder 资产权限体系处理数据权限。适用于 CRUD 查询、详情、更新、删除、批量、导出、自定义接口、关联资产、命令服务、订阅或聚合查询需要资产权限控制,或需要判断 AssetType、@AssetsController、AssetsHolderCrudController、CorrelatesAssetsHolderCrudController、CrudAssetPermission、AssetsHolder.injectQueryParam / assertPermission / filterAssets 用法的场景。
| name | jetlinks-crud |
| description | 在 JetLinks 脚手架中实现标准或高级 CRUD 开发。适用于需要新增或修改实体、服务、控制器、查询流程、批量更新,或处理与 CRUD 相关副作用,同时遵循当前模块现有风格的场景。 |
Read references/common-crud-rules.md first.
../jetlinks-router/references/backend-design-test-driven-rules.md: write the design draft and test goals to the appropriate docs directory and wait for explicit user confirmation.createQuery(), createUpdate(), createDelete(), QueryParamEntity, sorting, nested conditions, pagination, AssetsHolder query injection, QueryHelper, complex SQL, native SQL, or multi-query result composition, read references/query-dsl-rules.md.references/advanced-crud-rules.md.termType, QueryParam condition mapping, related-table filters, or SubTableTermFragmentBuilder-style exists queries, also read references/dynamic-term-rules.md.$jetlinks-assets-permission whenever CRUD query, detail, update, delete, batch operation, export, or custom endpoint needs data permission control through AssetsHolder.../jetlinks-conventions/references/code-comments.md: public Entity / DTO / Controller / Service contracts, custom endpoints, non-obvious validation, AssetsHolder boundaries, compatibility, batch limits, lifecycle guards, and complex QueryHelper / SQL / DSL decisions.$jetlinks-conventions or $jetlinks-reactive when imports, i18n, comments, or reactive style need extra care.createQuery() / QueryParamEntity can express the condition, sorting, pagination, or nested logic.QueryHelper, transformPageResult, or combineOneToMany fits the task.createUpdate() / createDelete() can express the batch operation; use setNull(...) for real null assignment.$jetlinks-conventions and use Strings.CS / Strings.CI when the dependency provides Strings; do not fall back to deprecated StringUtils variants. Non-deprecated null-safe predicates such as StringUtils.isEmpty / isBlank may be used when they match the module's Commons Lang style.$jetlinks-assets-permission. If asset type, related asset field, permission action, binding relation, or admin / tenant / platform exception semantics are unclear, ask the user before implementation.