Skip to main content

Library-first authentication and authorization SDK for AI agents

Project description

agentauthlayer

Python SDK for integrating agent runtimes with the Agent Auth control plane.

agentauthlayer helps you:

  • authenticate once and reuse local credentials
  • register agents from code
  • sync tool and capability definitions
  • evaluate permissions against the control plane
  • apply permission checks inside runtime functions

This package is the reusable SDK layer. It is intended for developers integrating Python agents, tools, and workflows with an Agent Auth deployment.

Install

pip install agentauthlayer

Quickstart

1. Log in once

agentauth login --base-url http://127.0.0.1:8002

This stores local credentials so your code can connect without manually pasting a token every time.

Useful follow-up commands:

agentauth whoami
agentauth logout
agentauth ui

2. Define tools and agents in code

from agent_auth import register_tool, register_agent, require_permission

@register_tool(action="math.compute", description="Run approved math jobs")
@require_permission("math.compute", resource="math/basic")
def add(a: int, b: int, agent_id: str | None = None, role: str | None = None, context: dict | None = None):
    return a + b

register_agent(
    agent_id="math-agent",
    name="Math Agent",
    owner="you@company.com",
    role="research_agent",
    project_id="ai-platform",
    scopes=[],
)

3. Sync everything with one command

agentauth sync --module your_module_name

This imports the module, discovers registered tools and agents, syncs capability definitions, and creates agents through the control plane.

SDK client usage

from agent_auth import AuthAPIClient

client = AuthAPIClient()

agent = client.create_agent(
    agent_id="research-bot-01",
    name="Research Bot 01",
    owner="vaibhav@company.com",
    role="research_agent",
    scopes=[],
    project_id="ai-platform",
)

print(agent)

Environment variables

If you prefer non-interactive configuration, the SDK also supports environment variables:

export AGENT_AUTH_URL=http://127.0.0.1:8002
export AGENT_AUTH_TOKEN=YOUR_ADMIN_OR_SERVICE_TOKEN

Resolution order used by AuthAPIClient():

  1. explicit constructor arguments
  2. environment variables
  3. stored local credentials from agentauth login

Common tasks

Sync tools manually

client.sync_tools([
    {"action": "tool.search_web", "description": "Search the web"},
    {"action": "docs.read", "description": "Read protected docs"},
])

Evaluate access

decision = client.evaluate(
    principal_id="research-bot-01",
    action="tool.search_web",
    resource="web/*",
    role="research_agent",
)

print(decision)

Fetch or delete an agent

agent = client.get_agent("research-bot-01")
print(agent)

result = client.delete_agent("research-bot-01")
print(result)

CLI equivalent:

agentauth delete-agent research-bot-01

Public package scope

This package provides:

  • the Python SDK (agent_auth)
  • CLI helpers for login, sync, and agent cleanup
  • registry-based tool and agent sync
  • permission evaluation helpers

It does not package the full control plane server or admin dashboard.

Suitable use cases

  • Python agent runtimes
  • tool-based workflows
  • service-to-control-plane integrations
  • local development with stored credentials
  • CI or automation using environment variables

Requirements

  • Python 3.10+
  • access to a running Agent Auth control plane

Notes

The import path remains:

from agent_auth import ...

while the published package name is:

pip install agentauthlayer

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

agentauthlayer-0.1.2.tar.gz (32.4 kB view details)

Uploaded Source

Built Distribution

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

agentauthlayer-0.1.2-py3-none-any.whl (29.4 kB view details)

Uploaded Python 3

File details

Details for the file agentauthlayer-0.1.2.tar.gz.

File metadata

  • Download URL: agentauthlayer-0.1.2.tar.gz
  • Upload date:
  • Size: 32.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for agentauthlayer-0.1.2.tar.gz
Algorithm Hash digest
SHA256 546a70d8a9f474d4c21d29988371369678025ee0579801bed38855645f968351
MD5 3f489eb57aab293fef9a5e1e900a5133
BLAKE2b-256 a1d1cf58e4f2f9b6a7f552da72f48b6d4a8e264324917997de643d74e091679e

See more details on using hashes here.

File details

Details for the file agentauthlayer-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: agentauthlayer-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 29.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for agentauthlayer-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 424c4d022f18a95cc614240e8e58da4e9d1e3d0450a58b53c65583ab9f9f8029
MD5 3fea99f640ffd394aee8aba1e48eb65f
BLAKE2b-256 9855a568e2813ca3b664faac3fc6da25164240f02527e18b76be03488d756885

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