⌜ ᐸ ᐊ ᐯ Ⲷ Ⲡ ⌟ distributed p2p ml research platform darkshapes.org
network training inference share ml ai distributed p2p
0

Configure Feed

Select the types of activity you want to include in your feed.

Rust 74.7%
Just 13.3%
Shell 10.1%
Python 0.2%
Other 1.6%
152 4 0

Clone this repository

https://git.vm.fail/yzzxyz.roomy.chat/coven https://git.vm.fail/did:plc:okz7ln6fsh4edhazevnrwsyi
ssh://git@knot1.tangled.sh:2222/yzzxyz.roomy.chat/coven ssh://git@knot1.tangled.sh:2222/did:plc:okz7ln6fsh4edhazevnrwsyi

For self-hosted knots, clone URLs may differ based on your setup.


README.md

library_name: coven license_name: MPL-2.0 + Commons Clause 1.0 language: en compatibility:

  • macos
  • linux
  • windows

⌜ ᐸ ᐊ ᐯ Ⲷ Ⲡ ⌟
distributed research platform#

COVEN is software for cooperative computation. It reduces the hardware demands of research by relying on encrypted peer-to-peer (p2p) coordination between everyday computers, pooling their capabilities to accelerate work for deep learning inference, training, and dataset storage.

Share scientific workloads up to the sum force of your COVEN's computers. Host translation, text-to speech, text-to-image, or audio services. Run language models too big for any one computer using llama.cpp. Train or fine-tune machine learning weights and adapters at exponentially faster speeds than a lone PC. Glaze every work of art on the planet together. Grow resilient, efficient networks instead of funding new datacenters.

DARKSHAPES #

CAUTION

COVEN is still an experimental system. While communications are encrypted and execution may be sandboxed, there is no perfect privacy for running prompts or scripts on shared resources.

Only admit trusted friends into your COVEN.

NOTE

Minimum Requirements#

Experience#

  • Familiarity with using Terminals/Command Line Interfaces (CLI).

Hardware#

  • Any of:
    • Apple Mac with M-series Unified Chip
    • GNU/Linux system with CPU, NVIDIA 20xx+ graphics, AMD graphics, or any Vulkan-compatible chipset.
    • Windows PC with Windows Subsystem for Linux

Software#

  • zsh shell
  • just to build library
  • brew package manager (only required for MacOS)

Optional#

  • pnpm to build UI. Auto-installs otherwise.
  • node to build sandboxes or mesh-llm. Auto-installs otherwise.
  • GNU/Linux systems require:
    • zsh.
    • nvcc (NVIDIA CUDA Toolkit), HIP/ROCm libraries (AMD ROCm), or glslc (Vulkan) for GPU support
  • Windows can be used, but support is unstable. It allows client-node only, and is NOT sandboxed. Requires git

Setup#

  1. Open a Terminal window and clone this repo:
git clone https://tangled.org/did:plc:okz7ln6fsh4edhazevnrwsyi coven
cd coven
  1. Install covn
just build

If pnpm, cargo, nvcc require installation, reopen and rerun the build command.

  1. Run covn
covn -h

Usage#

Toggle framework options

covn serve switch # Cycle model serving options
covn group switch # Cycle system clustering options

Serving models

covn serve --join 1337e57 # join an existing mesh
covn serve --name coven --model ibm-granite/granite-4.1-3b-GGUF:Q4_K_M # launch a mesh and wait for peers

Training models

covn train --join # sets up the node on the device
covn train --peers 1337e57, b14b14b14 --repo https://github.com/<someones>/<repo> # form the mesh, check the repo clone at ~/.local/share/covn/<repo>, then begin training

Grouping nearby computers together into a shared endpoint

covn group --join

Stop running daemons

covn serve stop # stop only serving daemon
covn stop # stop all daemons

View status of launched processes

covn serve status # Cycle model serving framework options

Architecture:#

COVEN is a thin wrapper meant to coordinate other packages towards a single goal. Individual commands become detached processes through the main covn command and launched as local daemons with unified arguments. Components run independently and can be swapped in and out as necessary. We use a deck of lightweight software, including a custom asynchronous training system variant of drift package.

Structure#


cli                        package                    purpose
---------------------------------------------------------------------------------------
                    .---> tahoe-lafs              p2p distributed storage
                   /
                  /  .---> cake / exo             mdns local clustering
                 /  /
                /  /  .---> mesh-llm / parallax   p2p distributed/sharded inference
     nocturne  /  /  /
