Skip to main content

GenXAI Core (MIT) - Advanced Agentic AI Framework with Graph-Based Orchestration

Project description

GenXAI - Advanced Agentic AI Framework

Version: 1.0.0
Status: Active Development
License: MIT

Irsal Imran - irsal2025@gmail.com


๐Ÿš€ Overview

GenXAI is an advanced agentic AI framework designed to surpass existing solutions by combining:

  • Graph-Based Orchestration (like LangGraph) for complex agent workflows
  • Advanced Memory Systems with multiple memory types (short-term, long-term, episodic, semantic, procedural)
  • No-Code Studio (Enterprise) for visual workflow building
  • 50+ Built-in Tools for web, database, file, computation, and communication tasks
  • Enterprise-Grade Features (OSS) including observability, security, connectors, and scalability

Open Source vs Enterprise: This repository contains the MIT-licensed core framework plus enterprise-grade runtime features (connectors, triggers, observability, security, CLI extensions). The Studio UI remains enterprise-only and is staged under enterprise/ for a separate commercial repo.

๐Ÿงฉ Applications

  • Autonomous Coding Agent: GenXAI-powered autonomous coding application.
    • Includes recipe-template run support with blended recipe + agent-generated actions (dedupe + fallback action coverage), plus structured observability hooks for planning latency, tool invocations, safety decisions, and retry/failure events.
  • AI Strategy Agent (P2P Brainstorming): peer-to-peer brainstorming workflow with layered architecture and local observability hooks.
  • Travel Planning Agent: GenXAI-powered travel planning app with FastAPI backend, React frontend, and streaming itinerary updates.

โœ… OSS vs Enterprise

Open-source (MIT) core + enterprise-grade runtime โ€” available in OSS:

  • genxai/ (agents, graph engine, flows, tools, LLM providers)
  • genxai/connectors (Kafka, SQS, Postgres CDC, webhooks, Slack, GitHub, Jira, Notion, Google Workspace)
  • genxai/triggers (webhook, schedule, queue triggers)
  • genxai/observability (logging, metrics, tracing)
  • genxai/security (RBAC, policy engine, audit, rate limits)
  • CLI commands: tool, workflow, connector, metrics, approval, audit
  • examples/, docs/, tests/, scripts/

Enterprise (commercial) features โ€” remain in the enterprise repo:

  • enterprise/ (Studio UI/backend + Studio-only assets)

โœจ Key Features

๐Ÿ”— Graph-Based Workflows

  • Define complex agent relationships as directed graphs
  • Conditional edges and dynamic routing
  • Parallel and sequential execution
  • Cycles, loops, and subgraphs
  • Real-time visualization

๐Ÿง  Advanced Agent Capabilities

  • Multi-Modal: Text, vision, audio, code understanding
  • Learning: Self-improvement through feedback
  • Memory: Multi-layered memory system
  • Tools: 50+ built-in tools + custom tool creation
  • Personality: Configurable agent personalities
  • LLM Ranking (opt-in): Safe JSON-based ranking with heuristic fallbacks for tool selection (docs/LLM_INTEGRATION.md)

New in 0.1.6: LLM ranking utility for tool selection with safe JSON parsing and heuristic fallbacks. See LLM integration.

๐Ÿ’พ Multi-Layered Memory

  • Short-Term: Recent conversation context
  • Long-Term: Persistent knowledge with vector search
  • Episodic: Past experiences and learning
  • Semantic: Factual knowledge base
  • Procedural: Learned skills and procedures
  • Working: Active processing space
  • Backend Plugins (Implemented): Redis, SQLite, Neo4j via formal plugin registry
  • Telemetry (Implemented): Backend memory utilization, size, and graph traversal metrics via MemorySystem.get_stats()
stats = await memory.get_stats()
print(stats["backend_plugins"].keys())  # e.g. redis/sqlite/neo4j (when configured)

๐ŸŽจ No-Code Studio

The Studio UI and enterprise backend are now staged under:

enterprise/studio/

They are intended for the enterprise repo and are not part of the MIT-licensed core.

โšก Trigger SDK (OSS)

Trigger SDKs are part of the OSS runtime and live under genxai/triggers.

๐Ÿข Enterprise-Ready (OSS Runtime)

  • Observability: Logging, metrics, tracing
  • Security: RBAC, encryption, guardrails
  • Scalability: Horizontal scaling, distributed execution
  • Reliability: 99.9% uptime target

