architect/data-api-design

A guide to designing data models and application programming interfaces (APIs), which are the rules software uses to exchange data.

In plain words
What is it for?
Use it to identify entities, define one-to-one, one-to-many, and many-to-many relationships, draw entity-relationship diagrams, and specify APIs.
Why use it?
It helps turn product requirements into clear database tables, relationships, constraints, and request and response formats.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/echovic/boss-skill/data-api-design
Any agent
npx skills add echoVic/boss-skill --skill data-api-design
Clone the repo
git clone --depth 1 https://github.com/echoVic/boss-skill

Made for: Claude Code, Codex.

Per session 26 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,129 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00026 $0.03129
Opus 5 $0.00013 $0.01564
Sonnet 5 $0.00005 $0.00626
Haiku 4.5 $0.00003 $0.00313

Measured 2d ago against content hash f223a3c6b772, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

architect/data-api-design 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 2d ago.

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.

skill/skills/architect/data-api-design/SKILL.md · 394 lines

How it starts

The opening of the file, as written. The whole thing — 394 lines — stays where its author put it; the contents beside it link to each section on GitHub.

数据模型与API设计方法论

适用场景

在系统架构确定后,需要设计:

  • 数据库表结构和关系
  • 数据字典和约束
  • API接口规范
  • 请求/响应格式

数据模型设计

1. 实体识别

从PRD中识别核心实体(名词):

示例

  • 用户系统:User(用户)、Role(角色)、Permission(权限)
  • 博客系统:User(用户)、Post(文章)、Comment(评论)、Tag(标签)
  • 电商系统:User(用户)、Product(商品)、Order(订单)、OrderItem(订单项)

2. 关系识别

确定实体之间的关系:

关系类型 说明 示例
一对一 (1:1) 一个A对应一个B User - Profile
一对多 (1:N) 一个A对应多个B User - Post
多对多 (M:N) 多个A对应多个B Post - Tag

关系表示

  • ||--o{: 一对多
  • ||--||: 一对一
  • }o--o{: 多对多

3. 实体关系图 (ERD)

使用 Mermaid 绘制 ERD:

erDiagram
    User ||--o{ Post : creates
    User ||--o{ Comment : writes
    Post ||--o{ Comment : has
    Post }o--o{ Tag : has

    User {
        uuid id PK
        string email UK
        string name
        string passwordHash
        enum role
        datetime createdAt
        datetime updatedAt
    }

    Post {
        uuid id PK
        uuid authorId FK
        string title
        text content
        enum status
        datetime publishedAt
        datetime createdAt
        datetime updatedAt
    }

    Comment {
        uuid id PK
        uuid postId FK
        uuid userId FK
        text content
        datetime createdAt
    }

    Tag {
        uuid id PK
        string name UK
    }

4. 数据字典

为每个表定义详细的字段信息:

User 表
字段 类型 约束 默认值 说明
id UUID PK uuid_generate_v4() 主键
email VARCHAR(255) UNIQUE, NOT NULL - 邮箱,用于登录
name VARCHAR(100) NOT NULL - 用户名
passwordHash VARCHAR(255) NOT NULL - 密码哈希(bcrypt)
role ENUM('user', 'admin') NOT NULL 'user' 用户角色
createdAt TIMESTAMP NOT NULL NOW() 创建时间
updatedAt TIMESTAMP NOT NULL NOW() 更新时间

索引

  • idx_user_email: email(唯一索引,用于登录查询)
  • idx_user_role: role(用于角色筛选)
Post 表
字段 类型 约束 默认值 说明
id UUID PK uuid_generate_v4() 主键
authorId UUID FK, NOT NULL - 作者ID,外键关联User.id
title VARCHAR(200) NOT NULL - 文章标题
content TEXT NOT NULL - 文章内容
status ENUM('draft', 'published', 'archived') NOT NULL 'draft' 文章状态
publishedAt TIMESTAMP NULL - 发布时间
createdAt TIMESTAMP NOT NULL NOW() 创建时间
updatedAt TIMESTAMP NOT NULL NOW() 更新时间

Read the full file on GitHub · 394 lines

Changes

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.

  1. 2d ago First seen · 394 lines · 26 tokens per session scan A f223a3c6b772

Subscribe to this mod's changes

architect/data-api-design is a skill published in the GitHub repository echoVic/boss-skill (553 stars, last pushed 2d ago), licensed MIT. It adds 26 tokens to every session and 3,129 once invoked, about $0.0001 per session on Opus 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.

Related

Other skills, from other repositories

large-workspace-handling

To partition large workspaces (100+ files) into scoped subagent tasks when context is insufficient.

griddynamics/rosetta · 26 tokens

example-skill

Example skill template used for the CreateHub template. You should never use this skill directly as it is just a template made to be updated.

aws-samples/sample-well-architected-skills-and-steering · 32 tokens

bmad-github-story-dev

Set up a git worktree/branch (or reuse the current one) and run BMAD dev-story end-to-end: auto-commits per task, PR creation, label updates. Use when the user invokes the SD menu code in bmad help, or asks to start implementing the next ready story, or asks to begin dev on a story.

choucrifahed/agent-plugins · 78 tokens

bmad-github-story-sync

Reconcile GitHub state with BMAD files — detect merged PRs, mark stories done in sprint-status.yaml and story files, sync GitHub labels, and clean up worktrees and branches. Use when the user invokes the SS menu code in bmad help, or asks to sync BMAD with GitHub, or just merged a PR and wants BMAD updated.

choucrifahed/agent-plugins · 81 tokens

bmad-github-story-create

Sync GitHub state then plan the next story end-to-end via the BMAD create-story flow. Detects blocking dependencies via GitHub labels and updates the GitHub issue label to ready. Use when the user invokes the SC menu code in bmad help, or asks to plan/create the next story, or asks to start the next BMAD story.

choucrifahed/agent-plugins · 78 tokens

bmad-github-story-review

Run BMAD adversarial code review on the current story branch and push fixes. Does NOT mark the story done — the user merges the PR on GitHub. Use when the user invokes the SR menu code in bmad help, or asks to code-review the current story, or asks for an adversarial review of the open story PR.

choucrifahed/agent-plugins · 75 tokens