https://github.com/asterai-io/asterai
Monorepo for AsterAI client libraries, interfaces and tooling.
https://github.com/asterai-io/asterai
component-model wasi wasm web-assembly
Last synced: 7 days ago
JSON representation
Monorepo for AsterAI client libraries, interfaces and tooling.
- Host: GitHub
- URL: https://github.com/asterai-io/asterai
- Owner: asterai-io
- License: apache-2.0
- Created: 2024-05-12T15:44:12.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2026-02-08T18:15:40.000Z (about 1 month ago)
- Last Synced: 2026-02-08T22:37:24.213Z (about 1 month ago)
- Topics: component-model, wasi, wasm, web-assembly
- Language: Rust
- Homepage:
- Size: 1.08 MB
- Stars: 18
- Watchers: 1
- Forks: 1
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
Asterai
The AI Agent Tool Marketplace.
Discover and deploy tools for your AI agents, written in any language.
[](https://github.com/asterai-io/asterai/blob/master/LICENSE)
[](https://asterai.io/discord)
[](https://github.com/asterai-io/asterai)
[](https://x.com/asterai_io)
Website ·
Documentation ·
Discord
## ✨ Overview
Asterai is an open-source platform and runtime for creating, sharing, and executing portable, sandboxed WebAssembly (WASI) components. Built around wasmtime, it provides a neutral compute substrate for the agentic era.
- **Language Interoperability**: Write tools in any language (Rust, Go, Python, JS, C/C++) — components written in different languages work together seamlessly via type-safe WIT interfaces
- **Sandboxed Execution**: AI agents can run untrusted code safely with WASI security guarantees
- **True Portability**: Deploy anywhere (local, cloud, edge) with no dependency hell — same behavior everywhere
- **Instant Deployment**: Tools just work without DevOps or container configuration
## 🚀 Installation
**npm** (recommended):
```bash
npm install -g @asterai/cli
```
**Cargo** (Rust users):
```bash
cargo install asterai
```
**Binary releases**: Download from [GitHub Releases](https://github.com/asterai-io/asterai/releases)
## 📦 Structure
| Directory | Description |
|-------------------------|-----------------------------|
| [cli][1] | The asterai CLI utility |
| [runtime][2] | The asterai runtime library |
| [component-examples][3] | Example components |
## 🔧 CLI Command Reference
The CLI operates in two modes: **local** (offline, working with files in
`~/.local/bin/asterai/artifacts`) and **remote** (online, interacting with the Asterai
registry API).
By default, most commands operate locally. To operate on the remote registry instead, pass
the `--remote` or `-r` flag. This enables a git-like workflow where you modify locally and
sync when ready.
| Command | Local | Remote | `--remote` | Notes |
|------------------------|:-----:|:------:|:----------:|------------------------------------------|
| **Auth** | | | | |
| `auth login` | ✓ | | | Stores API key to local file |
| `auth logout` | ✓ | | | Removes local API key file |
| `auth status` | ✓ | ✓ | | Checks local file, validates against API |
| **Environment** | | | | |
| `env init` | ✓ | | | Creates local environment |
| `env inspect` | ✓ | | | Reads environment config |
| `env add-component` | ✓ | | | Adds component to environment |
| `env remove-component` | ✓ | | | Removes component from environment |
| `env set-var` | ✓ | | | Sets environment variable |
| `env list` | ✓ | ✓ | | Shows local and remote environments |
| `env run` | ✓ | ✓ | | Checks local first, pulls if not found |
| `env pull` | | ✓ | | Fetches from registry to local |
| `env push` | ✓ | ✓ | | Pushes local to registry |
| `env delete` | ✓ | ✓ | ✓ | Deletes environment (-r for registry) |
| **Component** | | | | |
| `component init` | ✓ | | | Creates local component project |
| `component list` | ✓ | | | Lists local components |
| `component pkg` | ✓ | | | Packages WIT locally |
| `component pull` | | ✓ | | Fetches from registry to local |
| `component push` | ✓ | ✓ | | Pushes local to registry |
| `component delete` | ✓ | | | Deletes local component |
**Legend:**
- **Local**: Command reads/writes local files
- **Remote**: Command interacts with the Asterai API
- **`--remote`**: Pass `-r` or `--remote` to operate on the registry instead of locally
## 📚 Documentation
The asterai documentation is available at [docs.asterai.io](https://docs.asterai.io)
[1]: ./cli
[2]: ./runtime
[3]: ./component-examples