Token导航 LogoToken导航

Agent Skill · 前端设计

ios-architecture-expert(iOS 架构 expert)

ios-architecture-expert 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

ios-architecture-expert 是前端设计类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为需要联网;许可证信息还不明确,第三方扫描已通过,按安装量在前端设计类的 10,216 个 Skill 里排第 9,432。

总安装 216周安装 9GitHub Stars 2下载 72核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

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

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

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/swiftyjourney/ios-architecture-expert-skill --skill ios-architecture-expert

这个 Skill 是做什么的

前端设计类 Skill 关注页面结构、视觉规范和组件写法,输出通常是可运行的界面代码。

用于处理 GitHub 仓库、Issue、Pull Request 等协作信息。适合在 Codex、Claude、Cursor、Gemini CLI 中围绕代码变更进行整理。可结合来源仓库和原始 README 进一步了解功能细节。安装前建议确认权限范围和维护状态。注意其可能触发联网、命令执行或文件读写操作。

来源仓库内路径:skills/ios-architecture-expert

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/swiftyjourney/ios-architecture-expert-skill --…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

ios-architecture-expert 怎么安装?

在终端执行 npx skills add https://github.com/swiftyjourney/ios-architecture-expert-skill --skill ios-…。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

ios-architecture-expert 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

ios-architecture-expert 需要什么权限?

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

ios-architecture-expert 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

ios-architecture-expert 用的人多吗?

公开数据是累计安装 216 次,近一周安装 9 次,下载 72 次,GitHub 2 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

ios-architecture-expert 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理前端设计类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

前端设计类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
frontend-design

前端设计 · Codex、Claude

8,823,360126,072只读MIT通过
vercel-composition-patterns

Vercel 组合模式 · Codex、Claude

3,858,81625,893需要联网MIT通过
vercel-react-native-skills

Vercel React native skills 前端 · Codex、Claude

2,468,66425,878只读MIT通过
adapt

adapt 搜索 · Codex、Claude

2,027,04023,125操作浏览器未明确通过
bolder

bolder 分析 · Codex、Claude

2,004,28823,130只读未明确通过
ios-architecture-expert

iOS 架构 expert · 本页

2162需要联网未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

iOS Architecture Expert — Essential Developer Methodology

Agent Behavior Contract

