Agent skill

Architecture Design Principles

by davidYichengWei in davidYichengWei/agentic-engineering-framework

Gives architecture design principles for system design discussions and code review: module boundaries, dependency direction, data ownership and interface rules, plus a checklist.

MITAuto-check passedDevelopment

SKILL.md written in Chinese; this summary is our English description.

Install Architecture Design Principles

skills CLI
$ npx skills add davidYichengWei/agentic-engineering-framework --skill bp-architecture-design -a claude-code

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

GitHub CLI
$ gh skill install davidYichengWei/agentic-engineering-framework bp-architecture-design --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/davidYichengWei/agentic-engineering-framework.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/bp-architecture-design .claude/skills/bp-architecture-design && 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
bp-architecture-design
GitHub stars
158
Token cost
~545 tokens
SKILL.md length
153 words
Files
1
Skills in repo
14
Repo updated
First seen
Licence
MIT

At a glance

Gives architecture design principles for system design discussions and code review: module boundaries, dependency direction, data ownership and interface rules, plus a checklist.

  • Works in 3 steps: 应用层 - 业务逻辑、用例编排 → 领域层 - 核心抽象、接口定义 → 基础设施层 - 具体实现(RocksDB、网络等)
  • Drafting the solution overview section of a design spec
  • SKILL.md covers 第一性原理, 设计前:回顾 spec.md 前三节, 模块划分 and 依赖管理, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Written in Chinese, this skill supports the solution overview section (4.1) of a spec.md in a design workflow, and it can also be used to judge architecture during code review. Before proposing anything, the agent should have understood the spec's background, goals and non-goals, functional requirements and non-functional constraints, quantifying those constraints where possible. Its framing is that architecture means choosing the best trade-off under constraints to meet business goals.

The principles cover dividing modules by business capability with high cohesion, low coupling and clear ownership of data and invariants; one-way, acyclic dependencies that run from application logic to domain abstractions to infrastructure and rely on interfaces; data decisions on ownership, consistency model and schema evolution; and interface rules to keep them minimal, avoid leaking internals through dedicated DTOs and stay backward compatible. A checklist for the overview section asks for the core idea, modules, dependency direction, data flow and key trade-offs, and an anti-pattern table covers circular dependencies, blurred boundaries, over-abstraction and big balls of mud.

When your agent uses it

  • Drafting the solution overview section of a design spec
  • Judging module boundaries and dependency direction in a code review
  • Spotting circular dependencies or unclear data ownership

Example prompts

  • “Review the module split in this design and check the dependency direction.”
  • “Help me fill in the solution overview of spec.md: modules, data flow and key trade-offs.”
  • “Find any circular dependencies or shared data ownership problems in this architecture.”

Workflow steps

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

  1. 应用层 - 业务逻辑、用例编排
  2. 领域层 - 核心抽象、接口定义
  3. 基础设施层 - 具体实现(RocksDB、网络等)

What it can do on your machine

Read from SKILL.md and the folder at commit 1f7ac0f. 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 cpp).

    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 Design Principles loads about 545 tokens when it runs. Until then it costs about 25 tokens; SKILL.md has 153 words of instructions outside code blocks.

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

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 davidYichengWei/agentic-engineering-framework at commit 1f7ac0f, republished under its MIT licence (© davidYichengWei). 153 words, ~545 tokens.

