Marketplace

build-run-local

Run local builds with proper environment setup. Use when building code locally to verify changes before pushing.

$ Installer

git clone https://github.com/mvillmow/ProjectOdyssey /tmp/ProjectOdyssey && cp -r /tmp/ProjectOdyssey/.claude/skills/build-run-local ~/.claude/skills/ProjectOdyssey

// tip: Run this command in your terminal to install the skill


name: build-run-local description: "Run local builds with proper environment setup. Use when building code locally to verify changes before pushing." category: ci mcp_fallback: none

Build and Run Local

Execute local builds with environment setup matching CI pipeline.

When to Use

  • Building code locally before pushing
  • Testing individual components locally
  • Verifying changes work before creating PR
  • Running tests in local environment
  • Debugging build issues in isolation

Quick Reference

# Activate environment
eval "$(pixi shell-hook)"
pixi run mojo --version

# Build project
pixi run mojo build -I . shared/core/extensor.mojo

# Run tests
pixi run mojo test -I . tests/shared/core/

# Run specific test
pixi run mojo test -I . tests/shared/core/test_extensor.mojo

# Format code
pixi run mojo format .

Workflow

  1. Activate environment: Use pixi to setup environment
  2. Verify environment: Check mojo version and dependencies
  3. Build locally: Run mojo build with proper flags
  4. Run tests: Execute test suite locally
  5. Check warnings: Verify zero-warnings policy compliance
  6. Run pre-commit: Validate formatting and linting
  7. Commit changes: Only after local verification passes

Build Configuration

Environment Setup:

  • pixi shell-hook activates the pixi environment
  • Sets MOJO_PATH and compiler flags
  • Matches CI environment configuration

Build Flags:

  • -I . includes current directory in path
  • -O enables optimizations for release builds
  • --no-warn-unused suppresses specific warnings (use sparingly)

Test Flags:

  • -I . for module resolution
  • -v for verbose output
  • -k "pattern" to run specific tests

Output Format

Report build results with:

  1. Status - Success or failure
  2. Warnings - Any compiler warnings found (must be zero)
  3. Test Results - Passed/failed counts
  4. Build Time - Performance metrics
  5. Issues - Any errors encountered

Error Handling

ProblemSolution
Environment not foundRun pixi shell-hook to activate
Module not foundVerify -I . flag and correct paths
Permission deniedCheck file permissions and ownership
Out of memoryReduce parallel jobs or simplify test
TimeoutCheck for infinite loops or long operations

References

  • See pixi.toml for available tasks and configuration
  • See CLAUDE.md for zero-warnings policy
  • See mojo-test-runner skill for advanced testing