Skip to content

Releases: mostlydev/clawdapus

v0.4.3

28 Mar 00:22
361be4c

Choose a tag to compare

Changelog

  • 361be4c Merge pull request #89 from mostlydev/feat/cllama-model-policy-enforcement
  • 5628e74 docs(update): restore hourly claw update guidance
  • 98d264b Merge origin/master into feat/cllama-model-policy-enforcement
  • 0f79c54 test(spike): use local cllama and native picoclaw
  • 26c754d feat(cllama): add xai seed support and spike coverage
  • 4a030f2 feat(cllama): compile and document model policy
  • e019d0a docs(agents-md): note goreleaser and claw update already exist
  • 5ab003d chore(cli): reduce update check interval to 1h during active development
  • b30d4fc feat(cli): add claw update subcommand
  • c7d30da feat(cli): daily update check + README update instructions (#88)
  • d6e730b feat(cli): add daily update check and README update instructions
  • 96d9319 docs(readme): document x-claw placeholder variables
  • d2bf8d9 fix(pod): support REPO_ROOT in surface placeholders
  • 3e25809 chore: drop accidental build/ binaries from remote
  • e61e047 chore: ignore build/ output directory
  • 5052140 docs: formalize cross-runner memory portability
  • 32f0502 docs: formalize cross-runner memory portability

v0.4.2

27 Mar 20:14

Choose a tag to compare

Changelog

  • dee4354 docs(adr): update ADR-017 with Dockerfile-label inspection section
  • fb41b82 feat(history): add portable history importer and update trading-desk example feeds
  • dfc7d98 feat(inspect): support descriptor discovery from Dockerfile labels
  • 902646e fix(openclaw): harden mention regex and workspace permissions
  • 86a6cc4 fix(claw-api): shorten injected fleet alerts window
  • 670e81d docs(plan): add persistent portable memory design
  • 7acbe75 fix(claw-wall): return background context on quiet turns
  • 5fe42a9 fix(runtime): persist agent memory and harden openclaw
  • 56d33a0 docs(adr): ADR-018 session history and memory retention — two surfaces, two owners
  • 07fea5f test(spike): assert session history per agent and across runtime teardowns
  • e3461a4 chore(cllama): update submodule — session history error logging and close
  • 4895db7 docs(agents): add session history gotcha bullet; update cllama submodule
  • 182b1db docs(cllama): add reported_cost_usd to session history schema
  • d93e592 chore(cllama): update submodule — README session history docs
  • 4c05cee docs(cllama): document session history mount and CLAW_SESSION_HISTORY_DIR
  • e8e864c fix(compose_up): restore ensureInfraImages doc comment placement
  • 9883380 feat(compose_up): create persistent session history dir for cllama
  • f10e517 fix(compose): assert env var value in session history test
  • 60f7e01 feat(compose): mount session history into cllama service
  • c7e0241 chore(cllama): update submodule — session history recorder, proxy wiring, env var

v0.4.1

26 Mar 12:08

Choose a tag to compare

What's new

All agent runtimes now enforce private thinking + explicit send_message delivery — agent reasoning never reaches Discord automatically.

Communication tools contract

  • Hermes: HERMES_TOOL_ONLY_MODE injected by driver; runtime patches suppress text auto-routing; HERMES_TOOL_PROGRESS_MODE=off silences tool echo messages
  • OpenClaw: already enforced natively (no change needed; removed a spurious config key that caused startup failure)
  • NullClaw, MicroClaw, NanoClaw, NanoBot, PicoClaw: discord-responder.sh now passes a send_message tool to the LLM; only posts to Discord when the tool is called

All stub runtime AGENTS.md files updated to document the tool-only contract.

Spike test

TestSpikeRollCall now always rebuilds stub base images (which embed discord-responder.sh) so script changes are picked up on every run. 7/7 runtimes pass end-to-end: LLM calls send_message → Discord message posted, cllama telemetry confirmed.

v0.4.0

26 Mar 02:59

Choose a tag to compare

Hermes runtime — tool-only mode

Hermes agents now communicate exclusively via explicit send_message tool calls when Discord handles are configured. Text responses are suppressed at the gateway layer.

What changed

dockerfiles/hermes-base/ — real Hermes runtime build (replaces the rollcall stub)

  • patch-hermes-runtime.py applies compatibility fixes at image build time:
    • Disables members/voice_states Discord intents
    • Makes slash-command sync non-blocking with a 20s timeout
    • Suppresses reply-mention pings (replied_user=False) to prevent mention loops in multi-agent pods
    • HERMES_TOOL_ONLY_MODE: suppresses auto-routing of bare text responses
    • tool_choice=required on first LLM turn forces the model to call a tool; reverts to auto after the first tool use

claw up auto-builds hermes:latest — same ensureInfraImages pattern as cllama. No manual pre-build needed.

Hermes driverHERMES_TOOL_ONLY_MODE=1 injected automatically when Discord handles are present. DISCORD_ALLOW_BOTS and HERMES_TOOL_PROGRESS_MODE added to env passthrough.

Set HERMES_TOOL_PROGRESS_MODE=off in hm-roll to silence tool-call echo messages in Discord.

CLAWDAPUS.md — adds a ## Communication Tools section with private-thinking policy whenever handles are configured.

cllama submodule → v0.2.3 — unpriced request tracking, reported cost passthrough, timezone context injection.

clawdash — surfaces unpriced_requests from the cllama cost API with an amber warning in the fleet page.

cllama context metadatatimezone field resolved from service TZ env var (falls back to UTC).

v0.3.6

25 Mar 02:15
d421e56

Choose a tag to compare

What's new

  • v2ProviderState.Source: Adds source field to v2ProviderState in compose_up.go — previously source: runtime was silently stripped on every claw up re-run. Now survives round-trips.
  • Warning on seed overwrite: mergeProviderSeeds logs a warning when a cllama-env seed provider overwrites a runtime-added provider.
  • mergeProviderSeeds: Writes .claw-auth/providers.json v2 with key state preservation; runtime keys survive claw up.
  • loadOrGenerateUIToken: Persists CLLAMA_UI_TOKEN to .claw-auth/ui-token.
  • Alert fields: alert_webhooks and alert_mentions parsed from pod-level x-claw.
  • cllama submodule: Updated to v0.2.2.

v0.3.5

22 Mar 21:34

Choose a tag to compare

What's New

ADR-017: Pod Defaults, Service Self-Description & Unified CLAWDAPUS.md

The big one. claw.describe service descriptors, pod-level defaults with spread expansion, feed registry, and unified per-agent CLAWDAPUS.md generation. See docs/decisions/017-pod-defaults-and-service-self-description.md.

Master Claw API Access

  • Master claw services get CLAW_API_TOKEN injected automatically for direct API calls
  • Feed auth flows through bearer tokens in feeds.json

claw compose Passthrough

  • New claw compose <subcommand> [args...] passes through to docker compose -f compose.generated.yml
  • Lifecycle commands (ps, logs, health, compose) now refuse to run if claw-pod.yml is newer than compose.generated.yml — run claw up to regenerate

Hermes Driver

  • Default SOUL.md overrides runner identity with contracted agent identity
  • Agent names titlecased in SOUL.md
  • CLAW_API_URL and CLAW_API_TOKEN added to env passthrough for master claw

Audit & Alerts

  • Feed fetch events surfaced with feed_name and feed_url fields
  • Configurable alert thresholds for error rate, cost, feeds, and interventions (CLAW_ALERT_* env vars)
  • /fleet/alerts endpoint wired in claw-api

Site

  • Documentation site at clawdapus.dev with full guide, reference, manifesto, and changelog
  • OG social cards, favicons, and complete meta tags

v0.3.4

22 Mar 14:58

Choose a tag to compare

What's Changed

Features

  • cllama feed injection (ADR-013 Milestone 2) — The cllama proxy now supports runtime feed injection into LLM requests. Feeds defined in agent context manifests are fetched, cached with TTL, and injected as system message content before forwarding to the upstream provider. Both OpenAI (messages[]) and Anthropic (top-level system) formats are supported.

    New cllama internals:

    • internal/feeds/manifest.go — feed manifest parsing from agent context
    • internal/feeds/fetcher.go — HTTP fetcher with TTL-based caching
    • internal/feeds/inject.go — system message injection for OpenAI and Anthropic formats
    • internal/agentctx/ — extended with ContextDir and service auth loading
    • internal/proxy/handler.go — feed injection wired into proxy pipeline via WithFeeds option
    • internal/logging/logger.go — cost tracking improvements
  • Updated AGENTS.md with cross-driver operational gotchas discovered during v0.3.1–v0.3.3 hardening:

    • Cross-driver fix patterns (all 7 drivers share common issues)
    • 0o777 runtime directory permissions for container uid portability
    • mention_only requirement for Discord in all drivers
    • Explicit HOME env var in all drivers
    • Multi-arch cllama build command
    • Healthcheck passthrough and Service.Compose parser behavior

Infrastructure

  • Multi-arch cllama imageghcr.io/mostlydev/cllama:v0.3.4 published for both linux/amd64 and linux/arm64.

Test Coverage

  • Full test suite for all new feed injection modules (fetcher, inject, manifest)
  • Proxy handler tests covering feed injection in both OpenAI and Anthropic paths
  • Agent context tests for service auth loading
  • All existing tests continue to pass

v0.3.3

21 Mar 18:19

Choose a tag to compare

What's Changed

Features

  • Auto-resolve base images for all drivers — Every driver now implements BaseImageProvider. When claw build encounters a missing FROM image, it auto-builds it from the driver's embedded Dockerfile recipe. No more manual docker build or docker pull for base images before claw build works. Each recipe follows the upstream's preferred packaging path:

    • hermes: Go binary from GitHub release tarball
    • nanobot: Python wheel from PyPI via pip
    • picoclaw: Alias for upstream docker.io/sipeed/picoclaw:latest
    • nullclaw: Alias for upstream ghcr.io/nullclaw/nullclaw:latest
    • microclaw: Node.js package from npm
    • nanoclaw: Claude Agent SDK orchestrator wrapper (source build)
    • openclaw: Already existed — unchanged
  • Hermes first-class scaffold supportclaw init and claw agent add now accept hermes as a claw type. Scaffold validation uses a shared scaffoldClawTypes list instead of duplicated strings. OpenRouter provider config fix for Hermes driver.

Documentation

  • README fully updated for v0.3.2+ — status badge, phase table (added Phase 4.9: peer handles, mention safety, healthcheck passthrough), examples table (added rollcall), documentation index (added ADRs 011–016), Fleet Visibility section updated from Planned to Design.
  • Plan doc: docs/plans/2026-03-21-base-image-provider-all-drivers.md — per-driver Dockerfile recipes and rationale.
  • Plan doc: docs/plans/2026-03-20-hermes-first-class-support.md — Hermes scaffold and config integration.

Driver Matrix

All 7 drivers now support:

  • BaseImageProvider auto-build (new)
  • claw init / claw agent add scaffolding (hermes added)
  • Explicit HOME in container env
  • mention_only for Discord channels
  • 0o777 runtime directory permissions
  • Peer handle emission in CLAWDAPUS.md
  • User-defined healthcheck passthrough from claw-pod.yml

Full Changelog

  • c5bfcfb cmd: add hermes support and fix openrouter config
  • 08ecf5b docs: update README for v0.3.2
  • 35520d6 feat: auto-resolve base images for all drivers

v0.3.2

21 Mar 11:40

Choose a tag to compare

What's Changed

  • docs: Added step-by-step Discord bot setup guide to the quickstart — covers creating the application, getting the bot token, enabling Message Content Intent, inviting with correct permissions, and finding bot/guild IDs.
  • infra: ghcr.io/mostlydev/cllama:latest is now multi-arch (linux/amd64 + linux/arm64).

v0.3.1

20 Mar 19:03

Choose a tag to compare

What's Changed

Bug Fixes

  • All drivers: Runtime directories now use 0o777 so container users can write regardless of uid mismatch (#70)
  • All drivers: Set mention_only (or equivalent) for Discord channels to prevent response loops in multi-agent pods (#66)
  • All drivers: Explicitly set HOME in container env to match config mount paths (#65)
  • Peer Handles: GenerateClawdapusMD now emits a Peer Handles section so agents can discover sibling IDs (#67)
  • picoclaw: HOME mismatch, missing mention_only, and peer handles in CLAWDAPUS.md

Features

  • Healthcheck passthrough: User-defined healthcheck: in claw-pod.yml now takes precedence over driver defaults (#69)
  • Fleet governance: ADRs 012–016 for fleet governance vertical slice and canonical social identity
  • Spike tests: Hardened rollcall identity and proxy checks; validated forced cllama proxy routing for all 7 drivers

Closed Issues

  • #65 picoclaw container HOME mismatch
  • #66 picoclaw mention_only not set
  • #67 CLAWDAPUS.md missing peer handles
  • #69 Healthcheck passthrough from claw-pod.yml
  • #70 Runtime workspace permissions