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:
- ARCHITECTURE.md - Complete system architecture and design principles
- REQUIREMENTS.md - Detailed functional and non-functional requirements
- IMPLEMENTATION_PLAN.md - Development roadmap
- TOOLS_DESIGN.md - Tool system architecture and 50+ built-in tools
- MEMORY_DESIGN.md - Multi-layered memory system design
- WORKFLOW_COMPOSITION.md - Composing global workflows with subflows
- COMPARISON.md - CrewAI vs GenXAI comparison guide
- COMPARISON_CHEATSHEET.md - Condensed comparison cheatsheet
- COMPARISON_SLIDES.md - Slide-style outline for presentations
๐ผ๏ธ Workflow Composition Preview
For a visual overview of composing global workflows with subflows and deterministic routing, see docs/WORKFLOW_COMPOSITION.md.
Figure: Global workflow routing to two subflows (SVG preview).
Figure: PNG preview for environments that donโt render SVG.
๐ฏ Design Goals
- Superior to Existing Frameworks: More features than CrewAI, AutoGen, BeeAI
- Graph-First: Complex orchestration like LangGraph, but better
- No-Code Friendly: Visual interface for non-technical users
- Enterprise-Grade: Production-ready with observability and security
- 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.pyexamples/code/flow_selector_example.pyexamples/code/flow_p2p_example.pyexamples/code/flow_parallel_example.pyexamples/code/flow_conditional_example.pyexamples/code/flow_loop_example.pyexamples/code/flow_router_example.pyexamples/code/flow_ensemble_voting_example.pyexamples/code/flow_critic_review_example.pyexamples/code/flow_coordinator_worker_example.pyexamples/code/flow_map_reduce_example.pyexamples/code/flow_subworkflow_example.pyexamples/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 | |
|---|---|
| Irsal Imran | irsal2025@gmail.com |
๐ License
MIT License
๐ Links
- Documentation: See docs/ directory
- GitHub: https://github.com/genexsus-ai/genxai
- Discord: (To be created)
- Website: https://www.genxai.dev
๐ง 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a59ab22617a40bb47f903b54cbe2c37a5e5cb39601fe397b32b903b0ca4d992a
|
|
| MD5 |
303eb7ac74530b61734bed5e9139c174
|
|
| BLAKE2b-256 |
ec7f4392897e97175ec5bed20cf92d75c7e357d018708131ea70ca8a76c430cb
|
File details
Details for the file genxai_framework-1.0.0-py3-none-any.whl.
File metadata
- Download URL: genxai_framework-1.0.0-py3-none-any.whl
- Upload date:
- Size: 291.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
946efe048b5ee668b29dc874a5f4ae422526b5d35f216036b762bbb89b7ab412
|
|
| MD5 |
fd0f2282362078866f669db60488a288
|
|
| BLAKE2b-256 |
ed94bc8c48ea87f2b1a7bd63c8d052f12f3acc4ded03291040f71944f5e5bc49
|