搜索

PythonReactSEOPDF
GitHub Skill

agent-sdk

Guide for Claude Agent SDK - build custom AI agents powered by Claude. Covers installation, authentication providers, tool permissions, file-based configuration, TypeScript/Python code examples, and project scaffolding templates.

majesticlabs-dev☆ 20 仓库 Stars3 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

Claude Agent SDK Guide

Build custom AI agents powered by Claude. Same infrastructure as Claude Code.

Installation

TypeScript
npm install @anthropic-ai/claude-agent-sdk
Python
pip install claude-agent-sdk

Core Features

Context Management

Automatic compaction ensures your agent doesn't run out of context during extended operations.

Tool Ecosystem

Built-in capabilities:

  • File operations - Read, write, edit files
  • Code execution - Run bash commands safely
  • Web search - Access real-time information
  • MCP extensibility - Add custom tools via Model Context Protocol
Permission Controls
{
  allowedTools: ['Read', 'Write', 'Bash'],  // Explicit allowlist
  disallowedTools: ['WebSearch'],            // Explicit blocklist
  permissionMode: 'default' | 'strict'       // Overall strategy
}

Authentication Providers

Anthropic API (Default)
export ANTHROPIC_API_KEY=sk-ant-...
Amazon Bedrock
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_ACCESS_KEY_ID=...
export AWS_SECRET_ACCESS_KEY=...
export AWS_REGION=us-east-1
Google Vertex AI
export CLAUDE_CODE_USE_VERTEX=1
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json
export VERTEX_REGION=us-central1
export VERTEX_PROJECT_ID=your-project
Microsoft Foundry
export CLAUDE_CODE_USE_FOUNDRY=1
# Azure credentials configuration

File-Based Configuration

Directory Purpose
.claude/agents/ Subagent definitions (Markdown)
.claude/skills/ Skill files (SKILL.md)
.claude/commands/ Slash commands (Markdown)
.claude/settings.json Hooks configuration
CLAUDE.md Project memory/context

Enable project settings:

{
  settingSources: ['project']
}

Code Examples

TypeScript: Basic Agent
import { Agent } from '@anthropic-ai/claude-agent-sdk';

const agent = new Agent({
  model: 'claude-sonnet-4-20250514',
  allowedTools: ['Read', 'Write', 'Bash'],
  systemPrompt: `You are a code review assistant.
    Analyze code for bugs, security issues, and best practices.`,
});

const result = await agent.run({
  prompt: 'Review the code in src/auth.ts for security issues',
});

console.log(result.output);
TypeScript: Agent with MCP Tools
import { Agent } from '@anthropic-ai/claude-agent-sdk';

const agent = new Agent({
  model: 'claude-sonnet-4-20250514',
  mcpServers: {
    database: {
      command: 'npx',
      args: ['-y', '@modelcontextprotocol/server-postgres'],
      env: { DATABASE_URL: process.env.DATABASE_URL },
    },
  },
});

const result = await agent.run({
  prompt: 'List all users who signed up in the last 24 hours',
});
Python: Basic Agent
from claude_agent_sdk import Agent

agent = Agent(
    model="claude-sonnet-4-20250514",
    allowed_tools=["Read", "Write", "Bash"],
    system_prompt="""You are a code review assistant.
    Analyze code for bugs, security issues, and best practices.""",
)

result = agent.run(
    prompt="Review the code in src/auth.py for security issues"
)

print(result.output)
Python: Agent with Custom Permissions
from claude_agent_sdk import Agent, PermissionMode

agent = Agent(
    model="claude-sonnet-4-20250514",
    permission_mode=PermissionMode.STRICT,
    allowed_tools=["Read", "Grep", "Glob"],
    disallowed_tools=["Bash"],  # Extra safety
)

result = agent.run(
    prompt="Find all TODO comments in the codebase"
)

Agent Types & Use Cases

Coding Agents
  • SRE Diagnostics - Analyze logs, identify issues, suggest fixes
  • Security Auditing - Scan for vulnerabilities, check dependencies
  • Incident Triage - Correlate alerts, gather context, draft runbooks
  • Code Review - Enforce standards, catch bugs, suggest improvements
Business Agents
  • Legal Review - Analyze contracts, flag risks, summarize terms
  • Financial Analysis - Process reports, identify anomalies, forecast
  • Customer Support - Handle tickets, route issues, draft responses
  • Content Creation - Generate docs, edit copy, ensure consistency

Best Practices

Start Simple

Begin with minimal tool access and expand as needed:

// Start here
allowedTools: ['Read']

// Then add as required
allowedTools: ['Read', 'Grep', 'Glob']

// Only if truly needed
allowedTools: ['Read', 'Write', 'Bash']
Use Subagents for Complex Tasks

Break large tasks into specialized subagents:

.claude/agents/
├── code-reviewer.md      # Reviews code changes
├── test-writer.md        # Generates tests
└── doc-generator.md      # Creates documentation
Handle Errors Gracefully
try {
  const result = await agent.run({ prompt });
  if (result.error) {
    console.error('Agent error:', result.error);
  }
} catch (error) {
  console.error('SDK error:', error);
}
Monitor Agent Behavior
const agent = new Agent({
  onToolUse: (tool, input) => {
    console.log(`Tool: ${tool}, Input: ${JSON.stringify(input)}`);
  },
  onThinking: (thought) => {
    console.log(`Thinking: ${thought}`);
  },
});

Project Scaffolding

Use /agent-sdk:agent-scaffold command to generate a new project.

Template Files
Template Purpose
resources/typescript/package.json Node.js package config
resources/typescript/agent.ts TypeScript agent entry
resources/python/pyproject.toml Python package config
resources/python/agent.py Python agent entry
resources/env-*.example Provider config templates
resources/claude/*.md Subagent/skill/command templates
Tool Mapping
User Selection SDK Tools
File Operations Read, Write, Edit, Glob, Grep
Code Execution Bash
Web Search WebSearch, WebFetch
MCP Tools (configured via mcpServers)
System Prompts

Coding Agent:

You are a coding assistant that helps developers write better code.
Analyze code for bugs, security issues, and best practices.

Business Agent:

You are a business analyst assistant.
Help with document analysis, data extraction, and report generation.

Resources

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-01-20
索引更新时间
2026-02-04
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!