Skip to content

Welcome to Eunomia

What is Eunomia?

Eunomia is a Python library that allows you to decouple the authorization logic from the main architecture of your AI Agent. Eunomia is built as a standalone authorization server that can serve any application.

It is built and maintained by What About You, while contributions are welcome from the community.

Warning

Eunomia is currently under active development and therefore subject to change.

Core Components

  • Principals


    Principals are actors (human or AI) requesting access to resources.

  • Resources


    Resources are the targets of access, including data, tools, and AI agents.

  • Attributes


    Metadata of Principals and Resources, used in access policies.

  • Policies


    Policies are rules that explicitly allow or deny Principals access to Resources.

Why Eunomia?

Traditional authorization layers, focused on user-resource separation, become obsolete with AI agents. These agents, both autonomous and controllable, necessitate a new permission paradigm.

The ability for agents to access tools—executable actions beyond static data—and initiate interactions with other agents introduced policy requirements that legacy systems couldn't meet. This duality demands dynamic yet deterministic boundaries that adapt to context, reflecting their role as both actor and resource.

We aim to solve this with Eunomia, an open-source, developer-oriented authorization framework that:

  • Makes it possible to consider agents as both actors and resources
  • Enforces dynamic yet deterministic policies based on static and contextual attributes
  • Enables leaner agent architectures with decoupled authorization logic
  • Preserves agent decision-making while enforcing security