อ้างอิง Tools
อ้างอิงที่ครบถ้วนสำหรับ tools ที่ Claude Code สามารถใช้ได้ รวมถึงข้อกำหนด permission และพฤติกรรมของแต่ละ tool
Claude Code มีสิทธิ์เข้าถึง tools ในตัวที่ช่วยให้เข้าใจและแก้ไข codebase ชื่อ tool เป็นสตริงที่แน่นอนที่คุณใช้ใน permission rules, subagent tool lists, และ hook matchers
รายการ Tools ทั้งหมด
| Tool | คำอธิบาย | ต้องการ Permission |
|---|---|---|
Agent | สร้าง subagent พร้อม context window ของตัวเองเพื่อจัดการงาน | ไม่ |
AskUserQuestion | ถามคำถามแบบ multiple-choice เพื่อรวบรวมข้อกำหนดหรือชี้แจงความคลุมเครือ | ไม่ |
Bash | รันคำสั่ง shell ใน environment ของคุณ | ใช่ |
CronCreate | กำหนดเวลา prompt ที่เกิดซ้ำหรือครั้งเดียวภายใน session ปัจจุบัน | ไม่ |
CronDelete | ยกเลิกงานที่กำหนดเวลาโดย ID | ไม่ |
CronList | แสดงรายการงานที่กำหนดเวลาทั้งหมดใน session | ไม่ |
Edit | แก้ไขไฟล์เฉพาะอย่างแม่นยำ | ใช่ |
EnterPlanMode | สลับไปยัง plan mode เพื่อออกแบบแนวทางก่อน coding | ไม่ |
EnterWorktree | สร้าง git worktree ที่แยกออกมาและสลับเข้าไป | ไม่ |
ExitPlanMode | นำเสนอแผนเพื่อขออนุมัติและออกจาก plan mode | ใช่ |
ExitWorktree | ออกจาก worktree session และกลับไปยังไดเรกทอรีเดิม | ไม่ |
Glob | ค้นหาไฟล์ตาม pattern matching | ไม่ |
Grep | ค้นหา patterns ในเนื้อหาไฟล์ | ไม่ |
ListMcpResourcesTool | แสดงรายการ resources ที่ expose โดย MCP servers ที่เชื่อมต่อ | ไม่ |
LSP | Code intelligence ผ่าน language servers | ไม่ |
Monitor | รันคำสั่งใน background และป้อน output แต่ละบรรทัดกลับมา | ใช่ |
NotebookEdit | แก้ไข Jupyter notebook cells | ใช่ |
PowerShell | รันคำสั่ง PowerShell โดยตรง | ใช่ |
PushNotification | ส่ง desktop notification และ push ไปยังโทรศัพท์เมื่อ Remote Control เชื่อมต่ออยู่ | ไม่ |
Read | อ่านเนื้อหาของไฟล์ | ไม่ |
ReadMcpResourceTool | อ่าน MCP resource เฉพาะโดย URI | ไม่ |
RemoteTrigger | สร้าง, อัปเดต, รัน, และแสดงรายการ Routines บน claude.ai | ไม่ |
SendMessage | ส่งข้อความไปยัง agent team teammate | ไม่ |
Skill | รัน skill ภายในการสนทนาหลัก | ใช่ |
TaskCreate | สร้างงานใหม่ใน task list | ไม่ |
TaskGet | ดึงรายละเอียดสำหรับงานเฉพาะ | ไม่ |
TaskList | แสดงรายการงานทั้งหมดพร้อมสถานะปัจจุบัน | ไม่ |
TaskStop | หยุดงาน background ที่กำลังรันโดย ID | ไม่ |
TaskUpdate | อัปเดตสถานะ, dependencies, รายละเอียด, หรือลบงาน | ไม่ |
WebFetch | ดึงเนื้อหาจาก URL ที่ระบุ | ใช่ |
WebSearch | ดำเนินการค้นหาเว็บ | ใช่ |
Workflow | รัน dynamic workflow: script ที่ประสานงาน subagents จำนวนมาก | ใช่ |
Write | สร้างหรือเขียนทับไฟล์ | ใช่ |
ตั้งค่า Tools ด้วย Permission Rules และ Hooks
คุณอ้างอิงชื่อ tool โดยตรงเมื่อกำหนด permissions และ configuration อื่นๆ:
- ใน
permissions.allowและpermissions.denyใน settings - ใน
--allowedToolsและ--disallowedToolsCLI flags - ใน subagent's
toolsหรือdisallowedTools - ใน hook's
ifcondition
รูปแบบ rule: ToolName(specifier):
| รูปแบบ Rule | ใช้กับ | รายละเอียด |
|---|---|---|
Bash(npm run *) | Bash, Monitor | Command pattern matching |
Read(~/secrets/**) | Read, Grep, Glob, LSP | Path pattern matching |
Edit(/src/**) | Edit, Write, NotebookEdit | Path pattern matching |
WebFetch(domain:example.com) | WebFetch | Domain matching |
WebSearch | WebSearch | ไม่มี specifier |
พฤติกรรมของ Agent Tool
Agent tool สร้าง subagent ใน context window แยก subagent ทำงานผ่านงานโดยอัตโนมัติ จากนั้นส่งผลลัพธ์ข้อความเดียวกลับมาที่การสนทนาหลัก
- Foreground subagents: แสดง permission prompts เดียวกับที่คุณจะเห็นในการสนทนาหลัก
- Background subagents: ไม่แสดง prompts และ auto-deny การเรียก tool ที่จะต้องการ prompt
พฤติกรรมของ Bash Tool
Bash tool รันแต่ละคำสั่งในกระบวนการแยกต่างหาก:
- เมื่อ Claude รัน
cdใน main session ไดเรกทอรีทำงานใหม่จะสืบทอดไปยังคำสั่ง Bash ในภายหลัง - Environment variables ไม่คงอยู่ ไฟล์
exportในคำสั่งหนึ่งจะไม่พร้อมใช้งานในคำสั่งถัดไป
ข้อจำกัด:
- Timeout: สองนาทีโดยค่าเริ่มต้น Claude สามารถขอได้สูงสุด 10 นาทีต่อคำสั่ง
- ความยาว output: 30,000 ตัวอักษรโดยค่าเริ่มต้น
พฤติกรรมของ Edit Tool
Edit tool ดำเนินการแทนที่สตริงที่แน่นอน รับ old_string และ new_string และแทนที่สตริงแรกด้วยสตริงหลัง
เงื่อนไขสามอย่างต้องผ่านเพื่อให้ edit ใช้ได้:
- Read-before-edit: Claude ต้องอ่านไฟล์ใน conversation ปัจจุบันก่อน
- Match:
old_stringต้องปรากฏในไฟล์ตามที่เขียน - Uniqueness:
old_stringต้องปรากฏเพียงครั้งเดียว
พฤติกรรมของ Glob Tool
Glob tool ค้นหาไฟล์ตาม name pattern รองรับ glob syntax มาตรฐานรวมถึง **:
**/*.jsตรงกับไฟล์.jsทั้งหมดในทุกระดับsrc/**/*.tsตรงกับไฟล์.tsทั้งหมดในsrc/
ผลลัพธ์เรียงตามเวลาที่แก้ไขและจำกัดที่ 100 ไฟล์
พฤติกรรมของ Grep Tool
Grep tool ค้นหาเนื้อหาไฟล์สำหรับ patterns โดยใช้ ripgrep และ syntax ของ ripgrep
โหมด output สามอย่าง:
files_with_matches: เฉพาะ file paths (ค่าเริ่มต้น)content: บรรทัดที่ตรงกันพร้อมไฟล์และหมายเลขบรรทัดcount: จำนวนการตรงกันต่อไฟล์
พฤติกรรมของ Monitor Tool
Monitor tool ต้องการ Claude Code v2.1.98 หรือใหม่กว่า
Monitor tool ให้ Claude ดูสิ่งต่างๆ ใน background และตอบสนองเมื่อมีการเปลี่ยนแปลง:
- Tail ไฟล์ log และตั้งค่า flag errors เมื่อปรากฏ
- Poll PR หรือ CI job และรายงานเมื่อสถานะเปลี่ยน
- ดูไดเรกทอรีสำหรับการเปลี่ยนแปลงไฟล์
พฤติกรรมของ Read Tool
Read tool รับ file path และส่งกลับเนื้อหาพร้อมหมายเลขบรรทัด
จัดการไฟล์หลายประเภทนอกจาก plain text:
- Images: PNG, JPG และรูปแบบรูปภาพอื่นๆ ถูกส่งคืนเป็นเนื้อหา visual
- PDFs: Claude อ่านไฟล์
.pdfสั้นๆ ทั้งหมด สำหรับ PDFs ที่ยาวกว่า 10 หน้า ต้องใช้ parameterpages - Jupyter notebooks: ไฟล์
.ipynbส่งกลับ cells ทั้งหมดพร้อม outputs
พฤติกรรมของ WebFetch Tool
WebFetch รับ URL และ prompt ที่อธิบายสิ่งที่ต้องการดึง ดึงหน้า แปลงเป็น Markdown เมื่อ server ส่งกลับ HTML และรัน prompt กับเนื้อหาโดยใช้ model ขนาดเล็กและเร็ว
WebFetch มีการสูญเสียโดยการออกแบบ prompt การดึงกำหนดสิ่งที่ถึง Claude
พฤติกรรมของ WebSearch Tool
WebSearch รันการค้นหาเทียบกับ backend web search ของ Anthropic และส่งกลับชื่อผลลัพธ์และ URLs
WebSearch พร้อมใช้งานบน Claude API และ Microsoft Foundry บน Google Cloud Vertex AI ทำงานกับ Claude 4 models Amazon Bedrock ไม่ expose server-side web search tool
พฤติกรรมของ Write Tool
Write tool สร้างไฟล์ใหม่หรือเขียนทับไฟล์ที่มีอยู่พร้อมเนื้อหาทั้งหมดที่ระบุ
หาก target path มีอยู่แล้ว Claude ต้องอ่านไฟล์นั้นอย่างน้อยหนึ่งครั้งใน conversation ปัจจุบันก่อนเขียนทับ
ตรวจสอบ Tools ที่พร้อมใช้งาน
What tools do you have access to?
Claude ให้สรุปแบบ conversational สำหรับชื่อ MCP tool ที่แน่นอน ให้รัน /mcp
ดูเพิ่มเติม
- MCP servers: เพิ่ม custom tools โดยเชื่อมต่อ external servers
- Permissions: ระบบ permission, rule syntax, และ tool-specific patterns
- Subagents: ตั้งค่าการเข้าถึง tool สำหรับ subagents
- Hooks guide: รันคำสั่งแบบกำหนดเองก่อนหรือหลังการ execute tool