macOS x64 binary distribution package 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
Commands for working with projects and tasks within the moon repository, including project information, task details, and workspace synchronization.
Show detailed information about a specific project in the workspace.
moon project <id> [--json] [--no-tasks]Arguments:
id (required) - Project ID to display information forOptions:
--json - Output project information in JSON format--no-tasks - Exclude task information from the outputUsage Examples:
# Display project information
moon project my-app
# Get project info as JSON
moon project my-app --json
# Show project info without tasks
moon project my-app --no-tasksSample Output:
Project: my-app
Source: apps/my-app
Language: typescript
Platform: node
Tasks: build, test, lint, type-check
Dependencies: shared-utils, common-typesShow detailed information about a specific task, including its configuration and dependencies.
moon task <target> [--json]Arguments:
target (required) - Task target in the format project:task or :task for workspace tasksOptions:
--json - Output task information in JSON formatUsage Examples:
# Display task information
moon task my-app:build
# Show workspace task
moon task :lint-all
# Get task info as JSON
moon task my-app:test --jsonSample Output:
Task: my-app:build
Platform: node
Command: npm run build
Inputs: src/**, package.json
Outputs: dist/**
Dependencies: my-app:type-check, shared-utils:buildSynchronize the workspace to maintain a healthy state and update generated files.
moon sync [subcommand]Subcommands:
Synchronize the entire workspace, including all projects and configurations.
moon syncThis performs all sync operations:
Generate and synchronize a CODEOWNERS file based on project ownership configuration.
moon sync codeowners [--add-missing] [--dry-run]Options:
--add-missing - Add entries for projects without explicit owners--dry-run - Preview changes without writing the fileUsage Examples:
# Generate CODEOWNERS file
moon sync codeowners
# Preview CODEOWNERS changes
moon sync codeowners --dry-run
# Include unowned projects
moon sync codeowners --add-missingGenerate and sync JSON schemas for configuration files to enable IDE support.
moon sync config-schemas [--minimal]Options:
--minimal - Generate minimal schemas without descriptionsUsage Examples:
# Generate configuration schemas
moon sync config-schemas
# Generate minimal schemas
moon sync config-schemas --minimalGenerate and sync hook scripts for the workspace VCS (Git) integration.
moon sync hooks [--force]Options:
--force - Overwrite existing hook filesUsage Examples:
# Sync Git hooks
moon sync hooks
# Force overwrite existing hooks
moon sync hooks --forceSynchronize all project configurations and dependency relationships.
moon sync projectsThis command:
Usage Examples:
# Sync all project configurations
moon sync projectsProjects are configured through moon.yml files:
# Project moon.yml example
language: 'typescript'
type: 'application'
platform: 'node'
tasks:
build:
command: 'npm run build'
inputs: ['src/**/*', 'package.json']
outputs: ['dist/**/*']
deps: ['~:type-check']
test:
command: 'npm test'
inputs: ['src/**/*', 'tests/**/*']
deps: ['~:build']
workspace:
inheritedTasks:
include: ['lint', 'format']Tasks define the build and development operations:
Moon workspaces organize projects in a hierarchical structure:
workspace/
├── moon.yml # Workspace configuration
├── .moon/
│ ├── workspace.yml # Workspace settings
│ ├── toolchain.yml # Tool configurations
│ └── tasks/ # Global task definitions
├── apps/
│ ├── web-app/
│ │ └── moon.yml # Project configuration
│ └── mobile-app/
│ └── moon.yml
└── packages/
├── shared-utils/
│ └── moon.yml
└── ui-components/
└── moon.yml