Companion is a self-hosted, multi-tenant hub for managing personal and organizational SKILL.md libraries used by coding agents. It is for organizations that need to store, validate, version, share, install, update, and synchronize agent skills, with optional named companions that have persistent workspaces and chats. The catalogue skills, agents, and instructions are resources managed or used within this workflow.
Borrowing it
Nothing to install: this file belongs to The-Vibe-Company/companion. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/The-Vibe-Company/companion/main/.agents/skills/swiftui-expert-dev/SKILL.mdgit clone --depth 1 https://github.com/The-Vibe-Company/companionWrote 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.
[](https://agentmods.dev/skills/the-vibe-company/companion/swiftui-expert-dev)<a href="https://agentmods.dev/skills/the-vibe-company/companion/swiftui-expert-dev"><img src="https://agentmods.dev/badge/skills/the-vibe-company/companion/swiftui-expert-dev/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.
<a href="https://agentmods.dev/skills/the-vibe-company/companion/swiftui-expert-dev"><img src="https://agentmods.dev/badge/skills/the-vibe-company/companion/swiftui-expert-dev.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00068 | $0.01396 |
| Opus 5 | $0.00034 | $0.00698 |
| Sonnet 5 | $0.00014 | $0.00279 |
| Haiku 4.5 | $0.00007 | $0.00140 |
Grade A, and why
swiftui-expert-dev 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.
How it starts
The opening of the file, as written. The whole thing — 110 lines — stays where its author put it; the contents beside it link to each section on GitHub.
SwiftUI implementation expertise
Use this skill as a narrow implementation capability inside a native iOS task. It improves the mechanics of SwiftUI and Swift concurrency without taking ownership of product direction, cross-platform design, API authorization, or build orchestration.
Protected invariants
- Read the nearest repository and iOS guidance before editing. Follow the existing Swift 6, iOS 26, file-system-synchronized Xcode project, and zero-third-party-dependency constraints.
- Keep CompanionKit responsible for models, Codable/API contracts, authentication, secure session state, polling, and domain logic. Keep view composition and platform presentation in the app target. Do not duplicate transport or auth code in a View.
- Preserve the shared /v1 contract and complete product parity. Do not add a mobile-only API, client-surface discriminator, reduced capability mode, or direct Box/Pi access.
- Never hand-edit Companion.xcodeproj/project.pbxproj for an ordinary Swift file addition.
- Do not use decorative custom glass, shaders, blur stacks, gradients, or third-party UI components. Native iOS 26 Liquid Glass is limited to system navigation and interactive controls; content must remain readable on system materials and become opaque when Reduce Transparency is enabled.
- Accessibility is part of correctness: support Dynamic Type, VoiceOver labels/traits, Reduce Motion and Reduce Transparency, keyboard/focus navigation where relevant, hit targets, and status meaning that is not conveyed by color alone.
Scope and handoffs
- Ask ios-product-dev to own user intent, role/authorization behavior, API parity, and the final product decision. Return implementation findings and focused patches to that owner.
- Ask design-frontend-dev to own visual register, hierarchy, copy, color, motion, and anti-pattern decisions. Translate its smallest relevant decision into native system controls; do not recreate a second design system here.
- Ask xcodebuildmcp-cli to own project discovery, builds, tests, simulator launches, screenshots, logs, and UI inspection. This skill may suggest checks but does not replace that workflow.
- Use review-code-dev for a broad read-only review after the focused implementation is complete.
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 9d ago First seen · 110 lines · 68 tokens per session scan A 9f4c53ed1360
swiftui-expert-dev is a skill published in the GitHub repository The-Vibe-Company/companion (2,401 stars, last pushed 3d ago), licensed MIT. It adds 68 tokens to every session and 1,396 once invoked, about $0.0003 per session on Opus 5. 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-02.
Other skills, from other repositories
animate-expo
Build animations in React Native and Expo, making the decisions in the order that determines whether they feel right — should it animate, which thread it runs on, which properties, spring or timing, how the gesture hands off, how it degrades. Writes the implementation with Reanimated, Gesture Handler, Expo Router and…
leanback-to-compose-tv-migration
Provides instructions and architectural patterns for migrating Android TV applications from legacy Leanback UI Toolkit, Android Views, or Support Fragments to Jetpack Compose for TV (androidx.tv). Use this skill for Leanback to Compose migrations, including browse screen, settings screen, authentication screen, login…
maui-data-binding
Guidance for .NET MAUI XAML and C# data bindings — compiled bindings, INotifyPropertyChanged / ObservableObject, value converters, binding modes, multi-binding, relative bindings, fallbacks, and MVVM best practices. USE FOR: setting up compiled bindings with x:DataType, implementing INotifyPropertyChanged or…
expo-brownfield
Framework (OSS). Integrate Expo and React Native into an existing native iOS or Android app. Use for brownfield, embedding a React Native screen in SwiftUI/UIKit or Kotlin, or AAR/XCFramework packaging. Covers isolated and integrated approaches. For building or distributing a purely native app with EAS, use…
migrate-xml-views-to-jetpack-compose
Provides a structured workflow for migrating an Android XML View to Jetpack Compose. This skill details the step-by-step process, from planning and dependency setup, to theming and layout migration, validation and XML cleanup. Use this skill when you need to migrate an XML View to Jetpack Compose in an Android…
web-haptics
Add haptic feedback to web apps using the web-haptics library. Use when building mobile-facing UIs that need tactile feedback on buttons, toggles, forms, pickers, and other interactive elements.