Managing LLM Skills with Studio CLI
As AI coding assistants and LLM pair programmers become central to daily software development, engineering teams face a new challenge: context fragmentation. Developers prompt AI agents with conflicting assumptions about framework APIs, missing model schemas, or outdated coding conventions.
In July 2026, we introduced the m skills command group in the Framework M Studio CLI, providing a standardized workflow to discover, pull, version-control, and manage LLM Skill Definitions across multiple repositories and custom namespaces directly within your workspace.
1. What are Framework M LLM Skills?
LLM Skills in Framework M are structured, version-controlled instruction packages stored under .agents/skills/. Each skill package includes:
SKILL.md: Clear prompt context, structural rules, and code patterns for AI assistants.- Reference Schemas: Exact TypeScript/Python type contracts, API method signatures, and hook definitions.
- Examples: Reference implementations of DocTypes, custom components, and test harnesses.
By installing skills under .agents/skills/, tools like Google Antigravity, Claude Code, Cursor, and local AI servers read standard workspace context automatically, eliminating hallucinated framework methods.
2. Managing Skills via Studio CLI (m skills)
The Studio CLI provides core management commands for sync and namespace organization:
A. Listing Installed and Upstream Skills (m skills list)
m skills list
The command renders a rich interactive console table displaying installed local skills alongside available upstream framework skills:
Framework M LLM Skills
┌─────────────────────────────────┬──────────┬─────────┬─────────────┐
│ Name │ Scope │ Version │ Sync Status │
├─────────────────────────────────┼──────────┼─────────┼─────────────┤
│ doctype-model-controller │ app │ 1.0.0 │ INSTALLED │
│ unit-of-work-service │ app │ 1.0.0 │ INSTALLED │
│ desk-realtime-websocket │ app │ 1.0.0 │ INSTALLED │
│ bootstrap-lifecycle │ framework│ 1.0.0 │ INSTALLED │
└─────────────────────────────────┴──────────┴─────────┴─────────────┘
Flags:
--installed: Filter output to show only locally installed workspace skills.--remote: Filter output to show available upstream repository skills.
B. Organizing Multi-Repository Skills (--remote-ns)
When pulling skills from different repositories or internal corporate libraries, skill packages must be namespaced cleanly under .agents/skills/<remote-ns>/ to avoid naming collisions.
The --remote-ns flag (or remote_ns configuration) defines the target namespace sub-directory:
# Pull framework skill into default namespace (.agents/skills/framework-m/)
m skills pull --name=doctype-model-controller
# Pull custom enterprise skills into custom namespace (.agents/skills/my-company/)
m skills pull --name=custom-auth-flow --url=https://github.com/my-company/skills.git --remote-ns=my-company
C. Workspace Configuration (m.toml)
Projects can declare default skill repositories, target git branches (--ref), and default remote namespaces inside m.toml:
# m.toml
[studio.skills]
upstream_url = "https://gitlab.com/framework-m/framework-m.git"
ref = "main"
remote_ns = "framework-m"
Environment variables can also override defaults: FRAMEWORK_M_SKILLS_UPSTREAM_URL, FRAMEWORK_M_SKILLS_REF, and FRAMEWORK_M_SKILLS_REMOTE_NS.
Learn More
Check out the new LLM skills management documentation:

