Borrowing it
Nothing to install: this file belongs to southliu/south-admin-react. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/southliu/south-admin-react/main/.agents/skills/demo-create/SKILL.mdgit clone --depth 1 https://github.com/southliu/south-admin-reactWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/southliu/south-admin-react/demo-create)<a href="https://agentmods.dev/skills/southliu/south-admin-react/demo-create"><img src="https://agentmods.dev/badge/skills/southliu/south-admin-react/demo-create/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/southliu/south-admin-react/demo-create"><img src="https://agentmods.dev/badge/skills/southliu/south-admin-react/demo-create.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00099 | $0.02767 |
| Opus 5.5 | $0.00040 | $0.01107 |
| Sonnet 5.5 | $0.00020 | $0.00553 |
| Haiku 4.5 | $0.00010 | $0.00277 |
Grade A, and why
demo-create scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 236 lines — stays where its author put it; the contents beside it link to each section on GitHub.
demo-create
Description
基于项目中 .vscode/south.code-snippets 定义的 CRUD 模板,快速生成后台管理系统的标准 CRUD 页面代码。根据用户提供的业务模块信息(模块名称、API路径、字段配置等),自动生成完整的页面文件(Page)、数据模型文件(Model)和 API 接口文件(Api),支持弹窗模式(demoPage)和独立页面模式(demoOptionPage)两种。
Instructions
1. 收集必要信息
在生成代码前,向用户确认以下信息(未提供则主动询问,一个一个询问):
- moduleName:模块名称(英文 PascalCase),如
User、Article - apiPath:API 路径前缀,如
/system/user - permissionPrefix:权限前缀路径,如
/system/user - pageMode:
modal(弹窗模式)或page(独立页面模式) - enableI18n:是否开启国际化(
true/false),开启时使用t()函数包裹标签文本 - fatherPath:父路径(仅 page 模式),如
/system/user - zhTitle / enTitle:中英文标题(仅 page 模式),如
用户/User - fields:业务字段列表,每个字段包含:
dataIndex(字段名)label(标签)component(组件类型:Input/InputNumber/Select/DatePicker/RangePicker/TextArea/Switch/Upload)search(是否搜索项)table(是否表格列)form(是否表单字段)required(是否必填)width(表格列宽度,默认200)
2. 生成文件结构
Modal 模式
src/pages/{modulePath}/
├── index.tsx # 主页面(demoPage 模板)
└── model.ts # 数据模型(demoModel 模板)
src/servers/{modulePath}.ts # API 接口(demoApi 模板)
Page 模式
src/pages/{modulePath}/
├── index.tsx # 列表页(demoPage 模板,新增/编辑改为路由跳转)
├── model.ts # 数据模型(demoModel 模板)
└── option.tsx # 操作页(demoOptionPage 模板)
src/servers/{modulePath}.ts # API 接口(demoApi 模板)
3. 代码生成规则
3.1 通用替换规则
所有模板中进行以下替换:
getXXXPage→get{ModuleName}PagegetXXXById→get{ModuleName}ByIdcreateXXX→create{ModuleName}updateXXX→update{ModuleName}deleteXXX→delete{ModuleName}batchDeleteXXX→batchDelete{ModuleName}API.URL = '/xxx'→ 实际apiPath@/servers/xxx→@/servers/{实际模块路径}permissionPrefix = '/xxx'→ 实际权限前缀fatherPath = '/xxx'→ 实际父路径(page 模式)
3.2 API 文件(基于 south.code-snippets 中 demoApi 模板)
参照 .vscode/south.code-snippets 中 demoApi 的 body 内容生成,替换所有 XXX/xxx 为对应模块名称和路径。保持所有函数签名、类型定义和注释不变。
3.3 Model 文件(基于 south.code-snippets 中 demoModel 模板)
参照 .vscode/south.code-snippets 中 demoModel 的 body 内容生成:
- searchList:仅包含
search: true的字段,wrapperWidth默认 200enableI18n = true:label 使用t('moduleName.fieldName')格式enableI18n = false:label 使用中文字符串
- tableColumns:仅包含
table: true的字段,始终保留operate操作列,width默认 200enableI18n = true:title 使用t('moduleName.fieldName')格式,保留createdAt/updatedAt使用t('public.creationTime')/t('public.updateTime')enableI18n = false:title 使用中文字符串
- createList:仅包含
form: true的字段,必填字段添加rules: FORM_REQUIREDenableI18n = true:label 使用t('moduleName.fieldName')格式enableI18n = false:label 使用中文字符串
What ships with it
4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today Changed b493c083d858
- 2mo ago First seen · 236 lines · 99 tokens per session scan A 8dca7fe87dce
demo-create is a skill published in the GitHub repository southliu/south-admin-react (583 stars, last pushed today), licensed MIT. It adds 99 tokens to every session and 2,767 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
admin-net-frontend
Use when building Vue 3 admin dashboards with dynamic routing and permission-based menus — getAPI(XxxApi) generated clients, v-auth button permissions, Pinia user store, apibuild regeneration, Nginx tryfiles + /hubs WebSocket proxy. Also for blank pages from wrong component paths, API types out of date after backend…
webiny-api-cms-content-models
Creating Headless CMS content models via code using the ModelFactory pattern. Use this skill when the developer wants to create, modify, or understand content model definitions, define fields and validators, set up reference fields between models, configure field layouts (including nested layouts inside object or…
webiny-form-model
Building forms with the FormModel system — field types, renderers, layout, validation, conditional rules, computed fields, and dynamic zones. Use this skill when the developer needs to define form fields with the builder API, choose renderers, build layouts with tabs/rows/separators, add validation (Zod or…
webiny-api-cms-custom-field-type
How to implement a custom CMS field type that integrates with the model builder's fluent API. Covers extending DataFieldBuilder, composing validator interfaces, creating a FieldTypeFactory, registering via DI, and module augmentation for TypeScript autocomplete on the fields() registry.
webiny-ai-powerups-content
Generating Headless CMS entry content with AI from your own code, by delegating to the AI Power Ups extension instead of calling an LLM directly. Use this skill when the developer wants to generate/summarize/rewrite entry content programmatically (e.g. from a bulk action, a lifecycle hook, or a custom mutation) using…
admin-console-blueprint
Use when you need to design, scaffold, refactor, or document a medium-sized admin console built as an independent Vite/React SPA backed by modular Go admin APIs, Cookie session auth, and CLI-provisioned administrator accounts. Helpful for tasks like planning a new admin console, extracting reusable architecture from…