Skip to content

Releases: turfbuild/turf

Turf v0.7.0

Turf v0.7.0 Pre-release
Pre-release

Choose a tag to compare

@release-sh release-sh released this 14 Jul 16:26
v0.7.0
f595d2f

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 turf CLI carries GitHub-native build provenance and an SBOM
    (gh attestation verify turf --repo turfbuild/turf);
  • the turf-mcp-server binary 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 unified checksums.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-telemetry flag to opt out of telemetry.
  • New --worktree for git-isolated HCL authoring.
  • up / destroy now 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 up with 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/turf

Note: 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

Turf v0.6.0 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 12 Jul 23:27
dd10a9a

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

Turf v0.5.0 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 12 Jul 03:14
a5b1319

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-server as a non-root user.

Turf CLI

  • up and destroy now render through the lean TUI, and the duplicated trigger message is fixed.
  • Plan approval is pre-approved, smoothing non-interactive --yes runs.

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

Turf v0.4.1 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 11 Jul 21:35
08312e3

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 --trace flags (file paths, flushed on clean shutdown), plus a live --pprof-addr pprof endpoint. Off by default — no effect on normal runs.
  • Execution tracing. runtime/trace regions 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

Turf v0.4.0 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 08 Jul 20:57
08312e3

Alpha / pre-release evaluation software.

Highlights

  • Explicit provider configuration is now required. Providers must be configured with provider_configure before planning; the previous silent auto-configuration has been removed. Provider setup is now explicit and predictable.
  • Planning no longer emits redundant required_providers into synthesized config (config_plan / module_plan).
  • config_init no 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 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 08 Jul 15:48
08312e3

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 native jsonplan marshaller (the
    standard tfplan-v2 shape), replacing Turf's internal RecordMeta side-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 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 07 Jul 07:43
08312e3

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.module pin 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 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 06 Jul 23:31
08312e3

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_show and datasource_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.0 line 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

Turf v0.2.0 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 04 Jul 17:54
08312e3

Alpha / pre-release evaluation software. Interfaces may change between releases.

Server (turf-mcp-server)

  • Turf-native actions — new turf_action / turf_confirm for imperative, codified, and discoverable action invocation.
  • Skillsread_skill_file argument renamed slugskill_name; clearer docs noting action_trigger fields are bare tokens.
  • Demo/demo topic 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 Pre-release
Pre-release

Choose a tag to compare

@EronWright EronWright released this 02 Jul 18:06
e577e79

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 turf CLI 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.
  • 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.