Skip to content

Repository files navigation

Blanket

Blanket is a RESTy wrapper for long-running tasks. With a simple single-binary cross-platform install and embedded UI, API, CLI, and MCP interfaces, Blanket helps your hard-to-manage compute jobs to settle down so you can focus on composing those tasks into broader solutions.

Installation

Download a pre-built binary from GitHub Releases, or use one of the one-liner installers below.

Linux / macOS:

curl -sSfL https://raw.githubusercontent.com/turtlemonvh/blanket/master/scripts/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/turtlemonvh/blanket/master/scripts/install.ps1 | iex

The install script adds blanket to your PATH, sets up configuration, loads default task types, and offers to set blanket up to run on boot and to install AI-agent skills for drafting task types. See installation for the environment variables that control each of those, and where files land.

No sudo or administrator rights are needed for a default install — everything goes under your home directory. Blanket is designed to be easy to set up inside organisations with a semi-paranoid security culture.

No internet access, or only local-user permissions? Each release attaches blanket-bundle-<version>.tar.gz — binaries, checksums, example task types and the install scripts in one file. See offline install.

Upgrading

blanket upgrade --check      # is a newer release available?
blanket upgrade --yes        # install it and restart the server onto it
blanket rollback --yes       # change your mind

Upgrades are checksum-verified, take a database backup first, keep the binary they replace so blanket rollback can put it back, and restart the running server without losing the work in flight. See upgrading.

Quick start

# Start the server (uses the install-script-generated config by default)
blanket

Open the web UI at http://localhost:8773/.

# Submit a task — over REST or via the CLI
curl -s -X POST localhost:8773/task/ -d '{"type": "echo_task"}'
blanket submit -t echo_task

# Run a worker that accepts bash/unix tasks
blanket worker -t exec:bash,os:unix

That's it. For curl examples, file uploads, scripting, custom task types, and the full REST API, see the docs:

  • Usage — submitting tasks, file uploads, the CLI, managing tasks at scale
  • Task type definitions — TOML schema for authoring your own task types
  • API reference — full list of REST endpoints
  • Autostart — running blanket as a background service that starts on login/boot, and blanket uninstall
  • Task flow — task and worker state machines
  • Upgradingblanket upgrade / blanket rollback, checksums and offline bundles, schema versions, backups, blanket backup / blanket migrate
  • MCP interface — expose blanket to MCP clients (agents), security considerations, and setup

Contributing

See CONTRIBUTORS.md for development setup, build instructions, CI details, and code conventions.

License

MIT.

About

Blanket is a RESTy wrapper for long running tasks.

Topics

Resources

Stars

6 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages