Back to directory

oosh

An annotation-driven bash framework for building command-line tools, generating help text, flag parsing and tab completion from a small set of comment annotations on ordinary bash functions.

oosh

oosh turns annotated bash functions into a full CLI: annotations above a function mark it as a public command, a hidden but callable one, or the default action, and declare its flags with their short and long forms, defaults and types. From these, oosh generates help text, argument parsing and tab completion automatically, without hand-written case statements.

A generator scaffolds a new CLI and offers to install it immediately or later; dropping additional .sh files into a modules/ directory adds new modules automatically, each with its own generated help output, and flags can be scoped to a specific command rather than the whole tool.

It targets bash 3.2 and newer on both macOS and Linux, with no dependencies beyond bash itself, and the project reports roughly 7 to 12 milliseconds of overhead per invocation depending on platform.

More in CLI tools

See all 181
  • grev

    github.com

    A set of Unix coreutils-style filters — grep, sort, cut and more — that answer a plain-language question about each record instead of matching a pattern, using a small decision model.

  • A Node.js script that exports a Google Doc to HTML and CSS with high fidelity, preserving headings, spacing, alignment, bullet lists, images and right-to-left text.

  • gpusched

    github.com

    A VRAM-aware GPU job scheduler for a single machine: declare how much memory each shell command needs, and it places jobs the moment a GPU has room and reports when a guess was wrong.