Skip to main content

Dispatch bounded tasks to isolated LLM workers (GLM, Kimi, and more)

Project description

pilot-workers

Dispatch bounded tasks to isolated LLM workers. Your main AI agent (Claude, Codex, or any planner) stays in control of requirements, planning, and verification — the worker only executes what it's told.

What it does

  • Provider isolation: each model (GLM, Kimi, or your own) gets its own credentials, XDG directories, logs, and session storage. No cross-contamination.
  • Fixed routing: provider, model, and endpoint are locked per YAML config. Tasks cannot override them.
  • Security by default: API keys never appear in CLI args, environment variables, task contracts, or logs. Output is auto-redacted.
  • Five modes: code (edit), explore (read-only), test (run tests), review (read-only audit), resume (continue a prior code session).
  • Observable: worker_runner.started → heartbeats → worker_runner.summary. Human-readable live log at latest.log for tail -f.
  • Pluggable runners: currently wraps OpenCode via @ai-sdk/openai-compatible; the runner interface is designed for future alternatives (Aider, Continue, etc.).

Quick start

# 1. Install the pinned OpenCode runtime
pilot-workers runtime install

# 2. Add a provider (YAML files in src/pilot_workers/data/providers/)
# GLM and Kimi are included; add your own by copying the template

# 3. Configure credentials (interactive, key never displayed)
python3 -m pilot_workers.credentials glm
python3 -m pilot_workers.credentials kimi-k3

# 4. Verify
python3 -m pilot_workers.cli.run --provider glm --mode explore --workdir . --task "hello" --dry-run

# 5. Run a real task
python3 -m pilot_workers.cli.run \
  --provider glm --mode code \
  --workdir /path/to/project \
  --task-file /path/to/task.md

Adding a new provider

Drop a YAML file in data/providers/ (inside the package):

key: deepseek
provider_id: deepseek-worker
model_id: deepseek-coder-v3
base_url: https://api.deepseek.com/v1
display_name: DeepSeek Coder V3
context_tokens: 128000
output_tokens: 8192

Then python3 -m pilot_workers.credentials deepseek and you're done.

Host integration

The host is whatever AI agent acts as the planner — Claude, Codex, Gemini, GLM itself, or anything that can write a task file and call the CLI.

integrations/ has ready-made configs for current hosts:

  • claude-host/: 12 agents + 8 slash commands (/glm:code, /kimi:explore, etc.)
  • codex-host/: $glm / $kimi / $ds skill entry points

Adding a new host: create integrations/<name>-host/, put whatever config your host needs, point it at python3 -m pilot_workers.cli.run. See integrations/README.md.

Architecture

See docs/architecture.md for the shared contract, security model, and verification checklist.

License

MIT

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

pilot_workers-0.2.0.tar.gz (59.5 kB view details)

Uploaded Source

Built Distribution

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

pilot_workers-0.2.0-py3-none-any.whl (100.7 kB view details)

Uploaded Python 3

File details

Details for the file pilot_workers-0.2.0.tar.gz.

File metadata

  • Download URL: pilot_workers-0.2.0.tar.gz
  • Upload date:
  • Size: 59.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for pilot_workers-0.2.0.tar.gz
Algorithm Hash digest
SHA256 d13afebad4c308c4f08d68be8ff9df5ca5c8e13194ee8b39f58da6e6dcad9c61
MD5 531f8c85835c45b97fc24806388eabed
BLAKE2b-256 6965ba61d07efd277f9553d55fd431d59aac14180a94b64cde60a2f4523b9232

See more details on using hashes here.

Provenance

The following attestation bundles were made for pilot_workers-0.2.0.tar.gz:

Publisher: publish.yml on gWcyWoo/pilot-workers

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

File details

Details for the file pilot_workers-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: pilot_workers-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 100.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for pilot_workers-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ab853373417222c7f2961f7f68aec8c9c5ca035f469e26636d9c12fc1657268
MD5 8f9b5614328072dc175d10d4efd753ba
BLAKE2b-256 5e9185f54fd314b6a3394bed346611e04c262728015a8bd89933547ede799e0c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pilot_workers-0.2.0-py3-none-any.whl:

Publisher: publish.yml on gWcyWoo/pilot-workers

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