소스 정보
- 저장소
- ArtisanCloud/PowerXPlugin
- 최근 소스 활동
- 2026년 1월 23일 10:29
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 1
- 포크
- 3
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/ArtisanCloud/PowerXPlugin --skill crud-http명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
管理 PowerXPlugin 的基础模板对象。该对象仅包含标题、描述和内容,用于开发者验证插件侧 CRUD、能力注册和 Agent 调用链路。
生成功能使用指导文档(人性化、可执行、与代码实现对齐)。强制包含背景、流程图、泳道图、模块关系、页面/接口步骤、前后置依赖、验证与排障。
自动检查 contracts/capabilities 与 plugin.yaml/catalog(plugin.d)的同步对齐,适用于功能迭代后快速发现路由、RBAC、清单漂移问题。
SOC 직업 분류 기준
SKILL.md 표시 중
| name | crud-http |
| description | 基于内嵌规则 的 CRUD over HTTP 顶层规范。用于校对 HTTP 路由前缀、响应 envelope、中间件栈、RLS 注入与 Service 复用。 |
本文件内嵌规则。/api/v1,并挂载管理端点。tenant_uuid(RLS)。面向插件侧(PowerXPlugin)后端 HTTP 实现的人读说明。
目标:统一路由/响应/中间件/RBAC/RLS 等约定;保证与宿主反代契合(PG-HOST-001/PG-CTX-001/PG-RBAC-001/PG-SVC-001)。
/api/v1,可通过 server.api_prefix 配置覆盖。/_p/<plugin-id>/api/* → backend <api_prefix>/**(PG-HOST-001)。template 为例):
GET /api/v1/templates(分页/筛选)GET /api/v1/templates/:idPOST /api/v1/templatesPUT /api/v1/templates/:idDELETE /api/v1/templates/:id管理端点另见:
/api/v1/admin/{manifest, rbac}(合规要求,非业务 CRUD)。
Envelope(contracts.APIResponse):
{
"success": true,
"message": "",
"data": { ... },
"error": null,
"timestamp": "2024-12-09T12:00:00Z",
"request_id": "rq-123"
}
分页响应:data 字段内返回 { "items": [...], "total": 135, "page": 1, "page_size": 20 }
错误响应(示例):
{
"success": false,
"error": {
"code": "PERMISSION_DENIED",
"message": "permission denied",
"details": { "resource": "base:template", "action": "read" }
},
"timestamp": "2024-12-09T12:00:05Z",
"request_id": "rq-123"
}
约定与
rulesets/crud/api_rest.yaml保持一致;如需扩展字段(如 trace_id),保持向后兼容。
request_id — 生成/透传请求 IDctx_verify — JWT/HMAC 验签,抽取 tenant_uuid/user_id/permissions/...(PG-CTX-001)rbac_guard — 服务端权限判定(PG-RBAC-001)tenant_ctx — 设置 DB 会话变量:SET LOCAL app.tenant_uuid = ?(PG-CTX-001/RLS)recovery/logging — 统一结构化日志与 panic 保护throttle/ratelimit — 可选Handler 保持薄:入参校验 → 权限检查 → 调用 Service → 组装响应(PG-SVC-001)。
Create/Update:强校验(必填、长度、格式)
List:仅允许白名单字段排序;page/page_size 上限保护
过滤:约定 q 为模糊关键字;更多字段请显式列出
示例(Template):
// Create
{ "name": "Welcome", "description": "Landing snippet", "content": "# Hello" }
name)进行去重与冲突检测;写操作返回完整资源。backend/
└── internal/
├── services/template/
├── domain/repository/template/
└── transport/http/template/
├── routes.go # 注册 /api/v1/templates...(随前缀配置)
├── handler_list.go
├── handler_get.go
├── handler_create.go
├── handler_update.go
└── handler_delete.go
/api/v1)(相关 Gates:PG-HOST-001 / PG-CTX-001 / PG-RBAC-001 / PG-SVC-001)
# CRUD over HTTP — Top Ruleset
# Gates: PG-HOST-001 / PG-CTX-001 / PG-RBAC-001 / PG-SVC-001
kind: ruleset
id: crud_http
version: 1.0.0
summary: "插件后端 HTTP 约束:统一路由、响应、鉴权、RLS 与 Service 复用"
requires:
- rulesets/crud/api_rest.yaml
- rulesets/crud/handler_http.yaml
- rulesets/crud/dto.yaml
- rulesets/crud/service.yaml
- rulesets/crud/repository.yaml
- rulesets/crud/model.yaml
- rulesets/crud/migration.yaml
- rulesets/crud/di.yaml
- rulesets/crud/test.yaml
checks:
- id: http-prefix-configurable
desc: API 分组使用可配置前缀,默认 /api/v1,并统一挂载管理端点
assert:
type: grep
target: backend/internal/router/router.go
pattern:
- "prefix := r.cfg.Server.APIPrefix"
- "if strings.TrimSpace(prefix) == \"\" {"
- "prefix = \"/api/v1\""
-