Agent skill

Architecture Layering

by yyw-code in yyw-code/MallBase

MallBase ThinkPHP 后端分层、Swoole Service 无状态与 IDE 泛型规则;开发或重构 backend/app 下的 Controller、Service、Model,调整 BaseController/BaseService、service()/model() 调用、构造注入或协程安全状态时使用。

MITAuto-check passed

Install Architecture Layering

skills CLI
$ npx skills add yyw-code/MallBase --skill architecture-layering -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install yyw-code/MallBase architecture-layering --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/yyw-code/MallBase.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/thinkPHP/architecture-layering .claude/skills/architecture-layering && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
architecture-layering
GitHub stars
106
Token cost
~391 tokens
SKILL.md length
76 words
Files
1
Skills in repo
12
Repo updated
First seen
Licence
MIT

At a glance

MallBase ThinkPHP 后端分层、Swoole Service 无状态与 IDE 泛型规则;开发或重构 backend/app 下的 Controller、Service、Model,调整 BaseController/BaseService、service()/model() 调用、构造注入或协程安全状态时使用。

  • Works in 5 steps: 让 Controller 只负责读取请求参数、调用验证器、调用 Service… → 把业务判断、跨模型编排、事务边界和结果组装放在 Service。 → 把表映射、关系、类型转换和字段访问语义放在 Model。 → …
  • SKILL.md covers 当前目录, 分层职责, Swoole 无状态 and 泛型与跳转, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Architecture Layering is an agent skill from yyw-code/MallBase. MallBase ThinkPHP 后端分层、Swoole Service 无状态与 IDE 泛型规则;开发或重构 backend/app 下的 Controller、Service、Model,调整 BaseController/BaseService、service()/model() 调用、构造注入或协程安全状态时使用。

Its SKILL.md is about 390 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It works with PHP. The repository describes itself as: MallBase 是一个基于 PHP 的商城型业务基础框架,围绕 用户、商品、订单、权限 四个最核心的商业模块,提供一套清晰、稳定、可扩展的业务结构基线。 它不是一个功能齐全的电商系统,也不是通用 Web 框架,而是一个专注于“商城核心模型”的业务底座,用于快速构建和演进各类商业应用。 The licence is MIT.

Example prompts

  • “/architecture-layering”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. 让 Controller 只负责读取请求参数、调用验证器、调用 Service 和返回响应。
  2. 把业务判断、跨模型编排、事务边界和结果组装放在 Service。
  3. 把表映射、关系、类型转换和字段访问语义放在 Model。
  4. 优先经所属领域的 Service 复用业务不变量;只有纯数据访问且不会绕过领域约束时,才直接使用其它 Model。
  5. 保持 Controller -> Service -> Model 为主调用方向,不在 Model 中反向调用 Controller 或请求对象。

What it can do on your machine

Read from SKILL.md and the folder at commit 3f10589. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are php).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Architecture Layering loads about 391 tokens when it runs. Until then it costs about 47 tokens; SKILL.md has 76 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~47
When it runs · the whole SKILL.md, loaded when a task matches
~391

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from yyw-code/MallBase at commit 3f10589, republished under its MIT licence (© yyw-code). 76 words, ~391 tokens.

