Skip to content

Releases: kloogans/disclaw

v0.2.5

15 Mar 14:44
85c7110

Choose a tag to compare

What's New

  • 1M context window support — Use /model opus[1m] to enable the 1M context window for Opus models via the SDK betas parameter
  • Model name in usage footer — Per-turn footer now shows the active model and a (1M) indicator when applicable (e.g. opus 4.6 (1M) · 3 in · 51 out · ctx 0%)
  • Guard against non-Opus 1M/model sonnet[1m] is blocked with a clear error since the API doesn't support it yet
  • Fix process crash on /model — Unhandled promise rejection from setModel on an active session no longer kills the process

v0.2.4

14 Mar 13:39
aa7250b

Choose a tag to compare

Bug Fix

  • Fix session ID being re-pinned on every agent response instead of only once per session

v0.2.3

13 Mar 22:48
c1eba9b

Choose a tag to compare

What's New

/ping command

New /ping slash command shows WebSocket latency - useful for checking if the bot is alive from your phone.

Version logging

Version number is now logged on startup, visible in disclaw logs for easier debugging after updates.

Docs aligned with codebase

  • Fixed usage footer example (now shows ctx % instead of cost)
  • Corrected "Session pinning" description (pins session ID, not response)
  • Completed GETTING-STARTED slash commands table (was missing 7 commands)
  • Fixed settingSources default in option reference
  • Updated session management description for new /handoff behavior
  • Removed "Lightweight" from features (size changes too often to track)

Em dash purge

All em dashes removed from user-facing CLI output and documentation.

v0.2.2

13 Mar 22:17
52ad0e4

Choose a tag to compare

What's New

/handoff now triggers Claude's handoff skill

  • /handoff saves a session summary file to the project directory so a fresh context can pick up the work
  • The old behavior (showing a claude --resume command) moves to /resume-cli

v0.2.1

13 Mar 21:38
f77fb92

Choose a tag to compare

What's New

Thread Session Cleanup

  • Orphaned session cleanup — deleting a forum post now removes its session entry from state.json instead of leaving it forever. Archive and eviction preserve the entry so sessions can be resumed.
  • Startup pruning — stale thread sessions are pruned on startup (keeps newest 50 per project)

Handler Lifecycle Improvements

  • Consolidated cleanup — all thread stop paths (delete, archive, evict, project removal) go through a single stopThreadHandler() with a reason param
  • Async eviction — eviction now properly completes before a new handler is created
  • At-capacity handling — users get a reply ("All handlers are busy. Please try again in a moment.") instead of silent message drops
  • Parallel shutdown — bot shutdown and forum thread joining now run in parallel via Promise.all()

Friendlier CLI

  • Replaced all user-facing "daemon" references with "disclaw"
  • disclaw start now says "disclaw is clawing away" 🦀
  • "Happy clauding!" after project registration

Housekeeping

  • Removed 3 dead functions from state.ts
  • Extracted resolveChannelForHandler() to deduplicate channel resolution logic

v0.2.0

13 Mar 15:21
79ffaba

Choose a tag to compare

What's New

Thread Support

  • Per-thread Claude sessions — create Discord threads in any text channel and each gets its own independent Claude session with separate context
  • Automatic lifecycle management — threads are joined on creation, sessions are cleaned up on archive/delete, with LRU eviction at capacity (max 10 concurrent threads)
  • Parallel conversations — work on multiple tasks simultaneously within the same project without context interference

Forum Channel Support

  • Forum channels — register a forum channel where every post is a thread with its own Claude session, great for organizing tasks, bugs, and features
  • Auto-detection — when using an existing channel ID, the channel type (text/forum) is automatically detected via the Discord API
  • Channel type persistencechannelType field saved to config so the bot knows the channel type across restarts

Fixes

  • Bot connectivity polling — fixed race condition where most bots showed "not yet connected" on startup. Log offsets are now captured before daemon spawn to reliably detect handler_ready events
  • Double-response bug — fixed parent channel responding to thread creation system messages by filtering ThreadStarterMessage types

Docs

  • README and Getting Started updated to cover threads, forum channels, and text vs forum channel choice
  • disclaw list and disclaw status now show channel type

v0.1.2

12 Mar 02:48
a75997e

Choose a tag to compare

Fixes

  • Fix npm bin path validation warning
  • Handle Ctrl+C gracefully in interactive prompts (no more AbortError stack trace)

Improvements

  • Polished CLI experience with colors, spinners, and braille dot art logo
  • All interactive commands (setup, add, token-update) have consistent styled output

v0.1.0

12 Mar 00:58

Choose a tag to compare

disclaw v0.1.0

Initial public release. Remote Claude Code control via Discord.

Highlights

  • One channel per project with a single bot managing them all
  • Live response streaming with thinking previews
  • Permission approval via Discord buttons
  • Slash commands for model switching, undo, diff, sessions, and more
  • Auto-start on login (systemd, macOS LaunchAgent, Windows Task Scheduler)
  • Token/cost tracking and context window usage per turn
  • Image and document support

Install

npm install -g disclaw

See GETTING-STARTED.md for setup instructions.