fecify admin skill文件结构

17 个模块,137 个 API。三层路由:SKILL.md → docs/<模块>.md → docs/<模块>/.md 所有脚本以 skill 根目录为工作目录执行。

fecify_admin_skills/
│
├── SKILL.md                         ← 入口文件
│   frontmatter: name/version/description
│   §0 文件路径说明
│   §1 工作流(前置检查→配置→init→执行用户指令)
│   §2 通用 API 调用(api-call.js + api-doc.js 用法)
│   §3 模块路由(17 模块一览,含 API 数和功能说明)
│   §4 临时文件规则(temp/ 用后即清)
│   §5 铁律(5 条硬约束)
│   §6 打包分发(排除规则 + 平台命令)
│
├── config/
│   └── fecify_admin_skills-config.json
│       记录项目名称、版本号和描述
│
├── docs/
│   │
│   ├── account.md                   ← 操作员管理入口 (5 APIs)
│   │   └── 操作员是登录服务端后台的管理账号(type=4),区别于商户用户。含创建/列表/详情/更新/删除 5 个 API 的总览表、使用流程、6 条注意事项(参数名不一致、password≥8、username 唯一等)
│   ├── addons.md                    ← 应用管理入口 (8 APIs)
│   │   └── 管理插件和模版的上架/下架状态。含 9 种类型枚举、3 种安装状态、shoptypes 字段说明、按 addons_type/status/install_status 多维筛选逻辑、批量上架规则
│   ├── base-image.md                ← 图片管理入口 (3 APIs)
│   │   └── 服务端图片库的列表/上传/删除。上传使用 Base64 编码(去 data:image 前缀),删除传 image_ids 数组支持批量,列表返回 upload_img_max_size 和 allow_types 元数据
│   ├── base.md                      ← 系统管理入口 (9 APIs)
│   │   └── 系统初始化、授权信息、版本升级、店铺统计、语言列表、队列检测、缓存刷新。分三大类(系统环境/系统状态/运维工具),init 建议缓存,队列检查需轮询
│   ├── notice.md                    ← 通知管理入口 (13 APIs)
│   │   └── 短信和邮件通知的配置+模板管理。均采用 get→改→set 全量覆盖模式,key 和 password 返回时脱敏,email-info 含 liquid_variables 变量列表,reload 会重置所有模板不可逆
│   ├── package.md                   ← 套餐管理入口 (5 APIs)
│   │   └── 套餐是插件+模版的组合包,店铺绑定后自动获得内容。shop_type 必传(B2C/B2B 各自独立),create 需传 10 个必填字段含 product_max_count,addons_info 只能选付费应用
│   ├── proxy.md                     ← 代理管理入口 (12 APIs)
│   │   └── HTTP/SOCKS5 代理服务器的 CRUD+全局配置+日志。三大功能域,create/update 全量传参,delete 用 ids 数组,proxy-get/set 全量覆盖,loglist 含 proxy 子对象和 curl_info
│   ├── role.md                      ← 角色权限入口 (6 APIs)
│   │   └── 角色绑定三类权限资源(admin/b2c/b2b)。create/update 全量传参(5 必填字段),info 返回完整权限树供选取,delete 用 role_ids 数组支持批量,select-list 是 POST
│   ├── store-customer.md            ← 店铺顾客入口 (4 APIs)
│   │   └── 管理跨店铺的顾客数据+留言。顾客列表支持 email/phone/shop_id/customer_type 等多维筛选,留言详情含 client_details 浏览器信息,email 参数中 @ 需编码
│   ├── store-inquire.md             ← 店铺询盘入口 (4 APIs)
│   │   └── B2C 和 B2B 店铺的客户询盘消息管理。列表支持 shop_id/status 筛选,详情返回关联商品+客户端环境,shop_id 分别从 B2C-select 和 B2B-select 获取
│   ├── store-order.md               ← 店铺订单入口 (3 APIs)
│   │   └── 待处理订单(已创建/待发货)vs 未完成订单(弃购/支付失败)。含处理状态枚举(1-4)、支付状态枚举(1-5)、订单详情对两种订单通用、items[].image 为相对路径需拼接
│   ├── store.md                     ← 店铺管理入口 (28 APIs)
│   │   └── 店铺全生命周期:创建/审核/编辑/回收/套餐/插件绑定。分 5 组 API 表(列表/CRUD/审核/套餐变更/插件/下拉工具),type 与 package 必须匹配,audit 的 shop_id 必须来自待审核列表
│   ├── system-settings.md           ← 系统配置入口 (10 APIs)
│   │   └── 全局配置 5 组 get/set 配对(基础/验证码/附件/店铺导航/日志)。全量覆盖模式,quick_links 支持 {shop_id} 变量,附件大小单位 KB,site_enable=2 会关闭所有店铺
│   ├── task-admin.md                ← 服务端 Task 入口 (5 APIs)
│   │   └── 服务端异步任务监控,5 种状态/44 种类型。先获取枚举再查列表,info 用 task_id,end-task 用 id 终止
│   ├── task-manager.md              ← 商家端 Task 入口 (5 APIs)
│   │   └── 商家端异步任务监控,列表返回含 shop 子对象(id/name/domain)。同 task-admin 参数名模式,2071 条任务
│   ├── theme-diy-lib.md             ← 模版装修库入口 (4 APIs)
│   │   └── 预设店铺装修样式管理。49 个 B2C 模版,添加到店铺时模版 type 必须与店铺 type 一致,删除不影响已应用店铺
│   ├── user.md                      ← 用户管理入口 (13 APIs)
│   │   └── 商户用户全生命周期(审核流+回收站)。type=2 主账户/type=3 子账户,password≥8,info 返回 shops 数组含关联店铺。参数名不一致:info/update 用 id,recover/audit 用 manager_id
│   │
│   ├── account/                     ← 操作员管理 (5 个 API 文档)
│   │   ├── list.md         分页查询所有操作员
│   │   ├── info.md         查看操作员详情(含绑定的 role_id)
│   │   ├── create.md       新建操作员(username 唯一,password ≥8 字符,需指定角色)
│   │   ├── update.md       修改操作员信息(昵称/状态/角色等)
│   │   └── delete.md       硬删除操作员(参数名 manager_id,不可恢复)
│   │
│   ├── addons/                      ← 应用管理 (8 个 API 文档)
│   │   ├── types.md         查询插件类型枚举列表(9 种:基础应用→AI-人工智能)
│   │   ├── install-status.md 查询插件安装状态枚举(已安装/未安装/安装中)
│   │   ├── enabled-list.md  按店铺类型获取已上架应用(分 themes 和 extensions 两组)
│   │   ├── list.md          分页查询应用列表,支持 addons_type/type/status/install_status 多维筛选
│   │   ├── info.md          查看单个应用详情
│   │   ├── update.md        修改应用信息(上架/下架等)
│   │   ├── extensions-all-enable.md 一键批量上架所有插件
│   │   └── theme-all-enable.md      一键批量上架所有模版
│   │
│   ├── base-image/                  ← 图片管理 (3 个 API 文档)
│   │   ├── image-list.md    分页查询服务端图片库,支持时间筛选
│   │   ├── image-upload.md  Base64 方式上传图片(去 data:image 前缀)
│   │   └── image-delete.md  批量删除图片(传 image_ids 数组)
│   │
│   ├── base/                        ← 系统管理 (9 个 API 文档)
│   │   ├── init.md          获取系统基本信息(插件列表/店铺类型/base_image_url 等),建议缓存
│   │   ├── auth-info.md     查询系统授权信息(域名/到期时间/站点编号)
│   │   ├── version-info.md  查询当前版本和升级状态
│   │   ├── shop_types.md    获取 B2C/B2B 店铺类型可用状态
│   │   ├── shop-and-addons-statistics.md 查询店铺总数/激活数/插件总数
│   │   ├── languages.md     获取系统支持的 26 种语言列表(含货币/国家编码)
│   │   ├── redis-queue-send.md        向 Redis 队列投递测试任务,返回 job_key
│   │   ├── redis-queue-check-result.md 轮询队列处理结果(需每秒 1 次,最多 10 次)
│   │   └── reflush-cache.md           刷新系统缓存(不刷新 Cloudflare CDN)
│   │
│   ├── notice/                      ← 通知管理 (13 个 API 文档)
│   │   ├── sms-get.md       获取阿里云短信配置(AccessKey 脱敏返回)
│   │   ├── sms-set.md       保存短信配置(需填明文 Key)
│   │   ├── sms-theme-get.md 获取短信验证码模板(含 captcha_expire_time)
│   │   ├── sms-theme-set.md 保存短信验证码模板
│   │   ├── email-get.md     获取 SMTP 邮件配置(password 脱敏返回)
│   │   ├── email-set.md     保存 SMTP 配置(需填明文 password)
│   │   ├── email-categorys.md       获取邮件模板分类列表
│   │   ├── email-types.md           获取邮件模板类型列表(欢迎/忘记密码/激活等)
│   │   ├── email-theme-list.md      分页查询邮件模板列表
│   │   ├── email-theme-info.md      查看模板详情(含 HTML + liquid_variables 变量列表)
│   │   ├── email-theme-set.md       修改并保存邮件模板
│   │   ├── email-theme-test-send.md 对指定邮箱测试发送邮件
│   │   └── email-theme-reload.md    全部模板恢复默认(不可逆)
│   │
│   ├── package/                     ← 套餐管理 (5 个 API 文档)
│   │   ├── list.md          按 shop_type 分页查询套餐(B2C 和 B2B 各自独立)
│   │   ├── info.md          查看套餐完整详情(含插件/模版清单和价格方案)
│   │   ├── create.md        新建套餐(10 个必填字段,类型 1 付费/类型 2 体验)
│   │   ├── update.md        修改套餐(全量覆盖,在创建参数基础上增加 id 字段)
│   │   └── delete.md        批量删除套餐(传 ids 数组,确认无店铺绑定)
│   │
│   ├── proxy/                       ← 代理管理 (12 个 API 文档)
│   │   ├── select-arr.md    获取代理下拉选项(店铺绑定时用)
│   │   ├── list.md          分页查询代理列表
│   │   ├── info.md          查看代理详情
│   │   ├── create.md        新建代理(name/type/ip/port/user/password 全必填)
│   │   ├── update.md        修改代理配置(全量传参)
│   │   ├── delete.md        删除代理(传 ids 数组)
│   │   ├── http-type.md     获取协议类型列表(HTTP=1/SOCKS5=2)
│   │   ├── test-ip.md       测试代理是否可用(需 shop_id + proxy_id)
│   │   ├── config-get.md    获取全局代理配置
│   │   ├── config-set.md    保存全局代理配置(全量覆盖)
│   │   ├── loglist.md       分页查询代理日志(含 proxy 子对象和 curl_info)
│   │   └── log-info.md      查看某条代理日志详情
│   │
│   ├── role/                        ← 角色权限 (6 个 API 文档)
│   │   ├── list.md          分页查询角色列表,支持名称模糊搜索
│   │   ├── select-list.md   获取角色下拉选项(创建操作员时填充 role_id)
│   │   ├── info.md          查看角色详情(含完整权限树:admin/b2c/b2b 三类 resources)
│   │   ├── create.md        新建角色(全量传参:name + 三类 resources + shop_type)
│   │   ├── update.md        修改角色(同样全量覆盖)
│   │   └── delete.md        删除角色(传 role_ids 数组,支持批量)
│   │
│   ├── schemas/                     ← api-doc.js 查询用 Schema (17 个 JSON)
│   │   ├── account.json
│   │   ├── addons.json
│   │   ├── base-image.json
│   │   ├── base.json
│   │   ├── notice.json
│   │   ├── package.json
│   │   ├── proxy.json
│   │   ├── role.json
│   │   ├── store.json
│   │   ├── store-customer.json
│   │   ├── store-inquire.json
│   │   ├── store-order.json
│   │   ├── system-settings.json
│   │   ├── task-admin.json
│   │   ├── task-manager.json
│   │   ├── theme-diy-lib.json
│   │   └── user.json
│   │
│   ├── store/                       ← 店铺管理 (28 个 API 文档)
│   │   ├── enable-list.md           分页查询激活中的店铺(支持 name/shop_type/domain 筛选)
│   │   ├── experience-list.md       分页查询体验套餐店铺
│   │   ├── waiting-create-list.md   分页查询待创建状态的店铺
│   │   ├── waiting-audit-list.md    分页查询待审核状态的店铺
│   │   ├── audit-refuse-list.md     分页查询审核被拒绝的店铺
│   │   ├── soft-delete-list.md      分页查询回收站中的店铺
│   │   ├── info.md                  查看店铺完整详情
│   │   ├── create.md                创建店铺(需匹配店铺类型和套餐的 shop_type)
│   │   ├── update.md                修改店铺信息(参数名 id,字符串类型)
│   │   ├── soft-delete.md           软删除店铺(移入回收站,可恢复)
│   │   ├── recover.md               从回收站恢复店铺
│   │   ├── audit-accept.md          审核通过(shop_id 必须来自待审核列表)
│   │   ├── audit-refuse.md          审核拒绝(shop_id 必须来自待审核列表)
│   │   ├── change-package.md        更换店铺套餐(先 info 拿 type,再 get-packages 获取同类型套餐)
│   │   ├── change-main-account.md   更换店铺主账号
│   │   ├── change-expire-date.md    修改应用过期时间
│   │   ├── package-list.md          获取可用套餐列表(必须传 shop_type)
│   │   ├── addons-list.md           查看店铺已绑定的插件列表
│   │   ├── all-addons.md            查看系统所有可用插件(按 10 种类型分组)
│   │   ├── add-addons.md            为店铺增加插件
│   │   ├── unbind-addons.md         从店铺解绑插件
│   │   ├── b2c-select-list.md       获取 B2C 店铺下拉选项
│   │   ├── b2b-select-list.md       获取 B2B 店铺下拉选项
│   │   ├── select-list.md           获取全部店铺下拉选项
│   │   ├── test-ip.md               测试店铺绑定 IP 是否可用
│   │   ├── test-proxy-ip.md         测试店铺代理 IP 是否可用
│   │   ├── storage-base-url.md      获取店铺图片存储基础 URL
│   │   └── get-session-key.md       获取店铺临时 session key
│   │
│   ├── store-customer/              ← 店铺顾客 (4 个 API 文档)
│   │   ├── list.md          分页查询顾客列表(支持 email/phone/shop_id/customer_type/国家/时间筛选)
│   │   ├── info.md          查看顾客完整信息(含历史订单和首次进店 URL)
│   │   ├── contacts-list.md 分页查询顾客留言列表
│   │   └── contacts-info.md 查看留言详情(含客户端 browser_ip/UA/来源页等信息)
│   │
│   ├── store-inquire/               ← 店铺询盘 (4 个 API 文档)
│   │   ├── b2c-list.md      分页查询 B2C 店铺的客户询盘列表
│   │   ├── b2c-info.md      查看 B2C 询盘详情(含关联商品和客户端环境)
│   │   ├── b2b-list.md      分页查询 B2B 店铺的客户询盘列表
│   │   └── b2b-info.md      查看 B2B 询盘详情(含关联商品和客户端环境)
│   │
│   ├── store-order/                 ← 店铺订单 (3 个 API 文档)
│   │   ├── processing-list.md 查询已创建订单(支持 order_processing_status 筛选:待发货/已发货/已完成/已存档)
│   │   ├── pending-list.md    查询未完成/弃购订单(order_status=1,顾客未完成结账流程)
│   │   └── info.md            查询订单完整详情(对两种订单类型通用,含商品/地址/支付/顾客/操作标识)
│   │
│   ├── system-settings/             ← 系统配置 (10 个 API 文档)
│   │   ├── base-get.md              获取基础配置(站点开关/品牌 Logo/主题色/订单 ID 显示等)
│   │   ├── base-set.md              保存基础配置
│   │   ├── captcha-get.md           获取验证码配置(开关/图片参数)
│   │   ├── captcha-set.md           保存验证码配置
│   │   ├── attachment-get.md        获取附件配置(文件类型白名单和大小限制)
│   │   ├── attachment-set.md        保存附件配置
│   │   ├── store-navigation-get.md  获取商家端后台快捷导航链接
│   │   ├── store-navigation-set.md  保存导航链接(URL 支持 {shop_id} 变量)
│   │   ├── log-config-get.md        获取系统日志记录策略
│   │   └── log-config-set.md        保存日志设置
│   │
│   ├── task-admin/                  ← 服务端 Task (5 个 API 文档)
│   │   ├── status-list.md   获取 Task 5 种状态码及含义
│   │   ├── type-list.md     获取 Task 44 种类型码及含义
│   │   ├── list.md          分页查询服务端 Task 列表
│   │   ├── info.md          查看 Task 详细信息和执行参数(参数名 task_id)
│   │   └── end.md           终止运行中的 Task(参数名 id)
│   │
│   ├── task-manager/                ← 商家端 Task (5 个 API 文档)
│   │   ├── status-list.md   获取 Task 状态码
│   │   ├── type-list.md     获取 Task 类型码
│   │   ├── list.md          分页查询商家端 Task(含 shop 子对象)
│   │   ├── info.md          查看商家端 Task 详情(参数名 task_id)
│   │   └── end.md           终止运行中的 Task(参数名 id)
│   │
│   ├── theme-diy-lib/               ← 模版装修库 (4 个 API 文档)
│   │   ├── list.md          分页查询装修模版列表(含 type 字段,10=B2C/20=B2B)
│   │   ├── info.md          查看模版详情
│   │   ├── add-to-shop.md   将模版添加到店铺(模版 type 必须与店铺 type 一致)
│   │   └── delete.md        从库中删除模版
│   │
│   └── user/                        ← 用户管理 (13 个 API 文档)
│       ├── enable-list.md           分页查询正常用户
│       ├── waiting-audit-list.md    分页查询待审核用户
│       ├── audit-refuse-list.md     分页查询审核被拒绝的用户
│       ├── disable-list.md          分页查询未激活用户
│       ├── soft-delete-list.md      分页查询回收站中的用户
│       ├── info.md                  查看用户完整详情(含关联店铺 shops 数组)
│       ├── select-list.md           获取用户下拉选项(创建店铺时选主账号)
│       ├── create.md                新建用户(password≥8,type 区分主/子账户)
│       ├── update.md                修改用户信息
│       ├── soft-delete.md           软删除用户(移入回收站)
│       ├── soft-deleted-recover.md  从回收站恢复用户(参数名 manager_id)
│       ├── register-audit-accept.md 审核通过注册申请(参数名 manager_id)
│       └── register-audit-refuse.md 审核拒绝注册申请(参数名 manager_id)
│
├── prompts/
│   └── preflight.md                 ← 站点未配置时展示的提示模板
│                                     引导用户提供 URL 和 Access Token
│
├── scripts/
│   ├── base/                        ← 配置/鉴权底层模块
│   │   ├── site-config.js           ← 站点配置管理核心
│   │   │                               凭据存储在 skill 目录外部(<agent_data>/fecify_admin_skills-shared/sessions/)
│   │   │                               通过 FECIFY_SESSION 环境变量实现会话隔离
│   │   │                               提供域名绑定、配置读写、初始化数据缓存等功能
│   │   ├── api-client.js            ← 通用 HTTP 客户端
│   │   │                               自动从 site-config 读取当前会话的 URL 和 Token
│   │   │                               统一拦截常见错误码(Token 无效、权限不足等)
│   │   │                               导出 get/post/put/del/patch 方法
│   │   ├── save-config.js           ← 保存站点配置
│   │   │                               用法:node scripts/base/save-config.js "<URL>" "<Token>"
│   │   │                               自动从 URL 提取域名作为存储 key,绑定当前会话
│   │   ├── save-init-data.js        ← 保存 base/init 返回的初始化数据
│   │   │                               用法:node scripts/base/save-init-data.js --data <文件>
│   │   │                               缓存 base_image_url、enable_addons 等系统环境信息
│   │   ├── check-config.js          ← 检查当前会话是否已配置
│   │   │                               输出 JSON:{ configured, domain, url, token(脱敏) }
│   │   └── preflight-check.js       ← 会话前置检查入口
│   │                                   检查 URL+Token 和 init-data 两部分是否就绪
│   │                                   输出 JSON:{ code: 200/400, checks: [...] }
│   │
│   └── proxy/                       ← API 代理/文档查询
│       ├── api-call.js              ← 通用 API 调用入口
│       │                               支持 GET/POST/PUT/DELETE/PATCH 五种方法
│       │                               --query <文件>  查询参数从 JSON 文件读取
│       │                               --data <文件>   请求体从 JSON 文件读取
│       │                               --header K:V    附加请求头(可重复使用)
│       │                               stdin 管道      Linux/Mac 传请求体(Windows 不适用)
│       │                               响应判断:code==200 成功 / code==-1 错误 / 其他读 message
│       └── api-doc.js               ← API 文档查询工具
│                                       无参数                 列出所有模块
│                                       --module=<模块名>      列出某模块所有 API
│                                       --api=<模块>/<API>     查看某 API 详细参数
│                                       --search=<关键词>      搜索模块或 API
│
└── temp/                            ← 临时文件目录
                                    --query/--data 临时 JSON、调试脚本、临时数据等
                                    完成后必须清理,打包 zip 时排除

results matching ""

    No results matching ""