github lukilabs/craft-agents-oss v0.8.10

8 hours ago

v0.8.10 — Messaging Gateway, Opus 4.6 Restored & Extended-Context Fix

Features

  • Messaging Gateway — Telegram & WhatsApp — New workspace-scoped gateway lets you bind external chats (Telegram DMs, WhatsApp contacts) to Craft Agent sessions. Inbound messages drive the agent, and agent output is rendered back into the chat. Three response modes: progress (default — one evolving bubble), streaming (live edits), final_only (silent until complete). Telegram supports photo/document/voice/video/audio attachments (20 MB cap). WhatsApp runs in a subprocess worker built on Baileys, keeping its global state isolated from the main process. Includes a new Settings → Messaging V2 page with per-platform tiles, pairing dialogs, QR/code connect UI, and status atoms.
  • Opus 4.6 restored as a selectable model — Claude Opus 4.6 is back in the model picker alongside 4.7. Users on Tier 1–3 who hit "Invalid Request" on large projects with 4.7 can fall back to 4.6 without editing configs manually.
  • New xhigh thinking effort level — Adds an intermediate thinking effort between high and max.
  • Pi-agent stderr surfaced on LLM connection-test failures — Failed LLM connection tests now expose the underlying pi-agent stderr so misconfigurations (missing binary, auth issues) are debuggable without digging through logs.

Improvements

  • Thinking level enum derived from a single tupleThinkingLevel and its Zod schema now derive from one source-of-truth tuple, preventing drift between the type and the runtime validator.
  • Messaging UI polish — Toned-down dialog hint styling and primary connect buttons; renamed the WhatsApp "Forget Device" menu item to "Disconnect" for clarity.
  • WhatsApp self-chat polish — Self-chat replies are prefixed with 🤖 so the bot's messages are visually distinct from your own; LID (long-ID) contacts are now supported; build provenance is embedded so we can verify the bundled worker at runtime.
  • Docker build robustness — Raised Node heap to 4 GB for the webui Vite build to avoid OOM on slim CI images.
  • WhatsApp worker CI verification — The WhatsApp worker bundle is now built in CI and verified in release artifacts so broken bundles can't ship.

Bug Fixes

  • Extended Context (1M) is now opt-inenable1MContext previously defaulted to true, causing 400 "Invalid Request" errors on large projects for direct-API users on Tier 1–3 (the context-1m-2025-08-07 beta requires Tier 4+). New installs default to off; users opt in via AI Settings → Performance → Extended Context (1M). Existing persisted values are preserved. The invalid_request error path now specializes on 1M-context hints and shows a "1M Context Not Available" message with a Settings action instead of the misleading "remove attachments" fallback. (Fixes #567)
  • spawn_session now expands ~ in workingDirectory — Previously the tilde was passed through literally to the child SDK, producing a misleading "cli.js not found" error. (Fixes #575)
  • set_session_labels now accepts valued labels (id::value) — The resolver was comparing each input as an atomic ID, so "priority::3" or "parent-task::TASK-123" always fell through to "unknown label" even when the base label was configured with a valueType. Valued inputs are now parsed before matching; values are also checked against the declared type (number, date, string), and the rejection message explains the exact reason per-entry. (Fixes #566)
  • Google default models reordered — Connection test now picks a stable default model instead of one that may be rate-limited or deprecated.
  • Pi-agent codex-mini refusal recoverypi-agent-server now recovers gracefully when codex-mini refuses a request on ChatGPT-auth Codex, instead of leaving the session in a broken state.
  • Annotations: follow-up island close deferred past enter-animation grace — Fixes a race where the follow-up island closed before its enter animation completed, causing visual jank.
  • Opus 4.6 restore wire format — Opus 4.6 is now pushed as a ModelDefinition object (not a bare string) so the connection-list consumers type-check correctly.

Breaking Changes

  • None.

Don't miss a new craft-agents-oss release

NewReleases is sending notifications on new releases.