.moon/workspace.* configuration file defines workspace-level settings for moon, including project discovery, version control, caching, and more. This file is required at the root of your workspace.
Configuration File
Location:.moon/workspace.yml or .moon/workspace.json
Type: WorkspaceConfig
Schema
Core Settings
Configures all projects within the workspace to create a project graph. Supports three formats:
- Map format: Explicit mapping of project IDs to source paths
- Glob format: Array of glob patterns to auto-discover projects
- Both format: Object with
sources,globs, andglobFormatfields
Extends one or many workspace configuration files. Supports relative file paths or HTTPS URLs.Settings are merged recursively with local configuration taking precedence.
Requires a specific version of the moon binary using a semver requirement.
The default project to focus on when no project scope is specified for task targets.Added in v2.0.0
Collects anonymous usage information and checks for new moon versions.Can be controlled via
MOON_TELEMETRY environment variable.Project Management
Configures code ownership rules for generating a
CODEOWNERS file.Added in v1.8.0Configures boundaries and constraints between projects.
Version Control
Configures the version control system integration.
Action Pipeline
Configures aspects of task running and the action pipeline.
Hashing & Caching
Configures aspects of the smart hashing layer.
Remote Caching
Configures remote service for cloud-based caching.Added in v1.30.0
Code Generation
Configures the template generator.
Notifications
Configures how moon sends notifications.
Docker Integration
Configures Docker integration.Added in v1.27.0
Experiments
Enable or disable experimental features.Added in v1.11.0
Complete Example
.moon/workspace.yml