Skip to main content

manigent-daemon

License: MIT

Connects one computer to Manigent, so you can see what is running on it — and start or stop it — from the web instead of a terminal.

Why this is a separate package

It stays connected when every agent on the machine is dead.

That is the whole feature. An agent's own connection cannot tell you "nothing is running here", because it is gone in that case — which looks exactly like the computer being switched off. Those two states need different words and different remedies, so something on the machine has to keep talking when there is nothing else left to talk.

It follows that this must not be able to break the way the agents can, which is why it is its own package with three dependencies (httpx, websockets, typer). It installs in seconds and starts even when the runner's heavier stack is unusable.

Install

uv tool install manigent-daemon     # or: pip install manigent-daemon

Then, in the Manigent web app, open Computers, press + to get a pairing code, and run:

manigent computer install --code XXXX-XXXX --user <your-username>

(manigent computer … is the same program, reached through the runner's CLI. If the runner is not installed, use manigent-computer … directly.)

What this connection can do

The fixed list. The server can ask this computer to do only these things, and every item is checked twice — once by the server before it will send anything, and again here before anything runs:

  • Start one of your agents
  • Stop one of your agents
  • Restart one of your agents
  • Report which of them are running
  • Update the Manigent software on it (manigent and its connection software)

Your agents. The agents it runs act as you and can run commands on this computer.

The terminal. On by default: you can open a full shell on this computer, as you, from its page in Manigent. Turn it off on this machine — only here, never from the browser:

manigent computer terminal disable   # ends open sessions within seconds
manigent computer terminal enable
manigent computer terminal status

Sessions are hung up when you end them, after 15 minutes idle, after 8 hours, or when the connection drops. The server records who opened a session and for how long — never what was typed or printed.

Never

  • Read or change your agents' environment variables
  • Install or change anything else
  • Delete an agent — only you can, in the browser
  • Reach any other computer or account

Start, stop and restart are performed by shelling the ordinary manigent start / manigent stop commands, so they behave exactly as they do when you type them yourself.

Disconnecting the computer from the web app destroys this machine's key immediately and for good; reconnecting needs a fresh pairing code.

Commands

Command What it does
manigent computer install --code XXXX-XXXX Connect this computer to your account
manigent computer start Start the connection in the background
manigent computer stop Stop the connection (your agents keep running)
manigent computer status Is it connected, and what is running here
manigent computer logs --tail 50 What the connection has been doing
manigent computer update Update Manigent on this computer (manigent + connection software, via uv tool / pipx / pip)

Where things live

~/.manigent/computer/<your-username>/
  config.json     # this machine's key, for this account (mode 0600)
  computer.pid
  stdout.log      # what the connection did
  stderr.log      # what went wrong

One directory per Manigent account. If two people (or two of your own accounts) use the same computer, each pairs separately and gets its own key, its own connection and its own logs — neither can disturb the other. Every command takes --user <name>; without it, it acts for the account you are logged in as.

The two logs are rotated at 2 MB, stay on this machine, and are never uploaded or shown in the web app. manigent computer logs prints the tail of both.

config.json holds the only secret that lets Manigent ask this machine to do anything. It is written readable by you alone, never logged, and never synchronized anywhere.

Mirrored source

This repository is a read-only mirror, published from the Manigent monorepo. Issues and discussion are welcome here; code changes land upstream.

License

MIT — see LICENSE.

Metadata

Release files for manigent-daemon 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for manigent-daemon 0.1.4
File Size Uploaded Provenance
manigent_daemon-0.1.4.tar.gz 52.4 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for manigent-daemon 0.1.4
File Interpreter ABI Platform
manigent_daemon-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 110.0 kB

Release files / manigent_daemon-0.1.4.tar.gz

Download URL manigent_daemon-0.1.4.tar.gz
Size 52.4 kB
Tags Source
SHA-256 checksum
How to use checksums
38496b366260984fa816fd6f3c991d54ef2f64c671955db7a6b9346a796f6bb2
BLAKE2b-256 checksum
How to use checksums
63b8d8451de2eb281be4996ef53ca84c15c77fd0fc1961392eb3545e1a40692c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Release files / manigent_daemon-0.1.4-py3-none-any.whl

Download URL manigent_daemon-0.1.4-py3-none-any.whl
Size 57.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c8b959c680f40b0fc15c0ac05587a726e5dd1a568ac661f5417b169412b98314
BLAKE2b-256 checksum
How to use checksums
bdd03c4a8aa332a92273af911dc4842cc9a4dfa1ce3612c0236d89fd563b98e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

Security for manigent-daemon 0.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for manigent_daemon-0.1.4.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page