Claude Code 内置工具
Glob、Grep、Read、Write、Edit 和 Bash。
Claude Code 内置工具 是 CoddyKit 上的免费 Claude Architect 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Claude Architect 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Claude Architect 课程共包含 4 节课。
本课时的部分内容尚未翻译,以英文显示。
Why Built-in Tools Matter
Claude Code ships with a small, powerful set of built-in tools that let the model explore and edit a codebase directly: Glob, Grep, Read, Write, Edit, and Bash.
As an architect, your job is not just to know what each tool does, but to know which tool to reach for at each step of an investigation. Picking the right one keeps context lean and the agent fast.
Glob— find files by name patternGrep— search file contentsRead— load one fileWrite— create a fileEdit— make a precise changeBash— run a shell command
Glob — Find Files by Pattern
Glob locates files by their name or path pattern, not their contents. It is the fastest way to answer "where are the X files?"
Patterns use standard glob syntax: ** matches any depth of directories, * matches within a segment. Reach for Glob before reading anything — it narrows a huge tree down to the handful of files worth opening.
# Find every React test file anywhere in the repo
Glob: **/*.test.tsx
# Find all config files at the project root
Glob: *.config.jsGrep — Search File Contents
Grep searches inside files for a string or regular expression. Use it to find where a function is defined, where a symbol is used, or which files mention a feature flag.
The key distinction to memorize for the exam: Glob matches file names; Grep matches file contents. Confusing the two is a classic misroute.
# Where is processRefund defined or called?
Grep: processRefund
# Find all TODO comments under src/
Grep: TODO (path: src/)Read — Load a File
Read loads the contents of a single file into context so the model can reason about it. After Glob or Grep has narrowed the candidates, Read brings the relevant file in.
Be deliberate: every file you Read consumes context window. Reading dozens of large files dilutes attention and triggers the lost-in-the-middle effect, where the model attends to the start and end of context far more than the middle. Read only what the investigation actually needs.
Write — Create a File
Write creates a new file (or fully overwrites one) with the content you supply. Use it when you are producing something from scratch — a new module, a config file, a test suite.
For changing an existing file, prefer Edit: it makes a surgical, reviewable change instead of rewriting the whole file. Reserve Write for genuinely new content or a deliberate full replacement.
Edit — Precise, Unique-Match Changes
Edit performs a precise change by matching a unique string in the file and replacing it. Because the match must be unique, it makes edits safe and reviewable — you change exactly the intended line, nothing else.
The exam-critical rule: if the target string is not unique, the Edit fails. The correct fallback is to Read the file for more surrounding context to build a unique match, or to Write the file if a full replacement is cleaner. Do not blindly retry the same ambiguous edit.
# Edit needs a unique old_string. If 'count = 0' appears 5 times,
# the edit is ambiguous and fails. Fix it by including unique context:
Edit old_string:
def reset_cart(self):
count = 0
Edit new_string:
def reset_cart(self):
count = 0
self.dirty = TrueBash — Run Shell Commands
Bash runs shell commands: build, test, lint, git, package managers, or any CLI. It is the escape hatch for everything the dedicated tools don't cover.
Idiomatic practice: use the dedicated tool when one exists. Prefer Grep over bash grep, Read over cat, Glob over find — they return structured, model-friendly results. Save Bash for genuine shell work like running the test suite or a git operation.
# Good use of Bash: actually running things
Bash: npm test -- --runInBand
Bash: git status --short
# Avoid: Bash: grep -r processRefund . ← use Grep instead
# Avoid: Bash: cat src/cart.ts ← use Read insteadThe Incremental Investigation Pattern
Built-in tools shine when chained into an incremental investigation rather than dumping the whole codebase into context. The canonical loop:
Grepthe entry points to find where behavior originatesReadthose files to understand themGrepfor usages of the symbols you foundReadthe consumers that matter
Each step narrows the search before the next widens it. This keeps context focused and avoids the lost-in-the-middle problem.
# Trace a bug in refund handling:
Grep: processRefund # 1. find entry points
Read: src/payments/refund.ts # 2. understand it
Grep: processRefund( # 3. find callers
Read: src/api/checkout.ts # 4. read the consumerTools Map to a Developer-Productivity Workflow
In the certification's Developer Productivity scenario, built-in tools are the foundation of fast, focused work. The architect's instinct is to scope each tool to the step and avoid loading more than needed.
When the repo's built-in tools aren't enough — you need a database schema, an issue tracker, or an external catalog — you reach for MCP servers, which extend Claude Code with additional tools and read-only resources. Built-in tools cover the local filesystem; MCP covers everything outside it.
Least Privilege: Scope Tools to the Role
When you put these tools behind a subagent or skill, grant only what the role needs. A read-only review agent should get Glob, Grep, and Read — not Write, Edit, or Bash.
This matters because 4–5 tools per agent is optimal; piling on 18+ degrades selection reliability. Restricting the toolset both enforces safety and sharpens the model's choices. In a skill, the allowed-tools frontmatter field does exactly this.
---
name: code-reviewer
description: Read-only reviewer that inspects but never modifies code
allowed-tools: Glob, Grep, Read
argument-hint: <path-to-review>
---
Review the files under $ARGUMENTS for correctness issues only.Built-in Tools in CI/CD
These same tools power non-interactive runs in a pipeline. With -p / --print Claude Code runs headless, and --output-format json makes results parseable for the CI step that follows.
For pre-merge review, run in an isolated session — a fresh review is less biased than self-reviewing in the same session that generated the code. And use a blocking, synchronous call here: the Batch API (50% cheaper, up to 24h, no latency SLA) is for overnight audits, never for time-sensitive pre-merge checks.
# Headless review in a pipeline, machine-readable output
claude -p "Review the staged diff for correctness bugs only" \
--output-format json \
--allowedTools Glob,Grep,ReadQuick Check: Choosing the Right Tool
You are tracing where a function named process_refund is called across an unfamiliar TypeScript repo, then you need to change one specific call site whose surrounding code is identical to three others. Which approach is correct?
Recap: Built-in Tools
Key takeaways for the exam:
- Glob = find files by pattern; Grep = search file contents — never confuse the two.
- Read loads a file; read only what you need to avoid lost-in-the-middle.
- Write creates/overwrites; Edit makes a precise unique-match change. If the match isn't unique, Read for more context (or Write a full replacement) — don't blindly retry.
- Bash is for real shell work; prefer dedicated tools over
grep/cat/find. - Chain them incrementally: Grep entry points → Read → Grep usages → Read consumers.
- Apply least privilege (4–5 tools, read-only for reviewers); in CI use
-p+--output-format jsonin an isolated session, and never the Batch API for blocking checks.
常见问题解答
「Claude Code 内置工具」课时是免费的吗?
是的 — 「Claude Code 内置工具」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Claude Architect 课程的其余内容,请升级到 CoddyKit PRO。 Claude Architect 课程共包含 4 节课。
「Claude Code 内置工具」这节课中我会学到什么?
Glob、Grep、Read、Write、Edit 和 Bash。 你通过在浏览器中直接运行的动手代码来练习 Claude Architect,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Claude Architect 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Claude Architect 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「Claude Code 内置工具」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Claude Architect 课中编写并运行代码吗?
能。每节 Claude Architect 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 每个代理应配置多少个工具
- tool_choice:auto / any / forced
- Claude Code 内置工具
- 渐进式调查模式