Releases: turfbuild/turf
Release list
Turf v0.7.0
Pre-release evaluation software — expect rough edges, and please don't redistribute the binaries.
Highlights
Verifiable, signed releases
Every artifact in this release is cryptographically signed and recorded in the public
Sigstore transparency log:
- the
turfCLI carries GitHub-native build provenance and an SBOM
(gh attestation verify turf --repo turfbuild/turf); - the
turf-mcp-serverbinary and the new container image are cosign-signed with build
provenance, a CycloneDX SBOM, and an OpenVEX disposition — verifiable without source access; - the release ships per-component SBOMs plus an assembly bill-of-materials tying them together,
and a unifiedchecksums.txt.
See Verify your download below.
Container image
turf-mcp-server is now published as a signed, multi-arch image:
docker pull ghcr.io/turfbuild/turf-mcp-server:v0.7.0 # also :latest
CLI
- New
--no-telemetryflag to opt out of telemetry. - New
--worktreefor git-isolated HCL authoring. up/destroynow align with Terraform — pass-C <dir>instead of a positional path.- Branded welcome banner in the lean TUI.
Fixes
- Fixed a crash when driving
turf upwith Google Gemini models (boolean-schema handling in the
agent runtime). - Continuous CVE scanning with published dispositions; cleared reachable standard-library advisories.
Verify your download
ID='^https://github.com/turfbuild/turf-mcp-server/'
ISS=https://token.actions.githubusercontent.com
# CLI — provenance + SBOM
gh attestation verify turf --repo turfbuild/turf
# Server binary — cosign (bundle ships on this release)
cosign verify-blob-attestation --type slsaprovenance1 \
--bundle turf-mcp-server-<os>_<arch>.provenance.sigstore.json \
--certificate-identity-regexp "$ID" --certificate-oidc-issuer "$ISS" \
turf-mcp-server-<os>_<arch>
# Container image
cosign verify ghcr.io/turfbuild/turf-mcp-server:v0.7.0 \
--certificate-identity-regexp "$ID" --certificate-oidc-issuer "$ISS"checksums.txt is the no-tooling fallback.
Install
brew install turfbuild/tap/turfNote: the released macOS CLI is built without voice capture; text chat and all MCP tooling are
unaffected. (A local make build keeps voice.)
Turf v0.6.0
Alpha / pre-release evaluation software — expect rough edges.
Changes since v0.5.0
This is a maintenance release. The Turf CLI now lives in its own public repository
(github.com/turfbuild/turf, MPL-2.0), and the server's internals were reorganized.
No user-facing behavior changed; both binaries are rebuilt from the consolidated
source.
Install
brew install turfbuild/tap/turf
Archives are provided for macOS (arm64/amd64) and Linux (arm64/amd64). The turf
CLI is the open MPL-2.0 reference client; turf-mcp-server ships under the
Pre-Release Evaluation License bundled in each archive.
Turf v0.5.0
Alpha / pre-release evaluation software — expect rough edges.
Changes since v0.4.1
Server
- Module dependency resolution now tracks references at declared-output granularity, so a change to one module output no longer over-triggers replans of unrelated dependents.
- The Docker image runs
turf-mcp-serveras a non-root user.
Turf CLI
upanddestroynow render through the lean TUI, and the duplicated trigger message is fixed.- Plan approval is pre-approved, smoothing non-interactive
--yesruns.
Install
brew install turfbuild/tap/turf
Archives are provided for macOS (arm64/amd64) and Linux (arm64/amd64). The server is symbol-stripped and obfuscated; the turf CLI is the open MPL-2.0 reference client.
Turf v0.4.1
Alpha / pre-release evaluation software. A maintenance release focused on developer tooling and reproducible builds.
MCP server (turf-mcp-server)
- Opt-in profiling. New
--cpu-profile,--mem-profile,--goroutine-profile, and--traceflags (file paths, flushed on clean shutdown), plus a live--pprof-addrpprof endpoint. Off by default — no effect on normal runs. - Execution tracing.
runtime/traceregions annotated across tool calls, engine operations, and module-registry install/per-module fetch, for diagnosing planning latency and provider-RPC concurrency.
Turf CLI (turf)
- The embedded
docker-agent(cagent) fork is now vendored as a git submodule for reproducible builds.
No changes to the tool API or infrastructure behavior in this release.
Install: brew install turfbuild/tap/turf · Platforms: macOS (arm64/amd64) and Linux (arm64/amd64). The server binary is obfuscated; the turf CLI is the open-source (MPL-2.0) reference client.
Turf v0.4.0
Alpha / pre-release evaluation software.
Highlights
- Explicit provider configuration is now required. Providers must be configured with
provider_configurebefore planning; the previous silent auto-configuration has been removed. Provider setup is now explicit and predictable. - Planning no longer emits redundant
required_providersinto synthesized config (config_plan/module_plan). config_initno longer leaks provider alias/version meta-arguments into the generated config.- Skills and demo journeys updated to configure every required provider (including the kind provider) before planning.
Turf CLI
- Failed tool-call lines now lead with the request target for clearer diagnostics.
- Batched tool calls render in their emission order.
Archives bundle the turf-mcp-server and the turf CLI plus LICENSE/NOTICE/README for macOS (arm64/amd64) and Linux (arm64/amd64). Install via Homebrew: brew install turfbuild/tap/turf.
Turf v0.3.0
Turf v0.3.0 — alpha / pre-release evaluation software.
Turf is a drop-in replacement for Terraform with agentic superpowers, exposed to AI
agents as an infrastructure-management MCP server built on OpenTofu providers.
Highlights
- Plans now render in OpenTofu's standard JSON plan format. The plan
representation is produced via OpenTofu's nativejsonplanmarshaller (the
standardtfplan-v2 shape), replacing Turf's internalRecordMetaside-table
and the separate sensitive-paths sidecar. Per-change facts — provider, planned
values, private state, deferrals, and sensitivity marks — now ride OpenTofu's
native change representation, keeping Turf closer to Terraform semantics.
Fixes
- Output sensitivity is now carried into the plan's output-change
representation, so sensitive outputs are marked correctly in the rendered plan. - Provider routing now selects a running provider by fully-qualified name and
alias rather than version, fixing misrouting when multiple provider versions or
aliased configurations are in play. - Locals now thread module-input dependencies through during graph walking,
fixing dependency resolution for locals that reference module inputs.
Internal
- Repinned the OpenTofu fork to
v1.12.3-turf.2. - Added e2e guards for action-trigger persistence and create-before-destroy
computed cross-references.
Install
brew install turfbuild/tap/turf
Archives bundle the obfuscated turf-mcp-server and the open-source turf CLI for
macOS (arm64/amd64) and Linux (arm64/amd64). This is alpha software for evaluation.
Turf v0.2.2
Turf v0.2.2 — alpha / pre-release evaluation software. Provided for testing and feedback; not for production use.
A patch release that reworks config synthesis to emit HCL-JSON, fixes nested provider-config parsing, and rounds out the CLI with local-model support and a leaner headless/TUI experience.
Server (turf-mcp-server)
- Config synthesis now emits
.tf.json. Synthesis serializes to HCL-JSON via the standard library instead of a hand-rolled HCL writer, retiring the bespoke expression-wrapping logic while preserving${ref}interpolations verbatim. - Nested provider-config blocks are now parsed correctly.
- Helm-on-kind example + demo journey added, with fixes to keep the kind provider's kubeconfig side-file contained and to drop an unstable
path.modulepin that caused churn across phases. - Docs: a CLI-driven end-to-end testing guide for exercising the full agent stack.
CLI (turf)
- Local models are supported via the cagent provider factory.
- Non-interactive runs no longer stall at the plan-approval prompt — the headless path auto-confirms
user_prompt. - Opt-in lean TUI via
--lean. - Provider name/alias styling is now consistent in the plan renderer.
Install
brew install turfbuild/tap/turf
Platforms: macOS (arm64, amd64) and Linux (arm64, amd64). The Linux CLI is built without voice capture (text chat + MCP tooling unaffected).
Turf v0.2.1
Turf v0.2.1 — alpha / pre-release evaluation software. Provided for testing and feedback; not for production use.
A patch release focused on hardening sensitive-value handling in the MCP server and improving the CLI's plan rendering.
Server (turf-mcp-server)
- Sensitive-mark handling. Propagate provider-schema sensitivity marks, persist and re-mark config-derived sensitivity across provider calls, and close a transitive config-flow leak in eval-scope seeding.
- Redaction hardening. Close the remaining pre-merge redaction leaks and add guardrails on
plan_showanddatasource_read, plus an import-id sentinel guard and root-output enforcement. - HCL sensitivity functions pinned under test.
- Skill guidance: warn against batching dependent tool calls in
skill_core.
CLI (turf)
- Surface framework error text on failed tool calls.
- Render nested OpenTofu values as multi-line tofu-plan blocks.
- Teach the persona dispatch discipline for parallel tool calls.
- Always keep warnings and errors in the debug log.
- Build against the cagent
fork/v1.99.0line to fix a silent turn-end.
Install
brew install turfbuild/tap/turf
Platforms: macOS (arm64, amd64) and Linux (arm64, amd64). The Linux CLI is built without voice capture (text chat + MCP tooling unaffected).
Turf v0.2.0
Alpha / pre-release evaluation software. Interfaces may change between releases.
Server (turf-mcp-server)
- Turf-native actions — new
turf_action/turf_confirmfor imperative, codified, and discoverable action invocation. - Skills —
read_skill_fileargument renamedslug→skill_name; clearer docs notingaction_triggerfields are bare tokens. - Demo —
/demotopic is now treated as an intent rather than a literal filename.
CLI (turf)
- Renderer — every tool line now leads with a plain-English title, covering all turf tools; skill tool titles read "… Skill" rather than "… Workflow".
- Agent — description no longer claims "powered by OpenTofu".
Install
brew install turfbuild/tap/turf
Platforms: macOS (arm64/amd64) and Linux (arm64/amd64). The server binary is obfuscated; the turf CLI is the open-source MPL-2.0 reference client. The Linux CLI is built without voice capture (text chat + MCP tooling unaffected).
Turf v0.1.0-alpha.6
Turf v0.1.0-alpha.6 — alpha / pre-release evaluation software.
New in this release
- Linux binaries. Turf now ships for Linux (
amd64+arm64) in addition to
macOS (Apple Silicon + Intel). Install via Homebrew on Linux:
brew install turfbuild/tap/turf.- The Linux
turfCLI is built without CGO, so voice/audio input is inactive on
Linux; text chat and all MCP tooling work fully. Voice capture remains available
in the macOS build.
- The Linux
- Guided demo polish. The interactive demo now previews the generated HCL before
planning and keeps its opening beat tool-free to avoid cold-start prompts. - Third-party notices. NOTICE now attributes the embedded Docker Agent
(Apache-2.0) and records the Linux CGO/voice caveat.
The proprietary turf-mcp-server is obfuscated on every platform; the open-source
turf CLI (MPL-2.0) is not. This is pre-release evaluation software under the
PolyForm Free Trial License 1.0.0 — please don't redistribute the binaries.