Claude Everything
A general-purpose AI agent built with LangGraph that includes two default tools:
- Sub-agent spawning: Create new agent instances for handling subtasks
- Todo list management: Organize tasks using a "replace entire state" pattern
Features
- General Purpose: Handles a wide variety of tasks with Claude's capabilities
- Sub-agent Delegation: Spawn independent sub-agents for complex subtasks
- Todo Management: Built-in task tracking with priority and status management
- Extensible: Additional tools can be passed in at runtime
- LangGraph Integration: Built on LangGraph for robust state management
Installation
pip install -e .
Usage
Basic Usage
from claude_everything.graph import graph
from langchain_core.messages import HumanMessage
# Simple usage
result = await graph.ainvoke({
"messages": [HumanMessage(content="Help me plan a project")]
})
With Additional Tools
from claude_everything.graph import graph
from langchain_core.messages import HumanMessage
# Define custom tools
def custom_calculator(expression: str) -> str:
"""Calculate mathematical expressions."""
try:
result = eval(expression)
return f"Result: {result}"
except Exception as e:
return f"Error: {e}"
# Use with additional tools
result = await graph.ainvoke({
"messages": [HumanMessage(content="Calculate 15 * 23 + 7")],
"additional_tools": [custom_calculator]
})
Default Tools
1. Sub-agent Tool (spawn_sub_agent)
Spawns a new agent instance to handle specific subtasks:
# The agent can use this internally like:
# spawn_sub_agent(
# task_description="Research the latest developments in AI",
# additional_context="Focus on developments from 2024"
# )
2. Todo List Tool (update_todo_list)
Manages tasks with a replace-entire-state pattern:
# The agent can use this internally like:
# update_todo_list(todos_json='[
# {"id": "1", "content": "Research topic", "status": "completed", "priority": "high"},
# {"id": "2", "content": "Write summary", "status": "in_progress", "priority": "medium"}
# ]')
Todo items have the following structure:
id: Unique identifiercontent: Task descriptionstatus: One of "pending", "in_progress", "completed"priority: One of "high", "medium", "low"
Running with LangGraph CLI
# Start the development server
langgraph dev
# Deploy to LangGraph Cloud
langgraph deploy
Architecture
The agent follows a standard LangGraph pattern:
- State Management: Maintains conversation messages, todo list, and additional tools
- Model Calling: Uses configurable language models (OpenAI, Anthropic, Fireworks)
- Tool Execution: Processes tool calls with special handling for todo list updates
- Routing: Continues conversation or ends based on model output
Development
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Type checking
mypy src/
# Code formatting
ruff format src/
ruff check src/
Metadata
Release files for claude-everything 0.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| claude_everything-0.0.1.tar.gz | 9.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| claude_everything-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.0 kB
Release files / claude_everything-0.0.1.tar.gz
| Download URL | claude_everything-0.0.1.tar.gz |
|---|---|
| Size | 9.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5d8e894a0f1d43eb4032fe98f529b53e72116e6ec31103560a54688d0844abaf
|
|
BLAKE2b-256 checksum How to use checksums |
2edbe0ee9701051d26dc08410bf1e1620690d24055b25d891ef9c777f1658505
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.1
|
Release files / claude_everything-0.0.1-py3-none-any.whl
| Download URL | claude_everything-0.0.1-py3-none-any.whl |
|---|---|
| Size | 11.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9032278489ed5add7f0bce016deeadff9134964dec3d52b53e2e7580665075c6
|
|
BLAKE2b-256 checksum How to use checksums |
f8614ebc075ef5610ed702bf38310099e361ac7232f009ae77a844877a61953f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.1
|