awesome-agv: Skill for Claude Code

.agents/skills/swift-idioms/SKILL.md

swift-idioms is a skill for Claude Code from irahardianto/awesome-agv. It costs 0 tokens per session (2,071 once invoked), scanned A, original, MIT.

A guide to idiomatic Swift programming, covering value types, optional values, property wrappers, and protocol-oriented design. Swift is Apple's programming language for apps and other software.

In plain words
What is it for?
It is for writing and reviewing Swift code using language-specific patterns.
Why use it?
It helps avoid common crash risks such as forced unwrapping and encourages safer, clearer code structure.

Skill for Claude Code

Written for Claude Code: paths in frontmatter. Also seen: positional $N argument; installed under .agents/ (shared by several agents).

This is irahardianto/awesome-agv's own configuration. It tells Claude Code how to work on awesome-agv itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything awesome-agv configures →

Reuse

Borrowing it

Nothing to install: this file belongs to irahardianto/awesome-agv. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/irahardianto/awesome-agv/main/.agents/skills/swift-idioms/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/irahardianto/awesome-agv

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for swift-idioms

README.md
[![agentmods](https://agentmods.dev/badge/skills/irahardianto/awesome-agv/swift-idioms/github.svg)](https://agentmods.dev/skills/irahardianto/awesome-agv/swift-idioms)
Your own site
<a href="https://agentmods.dev/skills/irahardianto/awesome-agv/swift-idioms"><img src="https://agentmods.dev/badge/skills/irahardianto/awesome-agv/swift-idioms/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for swift-idioms

Your own site · 80×15
<a href="https://agentmods.dev/skills/irahardianto/awesome-agv/swift-idioms"><img src="https://agentmods.dev/badge/skills/irahardianto/awesome-agv/swift-idioms.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 0 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,071 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
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.1 $0.00000 $0.02071
Opus 5 $0.00000 $0.01035
Sonnet 5 $0.00000 $0.00414
Haiku 4.5 $0.00000 $0.00207

Measured 9d ago against content hash 495baa6c1975, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

swift-idioms 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 9d 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.

.agents/skills/swift-idioms/SKILL.md · 287 lines

How it starts

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

Swift Idioms and Patterns

Swift rewards value types, optionals, and protocol-oriented design. Idiomatic Swift = safe, expressive, Swifty.

Scope: Swift coding idioms. Test naming: .agents/rules/testing-strategy.md.

Value Types and Optionals

  1. Prefer structs over classes — value semantics by default. Classes only for identity, inheritance, or reference counting.

  2. Optionals — never force-unwrap (!) in production:

    // ✅ Guard let for early exit
    guard let task = storage.findById(id) else {
        throw TaskError.notFound(id)
    }
    
    // ✅ Optional chaining
    let title = task?.title ?? "Untitled"
    
    // ✅ if let for conditional binding
    if let deadline = task.deadline {
        scheduleReminder(for: deadline)
    }
    
    // ❌ Force unwrap — crash risk
    let task = storage.findById(id)!
    
  3. Property wrappers for reusable behavior:

    @propertyWrapper
    struct Clamped<Value: Comparable> {
        var wrappedValue: Value {
            didSet { wrappedValue = min(max(wrappedValue, range.lowerBound), range.upperBound) }
        }
        let range: ClosedRange<Value>
    
        init(wrappedValue: Value, _ range: ClosedRange<Value>) {
            self.range = range
            self.wrappedValue = min(max(wrappedValue, range.lowerBound), range.upperBound)
        }
    }
    
    struct Task {
        @Clamped(0...100) var progress: Int = 0
    }
    

Error Handling

For universal error handling principles, see .agents/rules/error-handling-principles.md.

  1. Typed throws (Swift 6) or Error protocol:
    enum TaskError: Error, LocalizedError {
        case notFound(String)
        case validationFailed(field: String, message: String)
        case storageUnavailable
    
        var errorDescription: String? {
            switch self {
            case .notFound(let id): "Task '\(id)' not found"
            case .validationFailed(let field, let msg): "Validation failed on \(field): \(msg)"
            case .storageUnavailable: "Storage is unavailable"
            }
        }
    }
    
    func getTask(id: String) throws(TaskError) -> Task { ... }
    

Read the full file on GitHub · 287 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. 9d ago First seen · 287 lines · 0 tokens per session scan A 495baa6c1975

Subscribe to this mod's changes

swift-idioms is a skill published in the GitHub repository irahardianto/awesome-agv (156 stars, last pushed 22d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 2,071 tokens. 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-09-03.

Related

Other skills, from other repositories

android-jetpack-compose-expert

Expert guidance for building modern Android UIs with Jetpack Compose, covering state management, navigation, performance, and Material Design 3.

marysatasselshaped667/skills-collection-1 · 35 tokens

android-native-dev

Android native application development and UI design guide. Covers Material Design 3, Kotlin/Compose development, project configuration, accessibility, and build troubleshooting. Read this before Android native application development.

marysatasselshaped667/skills-collection-1 · 41 tokens

android-jetpack-compose-expert

Expert guidance for building modern Android UIs with Jetpack Compose, covering state management, navigation, performance, and Material Design 3.

sickn33/agentic-awesome-skills · 35 tokens

kotlin-coroutines-flows

Kotlin Coroutines and Flow patterns for Android and KMP — structured concurrency, Flow operators, StateFlow, error handling, and testing.

hashgraph-online/awesome-codex-plugins · 35 tokens

android-navigation-3

Install and migrate to Jetpack Navigation 3. Use when implementing Navigation 3 patterns including NavDisplay, NavKey routes, deep links, multiple backstacks, scenes (dialogs, bottom sheets), or migrating from Navigation 2.

HoangNguyen0403/agent-skills-standard · 52 tokens

android-development

Android development with Kotlin, Jetpack Compose, and modern Android architecture. Use when building Android apps, implementing Material Design, or following Android best practices.

travisjneuman/.claude · 33 tokens