oo

oosh – Annotation-driven CLI framework for Bash

Hacker News

oosh – Annotation-driven CLI framework for Bash

Hi HN, I built oosh because I was tired of rewriting the same flag parsing, help text, and completion logic every time I needed a bash CLI at work. The initial idea came from 9 years ago: https://gist.github.com/bruno-de-queiroz/a1c9e5b24b6118e45f4... , and it's pretty simple: annotate your functions and oosh gives you flag parsing, help generation, tab completion, and type validation for free. A scaffolder generates a full CLI project in seconds. ```bash #@flag -e|--env ENV "staging" enum(dev,staging,prod) ~ target environment #@public ~ deploy the app function deploy() { echo "Deploying to $ENV..." } ``` That's it. No subshells, no external dependencies, no compilation step. Just bash 3.2+ (works on stock macOS). A few things that might interest this crowd: - *530* lines for the whole framework `oo.sh` - *~45 annotations replace ~130 lines* of manual case statements, getopts, help text, and completion scripts - *6-17ms overhead* on macOS, 6-9ms on Linux — measured with a built-in profiler - *Tab completion* works out of the box for bash and zsh, including dynamic enums - *Linter* catches annotation errors, naming issues, and flag collisions - Built to be *agent-friendly* — LLMs can read the annotations and scaffold modules without understanding bash arg parsing The 30s demo video in the README shows the full flow: install, scaffold, run commands, add a module, and autocomplete. Happy to answer questions about the design decisions or bash 3.2 compatibility war stories.

Share card

Actual performance

2points
Did not reach leaderboard

Launch Intel predictions

Analyze your own launch →
Indie HackersFits the IH revenue-focused audience · Strong signals: including · Missing: supports, reddit linkedin, podcasting
81%81% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
best fitHighest predicted score across all platforms for this description.
Product HuntOn track for Day 1 leaderboard · Strong signals: mac, macos, agent · Missing: agents, cursor, claude
80%80% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
Hacker NewsStrong engagement from HN community · Strong signals: ide, io, including · Missing: https docs, excited, just released
57%57% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
TrustMRRLess likely to generate early MRR · Strong signals: video · Missing: mobile apps, ios, personal
40%40% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
AppSumoMay struggle as an AppSumo deal · Strong signals: friendly · Missing: plus, platform, intuitive
32%32% predicted probability of success on AppSumo, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Missing: arr, mrr, revenue
23%23% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Incorrect prediction on native model

Similar products

Te
Termost – A framework to create your next CLI with a declarative API62%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Termost – A framework to create your next CLI with a declarative API

Hacker News3
Co
CodefyPHP Framework: Domain-Driven, CQRS, EventSourcing60%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

CodefyPHP Framework: Domain-Driven, CQRS, EventSourcing

Hacker News1
Li
Lieut – An opinionated, zero dependency, framework for CLI apps in Go40%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Lieut – An opinionated, zero dependency, framework for CLI apps in Go

Hacker News3
Di
Distributed MapReduce framework in Go67%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Distributed MapReduce framework in Go

Hacker News25
Jo
Joomla Framework55%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Joomla Framework

Hacker News1
In
IntercoolerJs – A Declarative Ajax Framework73%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

IntercoolerJs – A Declarative Ajax Framework

Hacker News22
Si
Sirius – a coffeescript MVC framework55%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Sirius – a coffeescript MVC framework

Hacker News1
Na
Nanoshell – A framework for Bash scripting54%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Nanoshell – A framework for Bash scripting

Hacker News3
Si
Sirius MVC coffeescript framework55%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Sirius MVC coffeescript framework

Hacker News3
ka
kast – An UDP multicast framework55%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

kast – An UDP multicast framework

Hacker News12