Skip to content

mechtar-ru/Axolotl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

82 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

🧬 Axolotl β€” Visual AI-Agent Orchestration

"Draw logic, don't write it"

Axolotl is a visual platform for building and executing AI-agent workflows. Design workflows from nodes on an infinite canvas, connect LLM providers, manage memory via MemPalace, and run execution in real-time with full trajectory visibility.


✨ Features

Visual Editor

  • 🎨 Infinite Canvas β€” drag-and-drop, zoom, pan via VueFlow
  • 🧩 11 Node Types: Source, Agent, Output, Condition, Loop, Memory, Guardrail, Human, Fallback, Subagent, Group
  • πŸ”— Typed Edges β€” data, condition true/false, loop
  • ↩️ Undo/Redo β€” Cmd+Z / Cmd+Shift+Z
  • πŸ“‹ Copy/Paste/Duplicate β€” Cmd+C / Cmd+V / Cmd+D
  • πŸ” Search β€” Cmd+F by node name or type
  • πŸ“¦ JSON Import/Export β€” full schema exchange
  • πŸ“Š Mermaid Export β€” diagrams from schema
  • 🐍 Python Export β€” generate executable .py scripts
  • πŸ“· PNG/SVG Export β€” canvas screenshots
  • πŸ“ Comments β€” text notes on canvas
  • πŸ“¦ Node Grouping β€” group 2+ nodes (Ctrl+G)

Workflow Execution

  • ⚑ Parallel Execution β€” independent branches via CompletableFuture
  • πŸ“‘ WebSocket Real-time β€” progress, logs, tokens, metrics, waves
  • πŸ”„ Token Streaming β€” character-by-character LLM response
  • 🚦 Convergence Monitoring β€” error counter, threshold 3 β†’ BLOCKED
  • πŸ›‘ Cancel Execution β€” stop on demand
  • πŸ“Š Execution History β€” records of past runs
  • 🎭 Execution Modes: EXECUTE (full), ANALYZE (read-only), DRY_RUN (simulate)

Tool-Enabled Agents

  • πŸ”§ 8 Built-in Tools: file_read, file_write, directory_read, bash, memory_read, memory_write, web_search, web_fetch
  • 🧠 RLM Predict Tool β€” call sub-LM with DSPy signatures for structured extraction
  • πŸ“Š Trajectory Panel β€” visualize iterations, tool calls, timing
  • πŸ”’ Dangerous Command Blocking β€” rm -rf, format, mkfs, etc.
  • βš™οΈ Tool Permissions β€” per-node allowed paths, blocked commands

Agent Memory & Skills

  • 🎯 Agent Types: Assistant, Coder, Researcher, Reviewer, Project Analyzer
  • 🧠 Skill Auto-Generation β€” extract patterns from trajectories β†’ auto-generate skills
  • πŸ“ˆ Skill Tracking β€” usage count, success rate, version history
  • πŸ’Ύ Pattern Storage β€” saved to MemPalace (axolotl/patterns, axolotl/skills)

LLM Integration

  • πŸ¦™ Ollama β€” local models, NDJSON streaming
  • πŸ€– OpenAI β€” GPT-4o/mini, SSE streaming
  • 🧠 Anthropic β€” Claude Sonnet/Opus/Haiku
  • πŸ” DeepSeek β€” budget-friendly model
  • πŸ”— Custom Endpoints β€” add OpenAI-compatible providers
  • 🎯 Per-Node Model β€” each AgentNode selects its own model

MemPalace β€” Long-term Memory

  • 🧠 Memory Node β€” search memory, filter by wing/room
  • πŸ’Ύ Auto-save β€” agent results β†’ MemPalace automatically
  • 🌐 Graph Visualization β€” Memory Graph View with wings, rooms, tunnels
  • πŸ“Š Graph Context β€” structured tree + table β†’ injection into systemPrompt
  • πŸ”Ž Semantic Search β€” cosine similarity
  • πŸ—‚οΈ Memory Result Cards β€” search results as floating cards on canvas

Plan / Workspace

  • πŸ“‹ Todo List β€” tasks with statuses and priorities
  • ✍️ Batch Add β€” mass-add via textarea
  • βœ… Acceptance Criteria β€” validation on DONE transition
  • πŸ”— Node Linking β€” bind task to canvas node
  • πŸ€– MCP Server β€” 7 tools via JSON-RPC 2.0 at /mcp
  • 🧩 Skills β€” auto-learning system with usage tracking and success rate

Observability

  • πŸ“Š Prometheus Metrics β€” /actuator/prometheus
  • πŸ“š OpenAPI/Swagger β€” /swagger.html
  • πŸ“ Structured JSON Logging β€” Logstash encoder for ELK/Loki

