claude-code-supervisor


Nameclaude-code-supervisor JSON
Version 0.2.2 PyPI version JSON
download
home_pageNone
SummaryAn intelligent wrapper around Claude Code SDK for automated problem-solving
upload_time2025-07-25 00:08:47
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT
keywords claude code-generation ai automation testing development
VCS
bugtrack_url
requirements numpy pandas scikit-learn langchain langchain-aws langchain-openai langgraph claude-code-sdk pytest python-dotenv
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Claude Code Supervisor

[![PyPI version](https://badge.fury.io/py/claude-code-supervisor.svg)](https://badge.fury.io/py/claude-code-supervisor)
[![Python Support](https://img.shields.io/pypi/pyversions/claude-code-supervisor.svg)](https://pypi.org/project/claude-code-supervisor/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

An intelligent wrapper around Claude Code SDK that provides automated problem-solving capabilities with session management, progress monitoring, and intelligent feedback loops.

## 🚀 Features

- **Automated Problem Solving**: Describes problems to Claude Code and gets complete solutions
- **Session Management**: Maintains context across multiple iterations with intelligent workflow orchestration
- **Progress Monitoring**: Real-time tracking of Claude's progress via todo list updates and output analysis
- **Intelligent Feedback Loop**: LLM-powered guidance generation that analyzes Claude's work and provides specific, actionable feedback when issues arise
- **Data I/O Support**: Handles various data formats (lists, dicts, CSV, DataFrames, etc.)
- **Custom Prompts**: Guide implementation toward specific patterns or requirements
- **Test Automation**: Automatically generates and runs tests for solutions
- **Multiple Providers**: Support for Anthropic, AWS Bedrock, and OpenAI

## 📦 Installation

### From PyPI (recommended)

```bash
pip install claude-code-supervisor
```

### From Source

```bash
git clone https://github.com/vinyluis/claude-code-supervisor.git
cd claude-code-supervisor
pip install -e .
```

## 🛠️ Prerequisites

1. **Claude Code CLI**:
   ```bash
   npm install -g @anthropic-ai/claude-code
   ```

2. **API Key** (choose one):
   ```bash
   # Anthropic (default)
   export ANTHROPIC_API_KEY=<YOUR_ANTHROPIC_API_KEY>
   
   # AWS Bedrock
   export AWS_ACCESS_KEY_ID=<YOUR_AWS_ACCESS_KEY_ID>
   export AWS_SECRET_ACCESS_KEY=<YOUR_AWS_SECRET_ACCESS_KEY>
   export AWS_REGION=<AWS_REGION>

   ```

3. **LLM API Key** (for guidance, choose one):
   ```bash
   # OpenAI (default)
   export OPENAI_API_KEY="your-openai-api-key"
   # Configure supervisor_config.json with "provider": "openai"
   
   # AWS Bedrock (for guidance LLM)
   # Will use the access keys above
   # Configure supervisor_config.json with "provider": "bedrock"
   ```

## 🚀 Quick Start

### Basic Usage

```python
from claude_code_supervisor import SingleShotSupervisorAgent

# Initialize the agent
agent = SingleShotSupervisorAgent()

# Solve a problem
result = agent.process(
    "Create a function to calculate fibonacci numbers",
    solution_path='solution.py',
    test_path='test_solution.py'
)

if result.is_solved:
    print(f"Solution: {agent.solution_path}")
    print(f"Tests: {agent.test_path}")
```

## 🎯 Supervisor Types

Claude Code Supervisor provides two main supervisor types for different use cases:

### FeedbackSupervisorAgent
Iterative supervisor with intelligent feedback loops - continues refining solutions until success or max iterations:

```python
from claude_code_supervisor import FeedbackSupervisorAgent

agent = FeedbackSupervisorAgent()
result = agent.process("Create a complex sorting algorithm")
# Will iterate with intelligent feedback until solved
```

**Best for:**
- Complex problems requiring multiple iterations
- Maximum solution quality with automated improvement
- Problems where first attempts commonly fail
- When you want intelligent error analysis and guidance

### SingleShotSupervisorAgent
Single-execution supervisor without iteration - fast, deterministic results:

```python
from claude_code_supervisor import SingleShotSupervisorAgent

agent = SingleShotSupervisorAgent()
result = agent.process("Create a simple utility function")
# Executes once and reports results
```

**Best for:**
- Simple problems that don't require iteration
- Fast code generation and testing
- When iteration is handled externally
- Benchmarking Claude Code capabilities

### With Input/Output Data

```python
# Process data with input/output examples
result = agent.process(
    "Sort this list in ascending order",
    input_data=[64, 34, 25, 12, 22, 11, 90, 5],
    output_data=[5, 11, 12, 22, 25, 34, 64, 90]
)
```

### With Custom Prompts

```python
# Guide implementation style
agent = FeedbackSupervisorAgent(
    append_system_prompt="Use object-oriented programming with SOLID principles"
)

result = agent.process("Create a calculator with basic operations")
```

### Bring Your Own Model (BYOM)

```python
# Use your own LangChain LLM for guidance
from langchain_openai import ChatOpenAI

custom_llm = ChatOpenAI(model='gpt-4o-mini', temperature=0.2)
agent = FeedbackSupervisorAgent(llm=custom_llm)
result = agent.process("Create a data processing function")
```

### With Custom Configuration

```python
# Pass configuration as type-safe dataclass
from claude_code_supervisor import FeedbackSupervisorAgent
from claude_code_supervisor.config import openai_config

config = openai_config(model_name='gpt-4o-mini', temperature=0.1)
config.agent.max_iterations = 3
config.claude_code.max_turns = 25

agent = FeedbackSupervisorAgent(config=config)
result = agent.process(
    "Create a web scraper function",
    solution_path='scraper.py',
    test_path='test_scraper.py'
)
```

### Advanced Configuration Examples

```python
# Use structured, type-safe configuration with dataclasses
from claude_code_supervisor import FeedbackSupervisorAgent
from claude_code_supervisor.config import (
    SupervisorConfig, AgentConfig, ClaudeCodeConfig,
    development_config, openai_config, bedrock_config
)

# Method 1: Use convenience functions
config = development_config()  # Pre-configured for development
agent = FeedbackSupervisorAgent(config=config)

# Method 2: Use builder functions with customization
config = openai_config(model_name='gpt-4o-mini', temperature=0.2)
config.agent.max_iterations = 5
agent = FeedbackSupervisorAgent(config=config)

# Method 3: Build from scratch with type safety
config = SupervisorConfig(
    agent=AgentConfig(
        model_name='gpt-4o',
        temperature=0.1,
        provider='openai',
        max_iterations=3,
        test_timeout=60
    ),
    claude_code=ClaudeCodeConfig(
        max_turns=20,
        use_bedrock=False,
        tools=['Read', 'Write', 'Edit', 'Bash', 'TodoWrite']  # Custom tool set
    )
)
agent = FeedbackSupervisorAgent(config=config)
result = agent.process(
    "Create a validation function",
    solution_path='validator.py',
    test_path='test_validator.py'
)
```

### Combining Configuration with Custom LLM

```python
# Use dataclass config + custom LLM together
from langchain_aws import ChatBedrockConverse
from claude_code_supervisor import FeedbackSupervisorAgent
from claude_code_supervisor.config import SupervisorConfig, AgentConfig

# Custom LLM for guidance
guidance_llm = ChatBedrockConverse(
    model='anthropic.claude-3-haiku-20240307-v1:0',
    temperature=0.1,
)

# Type-safe configuration (model settings in custom LLM are ignored when llm is provided)
config = SupervisorConfig(
    agent=AgentConfig(max_iterations=2, test_timeout=45)
)

agent = FeedbackSupervisorAgent(config=config, llm=guidance_llm)
result = agent.process(
    "Create a file parser",
    solution_path='parser.py',
    test_path='test_parser.py'
)
```


## 📊 Data Format Support

The supervisor supports various data formats:

- **Lists**: `[1, 2, 3, 4]`
- **Dictionaries**: `{"name": "Alice", "age": 30}`
- **Pandas DataFrames**: For data analysis tasks
- **NumPy Arrays**: For numerical computations
- **Strings**: Text processing tasks
- **CSV Data**: Business logic and data processing

## 🎯 Examples

Check out the [examples directory](examples/) for detailed usage examples:

- **Basic Usage** (`basic_usage.py`): Simple problem solving without I/O
- **Data Processing**: 
  - `list_sorting_example.py`: Working with lists and numbers
  - `dictionary_processing_example.py`: Processing employee dictionaries 
  - `csv_processing_example.py`: Complex inventory data processing
- **Custom Prompts**:
  - `oop_prompt_example.py`: Object-oriented programming patterns
  - `performance_prompt_example.py`: Performance-optimized implementations
  - `data_science_prompt_example.py`: Data science best practices with pandas

## 🔧 Configuration

SupervisorAgent uses type-safe dataclass configuration for better IDE support and validation:

### Quick Setup with Convenience Functions

```python
from claude_code_supervisor import FeedbackSupervisorAgent
from claude_code_supervisor.config import openai_config, bedrock_config

# OpenAI configuration
config = openai_config(model_name='gpt-4o-mini', temperature=0.2)
agent = FeedbackSupervisorAgent(config=config)

# AWS Bedrock configuration
config = bedrock_config(
  model_name='anthropic.claude-3-haiku-20240307-v1:0',
)
agent = FeedbackSupervisorAgent(config=config)
```

### Custom Configuration from Scratch

```python
from claude_code_supervisor import FeedbackSupervisorAgent
from claude_code_supervisor.config import SupervisorConfig, AgentConfig, ClaudeCodeConfig

# Build custom configuration
config = SupervisorConfig(
  agent=AgentConfig(
    model_name='gpt-4o',
    temperature=0.1,
    provider='openai',
    max_iterations=5,
    test_timeout=60
  ),
  claude_code=ClaudeCodeConfig(
    max_turns=25,
    use_bedrock=False,
    max_thinking_tokens=8000
  )
)

agent = FeedbackSupervisorAgent(config=config)
```

### Environment-Specific Configurations

```python
from claude_code_supervisor import FeedbackSupervisorAgent
from claude_code_supervisor.config import development_config, production_config

# Development environment (uses gpt-4o-mini, higher iterations)
dev_config = development_config()
dev_agent = FeedbackSupervisorAgent(config=dev_config)

# Production environment (uses gpt-4o, optimized settings)
prod_config = production_config()
prod_agent = FeedbackSupervisorAgent(config=prod_config)
```

### Tool Configuration

Claude Code has access to various tools. By default, all tools are enabled, but you can customize which tools are available:

```python
from claude_code_supervisor import FeedbackSupervisorAgent
from claude_code_supervisor.config import SupervisorConfig, ClaudeCodeConfig
from claude_code_supervisor.utils import ToolsEnum

# All tools (default)
config = SupervisorConfig(
    claude_code=ClaudeCodeConfig(tools=ToolsEnum.all())
)

# Custom tool set
config = SupervisorConfig(
    claude_code=ClaudeCodeConfig(
        tools=['Read', 'Write', 'Edit', 'Bash', 'TodoWrite', 'LS', 'Grep']
    )
)

# Minimal tools for simple tasks
from claude_code_supervisor.config import minimal_tools_config
config = minimal_tools_config()

# Notebook-focused tools
from claude_code_supervisor.config import notebook_config
config = notebook_config()
```

**Available Tools:**
- `Read`, `Write`, `Edit`, `MultiEdit` - File operations
- `Bash` - Command execution
- `LS`, `Glob`, `Grep` - File system navigation and search
- `TodoWrite` - Task management
- `NotebookRead`, `NotebookEdit` - Jupyter notebook support
- `WebFetch`, `WebSearch` - Web access
- `Agent` - Delegate tasks to other agents

## 🧪 Testing

Run the test suite:

```bash
# Run all tests
pytest

# Run with coverage
pytest --cov=claude_code_supervisor

# Run specific test categories
pytest -m "unit"
pytest -m "integration"
```

## 🤝 Contributing

We welcome contributions! Please see our [Contributing Guidelines](CONTRIBUTING.md) for details.

1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

## 📝 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## 🙏 Acknowledgments

- [Claude Code SDK](https://github.com/anthropics/claude-code-sdk-python) for the core Claude Code integration
- [LangGraph](https://github.com/langchain-ai/langgraph) for workflow orchestration
- [LangChain](https://github.com/langchain-ai/langchain) for LLM integrations

## 📚 Documentation

For detailed usage examples, see the [examples directory](examples/) and the configuration examples above.

## 🐛 Issues

Found a bug? Have a feature request? Please [open an issue](https://github.com/vinyluis/claude-code-supervisor/issues).

---

**Made with ❤️ by [Vinícius Trevisan](mailto:vinicius@viniciustrevisan.com)**

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "claude-code-supervisor",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "Vin\u00edcius Trevisan <vinicius@viniciustrevisan.com>",
    "keywords": "claude, code-generation, ai, automation, testing, development",
    "author": null,
    "author_email": "Vin\u00edcius Trevisan <vinicius@viniciustrevisan.com>",
    "download_url": "https://files.pythonhosted.org/packages/57/60/e0250ffed5a1fd7b23011f88ed87142dcce6edbdc55e6e3471f7ab9d6af3/claude_code_supervisor-0.2.2.tar.gz",
    "platform": null,
    "description": "# Claude Code Supervisor\n\n[![PyPI version](https://badge.fury.io/py/claude-code-supervisor.svg)](https://badge.fury.io/py/claude-code-supervisor)\n[![Python Support](https://img.shields.io/pypi/pyversions/claude-code-supervisor.svg)](https://pypi.org/project/claude-code-supervisor/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nAn intelligent wrapper around Claude Code SDK that provides automated problem-solving capabilities with session management, progress monitoring, and intelligent feedback loops.\n\n## \ud83d\ude80 Features\n\n- **Automated Problem Solving**: Describes problems to Claude Code and gets complete solutions\n- **Session Management**: Maintains context across multiple iterations with intelligent workflow orchestration\n- **Progress Monitoring**: Real-time tracking of Claude's progress via todo list updates and output analysis\n- **Intelligent Feedback Loop**: LLM-powered guidance generation that analyzes Claude's work and provides specific, actionable feedback when issues arise\n- **Data I/O Support**: Handles various data formats (lists, dicts, CSV, DataFrames, etc.)\n- **Custom Prompts**: Guide implementation toward specific patterns or requirements\n- **Test Automation**: Automatically generates and runs tests for solutions\n- **Multiple Providers**: Support for Anthropic, AWS Bedrock, and OpenAI\n\n## \ud83d\udce6 Installation\n\n### From PyPI (recommended)\n\n```bash\npip install claude-code-supervisor\n```\n\n### From Source\n\n```bash\ngit clone https://github.com/vinyluis/claude-code-supervisor.git\ncd claude-code-supervisor\npip install -e .\n```\n\n## \ud83d\udee0\ufe0f Prerequisites\n\n1. **Claude Code CLI**:\n   ```bash\n   npm install -g @anthropic-ai/claude-code\n   ```\n\n2. **API Key** (choose one):\n   ```bash\n   # Anthropic (default)\n   export ANTHROPIC_API_KEY=<YOUR_ANTHROPIC_API_KEY>\n   \n   # AWS Bedrock\n   export AWS_ACCESS_KEY_ID=<YOUR_AWS_ACCESS_KEY_ID>\n   export AWS_SECRET_ACCESS_KEY=<YOUR_AWS_SECRET_ACCESS_KEY>\n   export AWS_REGION=<AWS_REGION>\n\n   ```\n\n3. **LLM API Key** (for guidance, choose one):\n   ```bash\n   # OpenAI (default)\n   export OPENAI_API_KEY=\"your-openai-api-key\"\n   # Configure supervisor_config.json with \"provider\": \"openai\"\n   \n   # AWS Bedrock (for guidance LLM)\n   # Will use the access keys above\n   # Configure supervisor_config.json with \"provider\": \"bedrock\"\n   ```\n\n## \ud83d\ude80 Quick Start\n\n### Basic Usage\n\n```python\nfrom claude_code_supervisor import SingleShotSupervisorAgent\n\n# Initialize the agent\nagent = SingleShotSupervisorAgent()\n\n# Solve a problem\nresult = agent.process(\n    \"Create a function to calculate fibonacci numbers\",\n    solution_path='solution.py',\n    test_path='test_solution.py'\n)\n\nif result.is_solved:\n    print(f\"Solution: {agent.solution_path}\")\n    print(f\"Tests: {agent.test_path}\")\n```\n\n## \ud83c\udfaf Supervisor Types\n\nClaude Code Supervisor provides two main supervisor types for different use cases:\n\n### FeedbackSupervisorAgent\nIterative supervisor with intelligent feedback loops - continues refining solutions until success or max iterations:\n\n```python\nfrom claude_code_supervisor import FeedbackSupervisorAgent\n\nagent = FeedbackSupervisorAgent()\nresult = agent.process(\"Create a complex sorting algorithm\")\n# Will iterate with intelligent feedback until solved\n```\n\n**Best for:**\n- Complex problems requiring multiple iterations\n- Maximum solution quality with automated improvement\n- Problems where first attempts commonly fail\n- When you want intelligent error analysis and guidance\n\n### SingleShotSupervisorAgent\nSingle-execution supervisor without iteration - fast, deterministic results:\n\n```python\nfrom claude_code_supervisor import SingleShotSupervisorAgent\n\nagent = SingleShotSupervisorAgent()\nresult = agent.process(\"Create a simple utility function\")\n# Executes once and reports results\n```\n\n**Best for:**\n- Simple problems that don't require iteration\n- Fast code generation and testing\n- When iteration is handled externally\n- Benchmarking Claude Code capabilities\n\n### With Input/Output Data\n\n```python\n# Process data with input/output examples\nresult = agent.process(\n    \"Sort this list in ascending order\",\n    input_data=[64, 34, 25, 12, 22, 11, 90, 5],\n    output_data=[5, 11, 12, 22, 25, 34, 64, 90]\n)\n```\n\n### With Custom Prompts\n\n```python\n# Guide implementation style\nagent = FeedbackSupervisorAgent(\n    append_system_prompt=\"Use object-oriented programming with SOLID principles\"\n)\n\nresult = agent.process(\"Create a calculator with basic operations\")\n```\n\n### Bring Your Own Model (BYOM)\n\n```python\n# Use your own LangChain LLM for guidance\nfrom langchain_openai import ChatOpenAI\n\ncustom_llm = ChatOpenAI(model='gpt-4o-mini', temperature=0.2)\nagent = FeedbackSupervisorAgent(llm=custom_llm)\nresult = agent.process(\"Create a data processing function\")\n```\n\n### With Custom Configuration\n\n```python\n# Pass configuration as type-safe dataclass\nfrom claude_code_supervisor import FeedbackSupervisorAgent\nfrom claude_code_supervisor.config import openai_config\n\nconfig = openai_config(model_name='gpt-4o-mini', temperature=0.1)\nconfig.agent.max_iterations = 3\nconfig.claude_code.max_turns = 25\n\nagent = FeedbackSupervisorAgent(config=config)\nresult = agent.process(\n    \"Create a web scraper function\",\n    solution_path='scraper.py',\n    test_path='test_scraper.py'\n)\n```\n\n### Advanced Configuration Examples\n\n```python\n# Use structured, type-safe configuration with dataclasses\nfrom claude_code_supervisor import FeedbackSupervisorAgent\nfrom claude_code_supervisor.config import (\n    SupervisorConfig, AgentConfig, ClaudeCodeConfig,\n    development_config, openai_config, bedrock_config\n)\n\n# Method 1: Use convenience functions\nconfig = development_config()  # Pre-configured for development\nagent = FeedbackSupervisorAgent(config=config)\n\n# Method 2: Use builder functions with customization\nconfig = openai_config(model_name='gpt-4o-mini', temperature=0.2)\nconfig.agent.max_iterations = 5\nagent = FeedbackSupervisorAgent(config=config)\n\n# Method 3: Build from scratch with type safety\nconfig = SupervisorConfig(\n    agent=AgentConfig(\n        model_name='gpt-4o',\n        temperature=0.1,\n        provider='openai',\n        max_iterations=3,\n        test_timeout=60\n    ),\n    claude_code=ClaudeCodeConfig(\n        max_turns=20,\n        use_bedrock=False,\n        tools=['Read', 'Write', 'Edit', 'Bash', 'TodoWrite']  # Custom tool set\n    )\n)\nagent = FeedbackSupervisorAgent(config=config)\nresult = agent.process(\n    \"Create a validation function\",\n    solution_path='validator.py',\n    test_path='test_validator.py'\n)\n```\n\n### Combining Configuration with Custom LLM\n\n```python\n# Use dataclass config + custom LLM together\nfrom langchain_aws import ChatBedrockConverse\nfrom claude_code_supervisor import FeedbackSupervisorAgent\nfrom claude_code_supervisor.config import SupervisorConfig, AgentConfig\n\n# Custom LLM for guidance\nguidance_llm = ChatBedrockConverse(\n    model='anthropic.claude-3-haiku-20240307-v1:0',\n    temperature=0.1,\n)\n\n# Type-safe configuration (model settings in custom LLM are ignored when llm is provided)\nconfig = SupervisorConfig(\n    agent=AgentConfig(max_iterations=2, test_timeout=45)\n)\n\nagent = FeedbackSupervisorAgent(config=config, llm=guidance_llm)\nresult = agent.process(\n    \"Create a file parser\",\n    solution_path='parser.py',\n    test_path='test_parser.py'\n)\n```\n\n\n## \ud83d\udcca Data Format Support\n\nThe supervisor supports various data formats:\n\n- **Lists**: `[1, 2, 3, 4]`\n- **Dictionaries**: `{\"name\": \"Alice\", \"age\": 30}`\n- **Pandas DataFrames**: For data analysis tasks\n- **NumPy Arrays**: For numerical computations\n- **Strings**: Text processing tasks\n- **CSV Data**: Business logic and data processing\n\n## \ud83c\udfaf Examples\n\nCheck out the [examples directory](examples/) for detailed usage examples:\n\n- **Basic Usage** (`basic_usage.py`): Simple problem solving without I/O\n- **Data Processing**: \n  - `list_sorting_example.py`: Working with lists and numbers\n  - `dictionary_processing_example.py`: Processing employee dictionaries \n  - `csv_processing_example.py`: Complex inventory data processing\n- **Custom Prompts**:\n  - `oop_prompt_example.py`: Object-oriented programming patterns\n  - `performance_prompt_example.py`: Performance-optimized implementations\n  - `data_science_prompt_example.py`: Data science best practices with pandas\n\n## \ud83d\udd27 Configuration\n\nSupervisorAgent uses type-safe dataclass configuration for better IDE support and validation:\n\n### Quick Setup with Convenience Functions\n\n```python\nfrom claude_code_supervisor import FeedbackSupervisorAgent\nfrom claude_code_supervisor.config import openai_config, bedrock_config\n\n# OpenAI configuration\nconfig = openai_config(model_name='gpt-4o-mini', temperature=0.2)\nagent = FeedbackSupervisorAgent(config=config)\n\n# AWS Bedrock configuration\nconfig = bedrock_config(\n  model_name='anthropic.claude-3-haiku-20240307-v1:0',\n)\nagent = FeedbackSupervisorAgent(config=config)\n```\n\n### Custom Configuration from Scratch\n\n```python\nfrom claude_code_supervisor import FeedbackSupervisorAgent\nfrom claude_code_supervisor.config import SupervisorConfig, AgentConfig, ClaudeCodeConfig\n\n# Build custom configuration\nconfig = SupervisorConfig(\n  agent=AgentConfig(\n    model_name='gpt-4o',\n    temperature=0.1,\n    provider='openai',\n    max_iterations=5,\n    test_timeout=60\n  ),\n  claude_code=ClaudeCodeConfig(\n    max_turns=25,\n    use_bedrock=False,\n    max_thinking_tokens=8000\n  )\n)\n\nagent = FeedbackSupervisorAgent(config=config)\n```\n\n### Environment-Specific Configurations\n\n```python\nfrom claude_code_supervisor import FeedbackSupervisorAgent\nfrom claude_code_supervisor.config import development_config, production_config\n\n# Development environment (uses gpt-4o-mini, higher iterations)\ndev_config = development_config()\ndev_agent = FeedbackSupervisorAgent(config=dev_config)\n\n# Production environment (uses gpt-4o, optimized settings)\nprod_config = production_config()\nprod_agent = FeedbackSupervisorAgent(config=prod_config)\n```\n\n### Tool Configuration\n\nClaude Code has access to various tools. By default, all tools are enabled, but you can customize which tools are available:\n\n```python\nfrom claude_code_supervisor import FeedbackSupervisorAgent\nfrom claude_code_supervisor.config import SupervisorConfig, ClaudeCodeConfig\nfrom claude_code_supervisor.utils import ToolsEnum\n\n# All tools (default)\nconfig = SupervisorConfig(\n    claude_code=ClaudeCodeConfig(tools=ToolsEnum.all())\n)\n\n# Custom tool set\nconfig = SupervisorConfig(\n    claude_code=ClaudeCodeConfig(\n        tools=['Read', 'Write', 'Edit', 'Bash', 'TodoWrite', 'LS', 'Grep']\n    )\n)\n\n# Minimal tools for simple tasks\nfrom claude_code_supervisor.config import minimal_tools_config\nconfig = minimal_tools_config()\n\n# Notebook-focused tools\nfrom claude_code_supervisor.config import notebook_config\nconfig = notebook_config()\n```\n\n**Available Tools:**\n- `Read`, `Write`, `Edit`, `MultiEdit` - File operations\n- `Bash` - Command execution\n- `LS`, `Glob`, `Grep` - File system navigation and search\n- `TodoWrite` - Task management\n- `NotebookRead`, `NotebookEdit` - Jupyter notebook support\n- `WebFetch`, `WebSearch` - Web access\n- `Agent` - Delegate tasks to other agents\n\n## \ud83e\uddea Testing\n\nRun the test suite:\n\n```bash\n# Run all tests\npytest\n\n# Run with coverage\npytest --cov=claude_code_supervisor\n\n# Run specific test categories\npytest -m \"unit\"\npytest -m \"integration\"\n```\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! Please see our [Contributing Guidelines](CONTRIBUTING.md) for details.\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n## \ud83d\udcdd License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## \ud83d\ude4f Acknowledgments\n\n- [Claude Code SDK](https://github.com/anthropics/claude-code-sdk-python) for the core Claude Code integration\n- [LangGraph](https://github.com/langchain-ai/langgraph) for workflow orchestration\n- [LangChain](https://github.com/langchain-ai/langchain) for LLM integrations\n\n## \ud83d\udcda Documentation\n\nFor detailed usage examples, see the [examples directory](examples/) and the configuration examples above.\n\n## \ud83d\udc1b Issues\n\nFound a bug? Have a feature request? Please [open an issue](https://github.com/vinyluis/claude-code-supervisor/issues).\n\n---\n\n**Made with \u2764\ufe0f by [Vin\u00edcius Trevisan](mailto:vinicius@viniciustrevisan.com)**\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "An intelligent wrapper around Claude Code SDK for automated problem-solving",
    "version": "0.2.2",
    "project_urls": {
        "Changelog": "https://github.com/vinyluis/claude-code-supervisor/blob/main/CHANGELOG.md",
        "Documentation": "https://github.com/vinyluis/claude-code-supervisor#readme",
        "Homepage": "https://github.com/vinyluis/claude-code-supervisor",
        "Issues": "https://github.com/vinyluis/claude-code-supervisor/issues",
        "Repository": "https://github.com/vinyluis/claude-code-supervisor.git"
    },
    "split_keywords": [
        "claude",
        " code-generation",
        " ai",
        " automation",
        " testing",
        " development"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1dabc179955148a0002cdd60282799b777c364a314c541875bd6139d10faa64f",
                "md5": "9a110feea823131696e63b79d06b560e",
                "sha256": "c23696f233a6f1b10e257b4fee61dd3a9900a9aea457a7eb7037a0b166b0e42a"
            },
            "downloads": -1,
            "filename": "claude_code_supervisor-0.2.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9a110feea823131696e63b79d06b560e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 35724,
            "upload_time": "2025-07-25T00:08:46",
            "upload_time_iso_8601": "2025-07-25T00:08:46.681348Z",
            "url": "https://files.pythonhosted.org/packages/1d/ab/c179955148a0002cdd60282799b777c364a314c541875bd6139d10faa64f/claude_code_supervisor-0.2.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5760e0250ffed5a1fd7b23011f88ed87142dcce6edbdc55e6e3471f7ab9d6af3",
                "md5": "1a84e2e44b4819d0c0f09963151d888b",
                "sha256": "24c8a9920119a040441b446e671d65810b0c05f5bdcb46acc20b4919775d097c"
            },
            "downloads": -1,
            "filename": "claude_code_supervisor-0.2.2.tar.gz",
            "has_sig": false,
            "md5_digest": "1a84e2e44b4819d0c0f09963151d888b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 49243,
            "upload_time": "2025-07-25T00:08:47",
            "upload_time_iso_8601": "2025-07-25T00:08:47.849500Z",
            "url": "https://files.pythonhosted.org/packages/57/60/e0250ffed5a1fd7b23011f88ed87142dcce6edbdc55e6e3471f7ab9d6af3/claude_code_supervisor-0.2.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-25 00:08:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "vinyluis",
    "github_project": "claude-code-supervisor",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "numpy",
            "specs": [
                [
                    "==",
                    "2.3.1"
                ]
            ]
        },
        {
            "name": "pandas",
            "specs": [
                [
                    "==",
                    "2.3.0"
                ]
            ]
        },
        {
            "name": "scikit-learn",
            "specs": [
                [
                    "==",
                    "1.7.0"
                ]
            ]
        },
        {
            "name": "langchain",
            "specs": [
                [
                    "==",
                    "0.3.26"
                ]
            ]
        },
        {
            "name": "langchain-aws",
            "specs": [
                [
                    "==",
                    "0.2.27"
                ]
            ]
        },
        {
            "name": "langchain-openai",
            "specs": [
                [
                    "==",
                    "0.3.26"
                ]
            ]
        },
        {
            "name": "langgraph",
            "specs": [
                [
                    "==",
                    "0.4.10"
                ]
            ]
        },
        {
            "name": "claude-code-sdk",
            "specs": [
                [
                    "==",
                    "0.0.14"
                ]
            ]
        },
        {
            "name": "pytest",
            "specs": [
                [
                    ">=",
                    "6.0.0"
                ]
            ]
        },
        {
            "name": "python-dotenv",
            "specs": [
                [
                    ">=",
                    "0.19.0"
                ]
            ]
        }
    ],
    "lcname": "claude-code-supervisor"
}
        
Elapsed time: 1.35829s