| name | build-product |
| description | Build a ComplianceAsCode product |
Build Product
Build a ComplianceAsCode product.
Product: $ARGUMENTS
Tool Strategy
This skill uses mcp__content-mcp__* tools when available (preferred — deterministic, structured results). When the MCP server is not configured, fall back to filesystem-based alternatives noted as Fallback in each step. See .claude/skills/shared/mcp_fallbacks.md for detailed fallback procedures. The skill must complete successfully either way.
Phase 1: Validate Product
-
Check if product is valid:
Use mcp__content-mcp__get_product_details with product_id=$ARGUMENTS to validate the product exists and get its metadata.
Fallback: Read products/$ARGUMENTS/product.yml directly. If the file doesn't exist, the product is invalid.
-
If product not found, list available products:
Use mcp__content-mcp__list_products to get all available products.
Fallback: Run ls products/ to list available product directories.
-
If no product specified, ask user using AskUserQuestion:
- Use the product list to populate options
- Allow "Other" for unlisted products
Phase 2: Build Product
Always use the build_product script. Do not use CMake, make, or ninja directly.
Parse user arguments for optional flags:
--datastream-only — skip guides, tables, playbooks (faster)
--rule-id <rule_id> — build only a specific rule (fastest, for testing)