Linux ARM64 musl binary distribution for the moon repository management tool
—
Pending
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Pending
The risk profile of this skill
Comprehensive project management capabilities for workspace organization, dependency analysis, and project health monitoring.
Run all build and test tasks to verify project health and readiness.
/**
* Run all build and test tasks for one or many projects
* Convenience command for verifying project state
*/
moon check [...projects]
# Alias:
moon c [...projects]
# Arguments:
# [...projects] List of project names or aliases (optional)
# Options:
--all Run check for all projects in workspace
-u, --updateCache Bypass cache and force update existing items
--summary Display summary and stats of current runUsage Examples:
# Check project at current working directory
moon check
# Check specific project by name
moon check app
# Check multiple projects
moon check client server admin
# Check all projects (may be costly)
moon check --all
# Force cache update during check
moon check app --updateCache
# Show summary statistics
moon check --all --summaryDisplay detailed information about projects in the workspace.
/**
* Display comprehensive information about a specific project
* Shows configuration, tasks, dependencies, and metadata
*/
moon project <id>
# Alias: moon p
# Arguments:
# <id> Project ID, name, or alias
# Options:
--json Output information in JSON formatUsage Examples:
# Get project information
moon project app
# JSON output for scripting
moon project app --json
# Using project alias
moon project frontend-appVisualize and analyze project dependencies and relationships.
/**
* Display dependency graph showing project relationships
* Reveals dependencies and dependents between projects
*/
moon project-graph [ids...]
# Alias: moon pg
# Arguments:
# [ids...] Optional list of project IDs to include in graph
# Options:
--dot Output in DOT format for Graphviz visualization
--json Output in JSON format for programmatic processingUsage Examples:
# Show graph for all projects
moon project-graph
# Show graph for specific projects
moon project-graph app server
# Generate visualization file
moon project-graph --dot > projects.dot
dot -Tpng projects.dot -o projects.png
# JSON for analysis
moon project-graph --json | jq '.nodes[] | .id'Query and filter projects using advanced criteria.
/**
* Query projects using flexible filter criteria
* Supports complex logical expressions and patterns
*/
moon query projects <statement>
# Query Statement Syntax:
# Logical Operators:
# && AND operation
# || OR operation
# ! NOT operation
# () Grouping
# Filter Criteria:
# language=<lang> Programming language (javascript, typescript, rust, etc.)
# projectType=<type> Project type (application, library, tool, etc.)
# tag=<tag> Project tag
# project~<pattern> Project name pattern matching
# projectSource~<path> Source path pattern matching
# hasTask=<task> Projects that define specific task
# dependsOn=<project> Projects that depend on specified projectQuery Examples:
# Find all TypeScript applications
moon query projects "language=typescript && projectType=application"
# Find projects with specific tag
moon query projects "tag=frontend"
# Find projects matching name pattern
moon query projects "project~*-api"
# Complex query with multiple criteria
moon query projects "(language=javascript || language=typescript) && projectType=library"
# Find projects in specific directory
moon query projects "projectSource~packages/*"
# Find projects with build task
moon query projects "hasTask=build"
# Find projects depending on shared library
moon query projects "dependsOn=shared-lib"Query tasks across the workspace.
/**
* Query tasks across projects using filter criteria
* Find tasks matching specific patterns or properties
*/
moon query tasks <statement>
# Task Query Criteria:
# task=<name> Task name
# project=<name> Project containing task
# platform=<platform> Target platform
# type=<type> Task type (build, test, lint, etc.)
# hasInput=<pattern> Tasks with input files matching pattern
# hasOutput=<pattern> Tasks with output files matching patternTask Query Examples:
# Find all build tasks
moon query tasks "task=build"
# Find test tasks in frontend projects
moon query tasks "type=test && project~*frontend*"
# Find tasks with TypeScript inputs
moon query tasks "hasInput=*.ts"Analyze which files have been modified and their impact.
/**
* Query touched files and their relationships to projects/tasks
* Useful for understanding change impact
*/
moon query touched-files
# Shows:
# - Modified files
# - Affected projects
# - Impacted tasks
# - Change statusSync workspace configuration and project states.
/**
* Sync workspace and projects with up-to-date configuration
* Updates project graphs, dependencies, and toolchain state
*/
moon sync
# Subcommands:
moon sync projects # Sync all project configurations
moon sync hooks # Sync git hooks for workspace
moon sync codeowners # Sync CODEOWNERS file based on project ownershipUsage Examples:
# Sync all configurations
moon sync
# Sync only project configurations
moon sync projects
# Setup git hooks
moon sync hooks
# Update code ownership files
moon sync codeownersManage code generation templates for scaffolding.
/**
* Manage workspace templates for code generation
* Templates enable consistent project scaffolding
*/
moon templates
# Template operations:
# - List available templates
# - Validate template configurations
# - Create new templatesGenerate new projects and code using templates.
/**
* Scaffold new code using configured templates
* Creates projects, components, or other code structures
*/
moon generate <template> [dest]
# Arguments:
# <template> Name of template to use
# [dest] Destination path (optional)
# Options:
--dryRun Show what would be generated without creating files
--force Overwrite existing files if they exist
--template <path> Use template from specific path instead of workspace templatesUsage Examples:
# Generate new project using template
moon generate react-app apps/new-app
# Preview generation without creating files
moon generate node-lib --dryRun
# Generate from custom template path
moon generate custom --template ./templates/my-template
# Force overwrite existing files
moon generate component --forceProjects are discovered and configured through workspace settings:
# .moon/workspace.yml
projects:
- 'apps/*' # Glob patterns for project discovery
- 'packages/*'
- 'tools/*'
# Project aliases for easier reference
aliases:
fe: 'frontend-app'
be: 'backend-api'Individual projects can define metadata and configuration:
# moon.yml (in project directory)
type: 'application' # Project type
language: 'typescript' # Primary language
# Project dependencies
dependsOn:
- 'shared-lib'
- 'common-utils'
# Project tags for grouping
tags:
- 'frontend'
- 'customer-facing'
# Task definitions
tasks:
build:
command: 'tsc'
inputs: ['src/**/*']
outputs: ['dist/**/*']Common project management scenarios and solutions: