Skip to content

v1.18.0 — HCL/Terraform support + tree-sitter 0.25

Choose a tag to compare

@CSCSoftware CSCSoftware released this 25 Apr 15:03
· 69 commits to master since this release

Highlights

  • HCL/Terraform language support (#9) — AiDex now indexes .tf, .tfvars, and .hcl files. 12 supported languages total.
  • tree-sitter 0.21 → 0.25 (#8) — All 10 grammar packages bumped to latest. Better parser accuracy across all languages.

Big thanks to @vnz (Vincent Leraitre) for both contributions! 🎉

What's New

HCL/Terraform indexing

resource "aws_instance" "web" { ... }
variable "region" { ... }
module "vpc" { ... }

Becomes searchable as:

Construct Indexed As
Blocks (resource, module, variable, output, data, locals, provider) Types with dotted names — e.g. resource.aws_instance.web
Function calls Methods
Attributes Properties
Block labels (incl. keyword-like names: default, root, type, data) Items (searchable)
  • Terraform projects auto-discovered via *.tf and .terraform.lock.hcl markers in aidex_global_init
  • .terraform/ directory automatically excluded
  • Uses @tree-sitter-grammars/tree-sitter-hcl

tree-sitter modernization

  • Bumped tree-sitter from ^0.21.0 to ^0.25.0
  • All 10 grammar packages updated to latest compatible versions
  • Refactored: replaced per-language switch blocks with a centralized GRAMMAR_MAP — adding a new language is now a one-line change
  • File watcher in the viewer now uses parser.isSupported() instead of a hardcoded extension regex — auto-tracks every supported language

Upgrade Notes

  • Node.js 22+ recommended. tree-sitter 0.25 requires native compilation; Node 24 not yet compatible. .node-version pins to 22.
  • tree-sitter-c-sharp pinned to ^0.23.1: 0.23.5+ switched to ESM-only with top-level await, breaking CJS imports.
  • No breaking changes to the MCP API. Existing indexes will be transparently re-indexed on next aidex_init / aidex_session.

Validation

Cross-language regression tested against 6 sample projects (C, C++, Go, Java, PHP, Ruby): no regressions, C++ parser now detects 6 additional types and 3 additional methods thanks to the newer grammar.

Install / Upgrade

npm install -g aidex-mcp@1.18.0

Or for an existing install:

npm update -g aidex-mcp

After upgrade, restart your MCP client (Claude Code, Claude Desktop, Cursor, etc.) so the new version loads.


Full Changelog: v1.17.1...v1.18.0