Loading repository data…
Loading repository data…
Init-Abdellm / repository
The first of a kind "AGENT AS A BACKEND" : Advanced AI/ML Agent Framework with TypeScript support, multi-model capabilities, vision controls, and comprehensive AI/ML model support including LLM, SLM, MLM, Vision, ASR, TTS, RL, GNN, RNN, CNN, GAN, Diffusion, Transformer, MLP, Autoencoder, BERT, RAG, Hybrid, Foundation, and fine-tuning
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
AAABuilder (Agent as a backend) is a comprehensive, production-ready AI/ML development framework that transforms complex AI workflows into scalable APIs. Built with TypeScript-first development, it provides unified support for all major AI/ML model types including LLMs, Computer Vision, Audio Processing, Traditional ML, and more.
The goal of this project is to transform backend processes into fully autonomous AI agents, removing the complexity and overhead of traditional coding. By simply defining an [Example.agent] configuration file, you empower the system to:
This approach dramatically reduces development time, lowers technical barriers, and unlocks new possibilities for building intelligent, adaptable backend systems.
AAABuilder addresses the growing complexity of AI/ML development by providing a unified framework that handles everything from simple text generation to complex multimodal AI systems. Unlike other solutions that focus on specific domains, AAABuilder offers comprehensive support across all AI/ML paradigms with enterprise-grade features.
| Feature | AAABuilder | LangChain | AutoGen | CrewAI | Flowise |
|---|---|---|---|---|---|
| Model Support | All AI/ML types | LLM-focused | LLM-focused | LLM-focused | LLM-focused |
| Vision Models | ✓ Full support | ✗ Limited | ✗ Limited | ✗ Limited | ✗ Limited |
| Audio Processing | ✓ Advanced pipeline | ✗ None | ✗ None | ✗ None | ✗ None |
| Traditional ML | ✓ Complete support | ✗ None | ✗ None | ✗ None | ✗ None |
| Debugging | ✓ Step-by-step | ✗ None | ✗ None | ✗ None | ✗ None |
| Testing | ✓ Automated framework | ✗ Manual | ✗ Manual | ✗ Manual | ✗ Limited |
| TypeScript | ✓ First-class | ✗ Python-only | ✗ Python-only | ✗ Python-only | ✗ JavaScript |
| Security | ✓ Enterprise-grade | ✗ Basic | ✗ Basic | ✗ Basic | ✗ Basic |
| Optimization | ✓ Built-in | ✗ None | ✗ None | ✗ None | ✗ None |
import { AgentDebugger } from './src/debug';
const debugger = new AgentDebugger(providerRouter);
// Start debug session
const sessionId = await debugger.startDebugSession(agentContent, inputData);
// Set breakpoints
debugger.setBreakpoint(sessionId, 'step-id');
// Step through execution
const result = await debugger.stepNext(sessionId);
// Inspect variables
const variables = debugger.getSessionState(sessionId)?.variables;
import { AgentTester } from './src/testing';
const tester = new AgentTester(providerRouter);
// Run test suite
const result = await tester.runTestSuite({
name: 'My Agent Tests',
agentContent: agentFile,
testCases: [
{
name: 'Basic test',
input: { message: 'Hello' },
expectedOutput: { response: 'Hello back!' }
}
]
});
// Performance benchmarking
const benchmark = await tester.benchmarkAgent(agentContent, 100);
# Start interactive development environment
npm run playground
# Available commands:
# load <file> - Load agent file
# debug <file> - Start debugging session
# test <file> - Run tests
# validate <file> - Validate agent
# docs <file> - Generate documentation
# Create new project with interactive wizard
npm run create
# Create from template
npm run create:interactive
# List available templates
npm run templates
# Generate comprehensive documentation
npm run docs
# Watch mode for development
npm run docs:watch
# Generate OpenAPI spec
npm run docs:openapi
# Generate HTML documentation
npm run docs:html
AAABuilder/
├── src/ # TypeScript source code
│ ├── providers/ # Unified provider system
│ │ ├── ProviderRouter.ts # Central router
│ │ ├── ModelRegistry.ts # Provider registry
│ │ ├── ModelOptimizer.ts # Optimization framework
│ │ ├── AudioProviders.ts # Audio processing
│ │ ├── Traditional ML/ # Scikit-learn, XGBoost, etc.
│ │ ├── Computer Vision/ # YOLO, ResNet, etc.
│ │ └── Audio Processing/ # Whisper, emotion detection
│ ├── debug/ # Debugging tools
│ │ └── AgentDebugger.ts # Step-by-step debugging
│ ├── testing/ # Testing framework
│ │ └── AgentTester.ts # Automated testing
│ ├── scaffolding/ # Project scaffolding
│ │ └── ProjectScaffolder.ts # Template system
│ ├── documentation/ # Auto-documentation
│ │ └── DocumentationGenerator.ts
│ ├── playground/ # Interactive development
│ │ └── AgentPlayground.ts # Real-time environment
│ └── security/ # Security types
│ └── types.ts # Auth & authorization
├── lib/ # Compiled JavaScript
├── bin/ # CLI executables
├── examples/ # Example agents
├── templates/ # Project templates
└── plugins/ # Plugin system
# Install globally
npm install -g aaab
# Verify installation
aaab --version
# Create new project
aaab create my-ai-project
# Navigate to project
cd my-ai-project
# Set API keys
export OPENAI_API_KEY="your-api-key-here"
# Start development server
npm run dev
@agent hello-world v1
description: "Simple greeting agent"
secrets:
- name: OPENAI_API_KEY
type: env
value: OPENAI_API_KEY
variables:
name:
type: input
path: name
required: true
steps:
- id: greet
type: llm
provider: openai
model: gpt-4o
prompt: "Greet {name} warmly"
save: greeting
outputs:
message: "{greeting}"
@end
npm install -g aaab
# Clone the repository
git clone https://github.com/Init-Abdellm/AAABuilder.git
cd AAABuilder
# Install dependencies
npm install
# Build the project
npm run build
# Start development server
npm run dev
# Pull the image
docker pull aaabuilder/aaabuilder:latest
# Run the container
docker run -p 5000:5000 \
-e OPENAI_API_KEY=your-key \
aaabuilder/aaabuilder:latest
# Core commands
aaab run <file> # Execute agent file
aaab validate <file> # Validate agent syntax
aaab serve --port 5000 # Start HTTP server
# Development tools
aaab debug <file> # Start debugging session
aaab test <file> # Run test suite
aaab playground # Start interactive playground
aaab create <project> # Create new project
aaab docs <file> # Generate documentation
# Provider management
aaab providers --list # List available providers
aaab providers --test # Test provider connections
aaab providers --optimize # Optimize model performance
# Vision operations
aaab vision --classify image.jpg
aaab vision --detect image.jpg
aaab vision --ocr document.pdf
# Audio operations
aaab audio --stt audio.wav
aaab audio --tts "Hello world"
aaab audio --emotion audio.wav
aaab audio --speaker audio.wav
# Machine learning
aaab ml --train config.json
aaab ml --predict model.pkl data.json
aaab ml --optimize model.pkl
# Vector databases
aaab vector-db --create my-db
aaab vector-db --search my-db docs "query"
import { createProviderRouter, ProviderConfig } from './src/providers';
// Configure providers
const config: ProviderConfig = {
// Trad