Setup & Installation
Or with the ClawHub CLI, for registry-managed skill folders outside a full OpenClaw workspace:
What This Skill Does
Scaffolds ViewModels for SwiftUI screens following FOSMVVM architecture. Handles both server-hosted and client-hosted modes, generating the correct combination of ViewModel structs, Request types, localization YAML, and factory files. Covers display ViewModels, form ViewModels, child ViewModels, and error display patterns.
It encodes the multi-file structure, hosting mode decision, and protocol adoption rules of FOSMVVM so developers don't have to manually reason through each placement decision.
When to use it
- Generating a new page ViewModel that fetches data from a server API
- Scaffolding a settings screen ViewModel backed by local device state
- Creating a client-hosted error display ViewModel from a caught ResponseError
- Adding a card or row child ViewModel nested inside a parent list ViewModel
- Producing localization YAML alongside a new ViewModel struct
Example Workflow
Here's how your AI assistant might use this skill in practice.
User asks: Create a ViewModel for a user profile screen that loads data from the server
- 1Determine hosting mode: data comes from server, so server-hosted
- 2Design ViewModel properties: @LocalizedString for page title, stored properties for profile data, LocalizableDate for join date
- 3Generate UserProfileViewModel.swift with RequestableViewModel conformance and vmId
- 4Generate UserProfileRequest.swift with the associated ViewModelRequest type
- 5Generate UserProfileViewModel.yml with English localization keys
- 6Generate UserProfileViewModel+Factory.swift with hand-written factory querying the database
Four files: UserProfileViewModel.swift, UserProfileRequest.swift, UserProfileViewModel.yml, UserProfileViewModel+Factory.swift