๐Ÿ“ˆ Metrics API (OSS Runtime)

Observability endpoints are part of the OSS runtime and live under genxai/observability.


๐Ÿ“‹ Documentation

Comprehensive documentation is available in the following files:

๐Ÿ–ผ๏ธ Workflow Composition Preview

For a visual overview of composing global workflows with subflows and deterministic routing, see docs/WORKFLOW_COMPOSITION.md.

Workflow composition diagram

Figure: Global workflow routing to two subflows (SVG preview).

Workflow composition diagram (PNG)

Figure: PNG preview for environments that donโ€™t render SVG.


๐ŸŽฏ Design Goals

  1. Superior to Existing Frameworks: More features than CrewAI, AutoGen, BeeAI
  2. Graph-First: Complex orchestration like LangGraph, but better
  3. No-Code Friendly: Visual interface for non-technical users
  4. Enterprise-Grade: Production-ready with observability and security
  5. Extensible: Plugin architecture for easy customization

๐Ÿ—๏ธ Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    PRESENTATION LAYER                       โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”                 โ”‚
โ”‚  โ”‚  No-Code Studio  โ”‚  โ”‚   CLI/SDK/API    โ”‚                 โ”‚
โ”‚  โ”‚  (Visual Editor) โ”‚  โ”‚  (Code Interface)โ”‚                 โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                            โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   ORCHESTRATION LAYER                       โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”       โ”‚
โ”‚  โ”‚ Graph Engine โ”‚  โ”‚ Flow Control โ”‚  โ”‚ State Managerโ”‚       โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜       โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”                          โ”‚
โ”‚  โ”‚ Trigger Runner                โ”‚                          โ”‚
โ”‚  โ”‚ (Webhook, Schedule, Events)   โ”‚                          โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                          โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                            โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                      AGENT LAYER                            โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚ Agent Runtimeโ”‚  โ”‚ Memory Systemโ”‚  โ”‚ Tool Registry    โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚ + Tool Executor  โ”‚   โ”‚
โ”‚                                      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                            โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   COMMUNICATION LAYER                       โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚ Message Bus  โ”‚  โ”‚ Event Stream     โ”‚  โ”‚ Pub/Sub      โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚ + Event Router   โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ”‚                    โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                            โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                   INFRASTRUCTURE LAYER                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”       โ”‚
โ”‚  โ”‚ LLM Providersโ”‚  โ”‚ Vector DBs   โ”‚  โ”‚ Observabilityโ”‚       โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜       โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”    โ”‚
โ”‚  โ”‚ Persistent Stores    โ”‚  โ”‚ Connectors / Integrations โ”‚    โ”‚
โ”‚  โ”‚ (Postgres, Redis,โ€ฆ)  โ”‚  โ”‚ (Slack, Kafka, Jira, โ€ฆ)   โ”‚    โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚      CROSS-CUTTING (ALL LAYERS): SECURITY / GOVERNANCE      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚ RBAC         โ”‚  โ”‚ Policy Engine    โ”‚  โ”‚ Audit Loggingโ”‚   โ”‚
โ”‚  โ”‚              โ”‚  โ”‚ (ACL + approvals)โ”‚  โ”‚              โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”   โ”‚
โ”‚  โ”‚ Guardrails       โ”‚  โ”‚ Secrets + Encryption (configs) โ”‚   โ”‚
โ”‚  โ”‚ (PII, filters, โ€ฆ)โ”‚  โ”‚                                โ”‚   โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

See ARCHITECTURE.md for complete details.


๐Ÿ’ก Quick Start

CLI Quick Start (OSS)

The OSS package ships a genxai CLI with tool and workflow commands.

# Verify the CLI entry point
genxai --help

# List available tools
genxai tool list

# Search and inspect tools
genxai tool search weather
genxai tool info weather_api

# Run a YAML workflow
genxai workflow run examples/nocode/content_generation.yaml \
  --input '{"topic": "AI workflow design"}'

# Create and export a tool
genxai tool create \
  --name my_tool \
  --description "My custom tool" \
  --category custom \
  --template api_call \
  --config '{"url": "https://api.example.com", "method": "GET"}'
genxai tool export my_tool --output ./my_tool.json

