← Back to Projects
OSS / CLI

yali

A YAML-first OSS CLI for defining and running LLM commands and multi-step prompt pipelines.

April 2026
yali

Overview

yali is an open-source CLI described as a YAML LLM Interface. It lets users define prompts, models, inputs, outputs, and multi-step dependencies in YAML, then run those commands from the terminal. The tool supports dry-run prompt inspection, template variable injection, stdin and file-based input, and output to stdout or files. It is distributed via npm as @shira022/yali and includes safeguards such as timeouts, retry limits, and local concurrency limits to reduce accidental API overuse.

The challenge

Prompts that work stay in one person's memory, so nobody else reproduces the same result and the process lives on verbal knowledge.

How it was built

My role

  • Designed the command abstraction so prompt, model, and I/O configuration live in a single YAML file
  • Implemented support for multi-step prompt pipelines with dependency chaining and variable passing
  • Added dry-run, flexible input and output handling, and CLI ergonomics for developer workflows
  • Built guardrails around timeout, retries, and concurrency to limit accidental API cost spikes

Design decisions

  • Lets developers define reusable LLM commands in YAML instead of hard-coding prompt flows
  • Supports dry-run inspection before hitting the API, which improves safety during prompt iteration
  • Includes practical safeguards for timeout, retry, and concurrency control in local CLI usage

Outcomes

Definition style
YAML-first
Distribution
npm package
Pipeline support
Multi-step dependencies

Tech Stack

TypeScriptNode.jsOpenAI APIYAMLnpmCLI

Links

← Back to Projects