https://github.com/angreal/angreal
Task automation and project templating tool. Define reusable commands in Python, scaffold projects from templates, and let tasks travel with your codebase. Rust core, Python API.
https://github.com/angreal/angreal
cli developer-tools productivity project-templates pyo3 python rust scaffolding task-automation
Last synced: 11 days ago
JSON representation
Task automation and project templating tool. Define reusable commands in Python, scaffold projects from templates, and let tasks travel with your codebase. Rust core, Python API.
- Host: GitHub
- URL: https://github.com/angreal/angreal
- Owner: angreal
- Created: 2018-06-19T13:26:18.000Z (almost 8 years ago)
- Default Branch: main
- Last Pushed: 2026-03-20T18:12:07.000Z (3 months ago)
- Last Synced: 2026-05-23T00:03:01.696Z (17 days ago)
- Topics: cli, developer-tools, productivity, project-templates, pyo3, python, rust, scaffolding, task-automation
- Language: Rust
- Homepage: https://angreal.github.io/angreal
- Size: 14.1 MB
- Stars: 12
- Watchers: 0
- Forks: 5
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Contributing: docs/contributing/code_of_conduct.md
Awesome Lists containing this project
README
# Angreal
[](https://pypi.python.org/pypi/angreal)

[](https://pypi.python.org/pypi/angreal)
[](https://github.com/angreal/angreal/actions/workflows/test.yaml)
[](https://github.com/angreal/angreal/actions/workflows/docs.yaml)
---
[Docs are available here.](https://angreal.github.io/angreal/)
## Angreal is meant to:
- allow the consistent creation of projects
- provide consistent methods for interacting with projects
### Quick Start
1. Install via `pip`
2. Initialize a project from a template
3. Use the template
```bash
$: pip install 'angreal' #pip install angreal will also work
$: angreal init https://github.com/angreal/python
```
---
## What is it?
Angreal is an attempt to solve two problems that I was running into in
both my personal and professional life as a data scientist and software
developer. I do things often enough that they needed automation, I
don\'t do things so often that I remember all of the steps/commands I
might need to get them done. Angreal solves this problem by allowing me
to remember by forgetting : I only have to remember the command to do
something not the actual steps to complete the task.
### How does it solve these challenges ?
Angreal provides a way to template the structure of projects and a way
of executing methods for interacting with that project in a consistent
manner. These methods (called tasks) travel with the project so while
templated initially, they\'re customizable to the project - allowing some
level of flexibility in how a task functions between projects.
### AI Assistant Integration
Angreal provides a Claude Code skill plugin that teaches Claude how to discover and work with your project's tasks.
#### Setup with Claude Code
```bash
# Install the Angreal skill plugin
/plugin marketplace add angreal/angreal
/plugin install angreal@angreal-angreal
```
The skill auto-activates in angreal projects and teaches Claude:
- How to discover tasks with `angreal tree`
- When and why to use each task (via `angreal tree --long`)
- How to author new tasks with `@angreal.command` decorators
### Why 2.0 ?
The original angreal was built on top of a number of python modules that
were under active development and used by a number of other projects.
The nature of the application itself meant that core application found
itself in dependency hell regularly - and became rather annoying to use.
The 2.0.0 release is a complete rewrite that uses
[Rust](https://www.rust-lang.org/) to provide a compiled binary with the goal that it will
require no external python dependencies.