Skip to main content
0
A

Agency

A fast and minimal framework for building agentic systems

Rating

0.0

Votes

0

score

Downloads

0

total

Price

Free

No login needed

Works With

Claude CodeCursorWindsurfVS CodeDeveloper tool

About

Summary

Agency is a python library that provides an Actor model framework for creating agent-integrated systems.

The library provides an easy to use API that enables you to connect agents with traditional software systems in a flexible and scalable way, allowing you to develop any architecture you need.

Agency's goal is to enable developers to create custom agent-based applications by providing a minimal foundation to both experiment and build upon. So if you're looking to build a custom agent system of your own, Agency might be for you.

Features

Easy to use API

Performance and Scalability

  • Supports multiprocessing and multithreading for concurrency
  • AMQP support for networked agent systems

Observability and Control

  • Action and lifecycle callbacks
  • Access policies and permission callbacks
  • Detailed logging

Demo application available at `examples/demo`

  • Multiple agent examples for experimentation
  • Two OpenAI agent examples
  • HuggingFace transformers agent example
  • Operating system access
  • Includes Gradio UI
  • Docker configuration for reference and development

API Overview

In Agency, all entities are represented as instances of the Agent class. This includes all AI-driven agents, software interfaces, or human users that may communicate as part of your application.

All agents may expose "actions" that other agents can discover and invoke at run time. An example of a simple agent could be:

python
class CalculatorAgent(Agent):
    @action
    def add(a, b):
        return a + b

This defines an agent with a single action: add. Other agents will be able to call this method by sending a message to an instance of CalculatorAgent and specifying the add action. For example:

python
other_agent.send({
    'to': 'CalcAgent',
    'action': {
        'name': 'add',
        'args': {
            'a': 1,
            'b': 2,
        }
    },
})

Actions may specify an access policy, allowing you to control access for safety.

python
@action(access_policy=ACCESS_PERMITTED) # This allows the action at any time
def add(a, b):
    ...

@action(access_policy=ACCESS_REQUESTED) # This requires review before the action
def add(a, b):
    ...

Agents may also define callbacks for various purposes:

python
class CalculatorAgent(Agent):
    ...
    def before_action(self, message: dict):
        """Called before an action is attempted"""

    def after_action(self, message: dict, return_value: str, error: str):
        """Called after an action is attempted"""

    def after_add(self):
        """Called after the agent is added to a space and may begin communicating"""

Don't lose this

Three weeks from now, you'll want Agency again. Will you remember where to find it?

Save it to your library and the next time you need Agency, it’s one tap away — from any AI app you use. Group it into a bench with the rest of the team for that kind of task and you can pull the whole stack at once.

⚡ Pro tip for geeks: add a-gnt 🤵🏻‍♂️ as a custom connector in Claude or a custom GPT in ChatGPT — one click and your library is right there in the chat. Or, if you’re in an editor, install the a-gnt MCP server and say “use my [bench name]” in Claude Code, Cursor, VS Code, or Windsurf.

🤵🏻‍♂️

a-gnt's Take

Our honest review

A fast and minimal framework for building agentic systems. Best for anyone looking to make their AI assistant more capable in api connectors. It's completely free and works across most major AI apps. This one just landed in the catalog — worth trying while it's fresh.

Tips for getting started

1

Tap "Get" above, pick your AI app, and follow the steps. Most installs take under 30 seconds.

What's New

Version 1.0.06 days ago

Imported from GitHub

Ratings & Reviews

0.0

out of 5

0 ratings

No reviews yet. Be the first to share your experience.