werk

Version, currently 0.8.463 versions

github.com/marghidanu/werk

A simple task runner with parallel execution and Docker support

32 stars
0 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  werk:
    github: marghidanu/werk
    version: ~> 0.8.4

Then run:

shards install

shard.yml

Crystal
>= 1.19.0
License
MIT
Author
tudor@marghidanu.com
Target
  • werk from src/werk.cr

Dependencies

Runtime Dependencies

  • mcp*github: ralsina/mcp, branch: main
  • dotenv*github: gdotdesign/cr-dotenv
  • tallboy0.9.3github: epoch/tallboy

README

# Werk

Local CI pipeline runner with parallel execution and Docker support.

[![CI Status](https://github.com/marghidanu/werk/workflows/CI/badge.svg)](https://github.com/marghidanu/werk/actions)

## Features

- Declarative pipelines in a single YAML file
- Automatic parallelism based on the dependency graph
- Local and Docker executors
- Built-in vault for encrypting secrets in dotenv files
- Execution reports with per-job timing and status
- MCP server for AI assistant integration (experimental)

## Quick start

Install via Homebrew:

```
brew tap marghidanu/werk
brew install werk
```

Create a `werk.yml`:

```yaml
version: "1"

jobs:
  main:
    executor: local
    needs:
      - lint
      - test
    commands:
      - echo "Build complete!"

  lint:
    executor: local
    commands:
      - echo "Linting..."

  test:
    executor: local
    commands:
      - echo "Running tests..."
```

Run it:

```
werk run
```

Inspect the execution plan:

```
werk plan
```

Get a detailed report:

```
werk run -r
```

## Documentation

- [Installation](https://github.com/marghidanu/werk/wiki/Installation)
- [Getting started](https://github.com/marghidanu/werk/wiki/Guide)
- [Philosophy](https://github.com/marghidanu/werk/wiki/Philosophy)
- [Internals](https://github.com/marghidanu/werk/wiki/Internals)
- [MCP Server](https://github.com/marghidanu/werk/wiki/MCP)
- [FAQ](https://github.com/marghidanu/werk/wiki/FAQ)

## License

MIT