# Import a tool and export schema bundles
genxai tool import-tool ./my_tool.json
genxai tool export-schema --output tool_schemas.json
genxai tool export-schema --format yaml --output tool_schemas.yaml

Using GenXAI as a Framework Library

import os
from genxai import Agent, AgentConfig, AgentRegistry, Graph

# Set your API key (required)
os.environ["OPENAI_API_KEY"] = "sk-your-api-key-here"

# Define agents
classifier = Agent(
    id="classifier",
    config=AgentConfig(
        role="Classifier",
        goal="Categorize customer requests",
        llm_model="gpt-4",
        tools=["sentiment_analysis", "category_detector"],
    ),
)

support = Agent(
    id="support",
    config=AgentConfig(
        role="Support Agent",
        goal="Resolve customer issues",
        llm_model="claude-3-opus",
        enable_memory=True,
    ),
)

AgentRegistry.register(classifier)
AgentRegistry.register(support)

# Build graph
graph = Graph()
from genxai.core.graph.nodes import InputNode, OutputNode, AgentNode
from genxai.core.graph.edges import Edge

graph.add_node(InputNode(id="start"))
graph.add_node(AgentNode(id="classify", agent_id="classifier"))
graph.add_node(AgentNode(id="support", agent_id="support"))
graph.add_node(OutputNode(id="end"))

graph.add_edge(Edge(source="start", target="classify"))
graph.add_edge(Edge(source="classify", target="support"))
graph.add_edge(Edge(source="support", target="end"))

# Run workflow
result = await graph.run(input_data="My app crashed")

Flow Orchestrator Examples

GenXAI also ships with lightweight flow orchestrators for common patterns:

from genxai import AgentFactory, RoundRobinFlow, SelectorFlow, P2PFlow

agents = [
    AgentFactory.create_agent(id="analyst", role="Analyst", goal="Analyze"),
    AgentFactory.create_agent(id="writer", role="Writer", goal="Write"),
]

# Round-robin flow
round_robin = RoundRobinFlow(agents)

# Selector flow
def choose_next(state, agent_ids):
    return agent_ids[state.get("selector_hop", 0) % len(agent_ids)]

selector = SelectorFlow(agents, selector=choose_next, max_hops=3)

# P2P flow
p2p = P2PFlow(agents, max_rounds=4, consensus_threshold=0.7)

See runnable examples in:

  • examples/code/flow_round_robin_example.py
  • examples/code/flow_selector_example.py
  • examples/code/flow_p2p_example.py
  • examples/code/flow_parallel_example.py
  • examples/code/flow_conditional_example.py
  • examples/code/flow_loop_example.py
  • examples/code/flow_router_example.py
  • examples/code/flow_ensemble_voting_example.py
  • examples/code/flow_critic_review_example.py
  • examples/code/flow_coordinator_worker_example.py
  • examples/code/flow_map_reduce_example.py
  • examples/code/flow_subworkflow_example.py
  • examples/code/flow_auction_example.py

Full flow documentation: docs/FLOWS.md

Trigger SDK Quick Start (OSS)

from genxai.triggers import WebhookTrigger
from genxai.core.graph import TriggerWorkflowRunner

trigger = WebhookTrigger(trigger_id="support_webhook", secret="my-secret")

# Wire trigger to workflow
runner = TriggerWorkflowRunner(nodes=nodes, edges=edges)

async def on_event(event):
    result = await runner.handle_event(event)
    print("Workflow result:", result)

trigger.on_event(on_event)
await trigger.start()

# In your FastAPI handler:
# await trigger.handle_request(payload, raw_body=raw, headers=request.headers)

Install Options

# Core install
pip install genxai-framework

# Full install with providers/tools/API (core)
pip install "genxai-framework[llm,tools,api]"

# Everything included
pip install "genxai-framework[all]"

For the Studio UI, use the enterprise repository and its commercial license.


๐Ÿงฉ OSS Enterprise Features (Studio Excluded)

The following enterprise-grade capabilities are included in OSS:

  • Connectors: Kafka, SQS, Postgres CDC, Webhooks, Slack, GitHub, Notion, Jira, Google Workspace
  • Triggers: Webhook, schedule, and queue triggers
  • Observability: logging, metrics, tracing, alerts
  • Security: RBAC, policy engine, audit logging, rate limits, PII utilities
  • CLI Extensions: metrics, connector, approval, audit commands
  • Worker Queue Engine: distributed execution support

