Skip to main content
Glama
Michael-Drake

io.github.Michael-Drake/rentctl

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DEVCTL_SESSION_IDNoSession id rentctl reads to identify which session is asking (used for claim sharing and release). A caller with none of DEVCTL_SESSION_ID, CLAUDE_CODE_SESSION_ID or GEMINI_SESSION_ID is treated as `unknown`, and every `unknown` caller shares one claim.
GEMINI_SESSION_IDNoSession id rentctl reads to identify which session is asking (Gemini CLI). A caller with none of DEVCTL_SESSION_ID, CLAUDE_CODE_SESSION_ID or GEMINI_SESSION_ID is treated as `unknown`, and every `unknown` caller shares one claim.
CLAUDE_CODE_SESSION_IDNoSession id rentctl reads to identify which session is asking (Claude Code sets this; hooks also send the session id on stdin). A caller with none of DEVCTL_SESSION_ID, CLAUDE_CODE_SESSION_ID or GEMINI_SESSION_ID is treated as `unknown`, and every `unknown` caller shares one claim.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
env_upA

Start (or renew) this checkout's leased dev environment and return its URL.

Omit project to use the one this checkout declares in its rentctl.toml. Use the returned url/port — never a conventional port — and check readiness. Calling it again renews your session's lease. Errors come back as ok: false with an error code: NOT_A_PROJECT / UNKNOWN_PROJECT (not enrolled — a person runs rent init), CMD_CHANGED (a person must re-approve with rent sync), START_TIMEOUT (read log_tail).

env_downA

Release this session's hold on a project's environment; it stops when no other session holds it.

Other agent sessions in the same checkout may be using the same server. By default this releases only YOUR session's claim: if another session still holds one, the server keeps running and the result says stopped: false with held_by naming them. If you held the last claim, it stops. force=true stops it for everyone and lists overrode_claims — use it only when the user asked to stop the server outright. Omit project to act on everything leased to this cwd.

Waits up to wait_s seconds (default 15, at most 60) for verified cleanup. Past that the result is pending: true — still ok: the environment's supervisor finishes the stop, and env_ls shows the outcome.

env_lsA

List every broker-owned environment on the machine (live, reconciled inventory).

env_sweepB

Reconcile every lease: stop expired/dead, report (or under strict, reclaim) squatters.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 4 tools

Disambiguation4/5

env_up (start/renew) and env_down (release) are clearly opposed, and env_ls (list inventory) versus env_sweep (reconcile leases) are distinguishable, though an agent could plausibly reach for env_sweep when it means env_down since both stop environments. The descriptions do enough work to keep boundaries clear.

Naming Consistency4/5

All four names use snake_case with a consistent env_ prefix, so the family is immediately recognizable. The action tokens mix directional (up/down) with verb/CLI-style (ls/sweep) forms, a minor deviation from a strict verb_noun pattern but still readable.

Tool Count4/5

Four tools is a tight, plausible set for a lease manager covering start, release, inventory, and reconciliation, with no obvious filler. It sits at the low end of the recommended range, and a dedicated status/logs tool could arguably earn a fifth slot.

Completeness3/5

The core lifecycle (start, stop, list, reconcile) is covered, but there is no way to fetch logs for a specific environment even though errors reference log_tail, and no single-environment status/get beyond the full inventory listing. These are workable-but-notable gaps for debugging failed starts.

Maintenance

ActivityMaintained
ResponsivenessNo issues