Loading...
    • 開發者指南
    • API 參考
    • MCP
    • 資源
    • 發行說明
    Search...
    ⌘K
    開始使用
    Claude 簡介快速開始
    模型與定價
    模型概覽選擇模型Claude 4.5 新功能遷移至 Claude 4.5模型棄用定價
    使用 Claude 構建
    功能概覽使用 Messages API上下文窗口提示詞最佳實踐
    功能
    提示詞快取上下文編輯擴展思考努力串流消息批次處理引用多語言支援Token 計數嵌入視覺PDF 支援Files API搜尋結果結構化輸出
    工具
    概覽如何實現工具使用細粒度工具串流Bash 工具代碼執行工具程式化工具調用計算機使用工具文字編輯器工具網頁擷取工具網頁搜尋工具記憶體工具工具搜尋工具
    Agent Skills
    概覽快速開始最佳實踐使用 API 的 Skills
    Agent SDK
    概覽快速開始TypeScript SDKTypeScript V2 (預覽)Python SDK遷移指南
    串流輸入處理權限使用鉤子控制執行會話管理檔案檢查點SDK 中的結構化輸出託管 Agent SDK安全部署 AI agents修改系統提示詞SDK 中的 MCP自訂工具SDK 中的子 agentsSDK 中的斜線命令SDK 中的 Agent Skills追蹤成本和使用量待辦事項清單SDK 中的外掛程式
    API 中的 MCP
    MCP 連接器遠端 MCP 伺服器
    第三方平台上的 Claude
    Amazon BedrockMicrosoft FoundryVertex AI
    提示詞工程
    概覽提示詞生成器使用提示詞範本提示詞改進器清晰直接使用範例 (多次提示)讓 Claude 思考 (CoT)使用 XML 標籤給 Claude 一個角色 (系統提示詞)預填 Claude 的回應鏈接複雜提示詞長上下文提示擴展思考提示
    測試與評估
    定義成功標準開發測試案例使用評估工具降低延遲
    加強防護欄
    減少幻覺增加輸出一致性緩解越獄串流拒絕減少提示詞洩露保持 Claude 的角色
    管理和監控
    Admin API 概覽使用量和成本 APIClaude Code Analytics API
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    指南

    SDK 中的斜線命令

    學習如何使用斜線命令透過 SDK 控制 Claude Code 會話
    • /compact - 壓縮對話歷史
    • /clear - 清除對話
    • 在 SDK 中使用自訂命令

    斜線命令提供了一種使用以 / 開頭的特殊命令來控制 Claude Code 會話的方法。這些命令可以透過 SDK 發送,以執行清除對話歷史、壓縮訊息或獲取幫助等操作。

    發現可用的斜線命令

    Claude Agent SDK 在系統初始化訊息中提供有關可用斜線命令的資訊。在會話開始時存取此資訊:

    import { query } from "@anthropic-ai/claude-agent-sdk";
    
    for await (const message of query({
      prompt: "Hello Claude",
      options: { maxTurns: 1 }
    })) {
      if (message.type === "system" && message.subtype === "init") {
        console.log("Available slash commands:", message.slash_commands);
        // Example output: ["/compact", "/clear", "/help"]
      }
    }

    發送斜線命令

    透過在提示字串中包含斜線命令來發送它們,就像普通文字一樣:

    常見的斜線命令

    /compact - 壓縮對話歷史

    /compact 命令透過總結較舊的訊息同時保留重要上下文來減少對話歷史的大小:

    /clear - 清除對話

    /clear 命令透過清除所有先前的歷史來開始新的對話:

    建立自訂斜線命令

    除了使用內建的斜線命令外,您還可以建立自己的自訂命令,這些命令可透過 SDK 使用。自訂命令定義為特定目錄中的 markdown 檔案,類似於子代理的配置方式。

    檔案位置

    自訂斜線命令根據其範圍儲存在指定的目錄中:

    • 專案命令:.claude/commands/ - 僅在當前專案中可用
    • 個人命令:~/.claude/commands/ - 在您的所有專案中可用

    檔案格式

    每個自訂命令都是一個 markdown 檔案,其中:

    • 檔案名稱(不含 .md 副檔名)成為命令名稱
    • 檔案內容定義命令的功能
    • 可選的 YAML 前置資料提供配置

    基本範例

    建立 .claude/commands/refactor.md:

    Refactor the selected code to improve readability and maintainability.
    Focus on clean code principles and best practices.

    這會建立 /refactor 命令,您可以透過 SDK 使用。

    使用前置資料

    建立 .claude/commands/security-check.md:

    ---
    allowed-tools: Read, Grep, Glob
    description: Run security vulnerability scan
    model: claude-3-5-sonnet-20241022
    ---
    
    Analyze the codebase for security vulnerabilities including:
    - SQL injection risks
    - XSS vulnerabilities
    - Exposed credentials
    - Insecure configurations

    在 SDK 中使用自訂命令

    一旦在檔案系統中定義,自訂命令就會自動透過 SDK 可用:

    進階功能

    參數和佔位符

    自訂命令支援使用佔位符的動態參數:

    建立 .claude/commands/fix-issue.md:

    ---
    argument-hint: [issue-number] [priority]
    description: Fix a GitHub issue
    ---
    
    Fix issue #$1 with priority $2.
    Check the issue description and implement the necessary changes.

    在 SDK 中使用:

    Bash 命令執行

    自訂命令可以執行 bash 命令並包含其輸出:

    建立 .claude/commands/git-commit.md:

    ---
    allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
    description: Create a git commit
    ---
    
    ## Context
    
    - Current status: !`git status`
    - Current diff: !`git diff HEAD`
    
    ## Task
    
    Create a git commit with appropriate message based on the changes.

    檔案參考

    使用 @ 前綴包含檔案內容:

    建立 .claude/commands/review-config.md:

    ---
    description: Review configuration files
    ---
    
    Review the following configuration files for issues:
    - Package config: @package.json
    - TypeScript config: @tsconfig.json
    - Environment config: @.env
    
    Check for security issues, outdated dependencies, and misconfigurations.

    使用命名空間進行組織

    在子目錄中組織命令以獲得更好的結構:

    .claude/commands/
    ├── frontend/
    │   ├── component.md      # Creates /component (project:frontend)
    │   └── style-check.md     # Creates /style-check (project:frontend)
    ├── backend/
    │   ├── api-test.md        # Creates /api-test (project:backend)
    │   └── db-migrate.md      # Creates /db-migrate (project:backend)
    └── review.md              # Creates /review (project)

    子目錄出現在命令描述中,但不會影響命令名稱本身。

    實用範例

    程式碼審查命令

    建立 .claude/commands/code-review.md:

    ---
    allowed-tools: Read, Grep, Glob, Bash(git diff:*)
    description: Comprehensive code review
    ---
    
    ## Changed Files
    !`git diff --name-only HEAD~1`
    
    ## Detailed Changes
    !`git diff HEAD~1`
    
    ## Review Checklist
    
    Review the above changes for:
    1. Code quality and readability
    2. Security vulnerabilities
    3. Performance implications
    4. Test coverage
    5. Documentation completeness
    
    Provide specific, actionable feedback organized by priority.

    測試執行器命令

    建立 .claude/commands/test.md:

    ---
    allowed-tools: Bash, Read, Edit
    argument-hint: [test-pattern]
    description: Run tests with optional pattern
    ---
    
    Run tests matching pattern: $ARGUMENTS
    
    1. Detect the test framework (Jest, pytest, etc.)
    2. Run tests with the provided pattern
    3. If tests fail, analyze and fix them
    4. Re-run to verify fixes

    透過 SDK 使用這些命令:

    另請參閱

    • 斜線命令 - 完整的斜線命令文件
    • SDK 中的子代理 - 類似的基於檔案系統的子代理配置
    • TypeScript SDK 參考 - 完整的 API 文件
    • SDK 概述 - 一般 SDK 概念
    • CLI 參考 - 命令列介面
    import { query } from "@anthropic-ai/claude-agent-sdk";
    
    // Send a slash command
    for await (const message of query({
      prompt: "/compact",
      options: { maxTurns: 1 }
    })) {
      if (message.type === "result") {
        console.log("Command executed:", message.result);
      }
    }
    import { query } from "@anthropic-ai/claude-agent-sdk";
    
    for await (const message of query({
      prompt: "/compact",
      options: { maxTurns: 1 }
    })) {
      if (message.type === "system" && message.subtype === "compact_boundary") {
        console.log("Compaction completed");
        console.log("Pre-compaction tokens:", message.compact_metadata.pre_tokens);
        console.log("Trigger:", message.compact_metadata.trigger);
      }
    }
    import { query } from "@anthropic-ai/claude-agent-sdk";
    
    // Clear conversation and start fresh
    for await (const message of query({
      prompt: "/clear",
      options: { maxTurns: 1 }
    })) {
      if (message.type === "system" && message.subtype === "init") {
        console.log("Conversation cleared, new session started");
        console.log("Session ID:", message.session_id);
      }
    }
    import { query } from "@anthropic-ai/claude-agent-sdk";
    
    // Use a custom command
    for await (const message of query({
      prompt: "/refactor src/auth/login.ts",
      options: { maxTurns: 3 }
    })) {
      if (message.type === "assistant") {
        console.log("Refactoring suggestions:", message.message);
      }
    }
    
    // Custom commands appear in the slash_commands list
    for await (const message of query({
      prompt: "Hello",
      options: { maxTurns: 1 }
    })) {
      if (message.type === "system" && message.subtype === "init") {
        // Will include both built-in and custom commands
        console.log("Available commands:", message.slash_commands);
        // Example: ["/compact", "/clear", "/help", "/refactor", "/security-check"]
      }
    }
    import { query } from "@anthropic-ai/claude-agent-sdk";
    
    // Pass arguments to custom command
    for await (const message of query({
      prompt: "/fix-issue 123 high",
      options: { maxTurns: 5 }
    })) {
      // Command will process with $1="123" and $2="high"
      if (message.type === "result") {
        console.log("Issue fixed:", message.result);
      }
    }
    import { query } from "@anthropic-ai/claude-agent-sdk";
    
    // Run code review
    for await (const message of query({
      prompt: "/code-review",
      options: { maxTurns: 3 }
    })) {
      // Process review feedback
    }
    
    // Run specific tests
    for await (const message of query({
      prompt: "/test auth",
      options: { maxTurns: 5 }
    })) {
      // Handle test results
    }