Website · Docs · Examples · Source · npm · Brand
AStack is an open-source TypeScript framework for AI agents, workflows and retrieval. Its central idea is everything is a component: models, tools, agents and application logic share one component interface. You connect their ports into a pipeline, and data flows along the connections.
Three ideas carry the whole framework: components with named ports, ports that connect outputs to inputs, and pipelines that run the graph. Agents, multi-step workflows and routing are patterns built from them, not separate subsystems. The runtime is HLang, a flow-based programming runtime on RxJS, so each connection is an observable stream.
The model is original. PocketFlow reached a similar "the graph is the framework" idea independently and focuses on a 100-line Python core. AStack does not optimize for line count: it optimizes for typed, reactive data flow in TypeScript, where each connection carries its own data instead of a shared store. Read the comparison.
| Package | Purpose |
|---|---|
@astack-tech/core |
Component, Pipeline and ports |
@astack-tech/components |
Agents, streaming, RLM, text splitting and tool invocation |
@astack-tech/tools |
Tools that agents can call |
@astack-tech/integrations |
Model providers |
npm install @astack-tech/core@beta @astack-tech/components@betaFollow Getting started, then work through the examples in order. Each one is a single file that adds one idea: component, pipeline, routing, tools, chat, workflow, agent, streaming, RLM and an HTTP server. AStack is in public beta; check the changelogs before you update.
AStack is MIT licensed. Read the contribution guide and AGENTS.md, then open a pull request against dev. Every change starts with a failing test.