Skip to content

feat: expand Swift/Apple support with reviewer, build resolver, and iOS workflow skills#1289

Closed
chris-yyau wants to merge 3 commits intoaffaan-m:mainfrom
chris-yyau:feat/swift-apple-support
Closed

feat: expand Swift/Apple support with reviewer, build resolver, and iOS workflow skills#1289
chris-yyau wants to merge 3 commits intoaffaan-m:mainfrom
chris-yyau:feat/swift-apple-support

Conversation

@chris-yyau
Copy link
Copy Markdown
Contributor

@chris-yyau chris-yyau commented Apr 6, 2026

Summary

Expands Swift/Apple support toward parity with Kotlin, Python, and TypeScript workflows, as requested in #912.

Agents (2 new):

  • swift-reviewer — Reviews Swift code for concurrency safety (data races, Sendable violations, actor isolation), SwiftUI correctness (@State/@StateObject misuse, recomposition traps), protocol-oriented design, and Apple platform conventions
  • swift-build-resolver — Fixes Swift/Xcode/SPM build errors, compiler diagnostics, package resolution failures, and SwiftLint violations

Skills (2 new):

  • ios-architecture — MVVM with SwiftUI, Clean Architecture layering, Coordinator navigation, module boundaries, dependency injection patterns
  • ios-testing — Swift Testing framework, XCTest, UI tests, snapshot testing, mock/spy patterns, parameterized tests, test organization

