deepagents-architectur…
Guides architectural decisions for Deep Agents applications. Use when deciding between Deep Agents vs alternatives, choosing…
Reviews Swift code for concurrency safety, error handling, memory management, and common mistakes. Use when reviewing .swift files for async/await patterns, actor isolation, Sendable conformance, or general Swift best practices.
Claude Code
$ npx -y skills add existential-birds/beagle --skill swift-code-review --agent claude-code
Codex
$ npx skills add existential-birds/beagle --skill swift-code-review -a codex -y
Cursor
$ npx skills add existential-birds/beagle --skill swift-code-review -a cursor -y
Gemini CLI
$ npx skills add existential-birds/beagle --skill swift-code-review -a gemini-cli -y
GitHub Copilot
$ npx skills add existential-birds/beagle --skill swift-code-review -a github-copilot -y
OpenCode
$ npx skills add existential-birds/beagle --skill swift-code-review -a opencode -y
Windsurf
$ npx skills add existential-birds/beagle --skill swift-code-review -a windsurf -y
name: swift-code-review description: Reviews Swift code for concurrency safety, error handling, memory management, and common mistakes. Use when reviewing .swift files for async/await patterns, actor isolation, Sendable conformance, or general Swift best practices.
Follow this sequence **in order**. Do not emit findings until every **Pass** below is satisfied.
1. **Swift / toolchain baseline** — Establish language and tooling context: `Package.swift` `// swift-tools-version` and any per-target Swift language version or `swiftSettings` in the manifest; for Xcode, `SWIFT_VERSION` (or equivalent) in project or target build settings; note if review is single-file only. **Pass:** You state a concrete Swift language version or mode (e.g. Swift 6 language mode, tools 5.10) *before* advice that depends on strict concurrency, migration-only syntax, or SDK availability.
2. **Read surrounding code** — For each changed `.swift` file, read the full enclosing type, function, method, or property that contains the edits, not only the diff hunk. **Pass:** At least one full enclosing symbol (type or member) containing the change was read per changed file.
3. **Scope the checklist** — Using [Quick Reference](#quick-reference), decide which [Review Checklist](#review-checklist) rows and [references](#when-to-load-references) apply; open those reference files; skip rows clearly unrelated to the diff. **Pass:** The review (or working notes) lists which checklist areas you applied, or marks areas N/A with a one-line reason tied to the diff (e.g. “no SwiftUI / @Observable in change”).
4. **Pre-report verification** — Load and follow [review-verification-protocol](../review-verification-protocol/SKILL.md). **Pass:** That skill’s **Hard gates (sequenced)** are satisfied for each finding you will report (full symbol read, usage search before “unused”, caller checked before “missing handling”, severity calibrated, `[FILE:LINE]` proof).
| Step | Objective pass condition | | --- | --- | | 1 | Swift version/mode (or explicit single-file limitation) recorded before version- or SDK-gated advice. | | 2 | Full enclosing symbol read per changed file, not diff-only. | | 3 | Checklist areas + references listed or N/A with diff-tied reason. | | 4 | `review-verification-protocol` completed for every reported issue. |
Report findings as:
[FILE:LINE] ISSUE_TITLE Severity: Critical | Major | Minor | Informational Description of the issue and why it matters.
| Issue Type | Reference | |------------|-----------| | async/await, actors, Sendable, Task | [references/concurrency.md](references/concurrency.md) | | @Observable, @ObservationIgnored, @Bindable | [references/observable.md](references/observable.md) | | throws, Result, try?, typed throws | [references/error-handling.md](references/error-handling.md) | | Force unwraps, retain cycles, naming | [references/common-mistakes.md](references/common-mistakes.md) |
1. Are async operations that could run concurrently using `async let`? 2. Could actor state change across suspension points (reentrancy bug)? 3. Is `@unchecked Sendable` backed by actual synchronization? 4. Are errors logged and presented with helpful context? 5. Could any closure or delegate create a retain cycle?
Image: NASA, Public Domain. Source Beagle is an Agent Skills marketplace: framework-aware code review, documentation, testing, architectural analysis, and git workflows for any compatible coding agent.
Guides architectural decisions for Deep Agents applications. Use when deciding between Deep Agents vs alternatives, choosing…
Reviews Deep Agents code for bugs, anti-patterns, and improvements. Use when reviewing code that uses create_deep_agent,…
Implements agents using Deep Agents. Use when building agents with create_deep_agent, configuring backends, defining subagents,…
Guides architectural decisions for LangGraph applications. Use when deciding between LangGraph vs alternatives, choosing state…
Reviews LangGraph code for bugs, anti-patterns, and improvements. Use when reviewing code that uses StateGraph, nodes, edges,…
Implements stateful agent graphs using LangGraph. Use when building graphs, adding nodes/edges, defining state schemas,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.