Работа с узлами и моделями в MPS
★ 7.9 · vibe-coding
mps-model-manipulation is a Claude Code skill that assists in writing and editing BaseLanguage code inside MPS models that mix the smodel, collections, and closures language extensions. It covers node traversal (.descendants<C>, .ancestor<C>, .children, .parent, containingRoot), sequence filtering (.where, .select, .translate, .ofConcept<C>), closure construction with yield and recursion, node creation and mutation (new node<C>(), add new(C), replace with new(C), .detach, .copy), property and link access via SPropertyAccess / SLinkAccess / SLinkListAccess, null-safe equality (:eq: / :ne:), smodel type casts, and command / read action lock wrappers. The skill ships a catalog of hand-built JSON blueprints for constructs the mps_mcp_parse_java_and_insert Java parser cannot produce — smodel casts, behavior method calls, and inline MetaAdapterFactory references. It targets MPS language engineers authoring typesystem rules, checking rules, generator queries, intentions, constraints, scope/canBe callbacks, and dataflow builders.
- #mps
- #baselanguage
- #smodel
- #closures
- #node-manipulation
- #query