Skip to main content

Studio CLI for Framework Developers

For contributors to the Framework M core and its associated libraries, the Studio CLI serves as a unified orchestration layer for CI/CD and codebase maintenance. It replaces dispersed legacy scripts with a well-tested, modular command-set.

CI Migration

Previously, the framework relied on various Python scripts located in .gitlab/scripts/. These have been ported to the m CLI to ensures consistent behavior between local development and CI pipelines.

Standard CI Workflow

The following m commands are now used within the GitLab CI pipeline:

  • CLA Checks: m contrib cla-check verifies that contributors have signed the ICLA/CCLA.
  • Dependency Audits: m deps check verifies the integrity of workspace dependencies.
  • Documentation Verification: m docs adr --verify and m docs rfc --verify check for correct numbering and formatting in the docs/adr and docs/rfcs directories.

Contributor Tooling

The Studio CLI provides specialized tools to maintain the framework's documentation and metadata standards.

Documentation Management

  • ADR/RFC Lifecycle: Use m docs adr and m docs rfc to manage architecture decision records and proposals.
  • RAG Corpus Export: m docs export corpus generates a machine-readable JSONL file of the entire documentation suite, optimized for AI/RAG indexing.
  • Schema Export: m docs export doctypes exports all DocType schemas to YAML for external tool consumption.

Versioning and Releases

While app developers use m release for their own apps, framework developers use it to coordinate multi-package updates across the monorepo (libs/framework-m-core, libs/framework-m, etc.), ensuring all internal dependencies are correctly pinned and tagged synchronously.

Benefits of the Refactored CLI

  1. Reduced Technical Debt: Deleting legacy scripts in favor of a central CLI reduces maintenance overhead.
  2. TDD Focused: All new CLI commands are developed using Test-Driven Development, ensuring reliability in critical CI paths.
  3. Self-Documenting: New subcommands are automatically included in the CLI Reference.