agentdk


Nameagentdk JSON
Version 0.3.0 PyPI version JSON
download
home_pageNone
SummaryAgent Development Kit for building intelligent agents with LangGraph and MCP integration, Support Agent Async in jupyter notebook/IPython
upload_time2025-07-15 12:45:51
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseMIT
keywords agents ai automation langgraph llm mcp multi-agent
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # AgentDK - Agent Development Kit

A Python framework for building intelligent agents with LangGraph + MCP integration. Create data analysis agents, multi-agent workflows, and persistent CLI interactions.

## 🚀 Key Features

- **🤖 Agent Workflows**: Individual agents and multi-agent supervisor patterns  
- **🔌 MCP Integration**: Model Context Protocol servers for standardized tool access
- **🧠 Memory & Sessions**: Conversation continuity and user preferences
- **🖥️ CLI Interface**: Interactive sessions with `agentdk run`

## 📦 Installation

Choose your installation method based on your needs:

### Option 1: PyPI Install (Library Usage)

**Best for**: Using AgentDK as a library in your projects, creating custom agents

```bash
pip install agentdk[all]
```

This installs AgentDK with all dependencies and includes working examples.

### Option 2: GitHub Clone (Development & Examples)

**Best for**: Exploring examples, contributing, or development with database setup

```bash
# Clone repository
git clone https://github.com/breadpowder/agentdk.git
cd agentdk

# Create UV environment (recommended)
uv venv --python 3.11
source .venv/bin/activate  # Linux/Mac
# .venv\Scripts\activate   # Windows

# Install with all dependencies
uv sync --extra all

# Set up examples environment with database
cd examples
./setup.sh  # Sets up MySQL database with Docker
```

## 🏁 Quick Start

### After PyPI Install

Set your API key and try a simple agent:

```bash
# Set your API key
export OPENAI_API_KEY="your-key"
# or export ANTHROPIC_API_KEY="your-key"

# Try the included EDA agent example
agentdk run -m agentdk.examples.subagent.eda_agent

# Or run the multi-agent supervisor
agentdk run -m agentdk.examples.agent_app
```

### After GitHub Clone

```bash
# Set your API key
export OPENAI_API_KEY="your-key"

# Run examples from the examples directory
cd examples
agentdk run subagent/eda_agent.py
agentdk run agent_app.py

# Interactive sessions with memory
agentdk run subagent/eda_agent.py --resume
```

### Interactive Session Example

```bash
$ agentdk run -m agentdk.examples.subagent.eda_agent
✅ Using OpenAI gpt-4o-mini
Agent ready. Type 'exit' to quit.

[user]: How many customers are in the database?
[eda_agent]: Let me check the customer count...

[user]: exit
Session saved. Resume with: agentdk run <path> --resume
```

## 🛠️ How to Define Your Own Agents

### 1. Simple Agent (Database Analysis)

Create a basic agent that connects to a database via MCP:

```python
from agentdk.builder.agent_builder import buildAgent

def create_my_agent(llm, mcp_config_path=None, **kwargs):
    """Create a database analysis agent."""
    return buildAgent(
        agent_class="SubAgentWithMCP",
        llm=llm,
        mcp_config_path=mcp_config_path or "mcp_config.json",
        name="my_agent",
        prompt="You are a helpful database analyst. Help users explore and analyze data.",
        **kwargs
    )
```

#### MCP Configuration Setup

Create `mcp_config.json` for database access:

```json
{
  "mysql": {
    "command": "uv",
    "args": ["--directory", "../mysql_mcp_server", "run", "mysql_mcp_server"],
    "env": {
      "MYSQL_HOST": "localhost",
      "MYSQL_PORT": "3306",
      "MYSQL_USER": "your_user",
      "MYSQL_PASSWORD": "your_password",  
      "MYSQL_DATABASE": "your_database"
    }
  }
}
```

**Path Resolution Rules:**
- **Relative paths** (like `"../mysql_mcp_server"`) are resolved relative to the config file location
- **Absolute paths** work from any location
- AgentDK searches for configs in this order:
  1. Explicit path provided to agent
  2. Same directory as your agent file
  3. Current working directory
  4. Parent directory
  5. Examples directory (if exists)

### 2. Multi-Agent Supervisor Pattern

