clanker-agent/README.md
Harivansh Rathi 67168d8289 chore: rebrand companion-os to clanker-agent
- Rename all package names from companion-* to clanker-*
- Update npm scopes from @mariozechner to @harivansh-afk
- Rename config directories .companion -> .clanker
- Rename environment variables COMPANION_* -> CLANKER_*
- Update all documentation, README files, and install scripts
- Rename package directories (companion-channels, companion-grind, companion-teams)
- Update GitHub URLs to harivansh-afk/clanker-agent
- Preserve full git history from companion-cloud monorepo
2026-03-26 16:22:52 -04:00

4.8 KiB

clanker logo

Discord Build status

clanker.dev domain graciously donated by

Exy mascot
exe.dev

clanker-agent

Looking for the clanker coding agent? See packages/coding-agent for installation and usage.

Tools for building AI agents and running the clanker coding agent.

Packages

Package Description
@mariozechner/clanker-ai Unified multi-provider LLM API (OpenAI, Anthropic, Google, etc.)
@mariozechner/clanker-agent-core Agent runtime with tool calling and state management
@mariozechner/clanker-coding-agent Interactive coding agent CLI
@mariozechner/clanker-tui Terminal UI library with differential rendering
@mariozechner/clanker-web-ui Web components for AI chat interfaces

Contributing

See CONTRIBUTING.md for contribution guidelines and AGENTS.md for project-specific rules (for both humans and agents).

Install

Public (binary)

Use this for users on production machines where you don't want to expose source.

curl -fsSL https://raw.githubusercontent.com/harivansh-afk/clanker-agent/main/public-install.sh | bash

Install everything and keep it always-on (recommended for new devices):

curl -fsSL https://raw.githubusercontent.com/harivansh-afk/clanker-agent/main/public-install.sh | bash -s -- --daemon --start

This installer:

  • Downloads the latest release (or falls back to source when needed),
  • writes ~/.local/bin/clanker launcher,
  • populates ~/.clanker/agent/settings.json with package list,
  • installs packages (if npm is available),
  • and can install a user service for clanker daemon so it stays alive (systemd on Linux, launchd on macOS).

Preinstalled package sources are:

["npm:@e9n/clanker-channels", "npm:clanker-teams"]

If npm is available, it also installs these packages during install.

If no release asset is found, the installer falls back to source.

CLANKER_FALLBACK_TO_SOURCE=0 \
  curl -fsSL https://raw.githubusercontent.com/harivansh-afk/clanker-agent/main/public-install.sh | bash -s -- --daemon --start

public-install.sh options:

curl -fsSL https://raw.githubusercontent.com/harivansh-afk/clanker-agent/main/public-install.sh | bash -s -- --help

Local (source)

git clone https://github.com/harivansh-afk/clanker-agent.git
cd clanker-agent
./install.sh

Run:

./clanker

Run in background with extensions active:

./clanker daemon

For a user systemd setup, create ~/.config/systemd/user/clanker.service with:

[Unit]
Description=clanker daemon
After=network-online.target

[Service]
Type=simple
Environment=CLANKER_MONO_AGENT_DIR=%h/.clanker/agent
Environment=CLANKER_CODING_AGENT_DIR=%h/.clanker/agent
ExecStart=/absolute/path/to/repo/clanker daemon
Restart=always
RestartSec=5

[Install]
WantedBy=default.target

Then enable:

systemctl --user daemon-reload
systemctl --user enable --now clanker

On macOS, public-install.sh --daemon --start now provisions a per-user launchd agent automatically.

Optional:

npm run build   # build all packages
npm run check   # lint/format/typecheck

Development

npm install          # Install all dependencies
npm run build        # Build all packages
npm run check        # Lint, format, and type check
./test.sh            # Run tests (skips LLM-dependent tests without API keys)
./clanker-test.sh         # Run clanker from sources (must be run from repo root)

Note: npm run check requires npm run build to be run first. The web-ui package uses tsc which needs compiled .d.ts files from dependencies.

License

MIT