Releases: EstebanForge/construct-cli
Releases · EstebanForge/construct-cli
The Construct CLI 1.6.4
Full changelog: 1.6.3...1.6.4
The Construct CLI 1.6.3
Full changelog: 1.6.2...1.6.3
The Construct CLI 1.6.2
Full changelog: 1.6.1...1.6.2
The Construct CLI 1.6.1
[1.6.1] - 2026-04-07
Fixed
- Claude Code Update False Failure:
claude updateexits non-zero when already up-to-date, causing topgrade to reportClaude Code: FAILEDin the summary even though no update was needed. Fixed by appending|| trueto the command in both the embeddedtopgrade.tomltemplate and the dynamically generated topgrade config (GenerateTopgradeConfig).
The Construct CLI 1.6.0
[1.6.0] - 2026-04-02
Added
- Crush CLI Agent Support: Added Charmbracelet Crush (
crush) as a first-class agent, installed via npm (@charmland/crush), with agent mount registration, AGENTS.md global rules path wiring, help/docs updates, and post-install/post-update verification checks.
Changed
- Yolo Agent Coverage: Added
crushto yolo flag handling (--yolo) and updated supported-agent documentation comments. - Agent Install Detection: Included
crushin initial agent-installed detection checks used after image build/setup. - Alias UX Messaging: Updated shell alias onboarding copy to include
crushamong example sandboxed commands.
Fixed
- Yolo Supported List Accuracy: Corrected README yolo-supported slug list to match runtime behavior.
- Agent Additions Log Completeness: Updated AGENTS.md entry for Crush to include all touched integration files.
The Construct CLI 1.5.2
[1.5.2] - 2026-03-22
Fixed
- Copilot Image Paste via PTY Wrapper: Replaced the non-functional JS clipboard bridge approach with a Python PTY wrapper that intercepts paste keystrokes at the outer Docker PTY layer, fetches the image from the host clipboard bridge, saves it to
.construct-clipboard/, and injects@pathas typed text into Copilot's input. The JS bridge never fired in headless environments because Copilot's internal clipboard module had no display to read from. - Kitty Keyboard Protocol (KKP) Support: Modern terminals (Ghostty and others using KKP) send Ctrl+V and Cmd+V as CSI-u escape sequences (
\x1b[118;5uand\x1b[118;9u) rather than the legacy\x16control byte. The wrapper now intercepts all three variants via_handle_paste(). - PTY Wrapper PATH Shadowing: The wrapper is installed at
/home/linuxbrew/.linuxbrew/bin/copilot(the Homebrew bin, which takes PATH priority) rather than~/.local/bin/copilotwhich was silently bypassed. The real copilot binary path (~/.npm-global/bin/copilot) is resolved via npm-global candidates and injected at install time so Node's relative module imports resolve correctly. - Clipboard Diagnostic Improvements:
sys clipboard-debugnow shows the resolvedwhich copilotpath, the wrapper version, the_REALbinary path, and the full wrapper log tail for Copilot sessions.
The Construct CLI 1.5.0
[1.5.0] - 2026-03-19
Added
- Generic Environment Variable Passthrough: Added first-class
[sandbox].env_passthroughsupport so users can forward arbitrary host environment variables into Construct without editing compose overrides. - Prefix-Based Env Auto-Pass: Added
[sandbox].env_passthrough_prefixeswith default["CNSTR_"], allowing host vars likeCNSTR_CONTEXT7_API_KEYto appear inside Construct asCONTEXT7_API_KEY. - Default Auth Passthroughs: Fresh configs now include
GITHUB_TOKENandCONTEXT7_API_KEYinsandbox.env_passthroughby default. - Regression Coverage for Env Forwarding: Added tests covering explicit env passthrough,
CNSTR_prefix stripping, precedence rules, fresh-run flag injection, daemon exec env assembly, and template/default-config drift.
Changed
- Env Precedence Rules: Explicit
sandbox.env_passthroughkeys now win over prefix-derivedCNSTR_passthrough when both target the same inside variable name. - Documentation: Updated README and architecture docs to document generic env passthrough, default forwarded keys, and the new
CNSTR_auto-pass behavior.
The Construct CLI 1.4.6
[1.4.6] - 2026-03-18
Fixed
- NPM Global Package Updates:
sys updatenow upgrades npm global packages to their latest versions. Previously, topgrade'snpm update -grespected caret semver ranges and would not cross minor/major version boundaries (e.g.,0.58.4would never reach0.60.0). Disabled topgrade's npm step and replaced it with explicitnpm install -g <pkg>@latestfor each globally installed package.
Added
- Oh My Pi Agent: Added Oh My Pi (
omp) as a supported agent — a fork of Pi Coding Agent with Python/IPython integration, LSP support, and extended tooling. Installed via Bun (@oh-my-pi/pi-coding-agent).
Changed
- Agent Addition/Removal Docs: Updated AGENTS.md with complete checklist for adding or removing agents, covering all files that need changes.
The Construct CLI 1.4.5
[1.4.5] - 2026-03-17
Removed
- Linux Brew Self-Heal: Removed
heal_linux_brew_conflicts()fromupdate-all.shand its associated tests. Thesummarizeformula conflict has been resolved at the image level and this code path was dead.
The Construct CLI 1.4.4
[1.4.4] - 2026-03-16
Fixed
- Pi Image Paste Routing: Pi agent sessions now force the clipboard path through the
clippershim instead of native X11 bindings, avoiding Linux image-paste failures in the container. - Copilot Clipboard Bridge Reliability: Added a direct patch for
@teddyzhu/clipboardso Copilot can fetch clipboard images from the host bridge even when native clipboard access is unavailable in the container. - Headless Clipboard Sync Timing: Tightened the X11 clipboard sync loop and improved argument handling/debug logging in the clipboard bridge scripts to reduce races when agents read pasted images.
- Linux Brew Update Self-Healing:
construct sys updatenow maintains a Linux self-heal list for unsupported Homebrew formulas, currently replacingsummarizewith the supported npm package@steipete/summarizebefore brew upgrades run.
Added
- Clipboard Debug Command: Added
construct sys clipboard-debugto show clipboard bridge logs, patch state, temporary files, and running sync processes for Copilot debugging. - Clipboard Debug Documentation: Added
docs/CLIPBOARD.mdwith patching details, debug workflow, and expected log locations for clipboard bridge issues. - Updater Regression Guards: Added template coverage for Linux brew self-heal entries and to ensure unsupported fallback packages like
summarizeare not shipped as defaultpackages.tomlinstalls.
Changed
- Debug Environment Propagation:
CONSTRUCT_DEBUG=1is now forwarded consistently into run, exec, and daemon flows so clipboard diagnostics work across agent entry paths. - Default Package Template: Added
lftp,tmux, andbtopto the default Homebrew package template. - CLI Help: Updated help output to expose the new
construct sys clipboard-debugcommand.