claude-code - ✅(Solved) Fix [BUG] Glob and Grep tools missing from tool palette in 2.1.117 (regression) [1 pull requests, 2 comments, 3 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#52004Fetched 2026-04-23 07:39:08
View on GitHub
Comments
2
Participants
3
Timeline
16
Reactions
3
Author
Timeline (top)
labeled ×5cross-referenced ×4commented ×2referenced ×2

Error Message

Error Messages/Logs

Fix Action

Fix / Workaround

  1. Install Claude Code 2.1.117
  2. Open any project with MCP servers configured (reproduced with 10 plugins + multiple MCP servers: Grafana, SonarQube, Atlassian, Bitbucket, etc. — 125 tools total)
  3. Start a new interactive session
  4. Ask: "Are Glob and Grep tools available?"
  5. Observe that only Agent, Bash, Edit, Read, ScheduleWakeup, Skill, ToolSearch, Write are listed — Glob and Grep are absent
  6. Downgrade to 2.1.116 and repeat — Glob and Grep are present

PR fix notes

PR #650: refactor(agents): restrict tools allowlist on research agents

Description (problem / solution / changelog)

Summary

Research subagents like ce-repo-research-analyst and ce-learnings-researcher inherit the full tool surface when dispatched (Write, Edit, full Bash, MCP — everything the parent has) even though they only read files, run greps, and fetch docs. Claude Code's agent frontmatter supports a tools: allowlist that restricts this, replicating the built-in Explore subagent's read-only profile on custom personas.

This PR applies that restriction to 7 read-only research agents, adds Context7 as a preferred documentation source on the two framework researchers, and ships a workaround for an upstream Claude Code bug that silently drops Grep/Glob from custom subagent schemas.

Final tools: allowlists

Agenttools
ce-best-practices-researcherRead, Grep, Glob, Bash, WebFetch, WebSearch, mcp__context7__*
ce-framework-docs-researcherRead, Grep, Glob, Bash, WebFetch, WebSearch, mcp__context7__*
ce-git-history-analyzerRead, Grep, Glob, Bash
ce-issue-intelligence-analystRead, Grep, Glob, Bash, mcp__github__*
ce-learnings-researcherRead, Grep, Glob, Bash
ce-repo-research-analystRead, Grep, Glob, Bash
ce-spec-flow-analyzerRead, Grep, Glob, Bash

Each list was derived by reading the agent body for explicit tool mentions and implicit shell needs: bundle show for framework docs, gh for issue intelligence, ast-grep for repo research, git log for history. ce-session-historian is left out pending verification that its skill-dispatch path isn't clipped by a narrow allowlist.

Context7 for documentation researchers

ce-best-practices-researcher and ce-framework-docs-researcher now prefer Context7 for library documentation, in this order:

  1. mcp__context7__* tools when the Context7 MCP server is connected.
  2. The ctx7 CLI via Bash when the CLI is installed on the host (command -v ctx7 check before invoking).
  3. WebFetch / WebSearch as the final fallback.

Structured docs from Context7 are higher-signal than ad-hoc web scraping, and the CLI path means users without the MCP server still get the upgrade.

Grep/Glob workaround

Upstream Claude Code bug anthropics/claude-code#52004 strips Grep and Glob from custom plugin subagent schemas. Built-in subagents (Explore, Plan) are unaffected, but custom plugin subagents never receive these tools at runtime, regardless of whether tools: is set, omitted, or what it lists.

Without a workaround this would have left ce-learnings-researcher and ce-spec-flow-analyzer non-functional — both rely on content search as the first step of their documented methodology. Bash was added to their allowlists and their bodies now document an rg / find fallback for content search. Grep, Glob stay in tools: so they'll register automatically when the upstream fix ships. Tracked locally in #652 so we re-tighten when Claude Code resolves #52004.

Scope boundary: Claude Code only

The parser at src/parsers/claude.ts silently drops agent tools: during conversion, so the 36 agents that already set this field today aren't honored on opencode, codex, copilot, droid, gemini, kiro, or pi. This PR inherits that pre-existing limitation. Native Claude Code installs read the agent files directly via .claude-plugin/marketplace.json, so the restriction takes effect there immediately.

Flowing tools: through to other targets is a separate follow-up. Each harness has a different tool vocabulary and gating mechanism — opencode uses per-agent permission: maps, codex has only sandbox_mode, copilot collapses grep and glob into search, droid uses category or explicit array, kiro has a narrow built-in set, and pi has no canonical subagent spec. Worth doing, separable.


Compound Engineering Claude Code

Changed files

  • plugins/compound-engineering/agents/ce-best-practices-researcher.agent.md (modified, +11/-10)
  • plugins/compound-engineering/agents/ce-framework-docs-researcher.agent.md (modified, +12/-9)
  • plugins/compound-engineering/agents/ce-git-history-analyzer.agent.md (modified, +1/-0)
  • plugins/compound-engineering/agents/ce-issue-intelligence-analyst.agent.md (modified, +4/-1)
  • plugins/compound-engineering/agents/ce-learnings-researcher.agent.md (modified, +3/-0)
  • plugins/compound-engineering/agents/ce-repo-research-analyst.agent.md (modified, +1/-0)
  • plugins/compound-engineering/agents/ce-spec-flow-analyzer.agent.md (modified, +3/-0)

Code Example

2026-04-22T14:26:48.559Z [DEBUG] Tool search disabled for model 'claude-haiku-4-5-20251001': model does not support tool_reference blocks. This feature is only available on Claude Sonnet 4+, Opus 4+, and newer models.
2026-04-22T14:26:48.559Z [DEBUG] Dynamic tool loading: 0/125 deferred tools included

---

/tmp % ~/.local/share/claude/versions/2.1.117
╭─── Claude Code v2.1.117 ───────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                    │ Tips for getting started                                          │
Welcome back Adrian!Run /init to create a CLAUDE.md file with instructions for Claude│                                                    │ ───────────────────────────────────────────────────────────────── │
│                       ▐▛███▜▌                      │ Recent activity                                                   │
│                      ▝▜█████▛▘                     │ No recent activity                                                │
│                        ▘▘ ▝▝                       │                                                                   │
│                                                    │                                                                   │
Opus 4.7 (1M context) · Claude Team · My Org.      /private/tmp                    │                                                                   │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Are Grep and Glob tools available?

No. Looking at my available tools:

  - Top-level tools: Agent, Bash, Edit, Read, ScheduleWakeup, Skill, ToolSearch, Write

---

/tmp % ~/.local/share/claude/versions/2.1.116
╭─── Claude Code v2.1.116 ───────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                    │ Tips for getting started                                          │
Welcome back Adrian!Run /init to create a CLAUDE.md file with instructions for Claude│                                                    │ ───────────────────────────────────────────────────────────────── │
│                       ▐▛███▜▌                      │ Recent activity                                                   │
│                      ▝▜█████▛▘                     │ No recent activity                                                │
│                        ▘▘ ▝▝                       │                                                                   │
│                                                    │                                                                   │
Opus 4.7 (1M context) · Claude Team · My Org.      /private/tmp                    │                                                                   │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Are Grep and Glob tools available?

Yes, both are available as built-in tools in this session (listed at the top of my tool set). Grep searches file contents via ripgrep, and Glob matches file paths by pattern.
RAW_BUFFERClick to expand / collapse

Preflight Checklist

  • I have searched existing issues and this hasn't been reported yet
  • This is a single bug report (please file separate reports for different bugs)
  • I am using the latest version of Claude Code

What's Wrong?

Glob and Grep are absent from the tool palette in 2.1.117. The session receives only: Agent, Bash, Edit, Read, ScheduleWakeup, Skill, ToolSearch, Write.

Debug log confirms the cause: dynamic tool loading is active (0/125 deferred tools included), and Glob/Grep are present in neither the base tools nor the 125 deferred tools.

Verified A/B on the same machine, same project:

  • 2.1.116: Glob and Grep present in top-level tool list ✓
  • 2.1.117: Glob and Grep absent ✗

This is a clean regression — no settings changes between versions. All settings files checked (user global, project, project local): no allowedTools filter, no dynamic tools config.

What Should Happen?

Glob and Grep should be present in the top-level tool palette in all sessions, as they were in 2.1.116 and earlier.

Error Messages/Logs

2026-04-22T14:26:48.559Z [DEBUG] Tool search disabled for model 'claude-haiku-4-5-20251001': model does not support tool_reference blocks. This feature is only available on Claude Sonnet 4+, Opus 4+, and newer models.
2026-04-22T14:26:48.559Z [DEBUG] Dynamic tool loading: 0/125 deferred tools included

Note: (Haiku side-call for session title generation — included to identify tool_reference as the dynamic-loading mechanism; not the failing call)

Steps to Reproduce

  1. Install Claude Code 2.1.117
  2. Open any project with MCP servers configured (reproduced with 10 plugins + multiple MCP servers: Grafana, SonarQube, Atlassian, Bitbucket, etc. — 125 tools total)
  3. Start a new interactive session
  4. Ask: "Are Glob and Grep tools available?"
  5. Observe that only Agent, Bash, Edit, Read, ScheduleWakeup, Skill, ToolSearch, Write are listed — Glob and Grep are absent
  6. Downgrade to 2.1.116 and repeat — Glob and Grep are present

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

2.1.116

Claude Code Version

2.1.117

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

IntelliJ IDEA terminal

Additional Information

ToolSearch cannot locate Glob or Grep among the deferred tools either — they are absent from the registry entirely, not merely deferred:

  • ToolSearch select:Glob,Grep → "No matching deferred tools found"
  • Keyword search for file-search tools returns WebSearch, Confluence, etc. — no Glob or Grep

Install method: native installer (binary at ~/.local/share/claude/versions/, symlinked from ~/.local/bin/claude)

Reproduced in both IntelliJ IDEA terminal and iTerm2 (macOS) .

Platform field: selected "Anthropic API" as closest — no "Claude Code" option in the dropdown. Actual auth is Claude Team subscription (shown as Claude Team · My Org. below)

Additional note: The A/B terminal output in this section was run from /tmp with no project context and no MCP servers loaded — a minimal environment. This means the regression is not specific to projects with large MCP configurations (125 tools). It reproduces with zero MCP servers, which should make it straightforward to reproduce in isolation.

 /tmp % ~/.local/share/claude/versions/2.1.117
╭─── Claude Code v2.1.117 ───────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                    │ Tips for getting started                                          │
│                Welcome back Adrian!                │ Run /init to create a CLAUDE.md file with instructions for Claude │
│                                                    │ ───────────────────────────────────────────────────────────────── │
│                       ▐▛███▜▌                      │ Recent activity                                                   │
│                      ▝▜█████▛▘                     │ No recent activity                                                │
│                        ▘▘ ▝▝                       │                                                                   │
│                                                    │                                                                   │
│ Opus 4.7 (1M context) · Claude Team · My Org.      │                                                                   │
│                    /private/tmp                    │                                                                   │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

❯ Are Grep and Glob tools available?

⏺ No. Looking at my available tools:

  - Top-level tools: Agent, Bash, Edit, Read, ScheduleWakeup, Skill, ToolSearch, Write
/tmp % ~/.local/share/claude/versions/2.1.116
╭─── Claude Code v2.1.116 ───────────────────────────────────────────────────────────────────────────────────────────────╮
│                                                    │ Tips for getting started                                          │
│                Welcome back Adrian!                │ Run /init to create a CLAUDE.md file with instructions for Claude │
│                                                    │ ───────────────────────────────────────────────────────────────── │
│                       ▐▛███▜▌                      │ Recent activity                                                   │
│                      ▝▜█████▛▘                     │ No recent activity                                                │
│                        ▘▘ ▝▝                       │                                                                   │
│                                                    │                                                                   │
│ Opus 4.7 (1M context) · Claude Team · My Org.      │                                                                   │
│                    /private/tmp                    │                                                                   │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

❯ Are Grep and Glob tools available?

⏺ Yes, both are available as built-in tools in this session (listed at the top of my tool set). Grep searches file contents via ripgrep, and Glob matches file paths by pattern.

extent analysis

TL;DR

The most likely fix is to downgrade to version 2.1.116, as Glob and Grep tools are present in this version.

Guidance

  • Verify that the issue is not specific to the project or environment by reproducing it in a minimal setup, as described in the "Additional note" section.
  • Check the debug log to confirm that dynamic tool loading is active and Glob/Grep are not included in the base tools or deferred tools.
  • Consider reporting the issue to the developers, as this is a regression that worked in a previous version (2.1.116).
  • If possible, test the same version (2.1.117) on a different platform or environment to rule out any platform-specific issues.

Example

No code snippet is provided, as the issue is related to the absence of specific tools in the tool palette.

Notes

The issue seems to be specific to version 2.1.117, and downgrading to 2.1.116 resolves the issue. However, this may not be a permanent solution, and the root cause of the regression should be investigated.

Recommendation

Apply workaround: Downgrade to version 2.1.116, as it is the last known working version where Glob and Grep tools are available. This is a temporary solution until the issue is fixed in a future version.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

claude-code - ✅(Solved) Fix [BUG] Glob and Grep tools missing from tool palette in 2.1.117 (regression) [1 pull requests, 2 comments, 3 participants]