Combine multiple specialized agents:

```python
from agentdk.agent.base_app import RootAgent
from agentdk.agent.app_utils import create_supervisor_workflow

class MyApp(RootAgent):
    """Multi-agent application with supervisor workflow."""
    
    def create_workflow(self, llm):
        # Create specialized agents
        data_agent = create_my_agent(llm, "config/mcp_config.json")
        research_agent = create_research_agent(llm)
        
        # Create supervisor that routes between agents
        return create_supervisor_workflow([data_agent, research_agent], llm)

# Usage
app = MyApp(llm=your_llm, memory=True)
result = app("Analyze our customer data and research market trends")
```

### 3. Agent Without MCP (Custom Tools)

For agents with custom Python functions:

```python
from agentdk.agent.factory import create_agent

def my_custom_tool(query: str) -> str:
    """Custom tool implementation."""
    return f"Processed: {query}"

# Create agent with custom tools
agent = create_agent(
    agent_type="tools",
    llm=your_llm,
    tools=[my_custom_tool],
    name="custom_agent",
    prompt="You are a helpful assistant with custom tools."
)

result = agent.query("Help me with something")
```

### 4. CLI Integration

Make your agent runnable with `agentdk run`:

```python
# my_agent.py
from agentdk.core.logging_config import ensure_nest_asyncio

# Enable async support
ensure_nest_asyncio()

def create_my_agent(llm=None, **kwargs):
    """Factory function for CLI loading."""
    return buildAgent(
        agent_class="SubAgentWithMCP",
        llm=llm,
        mcp_config_path="config/mcp_config.json",
        name="my_agent",
        prompt="You are my custom agent.",
        **kwargs
    )

# CLI will auto-detect this function
```

Then run: `agentdk run my_agent.py`

## 🔧 MCP Configuration Guide

### Config File Locations

AgentDK searches for `mcp_config.json` in this priority order:

1. **Explicit path**: `create_agent(mcp_config_path="/absolute/path/to/config.json")`
2. **Agent directory**: Same folder as your agent Python file
3. **Working directory**: Where you run the command from
4. **Parent directory**: One level up from working directory
5. **Examples directory**: If `examples/` folder exists

### Path Types

**Relative Paths (Recommended):**
```json
{
  "mysql": {
    "command": "uv",
    "args": ["--directory", "../mysql_mcp_server", "run", "mysql_mcp_server"]
  }
}
```
- Resolved relative to config file location
- Portable across different systems
- Works when moving project directories

**Absolute Paths:**
```json
{
  "mysql": {
    "command": "/usr/local/bin/mysql_mcp_server",
    "args": ["--host", "localhost"]
  }
}
```
- Fixed system paths
- Not portable but explicit

### Environment Variables

Add environment variables to your MCP server config:

```json
{
  "mysql": {
    "command": "mysql_mcp_server",
    "args": ["--config", "mysql.conf"],
    "env": {
      "MYSQL_HOST": "localhost",
      "MYSQL_PORT": "3306",
      "MYSQL_USER": "agent_user",
      "MYSQL_PASSWORD": "secure_password",
      "MYSQL_DATABASE": "production_db"
    }
  }
}
```

## 📁 Examples Directory

**Note**: Examples are included in PyPI installs and available via `-m agentdk.examples`

| File | Description | Run Command |
|------|-------------|-------------|
| `agent_app.py` | Multi-agent supervisor with EDA + research | `agentdk run -m agentdk.examples.agent_app` |
| `subagent/eda_agent.py` | Database analysis agent with MySQL MCP | `agentdk run -m agentdk.examples.subagent.eda_agent` |
| `subagent/research_agent.py` | Web research agent | `agentdk run -m agentdk.examples.subagent.research_agent` |

**For GitHub installations:**
| File | Description | Run Command |
|------|-------------|-------------|
| `setup.sh` | Environment setup with database | `./setup.sh` |
| `agentdk_testing_notebook.ipynb` | Jupyter notebook examples | `jupyter lab` |

## 🔧 Troubleshooting

### Common Issues

**"No valid MCP configuration found"**
```bash
# Check your current directory and config location
ls -la mcp_config.json

# Use absolute path
agentdk run --mcp-config /full/path/to/mcp_config.json my_agent.py

# Or ensure you're in the right directory
cd /path/to/your/project
agentdk run my_agent.py
```

**"MySQL connection failed"**
```bash
# For GitHub installations, ensure database is running
cd examples
./setup.sh
docker ps  # Should show mysql container

# Check your environment variables
echo $MYSQL_HOST $MYSQL_USER $MYSQL_PASSWORD
```

**"agentdk command not found"**
```bash
# Reinstall with CLI dependencies
pip install agentdk[all]
# or for UV
uv sync --extra all
```

**"Examples not found after pip install"**
```bash
# Use module syntax for PyPI installs
agentdk run -m agentdk.examples.subagent.eda_agent

# Or clone GitHub repo for development
git clone https://github.com/breadpowder/agentdk.git
```

### Environment Requirements
- Python 3.11+
- Docker (for database examples)
- OpenAI or Anthropic API key

## 🚀 Advanced Usage

### Memory and Sessions

```python
# Enable memory for conversation continuity
app = MyApp(llm=your_llm, memory=True, user_id="analyst_001")

# Sessions persist across CLI runs
agentdk run my_agent.py --resume --user-id analyst_001
```

### Custom Memory Configuration

```python
memory_config = {
    "provider": "mem0",
    "working_memory_limit": 10,
    "episodic_memory_limit": 100
}

app = MyApp(llm=your_llm, memory=True, memory_config=memory_config)
```

### Jupyter Integration

```python
from agentdk.core.logging_config import ensure_nest_asyncio

# Enable async support in notebooks
ensure_nest_asyncio()

# Use agents in Jupyter
agent = create_my_agent(llm)
result = agent.query("What data do we have?")
```

## License
MIT License - see [LICENSE](LICENSE) file for details.

## Links
- **Homepage**: [https://github.com/breadpowder/agentdk](https://github.com/breadpowder/agentdk)
- **Bug Reports**: [GitHub Issues](https://github.com/breadpowder/agentdk/issues)
- **Contributing**: See [CONTRIBUTING.md](CONTRIBUTING.md)

---

Built with ❤️ for the LangGraph and MCP community.
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "agentdk",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "agents, ai, automation, langgraph, llm, mcp, multi-agent",
    "author": null,
    "author_email": "Zineng Yuan <zineng.yuan01@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/60/0c/e7ddc66a3c8472a7d7b33d61150aad9a78e298572b96ed6b274acd138fc1/agentdk-0.3.0.tar.gz",
    "platform": null,
    "description": "# AgentDK - Agent Development Kit\n\nA Python framework for building intelligent agents with LangGraph + MCP integration. Create data analysis agents, multi-agent workflows, and persistent CLI interactions.\n\n## \ud83d\ude80 Key Features\n\n- **\ud83e\udd16 Agent Workflows**: Individual agents and multi-agent supervisor patterns  \n- **\ud83d\udd0c MCP Integration**: Model Context Protocol servers for standardized tool access\n- **\ud83e\udde0 Memory & Sessions**: Conversation continuity and user preferences\n- **\ud83d\udda5\ufe0f CLI Interface**: Interactive sessions with `agentdk run`\n\n## \ud83d\udce6 Installation\n\nChoose your installation method based on your needs:\n\n### Option 1: PyPI Install (Library Usage)\n\n**Best for**: Using AgentDK as a library in your projects, creating custom agents\n\n```bash\npip install agentdk[all]\n```\n\nThis installs AgentDK with all dependencies and includes working examples.\n\n### Option 2: GitHub Clone (Development & Examples)\n\n**Best for**: Exploring examples, contributing, or development with database setup\n\n```bash\n# Clone repository\ngit clone https://github.com/breadpowder/agentdk.git\ncd agentdk\n\n# Create UV environment (recommended)\nuv venv --python 3.11\nsource .venv/bin/activate  # Linux/Mac\n# .venv\\Scripts\\activate   # Windows\n\n# Install with all dependencies\nuv sync --extra all\n\n# Set up examples environment with database\ncd examples\n./setup.sh  # Sets up MySQL database with Docker\n```\n\n## \ud83c\udfc1 Quick Start\n\n### After PyPI Install\n\nSet your API key and try a simple agent:\n\n```bash\n# Set your API key\nexport OPENAI_API_KEY=\"your-key\"\n# or export ANTHROPIC_API_KEY=\"your-key\"\n\n# Try the included EDA agent example\nagentdk run -m agentdk.examples.subagent.eda_agent\n\n# Or run the multi-agent supervisor\nagentdk run -m agentdk.examples.agent_app\n```\n\n### After GitHub Clone\n\n```bash\n# Set your API key\nexport OPENAI_API_KEY=\"your-key\"\n\n# Run examples from the examples directory\ncd examples\nagentdk run subagent/eda_agent.py\nagentdk run agent_app.py\n\n# Interactive sessions with memory\nagentdk run subagent/eda_agent.py --resume\n```\n\n### Interactive Session Example\n\n```bash\n$ agentdk run -m agentdk.examples.subagent.eda_agent\n\u2705 Using OpenAI gpt-4o-mini\nAgent ready. Type 'exit' to quit.\n\n[user]: How many customers are in the database?\n[eda_agent]: Let me check the customer count...\n\n[user]: exit\nSession saved. Resume with: agentdk run <path> --resume\n```\n\n## \ud83d\udee0\ufe0f How to Define Your Own Agents\n\n### 1. Simple Agent (Database Analysis)\n\nCreate a basic agent that connects to a database via MCP:\n\n```python\nfrom agentdk.builder.agent_builder import buildAgent\n\ndef create_my_agent(llm, mcp_config_path=None, **kwargs):\n    \"\"\"Create a database analysis agent.\"\"\"\n    return buildAgent(\n        agent_class=\"SubAgentWithMCP\",\n        llm=llm,\n        mcp_config_path=mcp_config_path or \"mcp_config.json\",\n        name=\"my_agent\",\n        prompt=\"You are a helpful database analyst. Help users explore and analyze data.\",\n        **kwargs\n    )\n```\n\n#### MCP Configuration Setup\n\nCreate `mcp_config.json` for database access:\n\n```json\n{\n  \"mysql\": {\n    \"command\": \"uv\",\n    \"args\": [\"--directory\", \"../mysql_mcp_server\", \"run\", \"mysql_mcp_server\"],\n    \"env\": {\n      \"MYSQL_HOST\": \"localhost\",\n      \"MYSQL_PORT\": \"3306\",\n      \"MYSQL_USER\": \"your_user\",\n      \"MYSQL_PASSWORD\": \"your_password\",  \n      \"MYSQL_DATABASE\": \"your_database\"\n    }\n  }\n}\n```\n\n**Path Resolution Rules:**\n- **Relative paths** (like `\"../mysql_mcp_server\"`) are resolved relative to the config file location\n- **Absolute paths** work from any location\n- AgentDK searches for configs in this order:\n  1. Explicit path provided to agent\n  2. Same directory as your agent file\n  3. Current working directory\n  4. Parent directory\n  5. Examples directory (if exists)\n\n### 2. Multi-Agent Supervisor Pattern\n\nCombine multiple specialized agents:\n\n```python\nfrom agentdk.agent.base_app import RootAgent\nfrom agentdk.agent.app_utils import create_supervisor_workflow\n\nclass MyApp(RootAgent):\n    \"\"\"Multi-agent application with supervisor workflow.\"\"\"\n    \n    def create_workflow(self, llm):\n        # Create specialized agents\n        data_agent = create_my_agent(llm, \"config/mcp_config.json\")\n        research_agent = create_research_agent(llm)\n        \n        # Create supervisor that routes between agents\n        return create_supervisor_workflow([data_agent, research_agent], llm)\n\n# Usage\napp = MyApp(llm=your_llm, memory=True)\nresult = app(\"Analyze our customer data and research market trends\")\n```\n\n### 3. Agent Without MCP (Custom Tools)\n\nFor agents with custom Python functions:\n\n```python\nfrom agentdk.agent.factory import create_agent\n\ndef my_custom_tool(query: str) -> str:\n    \"\"\"Custom tool implementation.\"\"\"\n    return f\"Processed: {query}\"\n\n# Create agent with custom tools\nagent = create_agent(\n    agent_type=\"tools\",\n    llm=your_llm,\n    tools=[my_custom_tool],\n    name=\"custom_agent\",\n    prompt=\"You are a helpful assistant with custom tools.\"\n)\n\nresult = agent.query(\"Help me with something\")\n```\n\n### 4. CLI Integration\n\nMake your agent runnable with `agentdk run`:\n\n```python\n# my_agent.py\nfrom agentdk.core.logging_config import ensure_nest_asyncio\n\n# Enable async support\nensure_nest_asyncio()\n\ndef create_my_agent(llm=None, **kwargs):\n    \"\"\"Factory function for CLI loading.\"\"\"\n    return buildAgent(\n        agent_class=\"SubAgentWithMCP\",\n        llm=llm,\n        mcp_config_path=\"config/mcp_config.json\",\n        name=\"my_agent\",\n        prompt=\"You are my custom agent.\",\n        **kwargs\n    )\n\n# CLI will auto-detect this function\n```\n\nThen run: `agentdk run my_agent.py`\n\n## \ud83d\udd27 MCP Configuration Guide\n\n### Config File Locations\n\nAgentDK searches for `mcp_config.json` in this priority order:\n\n1. **Explicit path**: `create_agent(mcp_config_path=\"/absolute/path/to/config.json\")`\n2. **Agent directory**: Same folder as your agent Python file\n3. **Working directory**: Where you run the command from\n4. **Parent directory**: One level up from working directory\n5. **Examples directory**: If `examples/` folder exists\n\n### Path Types\n\n**Relative Paths (Recommended):**\n```json\n{\n  \"mysql\": {\n    \"command\": \"uv\",\n    \"args\": [\"--directory\", \"../mysql_mcp_server\", \"run\", \"mysql_mcp_server\"]\n  }\n}\n```\n- Resolved relative to config file location\n- Portable across different systems\n- Works when moving project directories\n\n**Absolute Paths:**\n```json\n{\n  \"mysql\": {\n    \"command\": \"/usr/local/bin/mysql_mcp_server\",\n    \"args\": [\"--host\", \"localhost\"]\n  }\n}\n```\n- Fixed system paths\n- Not portable but explicit\n\n### Environment Variables\n\nAdd environment variables to your MCP server config:\n\n```json\n{\n  \"mysql\": {\n    \"command\": \"mysql_mcp_server\",\n    \"args\": [\"--config\", \"mysql.conf\"],\n    \"env\": {\n      \"MYSQL_HOST\": \"localhost\",\n      \"MYSQL_PORT\": \"3306\",\n      \"MYSQL_USER\": \"agent_user\",\n      \"MYSQL_PASSWORD\": \"secure_password\",\n      \"MYSQL_DATABASE\": \"production_db\"\n    }\n  }\n}\n```\n\n## \ud83d\udcc1 Examples Directory\n\n**Note**: Examples are included in PyPI installs and available via `-m agentdk.examples`\n\n| File | Description | Run Command |\n|------|-------------|-------------|\n| `agent_app.py` | Multi-agent supervisor with EDA + research | `agentdk run -m agentdk.examples.agent_app` |\n| `subagent/eda_agent.py` | Database analysis agent with MySQL MCP | `agentdk run -m agentdk.examples.subagent.eda_agent` |\n| `subagent/research_agent.py` | Web research agent | `agentdk run -m agentdk.examples.subagent.research_agent` |\n\n**For GitHub installations:**\n| File | Description | Run Command |\n|------|-------------|-------------|\n| `setup.sh` | Environment setup with database | `./setup.sh` |\n| `agentdk_testing_notebook.ipynb` | Jupyter notebook examples | `jupyter lab` |\n\n## \ud83d\udd27 Troubleshooting\n\n### Common Issues\n\n**\"No valid MCP configuration found\"**\n```bash\n# Check your current directory and config location\nls -la mcp_config.json\n\n# Use absolute path\nagentdk run --mcp-config /full/path/to/mcp_config.json my_agent.py\n\n# Or ensure you're in the right directory\ncd /path/to/your/project\nagentdk run my_agent.py\n```\n\n**\"MySQL connection failed\"**\n```bash\n# For GitHub installations, ensure database is running\ncd examples\n./setup.sh\ndocker ps  # Should show mysql container\n\n# Check your environment variables\necho $MYSQL_HOST $MYSQL_USER $MYSQL_PASSWORD\n```\n\n**\"agentdk command not found\"**\n```bash\n# Reinstall with CLI dependencies\npip install agentdk[all]\n# or for UV\nuv sync --extra all\n```\n\n**\"Examples not found after pip install\"**\n```bash\n# Use module syntax for PyPI installs\nagentdk run -m agentdk.examples.subagent.eda_agent\n\n# Or clone GitHub repo for development\ngit clone https://github.com/breadpowder/agentdk.git\n```\n\n### Environment Requirements\n- Python 3.11+\n- Docker (for database examples)\n- OpenAI or Anthropic API key\n\n## \ud83d\ude80 Advanced Usage\n\n### Memory and Sessions\n\n```python\n# Enable memory for conversation continuity\napp = MyApp(llm=your_llm, memory=True, user_id=\"analyst_001\")\n\n# Sessions persist across CLI runs\nagentdk run my_agent.py --resume --user-id analyst_001\n```\n\n### Custom Memory Configuration\n\n```python\nmemory_config = {\n    \"provider\": \"mem0\",\n    \"working_memory_limit\": 10,\n    \"episodic_memory_limit\": 100\n}\n\napp = MyApp(llm=your_llm, memory=True, memory_config=memory_config)\n```\n\n### Jupyter Integration\n\n```python\nfrom agentdk.core.logging_config import ensure_nest_asyncio\n\n# Enable async support in notebooks\nensure_nest_asyncio()\n\n# Use agents in Jupyter\nagent = create_my_agent(llm)\nresult = agent.query(\"What data do we have?\")\n```\n\n## License\nMIT License - see [LICENSE](LICENSE) file for details.\n\n## Links\n- **Homepage**: [https://github.com/breadpowder/agentdk](https://github.com/breadpowder/agentdk)\n- **Bug Reports**: [GitHub Issues](https://github.com/breadpowder/agentdk/issues)\n- **Contributing**: See [CONTRIBUTING.md](CONTRIBUTING.md)\n\n---\n\nBuilt with \u2764\ufe0f for the LangGraph and MCP community.",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Agent Development Kit for building intelligent agents with LangGraph and MCP integration, Support Agent Async in jupyter notebook/IPython",
    "version": "0.3.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/breadpowder/agentdk/issues",
        "Homepage": "https://github.com/breadpowder/agentdk"
    },
    "split_keywords": [
        "agents",
        " ai",
        " automation",
        " langgraph",
        " llm",
        " mcp",
        " multi-agent"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d3fd7844f2884fee90b965ee009dbfc485bdae5ab04ab2a957548e66be4a81e4",
                "md5": "6e8e7baeef34d7363c972bb1e3059396",
                "sha256": "8b8bce443ba31610c7c7b01f61e48eb9fc67b1c6ae9b1b523b617ee1f90f31a1"
            },
            "downloads": -1,
            "filename": "agentdk-0.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6e8e7baeef34d7363c972bb1e3059396",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 83405,
            "upload_time": "2025-07-15T12:45:50",
            "upload_time_iso_8601": "2025-07-15T12:45:50.646082Z",
            "url": "https://files.pythonhosted.org/packages/d3/fd/7844f2884fee90b965ee009dbfc485bdae5ab04ab2a957548e66be4a81e4/agentdk-0.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "600ce7ddc66a3c8472a7d7b33d61150aad9a78e298572b96ed6b274acd138fc1",
                "md5": "6e1be378b2b1ad28e5b8f7869fac1abb",
                "sha256": "9cb27e4bdebced73f56fd3f2a54ac351e637607bac2df595a89c8fecbaf3aa81"
            },
            "downloads": -1,
            "filename": "agentdk-0.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "6e1be378b2b1ad28e5b8f7869fac1abb",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 84739,
            "upload_time": "2025-07-15T12:45:51",
            "upload_time_iso_8601": "2025-07-15T12:45:51.716201Z",
            "url": "https://files.pythonhosted.org/packages/60/0c/e7ddc66a3c8472a7d7b33d61150aad9a78e298572b96ed6b274acd138fc1/agentdk-0.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-15 12:45:51",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "breadpowder",
    "github_project": "agentdk",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "agentdk"
}
        
Elapsed time: 1.09866s