mirror of
https://github.com/anthropics/claude-agent-sdk-python.git
synced 2025-10-06 01:00:03 +03:00
## Summary - Add support for custom agent definitions via `agents` option - Add support for controlling setting sources via `setting_sources` option - Add `/commit` slash command to project - Add examples demonstrating both features - Add e2e tests for verification ## Changes ### Core Implementation - Add `AgentDefinition` and `SettingSource` types to `types.py` - Add `agents` and `setting_sources` fields to `ClaudeCodeOptions` - Update subprocess CLI transport to pass `--agents` and `--setting-sources` flags - **Default behavior**: When `setting_sources` is not provided, pass empty string (no settings loaded) - Handle empty `setting_sources` array correctly (pass empty string to CLI) ### Examples - `examples/agents.py`: Demonstrates custom agent definitions with different tools and models - `examples/setting_sources.py`: Shows how setting sources control which settings are loaded - Default behavior (no settings) - User-only settings - User + project settings ### Tests - Add e2e tests verifying agents and setting_sources functionality - Test default behavior (no settings loaded) - Test filtering by setting source - Use `output_style` checking to verify settings loaded/not loaded - Tests use temporary directories for isolated testing ### Project Config - Add `.claude/commands/commit.md` slash command for git commits ## Test Plan - [x] E2E tests added for all new functionality - [ ] CI tests pass - [ ] Examples run successfully 🤖 Generated with [Claude Code](https://claude.ai/code) --------- Co-authored-by: Claude <noreply@anthropic.com>