Download SKILL.mdSave it as .claude/skills/architecture-layering/SKILL.md (or your agent's skills folder).
name
architecture-layering
description
MallBase ThinkPHP 后端分层、Swoole Service 无状态与 IDE 泛型规则;开发或重构 backend/app 下的 Controller、Service、Model,调整 BaseController/BaseService、service()/model() 调用、构造注入或协程安全状态时使用。

ThinkPHP 分层与无状态规则

当前目录

  • Controller:backend/app/controller/{admin,client,...}/
  • Service:backend/app/service/{admin,client,...}/
  • Model:backend/app/model/
  • 基类:backend/mall_base/base/BaseController.php、BaseService.php

分层职责

  1. 让 Controller 只负责读取请求参数、调用验证器、调用 Service 和返回响应。
  2. 把业务判断、跨模型编排、事务边界和结果组装放在 Service。
  3. 把表映射、关系、类型转换和字段访问语义放在 Model。
  4. 优先经所属领域的 Service 复用业务不变量;只有纯数据访问且不会绕过领域约束时,才直接使用其它 Model。
  5. 保持 Controller -> Service -> Model 为主调用方向,不在 Model 中反向调用 Controller 或请求对象。

Swoole 无状态

  1. 不在 Service 属性、static 或全局变量中保存请求参数、当前用户、查询构造器或 Model 实例。
  2. 通过 $this->model() 按需创建 Model;不要缓存其返回值供后续请求复用。
  3. 允许构造注入无请求态的只读协作者,例如 private readonly AssetResolver $resolver。
  4. SDK、驱动或客户端若含签名上下文、请求头或可变配置,按其专用 skill 决定生命周期,不默认做容器单例。

泛型与跳转

新增或修改继承基类的类时,保持具体泛型和默认类名一致:

php
/** @extends BaseController<GoodsService> */
class GoodsController extends BaseController
{
    protected string $serviceClass = GoodsService::class;
}

/** @extends BaseService<Goods> */
class GoodsService extends BaseService
{
    protected string $modelClass = Goods::class;
}

BaseController::service() 和 BaseService::model() 已提供方法级模板;传入具体 ::class 时保留类型推导,不再增加无收益的取实例包装。

自检

  • Controller 中没有业务编排或直接持久化。
  • Service 没有请求级可变状态和 Model/查询缓存。
  • 业务约束没有被跨领域直接写表绕过。
  • @extends、$serviceClass、$modelClass 指向同一具体类型。

© yyw-code, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .codex/skills/thinkPHP/architecture-layering of yyw-code/MallBase.

Open the folder on GitHubat commit 3f10589

Compare with similar skills

Architecture Layering next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Architecture Layering compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Architecture Layering this skillyyw-code/MallBase106—~391Automated safety check: PassMIT
Configuring Horizoncoollabsio/coolify63k4 repos~898Automated safety check: PassMIT
Tailwindcss Developmentanonaddy/anonaddy4.9k10 repos~865Automated safety check: PassMIT
Fortify Developmentcoollabsio/coolify63k4 repos~1.9kAutomated safety check: PassMIT
MCP Developmentcoollabsio/coolify63k1 repos~949Automated safety check: PassMIT
WooCommerce Code Reviewwoocommerce/woocommerce11k3 repos~1.1kAutomated safety check: PassCustom licence

Similar skills

  • Configuring Horizon

    coollabsio/coolify

    A skill your agent uses whenever the user mentions Horizon by name in a Laravel context.

    63k GitHub starsUsed in 4 repos~898 tokens
    Backend & APIsAuto-check passed
  • Tailwindcss Development

    anonaddy/anonaddy

    Always invoke when the user's message includes 'tailwind' in any form.

    4.9k GitHub starsUsed in 10 repos~865 tokens
    Frontend & DesignAuto-check passed
  • Fortify Development

    coollabsio/coolify

    ACTIVATE when the user works on authentication in Laravel. An agent skill from coollabsio/coolify.

    63k GitHub starsUsed in 4 repos~1.9k tokens
    Backend & APIsAuto-check passed
  • MCP Development

    coollabsio/coolify

    A skill your agent uses for Laravel MCP development. An agent skill from coollabsio/coolify.

    63k GitHub starsUsed in 1 repo~949 tokens
    Frontend & DesignAuto-check passed
  • WooCommerce Code Review

    woocommerce/woocommerce

    Reviews WooCommerce code changes against the project's standards, flagging backend PHP architecture, naming, documentation, data integrity and testing violations.

    11k GitHub starsUsed in 3 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Sync Translations

    symfony/symfony

    Synchronize translation catalogs across maintained Symfony branches: find messages that newer branches added to the English catalogs but that are still missing from the oldest maintained branch…

    31k GitHub stars~1.9k tokensUpdated today
    Writing & ContentAuto-check passed

More from yyw-code/MallBase

All 12 skills in this repo
  • MallBase 支付与退款回调安全规则;修改 backend/route/notify.php、PayNotifyController、NotifyService、WechatPaymentResultService、mbpaymentlog,或处理微信/其它渠道 webhook 的验签、解密、防重放、金额校验、幂等、事务与 HTTP 应答时使用。

    106 GitHub stars~495 tokensUpdated 2 mo ago
    Auto-check passed
  • Route Permission System

    yyw-code/MallBase

    MallBase ThinkPHP 后台路由与权限元数据规则;新增或调整 backend/route/api/admin 路由、System 权限码、菜单元数据、/:id 路径参数、共享 permission 或 sync:permissions 同步时使用。

    106 GitHub stars~499 tokensUpdated 2 mo ago
    Auto-check passed
  • Upload Component First

    yyw-code/MallBase

    MallBase Vben Admin 上传组件与字段契约规则;实现图片、视频或文件上传,以及处理 FileInfo 回填和提交值时使用。

    106 GitHub stars~553 tokensUpdated 2 mo ago
    Auto-check passed
  • E2E Webantd Realapi

    yyw-code/MallBase

    MallBase Vben Admin 局部格式化与真实后端 E2E 收口规则;修改、测试或回归 web-antd 代码时使用。

    106 GitHub stars~308 tokensUpdated 2 mo ago
    Auto-check passed
  • List Query Sync

    yyw-code/MallBase

    MallBase ThinkPHP 列表查询与分页返回规则;实现或调整 Service 的 buildListQuery、分页 list/total、动态筛选、关联查询、统计、导出或 compact('total', 'list') 返回时使用。

    106 GitHub stars~395 tokensUpdated 2 mo ago
    Auto-check passed
  • Thinkphp

    yyw-code/MallBase

    MallBase ThinkPHP 后端规则导航;仅在后端任务涉及多个场景、需要查找项目规则,或无法确定应读取哪个更具体的 ThinkPHP skill 时使用。

    106 GitHub stars~185 tokensUpdated 2 mo ago
    Auto-check passed

Works with

Questions about Architecture Layering

What does Architecture Layering do?

MallBase ThinkPHP 后端分层、Swoole Service 无状态与 IDE 泛型规则;开发或重构 backend/app 下的 Controller、Service、Model,调整 BaseController/BaseService、service()/model() 调用、构造注入或协程安全状态时使用。. Architecture Layering is an agent skill from yyw-code/MallBase.

How do I install Architecture Layering in Claude Code?

Run `npx skills add yyw-code/MallBase --skill architecture-layering -a claude-code`. Or copy the skill folder (.codex/skills/thinkPHP/architecture-layering in yyw-code/MallBase) into .claude/skills/architecture-layering in your project. Claude Code loads it when a task matches its description.

How do I install Architecture Layering in Codex?

Run `npx skills add yyw-code/MallBase --skill architecture-layering -a codex`. Or copy the skill folder (.codex/skills/thinkPHP/architecture-layering in yyw-code/MallBase) into .agents/skills/architecture-layering in your project. Codex loads it when a task matches its description.

Can I use Architecture Layering in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add yyw-code/MallBase --skill architecture-layering -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/architecture-layering, .gemini/skills/architecture-layering, .github/skills/architecture-layering and .opencode/skills/architecture-layering in your project.

What does Architecture Layering need to run?

SKILL.md names no scripts, command-line tools or credentials: Architecture Layering is instructions for the agent only.

Does Architecture Layering access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Architecture Layering safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Architecture Layering use?

Architecture Layering is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Architecture Layering use?

About 391 tokens (SKILL.md is roughly 1.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Architecture Layering?

Skills that share tags, products or a category with Architecture Layering: Configuring Horizon (coollabsio/coolify, 63k stars), Tailwindcss Development (anonaddy/anonaddy, 4.9k stars), Fortify Development (coollabsio/coolify, 63k stars) and MCP Development (coollabsio/coolify, 63k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Architecture Layering?

yyw-code (a GitHub user) maintains it in yyw-code/MallBase, which has 106 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on August 3, 2026.

Source: yyw-code/MallBase on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.