# AbstractFramework > AbstractFramework is a modular, open-source (MIT) framework for durable, observable, multimodal AI: write once, generate everything, run anywhere. AbstractCore gives one Python API over ten provider types, local and cloud, multimodal input (text, images, audio, video, documents) and output (text, voice, music, images, video, 3D) through capability plugins for voice, music, vision, 3D and cameras; AbstractRuntime runs agents and workflows as durable runs with an append-only ledger; AbstractGateway is the control plane (runs, automations, users, network) with thin clients in the terminal, the browser, a desktop tray assistant (menu bar on macOS, system tray on Windows and Linux) and over SSH. It installs with one line on macOS, Linux and Windows, and every package also works on its own. Current framework release: `abstractframework` 0.6.2 (2026-09-29). It pins AbstractGateway 0.7.2, AbstractAssistant 0.9.1, AbstractCore 2.19.0, AbstractRuntime 0.7.1, AbstractAgent 0.3.17, AbstractSkill 0.3.0, AbstractMemory 0.3.0, AbstractSemantics 0.0.5, AbstractVoice 0.13.0, AbstractMusic 0.1.15, AbstractVision 0.3.31 and Abstract3D 0.3.1. Separately released plugin: AbstractCamera 0.2.0. Browser apps (npm): AbstractFlow 0.4.0, AbstractCode web 0.6.1, AbstractObserver 0.2.1, AbstractContinuum 0.4.0, AbstractEntity 0.3.0, and the shared UI kit of AbstractUIC, @abstractframework/ui-kit 0.1.16. Rust tools (crates.io): abstractgateway-console 0.11.1 (AbstractGateway's terminal console), abstractcode 0.7.1 (AbstractCode's terminal client), abstractcore-console 0.4.1 (AbstractCore's terminal console), and AbstractTUI (0.6.0 on crates.io), the terminal-UI engine behind AbstractCode's terminal client and both terminal consoles. Release history and each release's pins: https://github.com/lpalbou/AbstractFramework/blob/main/CHANGELOG.md Install: - macOS / Linux: `curl -LsSf https://raw.githubusercontent.com/lpalbou/AbstractFramework/main/scripts/install.sh | sh` - Windows (PowerShell): `powershell -ExecutionPolicy ByPass -c "irm https://raw.githubusercontent.com/lpalbou/AbstractFramework/main/scripts/install.ps1 | iex"` - macOS package: https://github.com/lpalbou/AbstractFramework/releases/latest/download/AbstractFramework-Installer.pkg - Python: `pip install abstractframework` (light), `"abstractframework[apple]"`, `"abstractframework[gpu]"` - Container: `ghcr.io/lpalbou/abstractgateway:0.7.2` - Upgrade: re-run the same install line (on a Mac without Terminal, double-click Install AbstractFramework.command again) - The installer puts every terminal command in `~/.local/bin`: `abstractgateway`, `abstractgateway-config`, `abstractgateway-console`, `abstractcode` (sign in once with `abstractcode login --token `, or `abstractgateway apps tui-command code` on the gateway machine), and the AbstractCore, AbstractVoice, AbstractMusic and AbstractVision commands (opt-outs `--no-console`, `--no-code-cli`, `--no-core-cli`) After install the web console is at http://127.0.0.1:8080/console, the terminal console is `abstractgateway-console --gateway-url http://127.0.0.1:8080 --token `, and the browser apps are served at http://127.0.0.1:8080/apps// (flow, observer, code, continuum, entity). Local clients find the gateway through `~/.abstractframework/gateway.json`; every app and terminal client takes `--gateway-url`. ## Start here - [Install](https://abstractframework.ai/install.html): one-line installers, the macOS package, requirements, profiles, headless servers, network and start at login, options, troubleshooting, Python and Docker - [User journey](https://abstractframework.ai/start-user.html): chat, voice, automations and the Assistant - [Artist / creator journey](https://abstractframework.ai/start-creator.html): voice and voice cloning, music, images and video, with hardware notes - [Developer journey](https://abstractframework.ai/start-developer.html): AbstractCore, AbstractAgent, the gateway HTTP API, Flow and AbstractCode - [Architect journey](https://abstractframework.ai/start-architect.html): topologies, containers, security posture and data location - [Researcher journey](https://abstractframework.ai/start-researcher.html): deep-research, co-scientist, the ledger and memory - [Automation owner journey](https://abstractframework.ai/start-automation.html): recurring agent tasks and notifications ## Apps and features - [AbstractGateway and AbstractCore consoles](https://abstractframework.ai/console.html): AbstractGateway's web console (/console) and terminal console (abstractgateway-console), and AbstractCore's own pair (the `abstractcore serve` web console and abstractcore-console); both terminal consoles run on AbstractTUI: first-run guide, models with fit verdicts, engines, providers, network, apps - [Automations](https://abstractframework.ai/automations.html): fixed-interval or on-demand agent tasks, independent or growing context, notifications, controls, limits - [AbstractFlow](https://abstractframework.ai/flow.html): visual workflow editor ([llms.txt](https://abstractframework.ai/flow/llms.txt)) - [AbstractObserver](https://abstractframework.ai/observer.html): runs, ledger replay, automations ([llms.txt](https://abstractframework.ai/observer/llms.txt)) - [AbstractCode](https://abstractframework.ai/code.html): coding agent, terminal and browser clients ([llms.txt](https://abstractframework.ai/code/llms.txt)) - [AbstractAssistant](https://abstractframework.ai/assistant.html): desktop tray assistant: menu bar on macOS, system tray on Windows and Linux ([llms.txt](https://abstractframework.ai/assistant/llms.txt)) - [AbstractContinuum](https://abstractframework.ai/continuum.html): continuous development console ([llms.txt](https://abstractframework.ai/continuum/llms.txt)) - [AbstractEntity](https://abstractframework.ai/entity.html): summoned-entity manager ([llms.txt](https://abstractframework.ai/entity/llms.txt)) ## Packages - [AbstractGateway](https://abstractframework.ai/gateway.html): control plane: durable runs over HTTP/SSE, automations, users, apps ([llms.txt](https://abstractframework.ai/gateway/llms.txt), [llms-full.txt](https://abstractframework.ai/gateway/llms-full.txt)) - [AbstractCore](https://abstractframework.ai/core.html): unified LLM API, OpenAI-compatible server, capability plugins ([llms.txt](https://abstractframework.ai/core/llms.txt), [llms-full.txt](https://abstractframework.ai/core/llms-full.txt)) - [AbstractRuntime](https://abstractframework.ai/runtime.html): durable execution, ledger, automation controller, history window ([llms.txt](https://abstractframework.ai/runtime/llms.txt), [llms-full.txt](https://abstractframework.ai/runtime/llms-full.txt)) - [AbstractAgent](https://abstractframework.ai/agent.html): ReAct / CodeAct / MemAct ([llms.txt](https://abstractframework.ai/agent/llms.txt), [llms-full.txt](https://abstractframework.ai/agent/llms-full.txt)) - [AbstractVoice](https://abstractframework.ai/voice.html): TTS, STT, voice cloning ([llms.txt](https://abstractframework.ai/voice/llms.txt), [llms-full.txt](https://abstractframework.ai/voice/llms-full.txt)) - [AbstractMusic](https://abstractframework.ai/music.html): text-to-music ([llms.txt](https://abstractframework.ai/music/llms.txt), [llms-full.txt](https://abstractframework.ai/music/llms-full.txt)) - [AbstractVision](https://abstractframework.ai/vision.html): image and video generation ([llms.txt](https://abstractframework.ai/vision/llms.txt), [llms-full.txt](https://abstractframework.ai/vision/llms-full.txt)) - [Abstract3D](https://abstractframework.ai/3d.html): image-to-3D and text-to-3D capability plugin ([llms.txt](https://abstractframework.ai/3d/llms.txt), [llms-full.txt](https://abstractframework.ai/3d/llms-full.txt)) - [AbstractCamera](https://abstractframework.ai/camera.html): camera control capability plugin ([llms.txt](https://abstractframework.ai/camera/llms.txt), [llms-full.txt](https://abstractframework.ai/camera/llms-full.txt)) - [AbstractMemory](https://abstractframework.ai/memory.html): durable agent memory ([llms.txt](https://abstractframework.ai/memory/llms.txt), [llms-full.txt](https://abstractframework.ai/memory/llms-full.txt)) - [AbstractSemantics](https://abstractframework.ai/semantics.html): semantics registry ([llms.txt](https://abstractframework.ai/semantics/llms.txt), [llms-full.txt](https://abstractframework.ai/semantics/llms-full.txt)) - [AbstractTUI](https://abstractframework.ai/tui.html): terminal UI toolkit behind AbstractCode's terminal client and both terminal consoles - [AbstractUIC](https://abstractframework.ai/uic.html): shared browser UI components for web apps The per-package llms files on this site are copies; the canonical versions live in each repository (https://raw.githubusercontent.com/lpalbou//main/llms.txt). ## Optional - [Framework llms.txt](https://raw.githubusercontent.com/lpalbou/AbstractFramework/main/llms.txt) and [llms-full.txt](https://raw.githubusercontent.com/lpalbou/AbstractFramework/main/llms-full.txt): the root repository's own index and handbook - [Documentation](https://github.com/lpalbou/AbstractFramework/tree/main/docs): getting started, install, architecture, automations, configuration, FAQ, glossary, troubleshooting - [Changelog](https://github.com/lpalbou/AbstractFramework/blob/main/CHANGELOG.md)