Catalog PyPI
PACKAGE EXPLORERView in registry

agentic-fabriq-sdk

PyPI

Agentic Fabriq SDK: high-level client, CLI tool, DX helpers, and auth for AI agents

agenticagentic-fabriqagentsaiclifabricfabriqsdk
Versions collected1
Direct dependencies15From release 0.1.88
Last observed20 Oct, 22:15 UTC

README

Version 0.1.88 documentation

Agentic Fabriq SDK

agentic-fabriq-sdk provides a Python SDK and CLI tool for interacting with Agentic Fabriq.

What's included:

  • 🐍 Python SDK: High-level client (af_sdk.FabriqClient) and DX layer
  • 🛠️ CLI Tool: afctl command for authentication and management
  • 🔐 OAuth2/PKCE: Secure browser-based authentication with token storage

Install

pip install agentic-fabriq-sdk

This installs both the Python library and the afctl CLI tool.

Quickstart

CLI Tool

Authenticate and manage your Agentic Fabriq resources:

# Login with OAuth2 (browser opens automatically)
afctl auth login

# Check authentication status
afctl auth status

# List available tools
afctl tools list

# List agents
afctl agents list

# Get help
afctl --help

Python SDK

from af_sdk.fabriq_client import FabriqClient

TOKEN = "..."  # Bearer JWT for the Fabriq Gateway
BASE = "https://dashboard.agenticfabriq.com"

async def main():
    async with FabriqClient(base_url=BASE, auth_token=TOKEN) as af:
        # List tools and agents
        tools = await af.list_tools()
        agents = await af.list_agents()
        
        # Invoke Slack tools
        result = await af.invoke_connection("my-slack", method="get_channels")
        
        # Post a Slack message
        await af.invoke_connection(
            "my-slack",
            method="post_message",
            parameters={"channel": "test", "text": "Hello from SDK!"}
        )
        
        # Get Gmail emails
        result = await af.invoke_connection(
            "gmail_work",
            method="get_emails",
            parameters={"max_results": 10, "q": "is:unread"}
        )
        emails = result.get("emails", [])
        
        # Send an email
        await af.invoke_connection(
            "gmail_work",
            method="send_email",
            parameters={
                "to": "recipient@example.com",
                "subject": "Hello from SDK",
                "body": "This email was sent via Agentic Fabric SDK!"
            }
        )

DX orchestration:

from af_sdk.dx import ToolFabric, AgentFabric, Agent, tool

slack = ToolFabric(provider="slack", base_url="https://dashboard.agenticfabriq.com", access_token=TOKEN, tenant_id=TENANT)
agents = AgentFabric(base_url="https://dashboard.agenticfabriq.com", access_token=TOKEN, tenant_id=TENANT)

@tool
def echo(x: str) -> str:
    return x

bot = Agent(
    system_prompt="demo",
    tools=[echo],
    agents=agents.get_agents(["summarizer"]),
    base_url="https://dashboard.agenticfabriq.com",
    access_token=TOKEN,
    tenant_id=TENANT,
    provider_fabrics={"slack": slack},
)
print(bot.run("Summarize my Slack messages"))

B2B2C (developer edition): your users' tools

from af_sdk import AgenticFabriq

af = AgenticFabriq()  # AF_APP_ID / AF_APP_SECRET / AF_BASE_URL

url = await af.initiate_connection(request, provider="gmail")                    # OAuth
url = await af.initiate_connection(request, provider="notion", method="api_key")  # no OAuth: user pastes a key on our page

async with await af.for_user(request) as session:
    tools = await session.get_tools()
    result = await session.call_tool("notion_list_pages", {})

See docs/developer-edition/quickstart.md for the full flow, including webhooks and framework adapters. AF_BASE_URL selects the environment (the MCP endpoint follows it).

License

Apache-2.0

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.1.8828 Aug 202615

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
agentic-fabric/agentic-fabric

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 22:15 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:bea6d639d1b22a72a6d326d63d7c2f3b2b73749d810d505110218f1f46723e63