5 releases

Uses new Rust 2024

new 0.3.0 Dec 21, 2025
0.2.3 Oct 13, 2025
0.2.2 Aug 29, 2025
0.2.1 Aug 24, 2025
0.2.0 Aug 18, 2025

#73 in Configuration

MIT license

98KB
2.5K SLoC

yet

yet (yet-another executor of tasks) is a tool for executing tasks. It aims at fitting my use-cases and workflow for the CylonCore and auKsys projects. But you are very welcome to use it for your own projects, and contribute to the project, through merge requests.

Installation

To install yet, you need to have Rust and Cargo installed. If you don't have them installed, you can get them from rustup.rs.

cargo install yet

Documentation

Command-line usage

yet command line usage is available by running the command:

yet --help

To get started, create a demo configuration file in the current directory:

yet --create-config

The basic usage is to run a task:

yet taskname arg0 arg1...

With the previously created configuration file:

yet hello world

The taskname is the identifier for a task as defined in the yet.yml file. When executing a task, yet automatically searches for yet.yml files in the current directory and all parent directories, importing the tasks specified within them. If a task with the same name is defined in both a parent directory and a subdirectory, the task in the subdirectory will override the one in the parent directory. To run a task located in a subdirectory, you can specify the path to the task using the command:

yet path/to/subdir/taskname

This allows for flexible task management and execution across different directory levels.

yet.yml

Tasks are defined in a yet.yml file. Which contains a root tasks, which is a dictionary where the An example is provided bellow:

tasks:
  install:
    description: "Install yet."
    command: !commands
      - cargo install --path .

  test:
    description: "Run tests for yet."
    command: !commands
      - cargo test
      - cd tests
      - ruby test.rb

or more detailed information on configuring tasks, refer to the yet.yml documentation.

Shell Integration

  • bash: add the following line to your .bashrc or .bash_profile to enable completion:
eval "$(yet --shell-config bash)"
  • nu: add the output of yet --shell-config nu to your nu config. Auto-completion with nushell is experimental.

Dependencies

~16–33MB
~472K SLoC