When this skill is active, follow these rules strictly:

  1. Feature modules have zero UIKit/SwiftUI imports — only Foundation. Domain models, use cases, presenters, and API/cache logic never depend on a UI framework.
  2. Define protocol boundaries at every layer transition — FeedStore, HTTPClient, ResourceView, FeedCache, etc. Concrete types live behind protocols.
  3. Domain models are value types — struct, Hashable, Sendable. No classes for models.
  4. Presentation logic is framework-agnostic — presenters output view models (structs). No UIImage, UIColor, or SwiftUI types in the presentation layer.
  5. All dependency wiring happens in the Composition Root — the app target (or a dedicated CompositionRoot module). Feature modules never create their own dependencies.
  6. Tests drive the design — one test class per use case, named by behavior (CacheFeedUseCaseTests, not LocalFeedLoaderTests). Use makeSUT() factory in every test class.
  7. Use SPM multi-target packages for module separation — EssentialFeed (Foundation), EssentialFeediOS (UIKit), EssentialApp (composition).
  8. Prefer async/await over closures/Combine for async operations. Use Task.immediate for synchronous-first execution in adapters.
  9. Use Swift Testing (@Test, #expect) for new tests. Follow patterns in the swift-testing-expert skill when available.
  10. Mark shared mutable state with @MainActor — presenters, adapters, view controllers, and composition code run on the main actor.

Architecture Diagnostic Table

SymptomFirst checkSmallest safe fixDeep dive
Feature module imports UIKit/SwiftUIDependency graphMove type to correct layerreferences/architecture-layers.md
Retain cycle between presenter and viewProxy wiringAdd WeakRefVirtualProxyreferences/adapters-and-proxies.md
CoreData crashes on launchFallback strategyAdd InMemoryFeedStore fallbackreferences/composition-root.md
Duplicate network requests on refreshisLoading guardUse LoadResourcePresentationAdapterreferences/adapters-and-proxies.md
Test requires real infrastructureProtocol boundaryExtract protocol at boundaryreferences/testing-strategy.md
Sendable warning at composition boundaryClosure annotationsAdd @Sendable + @MainActorreferences/concurrency-at-boundaries.md
Pagination won't load next pageloadMore closureVerify recursive composition in FeedViewAdapterreferences/composition-root.md
Cache validation doesn't runTask.immediate usageUse fire-and-forget with Task.immediatereferences/concurrency-at-boundaries.md

Architecture Layers

LayerResponsibility
FeatureDomain models (struct, Sendable) and abstract use-case protocols. Zero framework imports beyond Foundation.
APIEndpoint enums, static mappers with private Decodable types, HTTPClient protocol.
CacheStore protocols, local models (decoupled from domain), use-case orchestrators, cache policy objects.
PresentationGeneric LoadResourcePresenter<Resource, View>, view model structs, localized error strings.
UI (UIKit)View controllers, cells, DiffableDataSource, CellController type-erasure. Conforms to presenter view protocols.
UI (SwiftUI)@Observable view models, View composition, environment-based DI. Same presenter patterns, different binding.
CompositionComposer static factories, PresentationAdapter, WeakRefVirtualProxy, FeedViewAdapter. App-target only.
Full code examples: architecture-layers.md

Key Patterns Quick Reference

PatternPurpose
LoadResourcePresenter<Resource, View>Reusable loading/error/success state machine with generic mapper
WeakRefVirtualProxy<T>Break retain cycles in presenter->view binding via conditional conformance
LoadResourcePresentationAdapterGeneric async loader bridging use cases to presenters with cancellation
FeedViewAdapterMaps domain models to CellController array, composes recursive loadMore
Paginated<Item>Recursive pagination with optional loadMore closure (Sendable)
Composition Root / FeedService@MainActor orchestrator with lazy init, Scheduler, and fallback strategy
Scheduler protocolAbstract store execution context for CoreData/InMemory polymorphism
InMemoryFeedStore@MainActor fallback store — production fallback + acceptance test double
LoaderSpy<Param, Resource>Generic async test spy using AsyncThrowingStream for UI integration tests
Specification PatternProtocol-driven shared test specs across store implementations
UI Composer (static factory)Wire presenter->adapter->view chain per feature (FeedUIComposer.feedComposedWith)
Static MapperPure function for data transformation — FeedItemsMapper.map(_:from:)
Cache PolicyBusiness rule encapsulation for cache validation — FeedCachePolicy.validate(_:against:)
CellControllerType-erased cell composition — wraps UITableViewDataSource + Delegate + Prefetching

Feature Decision Tree

Starting a new feature? Follow this path:

  1. Define the domain model -> struct in Feature layer, Hashable, Sendable
  2. Add concurrency annotations -> @MainActor on view protocols, Sendable on models
  3. Need remote data? -> Endpoint enum + static mapper in API layer
  4. Need persistence? -> Store protocol + local model + cache policy in Cache layer
  5. Need to display it? -> LoadResourcePresenter + view model struct in Presentation layer
  6. UIKit or SwiftUI? -> Build view layer, conform to ResourceView protocols
  7. Wire it up -> Composer + adapter + proxy in Composition Root
  8. Verify concurrency -> Build with SWIFT_STRICT_CONCURRENCY = complete, run Thread Sanitizer
Step-by-step guide: feature-implementation-workflow.md

Guardrails

  • Do not create concrete types inside feature modules — all instantiation belongs in the Composition Root
  • Do not use singletons — lazy var in FeedService achieves deferred init without global state
  • Do not add @MainActor to domain types or store protocols — only presentation, adapters, and composition
  • Do not use @unchecked Sendable — redesign the type as a value type or use @MainActor
  • Do not embed cache policy logic inside the loader — keep it as a separate type
  • Do not put navigation logic in view controllers — use closure callbacks wired in the Composition Root
  • Defer non-architectural concurrency questions to the swift-concurrency skill

Verification Checklist

When implementing or reviewing architecture:

  1. Build with SWIFT_STRICT_CONCURRENCY = complete — zero warnings
  2. No UIKit/SwiftUI imports in Feature/API/Cache modules
  3. All protocol boundaries have corresponding test doubles
  4. makeSUT() exists in every test class
  5. CoreData store has InMemoryFeedStore fallback in Composition Root
  6. Run Thread Sanitizer (-enableThreadSanitizer YES) — zero data races
  7. WeakRefVirtualProxy wraps all view references in UIKit composition (or @Observable in SwiftUI)
  8. Pagination loadMore is nil for the last page

Reference Router

Open the smallest reference that matches the question:

  • Architecture & Layers

- architecture-layers.md — layer boundaries, domain models, protocols - spm-project-structure.md — module layout, Package.swift, CI

  • Composition & Wiring

- composition-root.md — FeedService, Scheduler, fallback, dependency creation - adapters-and-proxies.md — adapter, proxy, view adapter, pagination wiring

  • Concurrency in Architecture

- concurrency-at-boundaries.md — Scheduler, @Sendable, Task.immediate, cancellation

  • Testing

- testing-strategy.md — unit, spec, integration, snapshot, acceptance

  • Workflow

- feature-implementation-workflow.md — step-by-step feature building

  • Navigation index

- references/_index.md

平台分布

Codex

38.66%
按下载量换算28

Claude

28.22%
按下载量换算20

Cursor

17.39%
按下载量换算13

Gemini CLI

8.3%
按下载量换算6

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

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

安装前确认

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

继续浏览同类 Skills