Skip to main content

Managing LLM Skills with Studio CLI

Framework M provides standard LLM Skill definitions under .agents/skills/ designed to provide explicit context, contracts, and type definitions for AI coding assistants (such as LLM CLI agents, IDE pair programming extensions, and local AI servers).

The m skills command group under the Studio CLI allows application developers to discover, download, and statically verify LLM skill packages across their workspace.


1. Listing Available Skills (m skills list)​

To view installed local skills alongside available upstream skills:

m skills list

Options:​

  • --installed: Show only skills installed locally under .agents/skills/.
  • --remote: Show only available upstream skills from the framework repository.

Console Output Example:​

The command renders a rich console table displaying the skill name, target scope (app or framework), version, and sync status:

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 │
└─────────────────────────────────┴──────────┴─────────┴─────────────┘

2. Pulling Upstream Skills (m skills pull)​

To pull or update upstream skill definitions into .agents/skills/framework-m/:

# Pull single skill
m skills pull --name=doctype-model-controller

# Pull multiple skills at once
m skills pull -n doctype-model-controller -n unit-of-work-service

# Force overwrite modified local files
m skills pull --name=doctype-model-controller --force

Directory Target:​

Pulled skills are written directly to .agents/skills/framework-m/<skill-name>/SKILL.md within your project root.


3. Verifying Skills & Prompt Token Budgets (m skills verify)​

To perform static structural analysis, YAML frontmatter validation, and prompt token budget verification across all skills:

m skills verify

Custom Path & Token Budget:​

You can specify a target path or customize the maximum token budget (measured via tiktoken):

m skills verify ./my-custom-skills --max-tokens=4096

Verification Checks Performed:​

  1. YAML Frontmatter Integrity: Asserts that name, description, scope, and version attributes are defined.
  2. Token Density Guard: Uses tiktoken (cl100k_base) to calculate token count per SKILL.md and issues warnings if a skill exceeds local AI model context limits (e.g. > 4096 tokens).
  3. AST & Code Example Integrity: Validates Python and TypeScript snippet syntax inside skill markdown files.

4. Configuring Upstream Repository Defaults​

Skills configuration lives in m.toml (the development configuration file) under [studio.skills]:

# m.toml (Development Environment Configuration)
[studio.skills]
upstream_url = "https://gitlab.com/framework-m/framework-m"
target_dir = ".agents/skills/framework-m"
max_token_budget = 4096

Or via environment variable override:

export FRAMEWORK_M_SKILLS_UPSTREAM_URL="https://gitlab.com/framework-m/framework-m"