# AigenLabs Agent > The self-improving AI agent built by AigenLabs. A terminal-native autonomous coding and task agent with persistent memory, agent-created skills, and a messaging gateway that lives on 21+ messaging platforms — 19 native to the gateway plus IRC and Microsoft Teams via plugins (Telegram, Discord, Slack, SMS, Matrix, ...). Runs on local, Docker, SSH, Daytona, Modal, or Singularity backends. Works with Nous Portal, OpenRouter, OpenAI, Anthropic, Google, or any OpenAI-compatible endpoint. Install: `curl -fsSL https://raw.githubusercontent.com/thienvyma/aigenlabs-agent/main/scripts/install.sh | bash` (Linux, macOS, WSL2, Termux) Repo: https://github.com/thienvyma/aigenlabs-agent ## Getting Started - [Installation](https://docs.aigenlabs.vn/getting-started/installation): Install AigenLabs Agent on Linux, macOS, WSL2, native Windows, or Android via Termux - [Quickstart](https://docs.aigenlabs.vn/getting-started/quickstart): Your first conversation with AigenLabs Agent — from install to chatting in under 5 minutes - [Learning Path](https://docs.aigenlabs.vn/getting-started/learning-path): Choose your learning path through the AigenLabs Agent documentation based on your experience level and goals. - [Updating](https://docs.aigenlabs.vn/getting-started/updating): How to update AigenLabs Agent to the latest version or uninstall it - [Termux (Android)](https://docs.aigenlabs.vn/getting-started/termux): Run AigenLabs Agent directly on an Android phone with Termux - [Nix Setup](https://docs.aigenlabs.vn/getting-started/nix-setup): Install and deploy AigenLabs Agent with Nix — from quick `nix run` to fully declarative NixOS module with container mode ## Using AigenLabs - [CLI](https://docs.aigenlabs.vn/user-guide/cli): Master the AigenLabs Agent terminal interface — commands, keybindings, personalities, and more - [TUI (Ink terminal UI)](https://docs.aigenlabs.vn/user-guide/tui): Launch the modern terminal UI for AigenLabs — mouse-friendly, rich overlays, and non-blocking input. - [Configuration](https://docs.aigenlabs.vn/user-guide/configuration): Configure AigenLabs Agent — config.yaml, providers, models, API keys, and more - [Configuring Models](https://docs.aigenlabs.vn/user-guide/configuring-models) - [Sessions](https://docs.aigenlabs.vn/user-guide/sessions): Session persistence, resume, search, management, and per-platform session tracking - [Profiles](https://docs.aigenlabs.vn/user-guide/profiles) - [Git Worktrees](https://docs.aigenlabs.vn/user-guide/git-worktrees): Run multiple AigenLabs agents safely on the same repository using git worktrees and isolated checkouts - [Docker Backend](https://docs.aigenlabs.vn/user-guide/docker): Running AigenLabs Agent in Docker and using Docker as a terminal backend - [Security](https://docs.aigenlabs.vn/user-guide/security): Security model, dangerous command approval, user authorization, container isolation, and production deployment best practices - [Checkpoints & Rollback](https://docs.aigenlabs.vn/user-guide/checkpoints-and-rollback): Filesystem safety nets for destructive operations using shadow git repos and automatic snapshots ## Core Features - [Features Overview](https://docs.aigenlabs.vn/user-guide/features/overview) - [Tools](https://docs.aigenlabs.vn/user-guide/features/tools): Overview of AigenLabs Agent's tools — what's available, how toolsets work, and terminal backends - [Skills System](https://docs.aigenlabs.vn/user-guide/features/skills): On-demand knowledge documents — progressive disclosure, agent-managed skills, and the Skills Hub - [Curator](https://docs.aigenlabs.vn/user-guide/features/curator): Background maintenance for agent-created skills — usage tracking, staleness, archival, and LLM-driven review - [Memory](https://docs.aigenlabs.vn/user-guide/features/memory): How AigenLabs Agent remembers across sessions — MEMORY.md, USER.md, and session search - [Memory Providers](https://docs.aigenlabs.vn/user-guide/features/memory-providers): External memory provider plugins — Honcho, OpenViking, Mem0, Hindsight, Holographic, RetainDB, ByteRover, Supermemory - [Context Files](https://docs.aigenlabs.vn/user-guide/features/context-files): Project context files — .aigenlabs.md, AGENTS.md, CLAUDE.md, global SOUL.md, and .cursorrules — automatically injected into every conversation - [Context References](https://docs.aigenlabs.vn/user-guide/features/context-references): Inline @-syntax for attaching files, folders, git diffs, and URLs directly into your messages - [Personality & SOUL.md](https://docs.aigenlabs.vn/user-guide/features/personality): Customize AigenLabs Agent's personality with a global SOUL.md, built-in personalities, and custom persona definitions - [Plugins](https://docs.aigenlabs.vn/user-guide/features/plugins): Extend AigenLabs with custom tools, hooks, and integrations via the plugin system - [Built-in Plugins](https://docs.aigenlabs.vn/user-guide/features/built-in-plugins): Plugins shipped with AigenLabs Agent that run automatically via lifecycle hooks — disk-cleanup and friends ## Automation - [Cron Jobs](https://docs.aigenlabs.vn/user-guide/features/cron): Schedule automated tasks with natural language, manage them with one cron tool, and attach one or more skills - [Delegation](https://docs.aigenlabs.vn/user-guide/features/delegation): Spawn isolated child agents for parallel workstreams with delegate_task - [Kanban Multi-Agent](https://docs.aigenlabs.vn/user-guide/features/kanban): Durable SQLite-backed task board for coordinating multiple AigenLabs profiles - [Kanban Tutorial](https://docs.aigenlabs.vn/user-guide/features/kanban-tutorial) - [Persistent Goals](https://docs.aigenlabs.vn/user-guide/features/goals): Set a standing goal and let AigenLabs keep working across turns until it's done. Our take on the Ralph loop. - [Code Execution](https://docs.aigenlabs.vn/user-guide/features/code-execution): Programmatic Python execution with RPC tool access — collapse multi-step workflows into a single turn - [Hooks](https://docs.aigenlabs.vn/user-guide/features/hooks): Run custom code at key lifecycle points — log activity, send alerts, post to webhooks - [Batch Processing](https://docs.aigenlabs.vn/user-guide/features/batch-processing): Generate agent trajectories at scale — parallel processing, checkpointing, and toolset distributions ## Media & Web - [Voice Mode](https://docs.aigenlabs.vn/user-guide/features/voice-mode): Real-time voice conversations with AigenLabs Agent — CLI, Telegram, Discord (DMs, text channels, and voice channels) - [Browser](https://docs.aigenlabs.vn/user-guide/features/browser) - [Vision](https://docs.aigenlabs.vn/user-guide/features/vision) - [Image Generation](https://docs.aigenlabs.vn/user-guide/features/image-generation) - [Text-to-Speech](https://docs.aigenlabs.vn/user-guide/features/tts): Text-to-speech and voice message transcription across all platforms ## Messaging Platforms - [Overview](https://docs.aigenlabs.vn/user-guide/messaging/index): Chat with AigenLabs from Telegram, Discord, Slack, WhatsApp, Signal, SMS, Email, Home Assistant, Mattermost, Matrix, DingTalk, Yuanbao, Microsoft Teams, LINE, Webhooks, or any OpenAI-compatible frontend via the API server — architecture and setup overview - [Telegram](https://docs.aigenlabs.vn/user-guide/messaging/telegram): Set up AigenLabs Agent as a Telegram bot - [Discord](https://docs.aigenlabs.vn/user-guide/messaging/discord): Set up AigenLabs Agent as a Discord bot - [Slack](https://docs.aigenlabs.vn/user-guide/messaging/slack): Set up AigenLabs Agent as a Slack bot using Socket Mode - [WhatsApp](https://docs.aigenlabs.vn/user-guide/messaging/whatsapp): Set up AigenLabs Agent as a WhatsApp bot via the built-in Baileys bridge - [Signal](https://docs.aigenlabs.vn/user-guide/messaging/signal): Set up AigenLabs Agent as a Signal messenger bot via signal-cli daemon - [Email](https://docs.aigenlabs.vn/user-guide/messaging/email): Set up AigenLabs Agent as an email assistant via IMAP/SMTP - [SMS](https://docs.aigenlabs.vn/user-guide/messaging/sms): Set up AigenLabs Agent as an SMS chatbot via Twilio - [Matrix](https://docs.aigenlabs.vn/user-guide/messaging/matrix): Set up AigenLabs Agent as a Matrix bot - [Mattermost](https://docs.aigenlabs.vn/user-guide/messaging/mattermost): Set up AigenLabs Agent as a Mattermost bot - [Home Assistant](https://docs.aigenlabs.vn/user-guide/messaging/homeassistant) - [Webhooks](https://docs.aigenlabs.vn/user-guide/messaging/webhooks): Receive events from GitHub, GitLab, and other services to trigger AigenLabs agent runs ## Integrations - [Integrations Overview](https://docs.aigenlabs.vn/integrations/index) - [Providers](https://docs.aigenlabs.vn/integrations/providers) - [MCP (Model Context Protocol)](https://docs.aigenlabs.vn/user-guide/features/mcp): Connect AigenLabs Agent to external tool servers via MCP — and control exactly which MCP tools AigenLabs loads - [ACP (Agent Context Protocol)](https://docs.aigenlabs.vn/user-guide/features/acp): Use AigenLabs Agent inside ACP-compatible editors such as VS Code, Zed, and JetBrains - [API Server](https://docs.aigenlabs.vn/user-guide/features/api-server): Expose aigenlabs-agent as an OpenAI-compatible API for any frontend - [Honcho Memory](https://docs.aigenlabs.vn/user-guide/features/honcho): AI-native persistent memory via Honcho — dialectic reasoning, multi-agent user modeling, and deep personalization - [Provider Routing](https://docs.aigenlabs.vn/user-guide/features/provider-routing) - [Fallback Providers](https://docs.aigenlabs.vn/user-guide/features/fallback-providers) - [Credential Pools](https://docs.aigenlabs.vn/user-guide/features/credential-pools) ## Guides & Tutorials - [Tips & Best Practices](https://docs.aigenlabs.vn/guides/tips): Practical advice to get the most out of AigenLabs Agent — prompt tips, CLI shortcuts, context files, memory, cost optimization, and security - [Local LLMs on Mac](https://docs.aigenlabs.vn/guides/local-llm-on-mac): Set up a local OpenAI-compatible LLM server on macOS with llama.cpp or MLX, including model selection, memory optimization, and real benchmarks on Apple Silicon - [Daily Briefing Bot](https://docs.aigenlabs.vn/guides/daily-briefing-bot): Build an automated daily briefing bot that researches topics, summarizes findings, and delivers them to Telegram or Discord every morning - [Team Telegram Assistant](https://docs.aigenlabs.vn/guides/team-telegram-assistant): Step-by-step guide to setting up a Telegram bot that your whole team can use for code help, research, system admin, and more - [Use AigenLabs as a Python Library](https://docs.aigenlabs.vn/guides/python-library): Embed AIAgent in your own Python scripts, web apps, or automation pipelines — no CLI required - [Use MCP with AigenLabs](https://docs.aigenlabs.vn/guides/use-mcp-with-aigenlabs): A practical guide to connecting MCP servers to AigenLabs Agent, filtering their tools, and using them safely in real workflows - [Use Voice Mode with AigenLabs](https://docs.aigenlabs.vn/guides/use-voice-mode-with-aigenlabs): A practical guide to setting up and using AigenLabs voice mode across CLI, Telegram, Discord, and Discord voice channels - [Use SOUL.md with AigenLabs](https://docs.aigenlabs.vn/guides/use-soul-with-aigenlabs): How to use SOUL.md to shape AigenLabs Agent's default voice, what belongs there, and how it differs from AGENTS.md and /personality - [Build a AigenLabs Plugin](https://docs.aigenlabs.vn/guides/build-a-aigenlabs-plugin): Step-by-step guide to building a complete AigenLabs plugin with tools, hooks, data files, and skills - [Automate with Cron](https://docs.aigenlabs.vn/guides/automate-with-cron): Real-world automation patterns using AigenLabs cron — monitoring, reports, pipelines, and multi-skill workflows - [Work with Skills](https://docs.aigenlabs.vn/guides/work-with-skills): Find, install, use, and create skills — on-demand knowledge that teaches AigenLabs new workflows - [Delegation Patterns](https://docs.aigenlabs.vn/guides/delegation-patterns): When and how to use subagent delegation — patterns for parallel research, code review, and multi-file work - [GitHub PR Review Agent](https://docs.aigenlabs.vn/guides/github-pr-review-agent): Build an automated AI code reviewer that monitors your repos, reviews pull requests, and delivers feedback — hands-free ## Developer Guide - [Contributing](https://docs.aigenlabs.vn/developer-guide/contributing): How to contribute to AigenLabs Agent — dev setup, code style, PR process - [Architecture](https://docs.aigenlabs.vn/developer-guide/architecture): AigenLabs Agent internals — major subsystems, execution paths, data flow, and where to read next - [Agent Loop](https://docs.aigenlabs.vn/developer-guide/agent-loop): Detailed walkthrough of AIAgent execution, API modes, tools, callbacks, and fallback behavior - [Prompt Assembly](https://docs.aigenlabs.vn/developer-guide/prompt-assembly): How AigenLabs builds the system prompt, preserves cache stability, and injects ephemeral layers - [Context Compression & Caching](https://docs.aigenlabs.vn/developer-guide/context-compression-and-caching) - [Gateway Internals](https://docs.aigenlabs.vn/developer-guide/gateway-internals): How the messaging gateway boots, authorizes users, routes sessions, and delivers messages - [Session Storage](https://docs.aigenlabs.vn/developer-guide/session-storage) - [Provider Runtime](https://docs.aigenlabs.vn/developer-guide/provider-runtime): How AigenLabs resolves providers, credentials, API modes, and auxiliary models at runtime - [Adding Tools](https://docs.aigenlabs.vn/developer-guide/adding-tools): How to add a new tool to AigenLabs Agent — schemas, handlers, registration, and toolsets - [Adding Providers](https://docs.aigenlabs.vn/developer-guide/adding-providers): How to add a new inference provider to AigenLabs Agent — auth, runtime resolution, CLI flows, adapters, tests, and docs - [Adding Platform Adapters](https://docs.aigenlabs.vn/developer-guide/adding-platform-adapters) - [Creating Skills](https://docs.aigenlabs.vn/developer-guide/creating-skills): How to create skills for AigenLabs Agent — SKILL.md format, guidelines, and publishing - [Extending the CLI](https://docs.aigenlabs.vn/developer-guide/extending-the-cli): Build wrapper CLIs that extend the AigenLabs TUI with custom widgets, keybindings, and layout changes ## Reference - [CLI Commands](https://docs.aigenlabs.vn/reference/cli-commands): Authoritative reference for AigenLabs terminal commands and command families - [Slash Commands](https://docs.aigenlabs.vn/reference/slash-commands): Complete reference for interactive CLI and messaging slash commands - [Profile Commands](https://docs.aigenlabs.vn/reference/profile-commands) - [Environment Variables](https://docs.aigenlabs.vn/reference/environment-variables): Complete reference of all environment variables used by AigenLabs Agent - [Tools Reference](https://docs.aigenlabs.vn/reference/tools-reference): Authoritative reference for AigenLabs built-in tools, grouped by toolset - [Toolsets Reference](https://docs.aigenlabs.vn/reference/toolsets-reference): Reference for AigenLabs core, composite, platform, and dynamic toolsets - [MCP Config Reference](https://docs.aigenlabs.vn/reference/mcp-config-reference): Reference for AigenLabs Agent MCP configuration keys, filtering semantics, and utility-tool policy - [Model Catalog](https://docs.aigenlabs.vn/reference/model-catalog) - [Bundled Skills Catalog](https://docs.aigenlabs.vn/reference/skills-catalog): Table of all ~90 skills bundled with AigenLabs - [Optional Skills Catalog](https://docs.aigenlabs.vn/reference/optional-skills-catalog): Table of ~60 additional installable skills - [FAQ & Troubleshooting](https://docs.aigenlabs.vn/reference/faq): Frequently asked questions and solutions to common issues with AigenLabs Agent