How This Fills the Gap (#912)

Capability Before After
Swift code reviewer None swift-reviewer (matches kotlin-reviewer pattern)
Swift build resolver None swift-build-resolver (matches kotlin-build-resolver pattern)
iOS architecture guidance Topic skills only (swiftui-patterns, swift-concurrency) ios-architecture — end-to-end app architecture
iOS testing workflow swift-protocol-di-testing (DI focus) ios-testing — full testing workflow with Swift Testing, XCTest, UI tests, snapshots

Builds on the existing Swift foundation: rules/swift/*, swiftui-patterns, swift-concurrency-6-2, swift-protocol-di-testing, swift-actor-persistence, foundation-models-on-device, liquid-glass-design.

Files

  • agents/swift-reviewer.md (189 lines)
  • agents/swift-build-resolver.md (130 lines)
  • skills/ios-architecture/SKILL.md (290 lines)
  • skills/ios-testing/SKILL.md (318 lines)
  • Catalog count updates across README.md, AGENTS.md, and zh-CN translations

Test plan

  • npx markdownlint-cli on all 4 new files — clean
  • node tests/run-all.js — 1763/1763 tests pass
  • Catalog counts synced via node scripts/ci/catalog.js --write
  • Invoke swift-reviewer on a Swift project — verify checklist coverage
  • Invoke swift-build-resolver on a failing SPM build — verify diagnostic workflow

Closes #912

Generated with Claude Code
via Happy


Summary by cubic

Adds two Swift agents and two iOS skills to expand Apple platform support toward parity, addressing #912. Polishes instructions and updates catalog counts to 49 agents and 183 skills.

  • New Features

    • Agents: swift-reviewer (concurrency/SwiftUI/actor isolation review), swift-build-resolver (Xcode/SPM/compiler/SwiftLint build fixes).
    • Skills: ios-architecture (MVVM, Clean Architecture, Coordinator, DI), ios-testing (Swift Testing, XCTest, UI/snapshot tests, mocks).
  • Bug Fixes

    • swift-reviewer: corrected iOS 17 @Observable + @State guidance; fixed step numbering.
    • swift-build-resolver: removed masking of swift test failures; clarified dump-package comment; added OS=latest to simulator destination.
    • ios-testing: added missing import Testing in snapshot example; justified @unchecked Sendable on test mocks.
    • ios-architecture: added required section headers; noted Hashable requirement on navigation enum.

Written for commit 9b184ad. Summary will update on new commits.

Summary by CodeRabbit

  • New Features

    • Added 2 new specialized agents for Swift code review and Swift build/error resolution.
    • Added 2 new workflow skills covering iOS architecture and iOS testing.
    • Updated totals to 49 agents and 183 skills.
  • Documentation

    • Updated docs and feature-parity tables (including localized docs) to reflect the new agent and skill counts.

chris-yyau and others added 2 commits April 6, 2026 12:05
- swift-reviewer: reviews Swift code for concurrency safety,
  SwiftUI correctness, protocol-oriented design, actor isolation,
  and Apple platform conventions
- swift-build-resolver: fixes Swift/Xcode/SPM build errors,
  compiler diagnostics, and package resolution failures

Addresses affaan-m#912 (Swift/Apple support parity).

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
- ios-architecture: MVVM with SwiftUI, Clean Architecture layering,
  Coordinator navigation, module boundaries, dependency injection
- ios-testing: Swift Testing framework, XCTest, UI tests, snapshot
  testing, mock/spy patterns, test organization

Catalog counts updated (49 agents, 183 skills).
Addresses affaan-m#912 (Swift/Apple support parity).

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
Copilot AI review requested due to automatic review settings April 6, 2026 04:08
@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Apr 6, 2026

ECC bundle files are already tracked in this repository. Skipping generation of another bundle PR.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 6, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: fd664cdc-b45b-4d71-bde8-53a00aff525d

📥 Commits

Reviewing files that changed from the base of the PR and between 586089f and 9b184ad.

📒 Files selected for processing (6)
  • AGENTS.md
  • agents/swift-build-resolver.md
  • agents/swift-reviewer.md
  • docs/zh-CN/AGENTS.md
  • skills/ios-architecture/SKILL.md
  • skills/ios-testing/SKILL.md
✅ Files skipped from review due to trivial changes (4)
  • skills/ios-testing/SKILL.md
  • skills/ios-architecture/SKILL.md
  • agents/swift-build-resolver.md
  • agents/swift-reviewer.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • docs/zh-CN/AGENTS.md
  • AGENTS.md

📝 Walkthrough

Walkthrough

This PR adds two Swift-focused agents (swift-reviewer, swift-build-resolver) and two iOS workflow skills (ios-architecture, ios-testing), and updates documentation counts across English and Chinese docs to 49 agents and 183 skills.

Changes

Cohort / File(s) Summary
Documentation Count Updates
AGENTS.md, README.md, README.zh-CN.md, docs/zh-CN/AGENTS.md, docs/zh-CN/README.md
Incremented agent count 47 → 49 and skill count 181 → 183 in English and Chinese documentation and parity tables.
New Agent Specifications
agents/swift-build-resolver.md, agents/swift-reviewer.md
Added two new agent spec docs: swift-build-resolver (Xcode/SPM/Swift build error diagnosis and surgical fixes workflow) and swift-reviewer (senior-level Swift/Apple code review checklist, workflows, and reporting format).
New iOS Workflow Skills
skills/ios-architecture/SKILL.md, skills/ios-testing/SKILL.md
Added two new skills documenting iOS architecture patterns (layering, MVVM, DI, module boundaries) and iOS testing practices (Swift Testing, mocks, XCUITest, snapshotting, coverage guidance).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • affaan-m

Poem

🐰 I hopped through Swift code, keen and spry,
Found build woes, and whispered, "Let's try!"
Reviews I penned with carrot-powered might,
Tests and architecture—now all snug and right. 🥕✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title accurately summarizes the main changes: adding Swift/Apple support with two new agents (reviewer, build resolver) and two new iOS workflow skills, directly aligned with the changeset.
Linked Issues check ✅ Passed The PR fully addresses all coding objectives from issue #912: adds swift-reviewer agent [#912], adds swift-build-resolver agent [#912], adds ios-architecture skill [#912], and adds ios-testing skill [#912].
Out of Scope Changes check ✅ Passed All changes are in scope: two new agent definition files, two new skill files, and synchronized documentation/catalog counts. No unrelated or extraneous modifications detected.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Expands ECC’s Swift/Apple workflow surface by adding Swift-specific reviewer and build-resolver agents plus two iOS workflow skills (architecture + testing), and synchronizes catalog counts in the READMEs.

Changes:

  • Added swift-reviewer and swift-build-resolver agents for Swift/iOS review and build error resolution workflows.
  • Added ios-architecture and ios-testing skills covering end-to-end iOS app architecture and testing practices.
  • Updated agent/skill catalog counts in English + zh-CN documentation.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
agents/swift-reviewer.md New Swift/iOS code review agent (concurrency, SwiftUI, architecture, platform conventions).
agents/swift-build-resolver.md New Swift/Xcode/SPM build error resolver agent with diagnostic/resolution workflow.
skills/ios-architecture/SKILL.md New iOS architecture skill (layering, MVVM, coordinators, modules, DI).
skills/ios-testing/SKILL.md New iOS testing skill (Swift Testing, XCTest UI tests, snapshots, organization).
README.md Updated catalog counts (agents/skills).
README.zh-CN.md Updated catalog counts (agents/skills).
docs/zh-CN/README.md Updated catalog counts (agents/skills).
AGENTS.md Updated catalog counts (agents/skills).
docs/zh-CN/AGENTS.md Updated catalog counts (agents/skills).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


### SwiftUI (HIGH)

- **`@State` on reference types** — `@State` is designed for value types; use `@Observable` for classes
Copy link

Copilot AI Apr 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The checklist item "@State on reference types" is inaccurate for this repo’s SwiftUI guidance: swiftui-patterns explicitly recommends using an @Observable class stored in @State for owned models. As written, the agent may incorrectly flag correct @Observable + @State usage; consider narrowing this to legacy ObservableObject cases (or explicitly exempt @Observable models).

Suggested change
- **`@State` on reference types**`@State` is designed for value types; use `@Observable` for classes
- **`@State` on legacy/non-observable reference types**Avoid storing plain classes or owned `ObservableObject` in `@State`; owned `@Observable` models in `@State` are valid

Copilot uses AI. Check for mistakes.
Use `swift-snapshot-testing` for visual regression:

```swift
import SnapshotTesting
Copy link

Copilot AI Apr 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This Swift Testing snapshot example uses @Test(...) but doesn’t import the Swift Testing module, so the snippet won’t compile as shown. Add import Testing (or rewrite this example as an XCTest-based snapshot test for consistency).

Suggested change
import SnapshotTesting
import SnapshotTesting
import Testing

Copilot uses AI. Check for mistakes.
# Check for version conflicts
swift package resolve 2>&1 | grep -i "error\|conflict\|incompatible"

# Show available versions of a package
Copy link

Copilot AI Apr 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The comment "Show available versions of a package" is misleading here: swift package dump-package only prints the current package manifest/dependencies, not remote available versions/tags. Either adjust the description to match the command output or replace it with a command that actually inspects remote tags/versions for a dependency.

Suggested change
# Show available versions of a package
# Show package manifest dependencies

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@AGENTS.md`:
- Line 3: Update the "Available Agents" table to include the two new agents
referenced in the PR: add rows for swift-reviewer and swift-build-resolver with
consistent columns and brief descriptions matching the existing style, and
verify the top-level agent count (49) matches the table entries; ensure the new
rows follow the same formatting/ordering conventions as other agents in the
catalog so they appear in the visible index.

In `@agents/swift-reviewer.md`:
- Around line 75-79: The guidance incorrectly discourages using `@State` with
reference types; update the rule text to state that with iOS 17+ Observation you
may store `@Observable` (observation-based) classes in `@State`, and reserve
`@StateObject` for legacy ObservableObject classes — change any mention of "avoid
`@State` on reference types" to explicitly allow `@State` for `@Observable` types and
add a short note referencing migration from ObservableObject to `@Observable` for
clarity (mention symbols `@State`, `@Observable`, `@StateObject`, ObservableObject,
and "migration guide" to locate the relevant docs).

In `@docs/zh-CN/AGENTS.md`:
- Line 3: The summary and agent list are inconsistent: the summary says 49
agents but the "available agents" section is missing the newly added
swift-reviewer and swift-build-resolver entries; add those two agent entries
(swift-reviewer, swift-build-resolver) into the "可用智能体" list and update the
top-line count from 49 to 51 (and any other counts or index references in the
document that assume 49) so the summary and list remain consistent with the
added agents.

In `@README.md`:
- Line 239: The README contains inconsistent inventory numbers — update all
references to the same canonical counts by replacing the hardcoded sentence
"That's it! You now have access to 49 agents, 183 skills, and 79 legacy command
shims." and any other occurrences (e.g., the "What's New v1.10.0" bullet and the
"agents/ tree count") so they all reflect the single source of truth; pick the
authoritative source (a single variable, script output, or documented canonical
numbers) and use it to normalize every count string in the README so all
mentions match exactly.

In `@skills/ios-architecture/SKILL.md`:
- Around line 11-290: Add two top-level Markdown headings "How It Works" and
"Examples" to the document and move the existing explanatory and example content
into them: place the architecture explanation and patterns (the "Layered
Architecture" diagram and the "Presentation Layer", "Domain Layer", "Data
Layer", "MVVM with SwiftUI", "Navigation", "Module Boundaries", "Dependency
Injection", and "Anti-Patterns" sections) under "How It Works", and group
concrete code snippets and usage examples (the ViewModel, View binding,
Coordinator, DependencyContainer composition, and any sample package layout/DI
examples) under "Examples"; ensure the existing top-level "When to Use" header
remains unchanged and that the new headers are top-level (##) to satisfy the
required skill format.

In `@skills/ios-testing/SKILL.md`:
- Around line 11-318: The markdown is missing top-level "How It Works" and
"Examples" sections; add a "How It Works" heading and move the explanations of
Swift Testing, Mocking Strategy, ViewModel Testing, UI Testing, Snapshot
Testing, Test Organization, Coverage, and Anti-Patterns under it, and add an
"Examples" heading containing the concrete test snippets (Basic Test,
Parameterized Tests, Suites, Traits, XCUITest, Snapshot Testing) so the file
includes clear "When to Use", "How It Works", and "Examples" sections; update
any table-of-contents or ordering so the headings appear in that sequence and
keep existing content unchanged except for relocating it under the new headings.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 65a51d4f-f7c2-4fd8-a35a-16f5bb817fca

📥 Commits

Reviewing files that changed from the base of the PR and between 7dfdbe0 and 586089f.

📒 Files selected for processing (9)
  • AGENTS.md
  • README.md
  • README.zh-CN.md
  • agents/swift-build-resolver.md
  • agents/swift-reviewer.md
  • docs/zh-CN/AGENTS.md
  • docs/zh-CN/README.md
  • skills/ios-architecture/SKILL.md
  • skills/ios-testing/SKILL.md

# Everything Claude Code (ECC) — Agent Instructions

This is a **production-ready AI coding plugin** providing 47 specialized agents, 181 skills, 79 commands, and automated hook workflows for software development.
This is a **production-ready AI coding plugin** providing 49 specialized agents, 183 skills, 79 commands, and automated hook workflows for software development.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Count updated, but new Swift agents are missing from the visible agent catalog.

The file now states 49 agents, but this doc’s “Available Agents” table does not list swift-reviewer or swift-build-resolver. Please add them to keep this index aligned with the PR’s new capabilities.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@AGENTS.md` at line 3, Update the "Available Agents" table to include the two
new agents referenced in the PR: add rows for swift-reviewer and
swift-build-resolver with consistent columns and brief descriptions matching the
existing style, and verify the top-level agent count (49) matches the table
entries; ensure the new rows follow the same formatting/ordering conventions as
other agents in the catalog so they appear in the visible index.

```

**That's it!** You now have access to 47 agents, 181 skills, and 79 legacy command shims.
**That's it!** You now have access to 49 agents, 183 skills, and 79 legacy command shims.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

README now contains contradictory inventory numbers.

This line says 49 agents / 183 skills, but the same file still includes older counts (e.g., the “What’s New v1.10.0” bullet and agents/ tree count). Please normalize all count references to one source of truth.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 239, The README contains inconsistent inventory numbers —
update all references to the same canonical counts by replacing the hardcoded
sentence "That's it! You now have access to 49 agents, 183 skills, and 79 legacy
command shims." and any other occurrences (e.g., the "What's New v1.10.0" bullet
and the "agents/ tree count") so they all reflect the single source of truth;
pick the authoritative source (a single variable, script output, or documented
canonical numbers) and use it to normalize every count string in the README so
all mentions match exactly.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Apr 6, 2026

Greptile Summary

Adds two Swift agents (swift-reviewer, swift-build-resolver) and two iOS skills (ios-architecture, ios-testing) to bring Apple platform support to parity with Kotlin and TypeScript workflows. All new files follow existing agent/skill conventions and catalog counts are correctly updated across English and zh-CN docs.

The only finding is in skills/ios-testing/SKILL.md: the @Suite test structs that own @MainActor @Observable ViewModels are missing @MainActor annotations — accessing actor-isolated properties from a non-isolated context is a compiler error under Swift 6 strict concurrency.

Confidence Score: 5/5

Safe to merge; the single remaining finding is a P2 style suggestion on example code in a documentation skill file

All four new content files are well-structured and follow established agent/skill patterns. The only finding (missing @mainactor on @suite test structs in ios-testing/SKILL.md) is a P2 documentation quality issue that does not block the feature. Catalog counts are consistent across all updated files.

skills/ios-testing/SKILL.md — both @suite test structs should be annotated @mainactor to model correct Swift 6 concurrency

Important Files Changed

Filename Overview
agents/swift-reviewer.md Adds Swift/iOS/macOS code review agent following kotlin-reviewer pattern with comprehensive concurrency, SwiftUI, and security checklists
agents/swift-build-resolver.md Adds Swift/Xcode/SPM build resolver with diagnostic workflow, 11-entry fix-patterns table, and SPM/Xcode troubleshooting commands
skills/ios-architecture/SKILL.md Adds iOS architecture skill with MVVM, Clean Architecture, Coordinator, module boundaries, and DI patterns using idiomatic Swift 6 examples
skills/ios-testing/SKILL.md Adds iOS testing skill; @suite test structs access @mainactor ViewModels without @mainactor annotation, causing Swift 6 strict concurrency compiler errors
AGENTS.md Updates agent count to 49; adds swift-reviewer and swift-build-resolver to the catalog table with correct descriptions
README.md Catalog count update to 49 agents / 183 skills
README.zh-CN.md Catalog count update in simplified Chinese README
docs/zh-CN/AGENTS.md Adds swift-reviewer and swift-build-resolver entries in simplified Chinese agent table
docs/zh-CN/README.md Catalog count update in simplified Chinese docs

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[swift-reviewer agent] -->|Step 1| B[git diff: identify .swift files]
    B -->|Step 2| C[Check Package.swift / .xcodeproj\nRead CLAUDE.md / detect platform]
    C --> D{Critical security\nissue found?}
    D -->|Yes| E[Escalate to security-reviewer\nSTOP]
    D -->|No| F[Step 3: Read changed files\nApply checklist]
    F --> G[CRITICAL: Concurrency + Security\nHIGH: SwiftUI + Architecture\nMEDIUM: Idioms + Platform\nLOW: Performance]
    G -->|Step 4| H[Report findings\n>80% confidence only]
    H --> I{CRITICAL or HIGH\nissues found?}
    I -->|Yes| J[Verdict: BLOCK]
    I -->|No| K[Verdict: APPROVE]
Loading

Fix All in Claude Code

Reviews (2): Last reviewed commit: "fix(agents,skills): address bot review f..." | Re-trigger Greptile

Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

11 issues found across 9 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="agents/swift-build-resolver.md">

<violation number="1" location="agents/swift-build-resolver.md:26">
P1: `swift test` failures are masked as "tests not runnable," which can hide real regressions.</violation>

<violation number="2" location="agents/swift-build-resolver.md:35">
P2: Shell examples use `<placeholder>` tokens that Bash interprets as redirection, causing pasted commands to fail.</violation>

<violation number="3" location="agents/swift-build-resolver.md:35">
P2: Hard-coded iOS simulator name in diagnostic command is brittle and can fail on environments without that exact device.</violation>

<violation number="4" location="agents/swift-build-resolver.md:80">
P2: Troubleshooting docs claim to show available package versions, but the command only dumps local manifest/dependencies, which is misleading for version-conflict diagnosis.</violation>
</file>

<file name="skills/ios-testing/SKILL.md">

<violation number="1" location="skills/ios-testing/SKILL.md:117">
P2: Documentation recommends `@unchecked Sendable` on mutable mocks/spies without synchronization, enabling unsafe concurrent access and flaky tests.</violation>

<violation number="2" location="skills/ios-testing/SKILL.md:254">
P2: Missing `import Testing` — this snippet uses `@Test(...)` from the Swift Testing framework but only imports `SnapshotTesting` and `SwiftUI`, so it won't compile as shown.</violation>
</file>

<file name="agents/swift-reviewer.md">

<violation number="1" location="agents/swift-reviewer.md:75">
P1: The checklist item "`@State` on reference types" is inaccurate for iOS 17+ Observation. With the `@Observable` macro, storing an `@Observable` class in `@State` is Apple's recommended pattern (per their migration guide). As written, the agent would incorrectly flag valid `@Observable` + `@State` usage. Narrow this to legacy `ObservableObject` cases or explicitly exempt `@Observable` models.</violation>
</file>

<file name="AGENTS.md">

<violation number="1" location="AGENTS.md:3">
P2: AGENTS.md updates agent totals to 49 but does not add the new Swift agents to the Available Agents table, leaving the document internally inconsistent.</violation>
</file>

<file name="skills/ios-architecture/SKILL.md">

<violation number="1" location="skills/ios-architecture/SKILL.md:195">
P2: `Destination: Hashable` uses `case detail(Item)` without stating that `Item` must be `Hashable`, making the example easy to copy into a non-compiling state.</violation>
</file>

<file name="README.zh-CN.md">

<violation number="1" location="README.zh-CN.md:109">
P2: README.zh-CN updates capability counts but omits Swift in setup/discovery sections, creating misleading installation and feature documentation.</violation>
</file>

<file name="docs/zh-CN/README.md">

<violation number="1" location="docs/zh-CN/README.md:212">
P2: Updated aggregate counts in zh-CN README conflict with stale detailed inventory (agents/skills list not synchronized).</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review, or fix all with cubic.

```

**完成!** 你现在可以使用 47 个代理、181 个技能和 79 个命令。
**完成!** 你现在可以使用 49 个代理、183 个技能和 79 个命令。
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Apr 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: README.zh-CN updates capability counts but omits Swift in setup/discovery sections, creating misleading installation and feature documentation.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At README.zh-CN.md, line 109:

<comment>README.zh-CN updates capability counts but omits Swift in setup/discovery sections, creating misleading installation and feature documentation.</comment>

<file context>
@@ -106,7 +106,7 @@ cp -r everything-claude-code/rules/perl ~/.claude/rules/

-完成! 你现在可以使用 47 个代理、181 个技能和 79 个命令。
+完成! 你现在可以使用 49 个代理、183 个技能和 79 个命令。

multi-* 命令需要额外配置

</file context>


</details>

<a href="https://www.cubic.dev/action/fix/violation/03660dd5-a52a-4b2a-9493-3ffc9d7ff6d9" target="_blank" rel="noopener noreferrer" data-no-image-dialog="true">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://cubic.dev/buttons/fix-with-cubic-dark.svg">
    <source media="(prefers-color-scheme: light)" srcset="https://cubic.dev/buttons/fix-with-cubic-light.svg">
    <img alt="Fix with Cubic" src="https://cubic.dev/buttons/fix-with-cubic-dark.svg">
  </picture>
</a>

```

**搞定!** 你现在可以使用 47 个智能体、181 项技能和 79 个命令了。
**搞定!** 你现在可以使用 49 个智能体、183 项技能和 79 个命令了。
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot Apr 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2: Updated aggregate counts in zh-CN README conflict with stale detailed inventory (agents/skills list not synchronized).

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At docs/zh-CN/README.md, line 212:

<comment>Updated aggregate counts in zh-CN README conflict with stale detailed inventory (agents/skills list not synchronized).</comment>

<file context>
@@ -209,7 +209,7 @@ npx ecc-install typescript

-搞定! 你现在可以使用 47 个智能体、181 项技能和 79 个命令了。
+搞定! 你现在可以使用 49 个智能体、183 项技能和 79 个命令了。


</file context>


</details>

<a href="https://www.cubic.dev/action/fix/violation/8f2eb360-8681-4984-85d5-b1fdc47e6085" target="_blank" rel="noopener noreferrer" data-no-image-dialog="true">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://cubic.dev/buttons/fix-with-cubic-dark.svg">
    <source media="(prefers-color-scheme: light)" srcset="https://cubic.dev/buttons/fix-with-cubic-light.svg">
    <img alt="Fix with Cubic" src="https://cubic.dev/buttons/fix-with-cubic-dark.svg">
  </picture>
</a>

swift-reviewer:
- Fix @State guidance for iOS 17+ @observable (was incorrectly flagging valid usage)
- Merge Step 2b into Step 2 to fix numbering gap

swift-build-resolver:
- Remove || echo fallback that masks swift test failures
- Fix misleading "show available versions" comment (dump-package shows local manifest)
- Add OS=latest to simulator destination for portability

ios-testing:
- Add missing import Testing to snapshot test example
- Add justification comment for @unchecked Sendable on test mocks

ios-architecture:
- Add How It Works and Examples section headers for skill format compliance
- Add Hashable constraint comment on Destination enum

AGENTS.md + zh-CN/AGENTS.md:
- Add swift-reviewer and swift-build-resolver to Available Agents tables

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
@ecc-tools
Copy link
Copy Markdown
Contributor

ecc-tools bot commented Apr 6, 2026

ECC bundle files are already tracked in this repository. Skipping generation of another bundle PR.

@affaan-m
Copy link
Copy Markdown
Owner

affaan-m commented Apr 6, 2026

This lane is already on main via 8bae085, 586089f, and 9b184ad. Closing the stale PR instead of merging a duplicate copy of the Swift/Apple expansion.

@affaan-m affaan-m closed this Apr 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: Expand Swift/Apple support toward parity with Kotlin, Python, and TypeScript workflows

3 participants