• v0.10.4 Stable

    dave released this 2026-04-21 12:01:43 +00:00 | 257 commits to master since this release

    What's Changed

    Focus: Developer experience

    Features

    • Scaffold project toml includes all configurable settings with comments
    • Web ui settings page with form based project toml editor

    Bug Fixes

    • Web ui work item detail panel returns 404 for crdt only stories

    Other Changes

    • Gitignore script/local-release (local-only build script)
    • Fix gateway bot Claude Code cwd so MCP tools are discovered
    • Fix gateway bot proxying freeform messages as commands
    • Gateway bot: proxy commands to active project instead of reading local state
    • Deleting ancient handoff file

    Full diff: https://code.crashlabs.io/crashlabs/huskies/compare/v0.10.3...v0.10.4

    Downloads
  • v0.10.2 Stable

    dave released this 2026-04-15 19:21:46 +00:00 | 279 commits to master since this release

    What's Changed

    Focus: Bot commands, developer experience, multi-model agents

    Features

    • Gateway ui bot configuration page
    • Gateway ui project management add and remove projects
    • Gateway ui connected agents dashboard
    • Gateway ui cross project pipeline status view
    • Expose agent remaining turns and budget via mcp tool
    • Edit criterion mcp tool to update acceptance criteria text
    • Remove criterion mcp tool to delete an acceptance criterion
    • Diff bot command shows git diff from main branch to worktree branch
    • Freeze command to hold a story at its current stage without advancing
    • Bot configuration page

    Bug Fixes

    • Merge agent work should check if story is already done before attempting merge
    • Depends bot command broken after removing filesystem story files
    • Unblock command reads story files from filesystem instead of crdt
    • Overview command reads story files from filesystem instead of crdt
    • Show command reads story files from filesystem instead of crdt

    Other Changes

    • fix: remove duplicate / route in gateway that causes panic on startup
    • chore: feed CONTEXT and STACK specs to all agents, update STACK with source map
    • fix: rewrite coder agent prompts — run tests before commit, remove stale instructions
    • docs: add project architecture section to README for agent context

    Full diff: https://code.crashlabs.io/crashlabs/huskies/compare/v0.10.1...v0.10.2

    Downloads
  • v0.10.1 Stable

    dave released this 2026-04-14 16:03:59 +00:00 | 301 commits to master since this release

    What's Changed

    Focus: Multi-model agents, bot commands, MCP tools

    Features

    • Accept spike state machine transition skips merge and goes directly to done
    • Multi project gateway that proxies mcp calls to per project docker containers
    • Matrix bot can run on the gateway to manage multiple projects from one chat
    • Make merge agent work return results like run tests instead of polling
    • Build agent join mechanism agents register with the gateway via token
    • Gateway web ui shell with project switcher

    Bug Fixes

    • Agent permission prompts flood matrix chat instead of being auto denied
    • Stale filesystem shadows in 1 backlog cause auto assign to promote archived stories
    • Mcp tools matching mcp huskies allowlist still trigger permission prompts

    Refactors

    • Remove all filesystem fallback paths crdt is the only source of truth

    Other Changes

    • Removing example code
    • chore: switch mergemaster to opus and add cargo fmt guidance
    • chore: switch mergemaster to opus and add cargo fmt guidance
    • fix: simplify boolean in validate_working_dir to satisfy clippy nonminimal_bool
    • fix: cargo fmt the merge_workspace validation code
    • fix: allow MCP tools to access merge_workspace so mergemaster can fix conflicts
    • fix: remove filesystem fallback from scan_stage_items to unblock 557 merge
    • Noting the existence of chat transports in README
    • fix: suppress Vite chunk size warning that clutters test output
    • fix: set git default branch to master in Dockerfile to suppress hint spam
    • fix: capture test output with background pipe draining instead of Stdio::inherit
    • fix: add --all to cargo fmt in script/test and autoformat codebase
    • feat: add get_version MCP tool returning version and build hash
    • chore: log version on startup and gitignore build_hash
    • docs: add deployment modes to README — standard, headless, and gateway
    • fix: isolate frontend node_modules in Docker volume to prevent cross-platform conflicts
    • fix: add Read, Glob, Grep to agent settings.json allowlist
    • fix: dropdown hover gap and z-index so menu is clickable on desktop and mobile
    • fix: simplify nav with Start dropdown and move Get in touch to footer
    • fix: wrap nav links on mobile to prevent horizontal overflow

    Full diff: https://code.crashlabs.io/crashlabs/huskies/compare/v0.10.0...v0.10.1

    Downloads
  • v0.10.0 Stable

    dave released this 2026-04-12 23:31:35 +00:00 | 332 commits to master since this release

    What's Changed

    Focus: Bot commands, developer experience, multi-model agents

    Features

    • Exclude git worktrees from loc command output
    • Reduce timer tick interval to 1 second and suppress idle tick logging
    • Bot command to show overall test coverage
    • Discord chat transport
    • Per file test coverage report with improvement targets
    • Build agent mode with crdt based work claiming
    • Cryptographic node auth for distributed mesh
    • Story dependencies in pipeline auto assign
    • Documentation site for huskies dev
    • Display story dependencies in web ui and chat commands
    • Web ui shows project name in browser tab with huskies favicon
    • Sqlite shadow write for pipeline state via sqlx
    • Crdt state layer backed by sqlite
    • Watcher fires on crdt state transitions instead of filesystem events
    • Remove filesystem pipeline state and store story content in database
    • Mcp tool to run project test suite
    • Web ui shows project name in browser tab with huskies favicon
    • Remove duplicate pty debug log lines
    • Update story front matter mcp schema should accept non string values lists bools numbers
    • Signedop wire codec for crdt sync between nodes
    • Websocket sync endpoint that broadcasts local signedops to connected peers
    • Apply inbound signedops with causal order queue for partition recovery
    • Configurable rendezvous peer in project toml with outbound crdt sync connect
    • Migrate chat commands from filesystem lookup to crdt db
    • Startup reconcile pass that detects drift between crdt pipeline items and filesystem shadows
    • Delete story should do a full cleanup crdt op db row filesystem shadow worktree pending timers
    • Add a debug mcp tool to dump the in memory crdt state for inspection
    • Update story description should create the description section if it doesn t exist instead of erroring
    • Remove filesystem shadow fallback paths from lifecycle rs finish the migration to crdt only
    • Apply and persist should log when persist tx send fails instead of silently dropping the op
    • Mergemaster should detect no commits ahead of master and fail loudly instead of exiting silently
    • Typed pipeline state machine in rust foundation replaces stringly typed crdt views with strict enums subsumes 436
    • Migrate status command pipeline view from filesystem to pipeline state read all typed
    • Remove rate limit hard block bot notifications from matrix chat
    • Crdt based peer discovery via node presence entries
    • Eliminate filesystem markdown shadows entirely crdt db is the only story store
    • Mcp tool to read agent session logs from disk not just live stream
    • Remove startup reconcile pass and drift notification no filesystem to reconcile against
    • Crdt based done archived sweep to replace filesystem based watcher sweep
    • Backlog command for chat and web ui shows only backlog items
    • Resume failed coder agents with resume instead of starting fresh sessions
    • Add run build and run lint mcp tools backed by script build and script lint
    • Run tests bot command accepts optional story number to run tests in a worktree
    • Split status command into status pipeline info and logs agent output subcommands

    Bug Fixes

    • Scaffold missing rate limit notifications and timezone in default project toml
    • Scaffold does not copy agent definitions from project toml to new projects
    • Timer slash command not wired up in web ui
    • Story dependency chain not firing due to front matter format issues
    • Status traffic light dots use unsupported html colouring switch to emoji
    • Hard rate limit without reset at never auto schedules retry
    • Dependency promotion loop missing stories with met deps never move from backlog to current
    • Stale merge job lock prevents new merges after agent dies
    • Depends on pointing at an archived story is silently treated as deps met surprising users
    • Create story silently drops description and any other unknown parameters with no error
    • Stale mergemaster advance moves done stories back to merge zombie merge loop
    • Chat status number and mcp tool status still read from filesystem broken after 530
    • Delete item sets stage to deleted string instead of writing a crdt tombstone
    • Done archived sweep never fires because stage done projection uses utc now instead of real merged at timestamp
    • Crdt event bridge still writes filesystem shadow files after 530 eliminated filesystem state
    • Get agent output mcp tool returns no agent for exited agents instead of reading session logs from disk
    • Stale stage transition notifications for stories that skipped stages
    • Get agent output mcp tool returns fetch failed for running agents

    Refactors

    • Split chat tsx into smaller components
    • Deduplicate lifecycle rs move functions into a shared parameterised helper
    • Split agents pool lifecycle rs into submodules
    • Split agent definitions from project toml into agents toml
    • Introduce script test script lint script build and migrate agent prompts off tech specific commands
    • Unify timer tick watchdog and watcher sweep into a single 1 second tick loop
    • Add doc comments to all undocumented source files and generate source map in readme
    • Rename bot test command to run tests to avoid eating chat messages
    • Rename living spec standalone to huskies in package json and cargo lock

    Other Changes

    • fix: shrink hero husky logo from 320px to 160px for mobile
    • fix: switch tokio-tungstenite from native-tls to rustls to remove OpenSSL dependency
    • chore: add doc comment guidance to coder agent system prompts
    • fix: add log rotation to docker-compose to prevent disk fill
    • fix: add ETXTBSY retry to run_coverage_gate
    • fix: update run_tests tests for Stdio::inherit and bump tool count to 60
    • fix: add rustfmt to Docker image for formatting checks
    • fix: remove stale tests that hang or assert dead behaviour
    • fix: collapse nested if-let blocks to satisfy clippy collapsible_if lint
    • fix: use Stdio::inherit for run_tests to prevent pipe deadlock
    • fix: kill stale cargo processes before running acceptance gates
    • fix: make run_tests block server-side instead of requiring agent polling
    • fix: increase run_tests MCP timeout to 20 minutes to match acceptance gates
    • fix: server-side 20s blocking in get_test_result to prevent agent poll spam
    • fix: rewrite .huskies/README.md for CRDT-only world
    • fix: update scaffold settings template to match locked-down agent permissions
    • fix: async run_tests to prevent zombie cargo processes blocking gates
    • fix: log git hash on build success and startup to verify which commit is running
    • fix: switch agent permission mode from bypassPermissions to allowFullAutoEdit
    • fix: remove cargo test/clippy/npm from agent Bash permissions
    • fix: mergemaster prompt says merge_agent_work blocks — no polling needed
    • fix: merge_agent_work blocks until complete instead of requiring polling
    • fix: agent prompts say trust the story description instead of always investigating
    • fix: remove startup CRDT stage sync — it fights the done→archived sweep
    • fix: restore CRDT-based triage command (535 fix was reverted by merge conflict)
    • fix: collapse consecutive str::replace calls to satisfy clippy
    • fix: thread-local CRDT and content store for test isolation
    • fix: agent prompts use run_tests MCP tool instead of running script/test via Bash
    • debug: add PTY spawn diagnostics for Session: None investigation
    • fix: skip rate limit timer for short blocks (≤10 min) — CLI handles internally
    • fix: CrdtNode derive macro defaults missing fields instead of panicking
    • debug: add logging to sync_crdt_stages_from_db to diagnose stale backlog
    • fix: startup migration syncs stale CRDT stages from pipeline_items DB
    • fix: read_all_items must use deduplicated index, not raw CRDT entries
    • fix: validate_story_dirs reads filesystem shadows instead of global CRDT singleton (bug 525)
    • fix: move_item must not overwrite advanced CRDT stage when missing_ok=true (bug 524)
    • Trying out sonnet for merges
    • fmt
    • fix: commit uncommitted native JSON type changes on master
    • feat(521): evict_item primitive + purge_story MCP tool
    • wip(501): timer cancellation infrastructure (parallel session WIP + main.rs wiring)
    • sketch(520): add ExecutionMachine to the statig sketch for parity with bare
    • docs: file 12 stories from 2026-04-09 architecture session + handoff doc
    • sketch(520): typed pipeline state machine — bare and statig versions
    • fix(511): replay CRDT ops by rowid ASC instead of seq ASC
    • merge(478): WebSocket CRDT sync layer (manual squash from feature/story-478)
    • fix(502): don't demote merge-stage stories on mergemaster attach
    • chore: ignore pipeline.db backup files in .huskies/.gitignore
    • Noting script/ commands for Docker rebuild and restart.
    • Archiving the last of the pipeline story files
    • Ignoring the huskies pipeline datastore
    • Formatting
    • fix: comment out premature db::crdt references that broke build
    • scope script/test to huskies crate only
    • ignore kleppmann_trace test — 10+ min, 12GB RAM
    • bump gate timeout from 600s to 1200s
    • Adding the bft-json-crdt crate source
    • Styling it up
    • Adding source and release links
    • Ignoring some thinking
    • Fixing missing configs
    • Fixed up README a bit
    • Coding agents text change.
    • More husky
    • Husky metaphor in action.
    • Updated styles
    • Fixed repo location in release script
    • Fixed website title

    Full diff: https://code.crashlabs.io/crashlabs/huskies/compare/v0.9.0...v0.10.0

    Downloads
  • v0.9.0 eb2b9f435a

    v0.9.0 Stable

    dave released this 2026-04-03 16:19:01 +00:00 | 594 commits to master since this release

    What's Changed

    • Renamed "Storkit" to "Huskies"

    Other Changes

    • Fixed website title

    Full diff: https://code.crashlabs.io/crashlabs/huskies/compare/v0.9.0...v0.9.0

    Downloads
  • v0.8.8 0995c55a82

    v0.8.8 Stable

    dave released this 2026-04-03 10:20:56 +00:00 | 627 commits to master since this release

    What's Changed

    Focus: Bot commands, developer experience

    Features

    • Matrix bot ignores messages addressed to other bots in ambient mode

    Bug Fixes

    • Store json created at project root instead of inside storkit
    • Matrix history json and timers json missing from scaffold storkit gitignore
    • Strip bot mention fails on element markdown mention pill format

    Other Changes

    • fix: strip emoji between bot mention and command text
    • chore: remove debug log from verification handler

    Full diff: https://code.crashlabs.io/dave/storkit/compare/v0.8.7...v0.8.8

    Downloads
  • v0.8.7 13e3bd00f1

    v0.8.7 Stable

    dave released this 2026-04-02 13:14:30 +00:00 | 647 commits to master since this release

    What's Changed

    Other Changes

    • debug: log all room messages in verification handler to diagnose in-room verification

    Full diff: https://code.crashlabs.io/dave/storkit/compare/v0.8.6...v0.8.7

    Downloads
  • v0.8.6 358f177584

    v0.8.6 Stable

    dave released this 2026-04-02 12:44:57 +00:00 | 649 commits to master since this release

    What's Changed

    Focus: Multi-model agents, developer experience, bot commands

    Features

    • Deduplicate work item display in web ui story panel

    Bug Fixes

    • Claude code pty crashes with fatal runtime error on agent restart
    • Matrix bot ignores in room verification requests from element

    Full diff: https://code.crashlabs.io/dave/storkit/compare/v0.8.5...v0.8.6

    Downloads
  • v0.8.5 488b798275

    v0.8.5 Stable

    dave released this 2026-04-02 10:23:01 +00:00 | 659 commits to master since this release

    What's Changed

    Focus: Developer experience, bot commands

    Bug Fixes

    • Oauth callback url ignores port cli flag
    • Web ui silently swallows chat errors including oauth login link

    Other Changes

    • fix: update /help test to expect botCommand dispatch, fix PTY fd leak in claude_code.rs (#451, #452)
    • fix: join PTY reader thread before returning to prevent stale fd leak (#453)
    • Using init: true in docker

    Full diff: https://code.crashlabs.io/dave/storkit/compare/v0.8.4...v0.8.5

    Downloads
  • v0.8.4 7427865e46

    v0.8.4 Stable

    dave released this 2026-03-31 10:36:49 +00:00 | 693 commits to master since this release

    What's Changed

    Focus: Developer experience, bot commands

    Features

    • Oauth login button in web ui
    • Send oauth login link via chat when credentials are missing

    Bug Fixes

    • Element tab completion display name breaks bot command matching

    Other Changes

    • Adding more slash commands
    • Allowing stat in claude permissions
    • Updating sha2

    Full diff: https://code.crashlabs.io/dave/storkit/compare/v0.8.3...v0.8.4

    Downloads