Terminology
The vocabulary is not decoration. A process manager gives you a lot of nouns to keep straight, and sheep are a better mnemonic than "target group" or "managed unit".
Where the joke would cost clarity it gets dropped: kill is called kill, error messages are written in plain technical English, and every themed verb has a straight alias that works forever.
The lexicon
shep flock (aliases list, ls)yesshep describe <name>yesshep fold backend, fold = in configyesFlockfile.toml / .yaml / .json / .json5yesshep bleats (alias logs)yesshep save, then shep musteryeschannel = true, shep triggeryesdescribe's tree viewyesshep enable metrics, shep dogsyes[dog.bark.sinks] config, shep barksyesshep whistleyesshep lookout (alias dash)partlyshep adopt <name> <path>yesshep thatlldoyesshep stock <name> <count> (alias scale)yesshep signal <selector> <signal>yesshep whisper <selector> <line> (alias sendline)yesshep set, shep get, shep unsetyesSheepdogs and sheep were separate ideas from the start
So "dog" never means the daemon. The shepherd is the shepherd. Dogs are plugins that work for it — metrics andbark ship inside the binary, andshep adopt runs anyone else's.
Usage rules
Readability beats theme, every time.
start, stop, restart, list, logs and delete are first-class aliases forever. Sheep terms are the personality layer, not a wall.
kill, delete, exit codes and error messages carry zero whimsy — misreading one costs a process.
Flock, Fold and Bark are fine. Heft as a struct name is not; it is called host.
The README can say shep keeps your flock alive. The config reference says process.
The dog barks in webhooks, not in stderr.