Brings Metal GPU programming patterns directly into your Claude workflow, covering everything from MSL shader syntax to compute kernels and render pipelines. You get correct attribute qualifiers, buffer management patterns, and the full command encoder setup for both rendering and compute. Honestly most useful when you're tired of looking up whether it's `[[vertex_id]]` or `[[position]]`, or you need the boilerplate for MetalKit view rendering without digging through docs. Includes Metal 4 API specifics and Apple Silicon optimization notes like triple buffering and storage mode choices. Works across iOS, macOS, and visionOS.

skills.sh installs
314
GitHub stars
12
last updated
Aug 21, 2026

Install

$ npx -y skills add ios-agent/iosagent.dev --skill metal-gpu --agent claude-code

Installs into .claude/skills of the current project.

Files

Metal GPU Code Skill

Write production-quality Metal code with correct patterns, optimal performance, and clear explanations.

When to Read References

For detailed API topology, Metal 4 specifics, and Apple Silicon optimization patterns, read:

/mnt/skills/user/metal-gpu/references/metal-api-guide.md

Core Principles

  1. Always start with the device: MTLCreateSystemDefaultDevice() — every Metal workflow begins here
  2. Command pattern: Device → Command Queue → Command Buffer → Command Encoder → Commit
  3. Shaders are MSL (Metal Shading Language): C++14-based, with Metal-specific types and attributes
  4. Resource management matters: Use appropriate storage modes, avoid unnecessary copies
  5. Triple buffering for render loops to keep CPU and GPU in parallel

Quick Reference: Metal Command Pipeline

MTLDevice
  └─ makeCommandQueue() → MTLCommandQueue
       └─ makeCommandBuffer() → MTLCommandBuffer
            ├─ makeRenderCommandEncoder(descriptor:) → MTLRenderCommandEncoder
            ├─ makeComputeCommandEncoder() → MTLComputeCommandEncoder
            └─ makeBlitCommandEncoder() → MTLBlitCommandEncoder

Writing Shaders (MSL)

Sponsors

Details

Repository
github.com/ios-agent/iosagent.dev
Categories
Documentation, AI & Agent Building, Debugging, Automation & Workflows, Mobile Development
First seen
Jun 3, 2026
1julianobarbosa avatarobsidian-vault-managementjulianobarbosa/claude-code-skillsCreates, edits, and manages Obsidian vault content including notes, templates, daily notes, and dataview queries. Use when working with markdown files in an Obs311skills.sh installs
2leonardomso avatarwrite-conceptleonardomso/33-js-conceptsWrite or review JavaScript concept documentation pages for the 33 JavaScript Concepts project, following strict structure and quality guidelines308skills.sh installs
3adeonir avatarspec-drivenadeonir/agent-skillsSpec-driven feature development with auto-sized depth. Produces spec.md, design.md, tasks.md, and validation.md with requirements traceability, and closes with 307skills.sh installs
4incept5 avatareve-agent-memoryincept5/eve-skillpacksChoose and combine Eve storage primitives to give agents persistent memory — short-term workspace, medium-term attachments and threads, long-term org docs and f307skills.sh installs
5wsimmonds avatarnextjs-dynamic-routes-paramswsimmonds/claude-nextjs-skillsGuide for Next.js App Router dynamic routes and pathname parameters. Use when building pages that depend on URL segments (IDs, slugs, nested paths), accessing t304skills.sh installs
6hairyf avatarcreate-skill-from-repohairyf/skillsBootstraps modular Agent Skills from any repository. Clones the source to `sources/`, extracts core documentation into categorized references under `skills/`, a302skills.sh installs