Skip to main content

General

klaw is enterprise AI agent orchestration — like kubectl, but for AI agents.
klaw get agents          # List all agents
klaw describe agent      # Inspect an agent
klaw logs agent          # View logs
klaw cron create         # Schedule tasks
If you know kubectl, you already know klaw.
Because the operational challenges are identical:
ChallengeKubernetesklaw
Where does my workload run?Scheduler → NodesDispatcher → Nodes
How do I isolate workloads?NamespacesNamespaces
How do I configure them?ConfigMaps/SecretsConfig/Secrets
How do I monitor them?kubectl logsklaw logs
How do I schedule work?CronJobklaw cron
Kubernetes solved this for containers. klaw solves it for AI agents.
Enterprises running AI agents in production. If you have multiple agents doing different jobs (lead scoring, competitor monitoring, support automation, report generation) and need:
  • Visibility into what agents are doing
  • Isolation between teams
  • Scheduling and automation
  • Easy scaling
klaw is for you.
klaw is in public beta. It’s being used in production by early adopters. Expect some rough edges before 1.0.

Comparison

OpenClaw is powerful but complex:
  • Node.js + multiple services
  • Difficult deployment
  • Hard to scale
klaw is a single Go binary with:
  • Same agent capabilities
  • kubectl-style operations
  • Deploy in seconds
  • Scale by adding nodes
Think of klaw as “OpenClaw, but simple.”
Those are frameworks for building agents — they help you chain LLM calls together.klaw is infrastructure for operating agents — it helps you deploy, schedule, monitor, and scale those agents in production.You could build agents with LangChain and deploy them on klaw.
ADK provides abstractions for building agents. klaw provides the runtime and control plane for running them. Different layers of the stack.
Claude Code is a single-user interactive coding assistant.klaw is multi-agent orchestration for enterprises — multiple agents, multiple teams, namespaces, scheduling, Slack control, distributed mode.

Technical

300+ models via:
  • each::labs Router — single API for all models
  • OpenRouter — multi-provider gateway
  • Direct providers — Anthropic, OpenAI, Google, Azure
  • Local models — Ollama, any OpenAI-compatible endpoint
Partial. Namespaces provide logical isolation:
  • Scoped secrets — sales can’t access support’s API keys
  • Tool permissions — agents only get the tools you allow
  • Resource isolation — each namespace is independent
However: Non-containerized agents have no filesystem sandboxing. They run under your user account and can access any file you can.For true sandboxing, use Podman containers:
klaw run myagent --task "..."
Containers provide process isolation, filesystem restrictions, and network controls.
Yes. Single binary, no external dependencies. Run on your servers, your VPC, air-gapped environments. You control everything.
  1. Start a controller on one machine
  2. Worker nodes join the cluster
  3. Tasks are automatically dispatched to available nodes
# Controller
klaw controller start --port 9090

# Workers
klaw node join controller:9090 --token $TOKEN

# Dispatch
klaw dispatch "analyze leads" --agent lead-scorer
No. klaw is a single binary with no external dependencies. You can optionally use Podman for containerized agents, but it’s not required.

Usage

  • klaw chat: Interactive CLI session for one user
  • klaw start: Full platform with Slack integration, cron scheduler, and multi-user support
  1. Set up Slack bot and app tokens
  2. Run klaw start
  3. Use @klaw in Slack
@klaw status              # List agents
@klaw run lead-scorer     # Trigger agent
@klaw logs ticket-handler # View logs
See Slack Integration Guide for full setup.
Yes. Use the cron system:
klaw cron create daily-report \
  --schedule "0 9 * * *" \
  --agent reporter \
  --task "Generate daily status report"
Agents can spawn sub-agents using the agent_spawn tool, share context through workspace files, or communicate via Slack channels in team deployments.

Deployment

  • Any 64-bit Linux, macOS, or Windows
  • ~20MB disk space for the binary
  • Internet access for LLM API calls (unless using local models)
That’s it. No runtime dependencies.
curl -fsSL https://klaw.sh/install.sh | sh
The installer always gets the latest version.
Yes. klaw supports running agents in isolated Podman containers:
klaw build
klaw run myagent --task "..."
  • Cluster: Top-level isolation (per organization)
  • Namespace: Sub-division within a cluster (per team/project)
Similar to Kubernetes: namespaces provide logical isolation within a cluster.

Security

API keys are stored in environment variables or config files. They’re never sent to klaw servers—all LLM calls go directly to the provider.
Important: Non-containerized agents run under the same user as the klaw process with no filesystem restrictions. They can access any file your user can access (including ~/.ssh, ~/.aws, etc.).By default, agents can:
  • Read/write any files your user can access
  • Execute bash commands with your user’s permissions
  • Make web requests
For filesystem isolation, run agents in Podman containers:
klaw run myagent --task "..."
Containers provide actual sandboxing. Non-containerized agents should be treated like any process running under your user account.
Configure namespaces in ~/.klaw/config.toml:
[namespace.sales]
secrets = ["HUBSPOT_KEY"]
allowed_tools = ["hubspot", "web_search"]

[namespace.support]
secrets = ["ZENDESK_KEY"]
allowed_tools = ["zendesk", "slack"]

Licensing

klaw is source-available under the each::labs License.Free for:
  • Internal business use
  • Personal projects
  • Consulting and professional services
License required for:
  • Multi-tenant SaaS offerings
  • White-label/OEM distribution

Contributing

See CONTRIBUTING.md. Contributions welcome for:
  • Bug fixes
  • New features
  • Documentation
  • Tools and skills
GitHub IssuesInclude:
  • klaw version (klaw version)
  • OS and architecture
  • Steps to reproduce
  • Relevant logs