Skip to content

Requirements

Functional Requirements

FeatureSummaryIntentStatus
usm/cli-color-outputComprehensive CLI polish for the USM CLI — colorized status output, animated spiThe CLI ships plain monochrome text with no progress feedback, flat file lists,built
usm/cli-config-outputsConfigurable output paths in usmconfig.json and simplified command convention. GOutput paths are hardcoded to .usm-workspace/ in every generator. Users
can't coin-progress
usm/docs-serve-port-checkAdd port availability checking, already-serving detection, watch mode for auto-rusm docs serve currently has several gaps in the dev loop: (1) no port availabbuilt
usm/cli-docsusm docs serve and usm docs build — serves generated docs locally via VitePressThe spec-first workflow requires a human to review generated feature docs
beforeplanned
usm/cli-enrichThe usm enrich command fills in TODO: describe placeholders in .usm files usingScanned .usm files contain TODO placeholders for summary, intent, decisions, flo
usm/cli-feedbackThe usm feedback command configures the agent feedback policy in system.usm — inThe feedback policy governs how AI agents surface bugs and improvements. Teams nbuilt
usm/cli-generateThe usm generate command reads all .usm files and produces markdown, OpenAPI, MeAfter scanning and enriching, generate produces all output artifacts from the .u
usm/cli-initThe usm init command analyzes the repo and generates a starter usmconfig.json.New users need a config file that tells usm scan where to look. Init detects app
usm/internal-dsl-builderFluent typed TypeScript builder (internal DSL, per Fowler) that compiles to valiAuthoring flows/contracts/tests in raw YAML is verbose and error-prone for humanbuilt
usm/mcp-setup-guidesAdd per-editor MCP setup guides for all 35 MCP-ready editors as dedicated pagesEvery USM user needs to connect their AI editor to the USM MCP server and, for ebuilt
usm/cli-multi-lang-scanMulti-language scanner support, extended with a detector plugin system. usm scanThe .usm format, MCP tools, generators, and validator are all language-agnostic,built
usm/query-layerPredicate query language over .usm data — a tiny expression grammar (selectors,Agents currently list everything or grep raw YAML to answer questions like "whicbuilt
usm/cli-scaffold-projectThe usm scaffold-project command generates a starter .usm/ directory for single-New projects need an initial .usm/ structure with system, service, and a starter
usm/cli-scaffoldThe usm scaffold command creates a new .usm file with a template for system, serUsers need a quick way to create a new .usm file with the correct structure. Sca
usm/cli-scanThe usm scan command reads usmconfig.json, scans the codebase, and generates .usAfter init creates the config, scan detects the actual structure — services from
usm/upgradeusm upgrade — detect stale USM projects and guide users through adopting new optThere is no upgrade path today. Existing users who npm update USM get new codebuilt
usm/cli-validateThe usm validate command checks .usm files against the v1 JSON Schema and reportUsers need to verify that their .usm files conform to the schema before generati
usm/vitepress-home-feedback-schemaRefine the VitePress docs homepage into a clean, scannable technical reference (The current docs homepage (from vitepress-schema-polish) is rich but marketing-hbuilt
usm/vitepress-schema-polishEvolve the generated VitePress docs into an outstanding, adoption-accelerating sThe current docs are functional but plain: the homepage is a flat list, the sidebuilt
usm/gen-agentsmdAGENTS.md generator — produces AI agent context files with USM-augmented systemAI coding agents (Claude, Cursor, Codex) read AGENTS.md for project context. The
usm/gen-archimateArchiMate 3.1 generator — produces an Open Exchange XML model (XMI 2.1) from USMEnterprise architecture teams use ArchiMate tools (Archi, BiZZdesign, Orbus iSer
usm/gen-content-blocksFirst-principles redesign of the docs generator. Introduces a content-block scheThe docs generator has drifted from USM's first principle (structured source ofbuilt
usm/docs-experienceOverhaul the generated docs site from a spec-dump into a real reading experienceStrategic review found the docs generators faithfully dump .usm content into Vitbuilt
usm/gen-docs-splitSplit generated docs into help docs (public-facing, for visitors and new users)Currently USM generates one combined doc set that serves both visitors and
develbuilt
usm/gen-feature-reviewReview-quality feature markdown — restructures the feature markdown generator toIn the spec-first workflow, the agent writes a feature .usm spec, generates
markplanned
usm/feedback-upstream-routingScope-aware feedback routing — the generated feedback protocol, MCP tool, and doAgents in downstream projects misattribute USM tool bugs to the project they arebuilt
usm/gen-help-referenceHelp docs reference expansion — adds usage/options/prerequisites fields to featuThe help docs currently show feature specs (summary, intent, flows) but
lack prain-progress
usm/gen-markdownMarkdown generator — produces GitHub-flavored markdown docs for each .usm file,Markdown is the primary human-readable output. Each .usm file gets a per-file do
usm/gen-mermaidMermaid diagram generator — produces architecture, ER, sequence, and service-depVisual diagrams make the system structure immediately understandable. Mermaid di
usm/mkt-language-tabsMarketing site language support section — clickable logo carousel showing 12 lanThe marketing site needs to communicate that USM scans 12 languages and 30+
framplanned
usm/mkt-mock-interfaces-v2Update the mock interfaces to look like the real USM tooling — browser mock stylMake the mocks instantly recognizable as real USM tooling by matching the actualbuilt
usm/mkt-mock-interfacesAdd two side-by-side animated mock interfaces below the "Works with your client"Show visitors the spec-first workflow in action by animating two synced mock intbuilt
usm/gen-openapiOpenAPI 3.1 generator — produces an openapi.yaml spec and TypeScript types fromAPI documentation must be machine-readable for SDK generation and testing. The O
usm/opencode-integrationFirst-class opencode support in the rules-files generator — emits a usm-workflowAgents drift off the spec-first workflow in long sessions: AGENTS.md is loaded obuilt
usm/gen-roadmapRoadmap improvements — add feature links and shipped_in version to roadmap itemsThe roadmap page was empty because we treated it as "future plans only." A
roadmin-progress
usm/gen-rules-filesTool-specific rules file generator with two-tier enforcement — detailed workflowUSM's distribution model is not a standalone app — it's an MCP server plus
rulesbuilt
usm/gen-source-mappingSource mapping generator — reads all service and feature specs to build a bidireUSM specs already capture the file-to-feature relationship bidirectionally: featbuilt
usm/structurizr-bridgeStructurizr bridge — import a Structurizr workspace JSON into .usm system and seTeams already modelling in diagram-as-code (Structurizr/C4) face manual re-entrybuilt
usm/gen-technical-designTechnical Design Document generator — renders a 13-section detailed design documEvery engineering team needs a detailed design document that ties the whole systbuilt
usm/gen-testspecsVitest test specs generator — produces per-feature and aggregated Vitest test fiFeature .usm files define flows and tests in a structured format. The test specs
usm/gen-togafTOGAF ADM generator — produces phase deliverables (A through H) from USM data foOrganizations following TOGAF need phase-specific deliverables (Architecture Vis
usm/agent-feedbackAgent feedback protocol — teaches AI agents a consistent, configurable way to suAgents using USM currently improvise when they discover issues — one agent autonbuilt
usm/mcp-contractsMCP contracts tool — extracts the contracts array from a feature .usm file, inclAgents need to review a feature's contracts to plan tests or verify guarantees.
usm/mcp-flowsMCP flows tool — extracts the flows array from a feature .usm file, including idAgents need to understand user journeys described in feature files. The flows to
usm/mcp-listMCP list tool — lists all .usm files in a directory or monorepo with id, type, vAI agents need to discover what .usm files exist before reading them. The list t
usm/mcp-queryusm_query MCP tool — predicate query over all .usm files. Selectors (features/seAgents answering questions like "which planned features have no contracts?" or "built
usm/mcp-readMCP read tool — reads and parses a .usm file, returning the full object plus metAgents need to read the full content of a specific .usm file to understand a ser
usm/mcp-referencesMCP references tool — finds all .usm files that reference a target $id, useful fBefore modifying a service or feature, agents need to know what else depends on
usm/mcp-searchMCP search tool — searches all .usm files for a query string, returning matchingAgents need to find .usm files related to a concept (e.g. "authentication", "bil
usm/mcp-summaryMCP summary tool — returns a quick summary of a .usm file with id, type, versionAgents need a lightweight overview of a .usm file without reading the full conte
usm/mcp-validateMCP validate tool — validates a .usm file by path or inline YAML content againstAgents modifying .usm files need to validate their changes before writing. The v
usm/mcp-writeMCP write tools — let agents author and update .usm feature specs as part of theThe current MCP server is read-only — agents can list, read, search, and query
ebuilt
usm/schema-v1The v1 JSON Schema — the validation contract for all .usm files, defining systemThe v1.json schema is the single source of truth for what constitutes a valid .u