Remote API & Integrations

  • πŸ”‘ API Keys β€” management for external systems
  • πŸ“‘ Remote API β€” /api/remote/* for workflow triggers
  • ⚑ Rate Limiting β€” 60 req/min per key
  • πŸ”— Webhook Callbacks β€” completion notifications
  • πŸ“€ Share Links β€” read-only links with expiration

Subagent Workflows

  • 🀝 Subagent Node β€” invoke nested workflows
  • πŸ”„ Input/Output Mapping β€” data passing between workflows
  • πŸ›‘οΈ Max Depth β€” recursion protection (5 levels)
  • πŸ“œ Nested Logs β€” indented logs in Execution Panel

Security

  • πŸ” JWT Authorization β€” registration/login
  • πŸ‘₯ Multi-tenancy β€” schema isolation per user
  • πŸ”‘ Settings API β€” CRUD provider API keys
  • πŸ›‘οΈ Guardrail Node β€” data validation/transformation
  • πŸ‘€ Human Node β€” wait for human confirmation

UI/UX

  • πŸŒ™ Dark Theme β€” #1e1e2e background, #6c63ff accent
  • ⌨️ Command Palette β€” Cmd+K quick access
  • πŸŽ“ Onboarding β€” 2-step wizard on first visit
  • 🎬 Animations β€” pulse running, glow completed, shake failed
  • πŸ”” Toast Notifications β€” feedback on actions
  • πŸ’Ύ Auto-save Indicator β€” visual save status

Desktop App (Electron)

  • πŸ–₯️ Native Window β€” 1400x900, min 1024x700
  • 🧭 System Tray β€” show/hide, new workflow, quit
  • πŸ“‹ Application Menu β€” File, Edit, View, Window, Help
  • ⌨️ Global Shortcut β€” Cmd/Ctrl+Shift+A toggle visibility
  • πŸ”” Native Notifications β€” execution complete, errors
  • πŸ’Ύ File Dialogs β€” native open/save for workflows
  • πŸ”„ Auto-update β€” electron-updater from GitHub releases

πŸš€ Quick Start

Requirements

  • Java 21+
  • Node.js 18+
  • (optional) Ollama for local LLM

Backend

cd backend
mvn spring-boot:run
# http://localhost:8080

Frontend

cd frontend
npm install
npm run dev
# http://localhost:5173

Docker Compose (full stack)

docker-compose up -d

πŸ› οΈ Tech Stack

Backend

Technology Version
Java 21
Spring Boot 3.2
SQLite 3.x
PostgreSQL (Docker)
WebSocket Spring
Micrometer Prometheus
springdoc OpenAPI 3.0

Frontend

Technology Version
Vue 3 (Composition API)
TypeScript 5.x
VueFlow 1.x
Vite 5.x
Pinia State management
Playwright E2E testing
Electron 34.x

πŸ“ Architecture

Execution Flow

Source β†’ Agent β†’ Condition β†’ Loop β†’ Output
         ↓
      Memory (MemPalace)
         ↓
      Subagent (nested workflow)
  1. Topological Sort (Kahn's algorithm) β€” compute levels
  2. Parallel Execution of nodes at same level
  3. WebSocket Events: progress, log, error, nodeTime, token, wave, toolCall, iteration
  4. Context Management: collect upstream results + LLM summarization
  5. Variable Interpolation: {{input}}, {{prev_result}}, {{node:Name}}
  6. Execution Modes: EXECUTE/ANALYZE/DRY_RUN

πŸ“ Project Structure

Axolotl/
β”œβ”€β”€ backend/                          # Spring Boot 3.2, Java 21
β”‚   └── src/main/java/.../
β”‚       β”œβ”€β”€ controller/              # REST endpoints
β”‚       β”œβ”€β”€ service/                # Business logic
β”‚       β”œβ”€β”€ llm/                    # LLM providers
β”‚       β”œβ”€β”€ model/                  # Domain objects
β”‚       └── config/                 # Security, JWT, WebSocket
β”œβ”€β”€ frontend/                         # Vue 3 + TypeScript + Vite
β”‚   └── src/
β”‚       β”œβ”€β”€ components/
β”‚       β”‚   β”œβ”€β”€ canvas/             # WorkflowCanvas
β”‚       β”‚   β”œβ”€β”€ nodes/              # Node types
β”‚       β”‚   └── execution/          # ExecutionPanel
β”‚       └── stores/                  # Pinia
β”œβ”€β”€ electron/                         # Electron desktop app
β”œβ”€β”€ .github/workflows/               # CI/CD
β”‚   β”œβ”€β”€ ci.yml                     # Compile & build
β”‚   └── release.yml                # Docker β†’ GHCR
β”œβ”€β”€ kubernetes/axolotl/             # Helm chart
β”œβ”€β”€ e2e/                           # Playwright tests
β”œβ”€β”€ CONTRIBUTING.md
β”œβ”€β”€ CODE_OF_CONDUCT.md
β”œβ”€β”€ DEPLOY.md
└── docker-compose.yml

πŸ§ͺ Tests

# Backend tests
cd backend && mvn test

# Frontend unit tests
cd frontend && npm run test:unit

# E2E tests
cd e2e && npx playwright test

πŸ“Š Implementation Status

Category Implemented Total
Visual Editor βœ… 14
Workflow Execution βœ… 10
LLM Providers βœ… 7
Tool-Enabled Agents βœ… 6
MemPalace βœ… 6
Plan / MCP βœ… 7
Skills System βœ… 5
Remote API βœ… 6
Security βœ… 6
UI/UX βœ… 8
Desktop App βœ… 8
Infrastructure βœ… 5
Total 100

🎯 Key Differentiators

Feature Axolotl n8n LangFlow
Infinite canvas to chat βœ… ❌ ❌
Tool-enabled agents βœ… ❌ ❌
Trajectory visualization βœ… ❌ ❌
Memory as graph βœ… ❌ ❌
Auto-learning Skills βœ… ❌ ❌
Execution modes βœ… ❌ ❌
Built-in Plan/Todo βœ… ❌ ❌
Human-in-the-loop core βœ… basic basic
Local-first privacy βœ… ❌ ❌
Desktop App βœ… βœ… ❌

🀝 Contributing

See CONTRIBUTING.md for:

  • Development setup
  • PR process
  • Coding standards
  • Commit message format

πŸ“ License

MIT

About

agentic creation gui

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors