docs · pre-release
Menu
Dogs / Community dogs

Community dogs

metrics and bark ship inside the shep binary. Everything below is a separate binary you install yourself and hand to shep adopt <path>. Some are ours and some are not; the repository link says which.

That prints the install and adopt commands below, narrowed with an optional filter.

careful
Being listed here checks two fields and nothing else: that repo is an https URL shaped like a repository, and that license is not empty. The repository is never fetched and the binary is never run. It is not a review. For a dog we did not write, nobody here has read the code. Adopting one runs it at the shepherd's own trust level, the same as anything else your Flockfile already starts.
A naming gotcha before you adopt one

A crate's binary doesn't have to share its package name, and CARGO_INSTALL_ROOT or GOBIN can move where the installer puts the file, so check where it actually landed before adopting it. Getting the path wrong is loud, since shep adopt refuses a path that isn't there. Getting the name wrong is silent, which is exactly why adopt_as exists as its own field instead of reusing the package name.

Logs

shep-log-rotate (Bella)

Rotates grown log files and asks the shepherd to reopen them.

MIT OR Apache-2.0 · Repository

install & adopt
$ cargo install shep-log-rotate
$ shep adopt ~/.cargo/bin/shep-log-rotate --name log-rotate

Deploy

shep-deploy (Moon)

Watches a git branch, builds a release in an isolated directory, swaps to it, and rolls back on its own if the new release does not come up.

MIT OR Apache-2.0 · Repository

install & adopt
$ cargo install shep-deploy
$ shep adopt ~/.cargo/bin/shep-deploy --name deploy

Interactive

shep-discord (Wumpus)

Streams a sheep's output into Discord channels, keeps a live embed for each one, and drives the flock from slash commands.

MIT OR Apache-2.0 · Repository

install & adopt
$ cargo install shep-discord
$ shep adopt ~/.cargo/bin/shep-discord --name discord

Add a dog

Add yours by editing web/public/dogs.json and opening a pull request. Point your editor at the published schema and it will tell you what an entry needs while you type it. The build runs its own validator over every entry before the site ships, and a test keeps the two in step, so a pull request that satisfies the schema will not surprise you in CI.