Skip to content

Repository files navigation

Krowoc

Your agent, in the cloud. A web app (PWA, no install) that runs an AI agent with a real shell, files, browsing, and connectors — 24/7, on its own cloud machine. Open it from any device; close your laptop and the task keeps running. Open source, bring your own keys.

  • 🔌 Engine-agnostic — Claude Agent SDK (your Anthropic API key), open models via Fireworks/OpenRouter/Ollama, or Eigent's multi-agent workforce
  • Scheduled triggers — "every morning at 8, brief me" actually runs
  • 🌐 Real browsing — headless Chrome via Playwright MCP
  • 🧩 MCP connectors — attach Composio/Klavis/Zapier MCP or any endpoint
  • 🔑 BYO everything — paste a key, pick a model; keys never leave your box

Krowoc chat

Scheduled triggers with run history Engines, connectors & BYO models
Scheduled Settings
phone / laptop browser
   → PWA + control plane        (web/, control-plane/ — zero-dep Node)
      → agent engine            (per user, sandboxed)
          eigent   — multi-agent + browser automation   [primary]
          opencode — lightweight coding agent           [fallback]
      → LiteLLM proxy           (litellm/ — Fireworks default, BYO keys)
      → MCP connectors          (Composio/Pipedream to start)

Status

  • Control plane: sessions + SSE streaming proxy, pluggable engines
  • PWA UI: chat with history sidebar, markdown rendering, scheduled-tasks panel, installable, dark/light
  • OpenCode engine — live-tested with Kimi K2.6 on Fireworks (real tool use, streaming)
  • Claude Agent SDK engine (engine-claude/) — live-tested; runs on the user's own Anthropic API key (the sanctioned third-party path)
  • Bearer-token auth (KROWOC_AUTH_TOKEN) — required for public deploys
  • Scheduled tasks: daily/interval prompts fire in fresh agent sessions
  • Eigent engine adapter + browsing Dockerfile (written; container untested)
  • Cloud deploy (single box via docker-compose, then Fly Machines per user)
  • Supabase auth (multi-user), connectors panel (Composio MCP), web push

Host it on Fly.io (recommended, ~10 min)

One command sequence gets you a personal cloud agent with HTTPS, phone PWA, browsing, and 24/7 scheduled tasks — no Docker needed locally. docs/deploy-fly.md

Run locally (no Docker)

# 1. engine
npm i opencode-ai && npx opencode serve --port 4096
#    give it a provider config: see agent/opencode.json (uses LITELLM_URL)

# 2. models — either run LiteLLM (needs FIREWORKS_API_KEY):
pip install 'litellm[proxy]' && litellm --config litellm/config.yaml --port 4000
#    ...or any OpenAI-compatible endpoint

# 3. control plane + web UI
node control-plane/src/server.js     # http://localhost:8080

Run the full stack (Docker)

cp .env.example .env   # fill in FIREWORKS_API_KEY + LITELLM_MASTER_KEY
docker compose up --build            # OpenCode engine
# or the primary engine (heavy image, includes Chromium for browsing):
git clone --depth 1 https://github.com/eigent-ai/eigent vendor/eigent
ENGINE=eigent ENGINE_URL=http://agent-eigent:5001 \
  docker compose --profile eigent up --build

Caddy terminates TLS on $DOMAIN and proxies to the control plane.

Design decisions

  • Per-user isolation = Fly Machines (microVM + persistent volume, scale-to-zero; idle user ≈ $0.50/mo, active ≈ $1–3/mo). Template in infra/fly/. Migration path to self-hosted Firecracker at scale.
  • Engine keys never leave the platform: the Eigent adapter injects the LiteLLM route per request; engine containers hold no provider keys.

See docs/architecture.md for the full engine evaluation and roadmap, and SECURITY.md for credential handling and deployment hardening.

Community

License

Apache 2.0 (see LICENSE). The Krowoc name and logo are not covered by the code license. This public repo is the complete single-tenant product; the hosted multi-tenant cloud (accounts, provisioning, billing) is a separate closed layer built on top of it.

About

Your agent, in the cloud. Open-source Claude Cowork alternative — any model, any device, connect and go.

Topics

Resources

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages