Skip to content
/ cute Public

Cute: A CLI tool that exeCUTEs commands from markdown files — also works as a zsh/fish plugin.

License

Notifications You must be signed in to change notification settings

ras0q/cute

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cute

A CLI tool that exeCUTEs commands from Markdown files.

Demo

$ source <(curl -fsSL https://raw.githubusercontent.com/ras0q/cute/main/cute)
$ cute -h
Cute: A CLI tool that exeCUTEs commands from Markdown files.

Usage:
  cute [-h] [-l] [-v] [TASK_NAME|SLUG ...]

Options:
  -h: Show this help message and exit
  -l: List tasks
  -L: Limit search depth for Markdown files (default: 1)
  -v: Enable verbose mode

Arguments:
  TASK_NAME|SLUG: Task name or slug to execute. If specified, fuzzy search will be skipped.
                  Multiple tasks can be specified to execute them in order.

Example:
  cute -l                # List tasks
  cute build             # Execute task with slug "build"
  cute "Build Project"   # Execute task by name
  cute build test deploy # Execute multiple tasks in order
  cute $(cute -l | fzf)  # Fuzzy search and execute a task using fzf

Features

  • Pure shell script with no dependencies
  • Tasks defined in Markdown files with standard code blocks
  • Discovers tasks from all Markdown files in current directory
  • Execute tasks written in sh, bash, zsh, or shell
  • Built-in completion for bash and zsh
  • No configuration required
  • Opt-in adoption for teams

Comparison with Other Task Runners

vs Make

Make is a build system for managing file dependencies, not a task runner.

Cute requires no Node.js installation and uses standard Markdown instead of JSON configuration.

vs Task

Cute is pure shell requiring no binary installation, uses natural Markdown formatting instead of YAML, and works on any POSIX shell environment. Developers can opt-in to using the cute command without forcing adoption across the team.

vs xc

Cute scans all Markdown files in the project instead of a single dedicated file (e.g. README.md), and any Markdown heading becomes a task without needing a ## Tasks section.

Installation

Basic Usage

Download the script to a directory in your PATH, e.g. ~/.local/bin:

CUTE_PATH=~/.local/bin/cute
curl -fsSL https://raw.githubusercontent.com/ras0q/cute/main/cute -o $CUTE_PATH
chmod +x $CUTE_PATH
cute -h

Execute Without Installation

Cute is a pure shell script. You can try it out without installation:

source <(curl -fsSL https://raw.githubusercontent.com/ras0q/cute/main/cute)
cute -h

Zsh

Using a plugin manager like antidote:

antidote install ras0q/cute

Or follow the Basic Usage.

Bash

Follow the Basic Usage.

Fish

Using Fisher:

fisher install ras0q/cute

Or follow the Basic Usage.

Want Another Way?

If your preferred package manager or installation method isn't listed, open an issue and let us know!

Acknowledgements

About

Cute: A CLI tool that exeCUTEs commands from markdown files — also works as a zsh/fish plugin.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Languages