Write workflows in YAML, run them via CLI

Like GitHub Actions for your local projects. Simple, powerful, and works seamlessly with Docker.

Quick Install: Run in your project directory
$ curl -fsSL https://project-actions.org/install.sh | bash

Why Project Actions?

No More Bash Scripts

Replace long, hard-to-maintain bash scripts with clean YAML workflows.

Multi-Platform

Runs on macOS and Linux. Works inside Docker containers too.

Docker Native

Built-in Docker Compose support with automatic context switching.

Auto-Generated Help

Help messages generated from YAML. Always up-to-date.

Perfect For

Docker Development

Manage containers, run migrations, open shells - all with simple commands.

Team Onboarding

New developers run project setup and they're ready.

Complex Builds

Replace messy Makefiles with readable YAML workflows.

Multi-Environment

Handle staging, production, and local with command options.

See It In Action

Define commands in YAML, run them with a simple CLI

1. Define Your Command

# .project/up.yaml
help:
  short: Start the project
  order: 10

context: outside-container

steps:
  - check-for: docker
    if-missing: "Install Docker first"

  - action: compose-up

  - if-option: fresh
    then:
      - echo: "Running migrations..."
      - command: migrate

  - echo: |
      ✅ Project is up!
      → Web: http://localhost:8000

2. Run It

$ project
Available commands:
  up       Start the project
  down     Stop the project
  console  Open a shell
$ project up
→ Running: check-for
✓ Completed: check-for
→ Running: compose-up
  Starting services...
✓ Completed: compose-up
✅ Project is up!
→ Web: http://localhost:8000
$ project up --fresh
... (starts up)
Running migrations...
✅ Project is up!