covn-------:--:--:--:
            \     \  \
             \     \  `----> trackio              python experiment tracking
              \     \
               \     `----> drift                 p2p distributed heterogenous training
                \
                 `---> fence / sandbox-runtime    policy network/command isolation[optional]
Package Purpose
just // uv // cargo Build, install, compose, with strict dependency rules.
fence // sandbox-runtime Sandbox for commands/disk/network restrictions
nocturne // iroh // lattica Coordination, unified CLI, peer to peer communications.

Included Libraries#

  • H4 Tolerance (see CONTRIBUTING.md)
  • Distributed
  • Optional Auth Layer
  • Open Source
  • Maintained
Default Library Hardware Framework Notes Purpose
[✓] mesh-llm Any llama.cpp iroh, default Serves inference using combined compute (GPU/CPU VRAM/Memory size).
[✓] drift Apple/Linux any extended support Coordinates training runs and metrics at scale across peer network.
[✓] trackio Any python wandb stand-in Experiment tracking across training runs
[✓] tahoe-lafs Any python storage Shared, encrypted data storage split across nodes. Not yet implemented.
[_] cake Any, Mobile candle cake/tcp Consolidate physically close resources into a single local endpoint.
[_] parallax Any vllm/sglang/mlx lattica Alternate inference server.
[_] exo Apple/Linux mlx rdma/libp2p Alternate clustering server.

Commands Reference#

COVEN Distributed Research Platform

Usage: covn [SANDBOX] [COMMAND]

Commands:
  group  Create or join devices as a single inference server.
  serve  Start server to handle inference requests.
  train  Standby for or start model training with distributed peers.
  store  Start the distributed file storage service.
  stop   Stop all running processes (group, serve, train, store).
  help   Print this message or the help of the given subcommand(s)

Arguments:
  [SANDBOX]

Options:
  -h, --help  Print help (see more with '--help')

just command options

Available recipes:
    [ main ]
    build                 # Install COVEN and `covn` command with default distributed options(mesh/drift).
    info                  # Show detected system information and locations for installation.

    [device cluster]
    build-cake            # Install Cake. Cluster local network devices into a single multimodal Candle inference server.
    build-exo             # Install EXO. Cluster MacOS devices over local network/RDMA into a single MLX inference server.

    [inference]
    build-mesh-llm        # Install Mesh-LLM. Inference over distributed network. Can split tensor/experts using llama.cpp.
    build-parallax        # Install Gradient Parallax, a pipeline-parallel model serving framework built on SGLang and MLX.

    [nocturne]
    build-covn            # Install `covn` CLI, Python environment, essential packages (Tahoe-LAFS, Trackio, PyTorch)

    [sandboxes]
    build-fence           # Install Fence sandbox. Enables sandbox prefix to limit access rights.  e.g. `covn sandbox train <args>`
    build-srt             # Install Sandbox-Runtime. Enables sandbox prefix to limit access rights.  e.g. `covn sandbox train <args>`
    config-fence          # Set Fence config. `coven/srt-settings.json` edits migrate to `~/.config/srt-settings.json`.
    config-srt            # Set Sandbox-Runtime config. `coven/srt-settings.json` edits migrate to `~/.config/srt-settings.json`.

    [tools]
    base-tools            # Instal packaging and download tools (uv, cargo, git-xet).
    build-tools           # Instal build tools (cmake, ninja, sccache, lld, node).
    check-package-manager
    check-ready           # Show installed processes.
    cleanup_build         # Destroy project tempprary build directories.
    cleanup_cache         # Manually destroy cached downloads.
    is-old-cuda           # Determine whether CUDA device belongs to legacy hardware.
    target                # Detect GPU backend using native just if/command syntax.

    [training]
    build-drift           # Install Drift, a distributed ml training system that works over Iroh network.
    build-drift-upstream  # Install upstream Drift. Needs fast/local device connection for shared memory and synchronization.
  • On MacOS, building drift may require firewall permission for integration, stress, and training packages in addition to mesh-llm/drift
  • Building may rest config files. Be sure to back up any changes to ~/.mesh-llm/config.toml and ~/.srt-settings.json

See nocturne/README.md,mesh/README.md, drift/README.md for individual package info.

Ref: https://arxiv.org/abs/2604.14561 https://arxiv.org/abs/2602.02192 https://arxiv.org/abs/2602.08387 https://arxiv.org/abs/2601.06857 https://arxiv.org/abs/2509.26182 https://arxiv.org/abs/2505.15306 https://arxiv.org/abs/2504.17096 https://arxiv.org/abs/2501.05450