Skip to content

Releases: chriswritescode-dev/opencode-forge

v0.6.2

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 16 Jul 04:23

feat: add provider limit abort handling for loop runtime

  • Provider limit detection: new module detects rate-limit and abort signals during prompt execution, enabling graceful loop termination.
  • Abort signal propagation: integrated provider limit checks into the runtime prompt flow with watchdog monitoring.
  • Fallback permission patching: subagent sessions in loop worktrees now receive the loop ruleset via a fallback path when session.created events are filtered by instance directory.

feat: add fallback loop permission patching for filtered session.created events

  • Refactored single-event hook into LoopPermissionPatcher with ensurePatched fallback called from chat.message and tool.execute.before hooks.

v0.6.0

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 12 Jul 02:15

fix: harden remote loop launches against stale branches, clock skew, and silent errors

  • Pinned-branch validation: a SHA-pinned launch now fails loudly when a same-named branch already exists at a different tip, instead of silently running old code.
  • Clock-skew normalization: configure re-stamps workspaceCreatedAt and forgeLoop.pendingAttachStartedAt with the server's clock so the attach grace window is not expired by skew between the launching machine and the attach server.
  • Surface loop launch errors: launchTuiLoop returns { error } with the underlying cause instead of null; the remote launcher cleans up the sync ref on failure.
  • Terminal-name conflict attach: a fresh TUI launch colliding with a terminal loop row no longer silently skips; it routes through attachLoopToSession so the conflict surfaces as a toast + workspace removal.

v0.5.7

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 11 Jul 17:31
simplify goal-loop executor binding; add sandbox container placeholder

v0.5.6

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 11 Jul 03:07

feat: add execute-goal command for running goals in forge loops

Adds a new execute-goal tool that creates an isolated Forge worktree and warps the current session into it with an active watchdog. The goal is implemented directly without a plan/approval phase, and the loop drives automated audits until all findings are resolved.

refactor: extract sendPromptWithRetryRecovery to deduplicate retry patterns in runtime

Consolidates 6+ instances of inline retry-with-fallback patterns into a shared sendPromptWithRetryRecovery and buildPromptRetryFn. Net -75 lines.

v0.5.5

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 08 Jul 14:28

fix: honor per-loop sandboxEnabled=false in workspace adapter

The remote launch config flag (remotes[].sandbox=false) was only consulted at session-attach time, but forge-adapter.create() unconditionally provisioned a sandbox container when a sandbox manager existed. On remotes without Docker, this caused "Docker is not available" before the per-loop flag was ever read.

Guard sandbox provisioning on info.extra.forgeLoop.sandboxEnabled !== false so an explicit opt-out skips the Docker start entirely.

Upgrade: update the forge plugin on any remote server that runs sandboxed loops (or that is launched into by a client with remote targets).

v0.5.4

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 07 Jul 20:50

What's Changed

Full Changelog: v0.5.3...v0.5.4

v0.5.3

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 04 Jul 15:37

feat: add project.current SDK support and improve TUI multi-checkout project discovery

v0.5.2

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 04 Jul 14:53
e76371e

feat: add remote loop launch support via TUI (#64)

v0.5.1

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 30 Jun 15:04

What's Changed

  • worktreeOpencodeConfig — per-loop inline opencode config written to worktree opencode.jsonc (git-excluded, removed before teardown commit to keep loop history clean). MCP servers declared here run as host processes from the worktree directory.

Full changelog

  • feat: add worktreeOpencodeConfig for per-loop opencode config (#63)
  • chore: bump version to 0.5.1

v0.5.0

Choose a tag to compare

@chriswritescode-dev chriswritescode-dev released this 28 Jun 19:08

Highlights

Parallel feature groups — A new launch-group workflow takes a broad source of work (a PRD, a set of GitHub/Linear issues, a milestone) and splits it into implementation-coherent features. Each feature is planned by the architect-auto agent and runs as its own loop, scheduled with a per-group concurrency cap. Track and control runs with group-status and group-cancel.

Redesigned dashboard — Rebuilt on SolidJS with a live activity feed and session observability. Loop and section views were restructured, and live transcripts now stream over SSE with per-session filtering.

Also new

  • new-session loop modeexecute-plan can launch a plan in a fresh standalone session instead of a git worktree loop.
  • Post-action phase — new loop state for review/fixup after the main work completes.
  • Custom sandbox mounts — configurable bind-mounts for sandbox containers; tool-output directory now exposed to loop/audit sessions.
  • Model variant defaults — model/variant selection driven by config priority.
  • forge install CLI — installs bundled prompts and feature modules, kept in sync via content-hash manifests.

Fixes & internals

  • Deeply-nested sub-agent sessions resolve correctly; TUI loop follower no longer auto-follows child sessions.
  • Sandbox reliability: sandbox.enabled honored on attach, Docker socket reachable and pnpm store writable as non-root.
  • Test suite migrated from bun:test to Vitest.
  • README split into focused reference docs (configuration.md, sandbox.md, tools.md).