Skip to content

Chameleon

v4.4.0 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai-coding-assistant archetype ast-analysis claude-code claude-plugin code-conventions
+12 more
code-review code-style developer-tools javascript linter mcp mcp-server prompt-engineering python ruby rails typescript

Summary

AI summary

Added per-call response_format control to three read tools, pagination for search_codebase, and a wire‑size regression guard.

Changes in this release

Feature Medium

Adds per-call `response_format` option (concise|detailed) to three read tools.

Adds per-call `response_format` option (concise|detailed) to three read tools.

Source: llm_adapter@2026-07-17

Confidence: high

Feature Medium

Adds `offset` pagination to `search_codebase` with deterministic ranking and `next_offset`.

Adds `offset` pagination to `search_codebase` with deterministic ranking and `next_offset`.

Source: llm_adapter@2026-07-17

Confidence: high

Performance Low

Introduces wire-size regression guard limiting fixture responses, help outputs, and tool descriptions to ~1.5× measured size.

Introduces wire-size regression guard limiting fixture responses, help outputs, and tool descriptions to ~1.5× measured size.

Source: llm_adapter@2026-07-17

Confidence: high

Bugfix Medium

Fixes unknown `response_format` echo truncation to 40 chars and sanitizes note.

Fixes unknown `response_format` echo truncation to 40 chars and sanitizes note.

Source: llm_adapter@2026-07-17

Confidence: high

Full changelog

Added

  • Per-call response_format ("concise" | "detailed", default detailed) on the
    three fattest read tools, per the tool-writing guidance's response-format
    pattern: search_codebase concise keeps name/file/line per row (-62%
    measured), describe_codebase concise keeps each archetype's
    name/size/witness + top 5 god symbols (-54%), and
    get_duplication_candidates concise names candidates without reading any
    body excerpt (-61%). An unknown value falls back to detailed with a note --
    a typo never fails a read.
  • search_codebase pagination: offset pages the same deterministic ranking
    (clamped to COMPREHEND_SEARCH_MAX_OFFSET, default 500); while more matches
    remain the response carries next_offset and the truncation note names the
    exact re-call. A past-the-end page returns empty results, found stays true,
    and the note says the ranking ended (never the false "No symbol matched").
  • Wire-size regression guard (tests/unit/test_wire_budgets.py): pinned
    ceilings (~1.5x measured) on fixture responses, the help outputs, every
    tool description vs the 2KB truncation ceiling, and the total tools/list
    schema -- an accidental pretty-print or payload-duplication regression now
    fails CI instead of silently re-inflating every session.

Fixed

  • The unknown-response_format echo is bounded to 40 chars and sanitized
    before reflection into the response note (a model-supplied megastring or
    tag-boundary token no longer reaches the payload verbatim), and that note
    survives alongside the empty-result guidance instead of being overwritten.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track Chameleon

Get notified when new releases ship.

Sign up free

About Chameleon

All releases →

Related context

Earlier breaking changes

  • v3.0.0 MCP surface folded from 48 tools to 19; remaining 32 operator tools become actions on three dispatchers.

Beta — feedback welcome: [email protected]