Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

ios-swift-api-design-revieweriOS Swift API 设计 reviewer

Agent Skill

用于辅助 API 设计、接口文档、请求响应结构和服务集成说明。它适合让 Agent 梳理 endpoint、生成 OpenAPI 草稿、检查字段命名、整理错误码或辅助前后端联调。使用时需要确认真实业务语义、鉴权方式、分页和错误处理规则;涉及生成接口文档时,应避免凭空补字段,最好从现有代码、schema 或接口样例中提取事实。

总安装

235

周安装

10

GitHub Stars

3

下载量

82
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ios-swift-api-design-reviewer(iOS Swift API 设计 reviewer)
来源仓库:https://github.com/desquared/agents-rules-skills
仓库路径:skills/ios-swift-api-design-reviewer
安装命令:
npx skills add https://github.com/desquared/agents-rules-skills --skill ios-swift-api-design-reviewer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/desquared/agents-rules-skills --skill ios-swift-api-design-reviewer

简介

该技能用于辅助 API 设计、接口文档和请求响应结构梳理。

  • 适合生成 OpenAPI 草稿、检查字段命名或协助前后端联调。
  • 使用时需确认业务语义、鉴权方式、分页和错误处理规则。
  • 生成接口文档时应基于现有代码或样例提取事实,避免虚构字段。
  • 建议结合项目实际接口规范验证输出准确性。ios-swift-api-design-reviewer 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Swift API Design Review

What “good” looks like

  • Prioritize clarity at the call site, even if the declaration becomes a bit longer.
  • Follow established standard library conventions so your API “feels Swift”.
  • Prefer precise words over generic ones (data, info, manager, handler, util).

Naming Rules (Types, Properties, Methods)

  • Clear at point of use, not at declaration.
  • Omit needless words, but do not remove words that carry meaning.
  • lowerCamelCase: functions, methods, properties, enum cases.
  • UpperCamelCase: types, protocols.
  • Avoid “noise” suffixes like String, Array, Data unless they add meaning.

Boolean naming

  • Prefer predicates: is, has, can, should, did.
  • Match the natural reading of the call site.

- ✅ if user.isEligible {…} - ✅ if cache.hasValue(forKey: k) {…}

Verbs and mutability

  • Mutating methods are verbs: sort(), append(_), removeAll().
  • Non-mutating counterparts use “-ed”: sorted(), appending(_), removingAll() when appropriate.

Common Issues (with better fixes)

IssueBetter Fix
var visiblevar isVisible
func get()Use a precise verb or a noun that reads well at the call site: func userName(), func loadUserName(), func fetchUserName()
var nameStringvar name
func add(item: x, to: y)func add(_ item: Item, to collection: Collection)
func doStuff()Name the domain action: func refresh(), func rebuildIndex(), func startSession()
func handle(_ x: …)Be specific: func handleDeepLink(_:) or func route(_:)

Parameter & Label Design (call-site first)

  • The first argument label should be omitted when it forms a natural phrase:

- ✅ add(_ item:to:) - ✅ contains(_:)

  • Use labels to clarify roles, units, and semantics:

- ✅ move(from:to:) - ✅ setDeadline(_:, for:) - ✅ resize(to:) (size), resize(by:) (scale factor)

  • Keep default parameters last when it improves scanning and discoverability.
  • Closure parameters are usually last, but:

- If there are multiple closures, label them clearly. - If a closure is *configuration* rather than *action*, it may be clearer earlier.

Preferred label vocabulary (common Swift patterns)

  • in: container or scope
  • from: source
  • to: destination
  • at: position or index
  • with: accompanying value
  • using: algorithm/tool dependency
  • for: beneficiary or target entity
  • by: delta, factor, or means

Return Types & Error Handling

  • Use optional only when nil is a meaningful “no value” state.
  • Use throws for failures that should be handled via do/catch.
  • Use Result when:

- You need to store/transport outcomes, - You are bridging callback-based APIs, - You want explicit success/failure as a value.

  • Prefer structs over tuples when:

- More than 2–3 fields, - Fields need names that matter, - The value is passed around broadly.

Async / Concurrency (modern Swift)

  • Prefer async/await over completion handlers for new APIs.
  • Avoid Async suffixes unless required for disambiguation.

- ✅ func refresh() async throws - ✅ func loadImage() async -> Image

  • Cancellation:

- Prefer being cancellation-cooperative rather than inventing custom cancel APIs. - Consider how the API behaves when the task is cancelled (does it throw CancellationError?).

  • Actor isolation:

- Avoid marking pure data models @MainActor. - Keep UI-bound types @MainActor when they are truly view-facing.

Type & Protocol Naming

  • Protocols should name *capabilities*:

- ✅ Cache, ImageLoading, Persisting

  • Types should name *what they are*:

- ✅ ImageCache, URLSessionImageLoader, KeychainStore

  • Avoid vague names:

- 🚫 Manager, Helper, Util, Common, Base (unless truly established in the domain)

Quick Review Checklist

  • Does every API read clearly at the call site?
  • Are names consistent with stdlib conventions (mutating vs non-mutating)?
  • Are parameter labels meaningful (roles, units, direction: from/to/at/with)?
  • Are “get”, “do”, “handle”, “data/info” avoided unless truly accurate?
  • Are return types chosen intentionally (optional vs throws vs Result)?
  • Do async/throws APIs follow modern Swift patterns without “Async” noise?

Severity

  • 🔴 Critical: Violates guidelines or likely to cause misuse/confusion.
  • 🟡 Improvement: Usable, but naming/labels could be clearer and more Swift-like.
  • 🟢 Enhancement: Polish that improves consistency and ergonomics.

Output format (recommended)

  • Summary: 2–5 bullets of highest-impact issues.
  • Findings: Grouped by Naming, Parameters, Return Types, Concurrency.
  • Each issue labeled with 🔴🟡🟢 and includes a before → after suggestion.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.93%
按下载量换算28

Claude

33.07%
按下载量换算27

Cursor

16.96%
按下载量换算14

Gemini CLI

9.15%
按下载量换算8

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills