Skip to main content

A production-ready, observable, and reliable AI agent orchestration framework.

Project description

FreePalestine.Dev

AgentHelm

Production-Ready Orchestration for AI Agents.


AgentHelm is a lightweight Python framework for building AI agents with a focus on production-readiness. It provides the essential orchestration layer to make your agents observable, reliable, and safe.

In the rapidly evolving world of AI agents, many frameworks focus on rapid prototyping. AgentHelm is different. It's built on the premise that for agents to be trusted in real-world, production environments, they need the same level of observability and control as traditional software.

If you've ever struggled to debug a failing agent or worried about deploying an agent that interacts with real-world systems, AgentHelm is for you.

Key Features

  • Traceable Execution: Automatically log every tool call, its inputs, outputs, errors, and execution time. Get a complete, structured audit trail of your agent's actions.
  • Human-in-the-Loop: Mark sensitive tools (e.g., charge_credit_card) with a @tool(requires_approval=True) decorator to ensure a human must approve the action before it runs.
  • Resilient Workflows: Define automatic retries for flaky tools that might fail due to transient network errors.
  • Transactional Safety: Implement automatic rollbacks for multi-step workflows. If a step fails, AgentHelm can run compensating actions to undo the previous steps.
graph TD
subgraph "AgentHelm Ecosystem"
    direction LR
    A[User Task] --> AH(AgentHelm Orchestrator)
    AH --  Sends prompt/tools --> LLM(LLM Engine e.g., Mistral)
    LLM --  Returns tool_call --> AH
    AH --  Executes tool --> T1[Tool: get_weather]
    AH --  Executes tool --> T2[Tool: post_tweet]
    AH --  Executes tool --> T3[Tool: ...]
    T1 --  Returns result --> AH
    T2 --  Returns result --> AH
    AH --  Sends result to LLM --> LLM
    LLM -- Returns final answer --> AH
    AH -- Returns to User --> UO[Final Output]
end

style AH fill:#007BFF,stroke:#333,stroke-width:2px,color:#fff
style LLM fill:#FFC107,stroke:#333,stroke-width:2px,color:#000        

Quick Start

1. Installation

pip install agenthelm

2. Create your Tools

Create a Python file (e.g., tools.py) and define your functions with the @tool decorator. AgentHelm automatically parses the function signature to build the contract.

# tools.py
from orchestrator import tool

@tool()
def get_weather(city: str) -> str:
    """Gets the current weather for a given city."""
    if city == "New York":
        return "It is 24°C and sunny in New York."
    else:
        return f"Sorry, I don't know the weather for {city}."

@tool(requires_approval=True)
def post_tweet(message: str) -> dict:
    """Posts a message to a social media feed."""
    print(f"TWEETING: {message}")
    return {"status": "posted"}

3. Environment Variables

AgentHelm requires API keys for the Large Language Models (LLMs) it interacts with. Set these as environment variables:

  • Mistral AI: Set MISTRAL_API_KEY. Optionally, set MISTRAL_MODEL_NAME (defaults to mistral-small-latest).
    export MISTRAL_API_KEY="your_mistral_api_key_here"
    # export MISTRAL_MODEL_NAME="mistral-large-latest"
    
  • OpenAI: Set OPENAI_API_KEY. Optionally, set OPENAI_MODEL_NAME (defaults to gpt-4).
    export OPENAI_API_KEY="your_openai_api_key_here"
    # export OPENAI_MODEL_NAME="gpt-3.5-turbo"
    

4. Run the Agent

Use the agenthelm command-line tool (or python -m main) to run your agent. The CLI handles everything from setting up the agent to running the reasoning loop and logging the traces.

# Run the agent from your terminal
agenthelm run \
  --agent-file examples/cli_tools_example/my_agent_tools.py \
  --task "What is the weather in New York?"

# For verbose output, add the -v or --verbose flag
agenthelm run \
  --agent-file examples/cli_tools_example/my_agent_tools.py \
  --task "What is the weather in New York?" \
  --llm-type mistral \
  --verbose

# To specify the output trace file, use the --trace-file option
agenthelm run \
  --agent-file examples/cli_tools_example/my_agent_tools.py \
  --task "What is the weather in New York?" \
  --trace-file my_trace.json

This will produce a detailed trace file (by default cli_trace.json), giving you a perfect record of the agent's execution.

Documentation

For comprehensive guides, tutorials, and API reference, please visit our official documentation site: https://hadywalied.github.io/agenthelm/

Contributing

We welcome contributions! Please feel free to open an issue or submit a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agenthelm-0.1.3.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agenthelm-0.1.3-py3-none-any.whl (15.5 kB view details)

Uploaded Python 3

File details

Details for the file agenthelm-0.1.3.tar.gz.

File metadata

  • Download URL: agenthelm-0.1.3.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.7

File hashes

Hashes for agenthelm-0.1.3.tar.gz
Algorithm Hash digest
SHA256 b67200601f330aacb9fe745b2a64be1c6b63b0adbd1235c93ed62541a099d0fc
MD5 a2f73947e9cbea5fa99c1b885d940137
BLAKE2b-256 aa1b2a7b217507379f1ab0c6de34104b105c10037f46120db1cc0092bf7473f9

See more details on using hashes here.

File details

Details for the file agenthelm-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: agenthelm-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 15.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.7

File hashes

Hashes for agenthelm-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e9d60b0411727df59fd9a29bea2a9df846deb2f290d06f71ff712dadfdff4812
MD5 b83a603402fc018e3742265bbdd9de43
BLAKE2b-256 cfbf1c62684a96d54ddd8a7a33121ce342feacfd67ddcef42ccdd604928af592

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page