๐Ÿ› ๏ธ Technology Stack

Core Framework

  • Language: Python 3.11+
  • Validation: Pydantic v2
  • Concurrency: AsyncIO
  • Testing: Pytest

Storage

  • Metadata: PostgreSQL
  • Caching: Redis
  • Vector DB: Pinecone, Weaviate, Chroma
  • Graph DB: Neo4j

LLM Providers

  • OpenAI (GPT-4, GPT-3.5)
  • Anthropic (Claude 3)
  • Google (Gemini)
  • Cohere
  • Local models (Ollama, LM Studio)

No-Code Studio

  • Frontend: React + TypeScript
  • Graph Viz: ReactFlow
  • Styling: TailwindCSS
  • Backend: FastAPI

DevOps

  • Containers: Docker
  • Orchestration: Kubernetes
  • CI/CD: GitHub Actions
  • Monitoring: Prometheus + Grafana

๐ŸŽฏ Key Differentiators

vs CrewAI

โœ… Graph-based workflows (not just sequential)
โœ… Advanced memory system
โœ… No-code interface
โœ… Learning agents
โœ… Enterprise features

vs AutoGen

โœ… Simpler configuration
โœ… Rich built-in tools
โœ… Visual workflow builder
โœ… Better state management
โœ… Multi-modal support

vs BeeAI

โœ… More sophisticated agents
โœ… Complex orchestration
โœ… Advanced memory
โœ… Enterprise scalability
โœ… Comprehensive tooling

vs LangGraph

โœ… All graph features PLUS:
โœ… No-code interface
โœ… Advanced agent capabilities
โœ… Multi-layered memory
โœ… Tool marketplace
โœ… Learning and adaptation


๐Ÿ“Š Success Metrics

Technical

  • โœ… All functional requirements implemented
  • โœ… 80%+ test coverage
  • โœ… 99.9% uptime
  • โœ… < 2s agent response time

Business

  • ๐ŸŽฏ 10,000+ GitHub stars in first year
  • ๐ŸŽฏ 100+ contributors
  • ๐ŸŽฏ 100+ companies in production
  • ๐ŸŽฏ 4.5+ star rating

User Experience

  • ๐ŸŽฏ < 5 minutes to first workflow
  • ๐ŸŽฏ Non-technical users productive in < 1 hour
  • ๐ŸŽฏ < 5% framework-related failures

๐Ÿค Contributing

We welcome contributions! This project is in active development. We provide:

  • Contributing guidelines
  • Development setup instructions
  • Issue templates
  • Pull request templates

๐Ÿ‘ฅ Contributors

Name Email
Irsal Imran irsal2025@gmail.com

๐Ÿ“œ License

MIT License


๐Ÿ”— Links


๐Ÿ“ง Contact

For questions or collaboration opportunities, please reach out through GitHub Discussions (once created).


๐Ÿ™ Acknowledgments

Inspired by:

  • LangGraph - Graph-based orchestration
  • CrewAI - Multi-agent collaboration
  • AutoGen - Conversational agents
  • BeeAI - Agent framework design

๐Ÿ“ˆ Project Status

Current Phase: Active Development
Next Milestone: Complete visual editor + studio polish
Expected Launch: TBD


Built with โค๏ธ by the GenXAI team

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

genxai_framework-1.0.0.tar.gz (329.2 kB view details)

Uploaded Source

Built Distribution

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

genxai_framework-1.0.0-py3-none-any.whl (291.8 kB view details)

Uploaded Python 3

File details

Details for the file genxai_framework-1.0.0.tar.gz.

File metadata

  • Download URL: genxai_framework-1.0.0.tar.gz
  • Upload date:
  • Size: 329.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for genxai_framework-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a59ab22617a40bb47f903b54cbe2c37a5e5cb39601fe397b32b903b0ca4d992a
MD5 303eb7ac74530b61734bed5e9139c174
BLAKE2b-256 ec7f4392897e97175ec5bed20cf92d75c7e357d018708131ea70ca8a76c430cb

See more details on using hashes here.

File details

Details for the file genxai_framework-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for genxai_framework-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 946efe048b5ee668b29dc874a5f4ae422526b5d35f216036b762bbb89b7ab412
MD5 fd0f2282362078866f669db60488a288
BLAKE2b-256 ed94bc8c48ea87f2b1a7bd63c8d052f12f3acc4ded03291040f71944f5e5bc49

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