Skip to main content

Run blemees-agentd inside a sandboxed container with full operator/peer-mesh participation

Project description

blemees-container

Run blemees-agentd inside a sandboxed container with full participation in the existing operator (blemees-tui) and peer-mesh (blemees-peer) channels.

A session running inside a container is indistinguishable from one running on the host — to the TUI, to the peer mesh, and to other agents addressing it.

Status — v0.1.0 (pre-alpha): Package scaffold only. The CLI shell is in place; the engine drivers and lifecycle logic land in subsequent releases. See docs/IMPLEMENTATION_PLAN.md for the phase-by-phase roadmap.

Install

pip install blemees-container

Once shipped to Homebrew:

brew install blemees/tap/blemees-container

What it does

blemees-container composes the right docker / podman / nerdctl invocation to spawn a containerized agentd, wires up the bind-mounts and env so the contained agent appears on the host's peer mesh, and manages session state copy-in/copy-out so sessions are portable between host and container.

It is not a daemon. It's a CLI that delegates container lifecycle to the host's container runtime.

blemees-container start <name> --image <image> [options]
blemees-container stop <name> [--force]
blemees-container list
blemees-container exec <name> [--] <cmd> [args...]
blemees-container logs <name> [--follow]
blemees-container rm <name>

How it fits

                                 ┌────────────────┐
                                 │      TUI       │
                                 └────────┬───────┘
                                          │ blemees-agent/1
                  ┌───────────────────────┼─────────────────────────────┐
                  │                       │                             │
                  ▼                       ▼                             ▼
          ┌──────────────┐        ┌──────────────┐              ┌──────────────┐
          │ agentd       │        │ agentd       │              │ agentd       │
          │ (host)       │        │ (container)  │              │ (container)  │
          └──────┬───────┘        └──────┬───────┘              └──────┬───────┘
                 │                       │                             │
                 └───────────────┬───────┴─────────────────────────────┘
                                 ▼
                          ┌──────────────┐
                          │   peerd      │
                          └──────────────┘

The TUI connects to every agentd it finds (host plus every container) and merges their session lists into one view. Identity propagation via BLEMEES_AGENT_HOME makes a session in /workspace/foo (bind-mounted from ~/projects/foo) addressable on the peer mesh as home:~/projects/foo#…, exactly as if it were running on the host.

Documentation

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

blemees_container-0.1.0.tar.gz (30.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

blemees_container-0.1.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file blemees_container-0.1.0.tar.gz.

File metadata

  • Download URL: blemees_container-0.1.0.tar.gz
  • Upload date:
  • Size: 30.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for blemees_container-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f1a068966578c2d89ce62649be6a2b9a3d22ca9dacaf8e8ca8b464f58a5b823f
MD5 c606225a48744c2d2ac5e9794e5a0859
BLAKE2b-256 3b1acfd711ca5739f8c640b332fb09371e8ba3a3a79c3b1521eaffd04d166a12

See more details on using hashes here.

Provenance

The following attestation bundles were made for blemees_container-0.1.0.tar.gz:

Publisher: release.yml on blemees/blemees-container

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file blemees_container-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for blemees_container-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7b8bd791d0e0befdf60fe94244cb24cff8925cd1fdc3cf4779781e92ae532fea
MD5 f12987d629254fcacc5dc4626389e0fe
BLAKE2b-256 d33c602c54e699ee04bddba59351eaf9ed355f843faf6fa65596e350b52bf2f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for blemees_container-0.1.0-py3-none-any.whl:

Publisher: release.yml on blemees/blemees-container

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page