Download SKILL.mdSave it as .claude/skills/bp-architecture-design/SKILL.md (or your agent's skills folder).
name
bp-architecture-design
description
提供架构设计原则,包括模块划分、依赖管理、数据架构、接口设计。在系统设计阶段讨论方案概览时使用,或在 code review 中评估架构合理性时使用。

架构设计

使用场景:workflow-system-design skill 在讨论 spec.md 4.1 方案概览 时加载本 skill。

第一性原理

架构设计的本质:在约束条件下,选择最优的 trade-off 来满足业务目标。


设计前:回顾 spec.md 前三节

在提出架构方案前,确保已理解:

spec.md 章节要回答的问题
1. 背景要解决什么问题?现状是怎样的?
2. 目标 & 非目标成功的标准是什么?什么不做?
3.1 功能性需求系统需要具备哪些能力?
3.2 非功能性需求性能、兼容性、可维护性约束?

如果非功能性需求可以量化,尽量量化(如 p99 延迟 < 100ms),但不强制要求所有场景都能量化。


模块划分

好的划分 = 减少协调成本 + 包含变化。

划分原则
原则说明检查点
按功能域划分围绕业务能力而非技术层相关的代码是否在一起?
高内聚一起变化的代码放一起修改一个功能要改几个模块?
低耦合模块间依赖最小化模块能否独立理解和测试?
明确所有权每个模块有明确的数据和不变量谁负责维护这块数据的一致性?
边界定义
cpp
// ✅ 明确的模块边界
namespace compaction {
    // 公开接口
    class CompactionScheduler { ... };
    
    // 内部实现(不暴露)
    namespace internal {
        class CompactionTask { ... };
    }
}

依赖管理

依赖方向

层次结构(从高到低):

  1. 应用层 - 业务逻辑、用例编排
  2. 领域层 - 核心抽象、接口定义
  3. 基础设施层 - 具体实现(RocksDB、网络等)

依赖原则:高层依赖低层,依赖抽象接口而非具体实现

依赖规则
规则说明
单向依赖只能向下依赖,禁止向上依赖
禁止循环A→B→C→A 必须打破
依赖抽象依赖接口而非具体实现

数据架构

数据决策决定正确性和运维复杂度。

决策点需要明确
数据所有权哪个模块是这份数据的 source of truth?
一致性模型强一致 vs 最终一致?
Schema 演进向前/向后兼容?回滚方案?

接口设计

架构层关注接口原则,详细设计参见 bp-component-design 的 4.2.2 节。

原则说明
最小化只暴露必要的接口
不泄露内部使用专用 DTO
版本兼容接口变更需考虑向后兼容

与其他 Skill 协同

场景加载 Skill
涉及网络通信、多节点、一致性、故障恢复bp-distributed-systems
涉及类/接口详细设计bp-component-design(4.2 节使用)

4.1 方案概览 Checklist

在 spec.md 4.1 节,确认以下内容已讨论:

  • 整体思路:用 1-2 句话描述方案核心
  • 模块划分:涉及哪些模块?边界在哪?
  • 依赖方向:模块间的依赖关系
  • 数据流:数据如何流转?
  • 关键 trade-off:为什么这样设计?牺牲了什么?

反模式

反模式改进
循环依赖 (A→B→C→A)引入接口打破循环
边界模糊(多模块修改同一份数据)明确数据所有权
过度抽象简单优先,按需抽象
Big Ball of Mud逐步引入边界

© davidYichengWei, 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 skills/bp-architecture-design of davidYichengWei/agentic-engineering-framework.

Open the folder on GitHubat commit 1f7ac0f

Compare with similar skills

Architecture Design Principles 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 Design Principles compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Architecture Design Principles this skilldavidYichengWei/agentic-engineering-framework158—~545Automated safety check: PassMIT
Ontology-Driven System Buildersharptoolbox/ontology-driven-dev433—~1.5kAutomated safety check: PassMIT
MVP Technical DesignKhazP/vibe-coding-prompt-template3.1k—~512Automated safety check: PassMIT
Architecture Reviewowainlewis/blueprint412—~1.2kAutomated safety check: PassMIT
SPARC Methodologyruvnet/agentic-flow8176 repos~6.3kAutomated safety check: PassNone
Architect Build Specsjsmastery-pro/skills1.5k—~7kAutomated safety check: NotesMIT

Similar skills

  • Ontology-Driven System Builder

    sharptoolbox/ontology-driven-dev

    Runs a three-step pipeline, requirement exploration, seven-model ontology YAML, then app build, on a Flask, SQLite, and React stack with sign-off gates.

    433 GitHub stars~1.5k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • MVP Technical Design

    KhazP/vibe-coding-prompt-template

    Writes an MVP technical design from agreed requirements, covering architecture, data ownership, integration contracts, deployment and tradeoffs, then hands off to the next stage.

    3.1k GitHub stars~512 tokensUpdated 6 days ago
    DevelopmentAuto-check passed
  • Architecture Review

    owainlewis/blueprint

    Reviews a technical proposal before implementation through an independent subagent, returning findings, open questions and a verdict without rewriting it.

    412 GitHub stars~1.2k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • SPARC Methodology

    ruvnet/agentic-flow

    Structures complex feature work into five planning-first phases (specification, pseudocode, architecture, refinement and completion) driven through claude-flow commands.

    817 GitHub starsUsed in 6 repos~6.3k tokens
    DevelopmentAuto-check passed
  • Architect Build Specs

    jsmastery-pro/skills

    Runs a structured design conversation on a feature, tech stack or enhancement, recommends an answer and records it as a build spec in docs/specs.

    1.5k GitHub stars~7k tokensUpdated 2 mo ago
    DevelopmentAuto-check: notes
  • Feature Specification

    owainlewis/blueprint

    Writes one implementation-ready spec for a feature or major change, settling behavior, technical design, failure handling and acceptance checks before delivery.

    412 GitHub stars~938 tokensUpdated yesterday
    DevelopmentAuto-check passed

More from davidYichengWei/agentic-engineering-framework

All 14 skills in this repo
  • General Coding Best Practices

    davidYichengWei/agentic-engineering-framework

    A checklist of language-neutral rules for writing and reviewing code: naming, function design, control flow, resource safety, comments and logging.

    158 GitHub stars~631 tokensUpdated 6 mo ago
    Auto-check passed
  • Component Design Principles

    davidYichengWei/agentic-engineering-framework

    Chinese-language checklists for component-level design: class and module structure, public interfaces, data models, concurrency and error handling.

    158 GitHub stars~1k tokensUpdated 6 mo ago
    Auto-check passed
  • Skill Authoring Guide (Chinese)

    davidYichengWei/agentic-engineering-framework

    Chinese-language guide to writing and improving SKILL.md files: frontmatter rules, concise writing, progressive disclosure, common patterns and a pre-release checklist.

    158 GitHub stars~788 tokensUpdated 6 mo ago
    Auto-check passed
  • Self-Refinement from Corrections

    davidYichengWei/agentic-engineering-framework

    Turns mistakes you correct into proposed updates to persistent Rules and Skills so the same error does not recur in later sessions, triggered automatically or with /reflect.

    158 GitHub stars~575 tokensUpdated 6 mo ago
    Auto-check passed
  • Root-Cause Troubleshooting

    davidYichengWei/agentic-engineering-framework

    Diagnoses compile errors, runtime exceptions, failing tests, pipeline failures and production alerts from code and logs, giving a root cause before any fix.

    158 GitHub stars~646 tokensUpdated 6 mo ago
    Auto-check passed
  • Workflow Code Generation

    davidYichengWei/agentic-engineering-framework

    代码文件修改的统一入口。当用户请求任何代码变更(新功能、优化、Bug 修复、重构)时必须首先调用此 skill。仅适用于代码文件(如 .cc/.cpp/.h/.go/.py 等),修改 .md 等非代码文件时不需要调用。它会评估复杂度、检查 spec.md、生成 tasks.md、并逐个任务执行。

    158 GitHub stars~733 tokensUpdated 6 mo ago
    Auto-check passed

Categories

Questions about Architecture Design Principles

What does Architecture Design Principles do?

Gives architecture design principles for system design discussions and code review: module boundaries, dependency direction, data ownership and interface rules, plus a checklist. md in a design workflow, and it can also be used to judge architecture during code review. Before proposing anything, the agent should have understood the spec's background, goals and non-goals, functional requirements and non-functional constraints, quantifying those constraints where possible.

When should I use Architecture Design Principles?

Architecture Design Principles fits situations like: drafting the solution overview section of a design spec; judging module boundaries and dependency direction in a code review; spotting circular dependencies or unclear data ownership.

How do I install Architecture Design Principles in Claude Code?

Run `npx skills add davidYichengWei/agentic-engineering-framework --skill bp-architecture-design -a claude-code`. Or copy the skill folder (skills/bp-architecture-design in davidYichengWei/agentic-engineering-framework) into .claude/skills/bp-architecture-design in your project. Claude Code loads it when a task matches its description.

How do I install Architecture Design Principles in Codex?

Run `npx skills add davidYichengWei/agentic-engineering-framework --skill bp-architecture-design -a codex`. Or copy the skill folder (skills/bp-architecture-design in davidYichengWei/agentic-engineering-framework) into .agents/skills/bp-architecture-design in your project. Codex loads it when a task matches its description.

Can I use Architecture Design Principles 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 davidYichengWei/agentic-engineering-framework --skill bp-architecture-design -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bp-architecture-design, .gemini/skills/bp-architecture-design, .github/skills/bp-architecture-design and .opencode/skills/bp-architecture-design in your project.

What does Architecture Design Principles need to run?

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

Does Architecture Design Principles 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 Design Principles 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 Design Principles use?

Architecture Design Principles 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 Design Principles use?

About 545 tokens (SKILL.md is roughly 2.2k 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 Design Principles?

Skills that share tags, products or a category with Architecture Design Principles: Ontology-Driven System Builder (sharptoolbox/ontology-driven-dev, 433 stars), MVP Technical Design (KhazP/vibe-coding-prompt-template, 3.1k stars), Architecture Review (owainlewis/blueprint, 412 stars) and SPARC Methodology (ruvnet/agentic-flow, 817 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Architecture Design Principles?

davidYichengWei (a GitHub user) maintains it in davidYichengWei/agentic-engineering-framework, which has 158 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on March 25, 2026.

Source: davidYichengWei/agentic-engineering-framework on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.