diff --git a/README.md b/README.md index a12d8ab..21aafc5 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # Agentbase -**Similar to WordPress, made for AI Native Applications** โ€” Build, deploy, and manage AI-powered applications without the complexity. +**Open-source, self-hosted platform for AI apps โ€” WordPress for the AI era.** -Agentbase is an open-source platform that brings the WordPress model to AI development: plugins, themes, a marketplace, and a hosted option โ€” everything you need to launch AI products fast. +Build, embed, and ship AI chatbots and assistants with WordPress-style plugins and themes, bring-your-own-key support for OpenAI, Anthropic, and Gemini, and an embeddable widget for any website. A self-hosted, open-source alternative to closed AI-chat SaaS like Chatbase and Intercom Fin โ€” your code, your keys, your infrastructure. [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) [![pnpm](https://img.shields.io/badge/maintained%20with-pnpm-cc00ff.svg)](https://pnpm.io/) @@ -11,6 +11,10 @@ Agentbase is an open-source platform that brings the WordPress model to AI devel > ๐Ÿ“– **Full documentation is available at [agentaflow.github.io/agentbase](https://agentaflow.github.io/agentbase)** > โ€” covering self-hosting, plugin & theme development, AI model configuration, and the full API reference. +## Open-source core, optional hosted service + +The full Agentbase platform in this repository is **GPL-3.0 and self-hostable with Docker** โ€” your code, your keys, your infrastructure, no vendor lock-in. [AgentaFlow](https://www.agentaflow.com) additionally operates a managed cloud and the public marketplace catalog as **optional** paid hosted services for teams who prefer not to run their own. Everything documented here runs entirely on infrastructure you control. + ## Screenshots

@@ -61,7 +65,7 @@ agentbase/ | **SQL Database** | PostgreSQL 16 | | **Document DB** | MongoDB 7 | | **Cache** | Redis 7 | -| **Infrastructure** | Docker ยท Azure App Service + Bicep IaC | +| **Infrastructure** | Docker โ€” self-host on any cloud or bare metal (production Compose + Azure Bicep IaC included) | | **License** | GPL-3.0 | ## Quick Start @@ -121,11 +125,19 @@ npx ts-node src/cli.ts status # Check service status npx ts-node src/cli.ts update # Update to latest version ``` +### Deployment Targets + +Agentbase is plain Docker โ€” deploy it on any cloud or bare metal, no lock-in: + +- **Docker Compose** (universal baseline) โ€” production stack in [docker-compose.prod.yml](docker-compose.prod.yml) +- **Azure** โ€” reference infrastructure-as-code (Bicep) in [infra/](infra/), documented in [docs/azure/](docs/azure/) +- **DigitalOcean / GCP** โ€” guides planned ([contributions welcome](CONTRIBUTING.md)) + ## Features ### ๐Ÿค– AI Integration -- **Multi-Provider Support** โ€” OpenAI (GPT-4, GPT-4o, GPT-3.5), Anthropic (Claude), Google Gemini (2.0 Flash, 1.5 Pro, 1.5 Flash), HuggingFace (Inference API) +- **Multi-Provider Support** โ€” OpenAI (GPT-4, GPT-4 Turbo, GPT-4o, GPT-4o Mini, GPT-3.5 Turbo), Anthropic (Claude Sonnet 4.5, Claude Haiku 4.5), Google Gemini (2.0 Flash, 1.5 Pro, 1.5 Flash), HuggingFace (Llama 3.1, Mistral, Mixtral, Phi-3, and more via Inference API) - **BYOK (Bring Your Own Key)** โ€” Users can securely store their own provider API keys, encrypted at rest with AES-256-GCM. BYOK keys bypass the platform quota gate entirely and are decrypted ephemerally per request โ€” never cached or exposed to browser clients - **Model Configuration Dashboard** โ€” Per-app model configs with provider selection, parameter tuning (temperature, max tokens, top-p), and system prompts - **A/B Testing** โ€” Model config versioning with traffic splitting and performance metrics tracking @@ -140,7 +152,7 @@ npx ts-node src/cli.ts update # Update to latest version - **Plugin SDK** โ€” TypeScript interfaces and utilities for plugin development - **Advanced Capabilities** โ€” Database access (scoped key-value store), custom API endpoints, cron scheduling, webhooks, admin UI extensions, inter-plugin event bus - **Lifecycle Management** โ€” Install, activate, deactivate, uninstall with dependency resolution -- **Marketplace** โ€” Browse, search, rate, and review plugins and themes with 8 categories +- **Marketplace** โ€” Browse, search, rate, and review plugins and themes across multiple categories - **Plugin Versioning** โ€” Multiple versions per plugin with changelogs, compatibility checks, and checksums - **Developer Portal** โ€” Submit plugins/themes for marketplace review, admin approval workflow - **Download Tracking** โ€” Automatic install/download counters @@ -214,8 +226,10 @@ npx ts-node src/cli.ts update # Update to latest version - `GET /api/auth/google` โ€” OAuth: Redirect to Google - `GET /api/auth/google/callback` โ€” OAuth: Google callback - `GET /api/auth/providers` โ€” List available OAuth providers +- `POST /api/auth/refresh` โ€” Refresh access token - `POST /api/auth/change-password` โ€” Change password -- `POST /api/auth/password-reset/request` โ€” Request password reset +- `POST /api/auth/password-reset/request` โ€” Request password reset email +- `POST /api/auth/password-reset` โ€” Reset password with token ### Applications @@ -238,25 +252,26 @@ npx ts-node src/cli.ts update # Update to latest version ### Marketplace -- `GET /api/marketplace/plugins/browse` โ€” Browse plugins -- `GET /api/marketplace/plugins/featured` โ€” Featured plugins -- `GET /api/marketplace/plugins/categories` โ€” Plugin categories +- `GET /api/marketplace/browse` โ€” Browse plugins +- `GET /api/marketplace/featured` โ€” Featured plugins +- `GET /api/marketplace/categories` โ€” Plugin categories - `GET /api/marketplace/plugins/:id` โ€” Plugin detail with rating stats - `GET /api/marketplace/plugins/:id/reviews` โ€” Plugin reviews - `POST /api/marketplace/plugins/:id/reviews` โ€” Submit review - `GET /api/marketplace/plugins/:id/versions` โ€” Plugin versions - `POST /api/marketplace/plugins/:id/versions` โ€” Publish new version -- `GET /api/marketplace/themes/browse` โ€” Browse themes +- `GET /api/marketplace/themes` โ€” Browse themes - `GET /api/marketplace/themes/featured` โ€” Featured themes +- `GET /api/marketplace/themes/categories` โ€” Theme categories - `GET /api/marketplace/themes/:id` โ€” Theme detail - `GET /api/marketplace/themes/:id/reviews` โ€” Theme reviews - `POST /api/marketplace/themes/:id/reviews` โ€” Submit theme review - `POST /api/marketplace/submit/plugin` โ€” Developer: submit plugin - `POST /api/marketplace/submit/theme` โ€” Developer: submit theme -- `GET /api/marketplace/admin/plugins/pending` โ€” Admin: pending plugins +- `GET /api/marketplace/admin/pending/plugins` โ€” Admin: pending plugins - `POST /api/marketplace/admin/plugins/:id/approve` โ€” Admin: approve plugin - `POST /api/marketplace/admin/plugins/:id/reject` โ€” Admin: reject plugin -- `GET /api/marketplace/admin/themes/pending` โ€” Admin: pending themes +- `GET /api/marketplace/admin/pending/themes` โ€” Admin: pending themes - `POST /api/marketplace/admin/themes/:id/approve` โ€” Admin: approve theme - `POST /api/marketplace/admin/themes/:id/reject` โ€” Admin: reject theme @@ -306,12 +321,12 @@ npx ts-node src/cli.ts update # Update to latest version ## AI Providers -Agentbase supports multiple AI providers out of the box: +Agentbase supports multiple AI providers out of the box. With BYOK, any model the provider exposes via their API is supported โ€” just supply your key and specify the model ID; the platform routes the request directly to the provider with no additional configuration. -- **OpenAI** โ€” GPT-4, GPT-4o, GPT-3.5 Turbo -- **Anthropic** โ€” Claude Sonnet 4.5, Claude Haiku 4.5 -- **Google Gemini** โ€” Gemini 2.0 Flash, Gemini 1.5 Pro, Gemini 1.5 Flash -- **HuggingFace** โ€” Any model via the Inference API (Mistral, Llama, Falcon, etc.) +- **OpenAI** โ€” o3 Mini, o1, o1 Mini, GPT-4o, GPT-4o Mini, GPT-4 Turbo, GPT-4, GPT-3.5 Turbo +- **Anthropic** โ€” Claude Opus 4.8, Claude Sonnet 4.6, Claude Sonnet 4.5, Claude Haiku 4.5 +- **Google Gemini** โ€” Gemini 2.0 Flash, Gemini 2.0 Flash Thinking, Gemini 1.5 Pro, Gemini 1.5 Flash +- **HuggingFace** โ€” Llama 3.1 8B, Mistral 7B, Mixtral 8x7B, Phi-3 Mini, Zephyr 7B (any model via Inference API) Configure provider keys in one of two ways: @@ -326,9 +341,19 @@ Agentbase handles provider routing, rate limiting, and conversation management a See [CHANGELOG.md](CHANGELOG.md) for a detailed history of changes across all phases. -## Contributing +## Contributing & Get Involved + +Agentbase is pre-launch and actively developed โ€” it's a great time to get involved +and shape the project early. We welcome contributions of all sizes, from docs fixes +to new plugins, themes, and providers. -See [CONTRIBUTING.md](CONTRIBUTING.md) for development guidelines. +- **Start here:** [CONTRIBUTING.md](CONTRIBUTING.md) for development guidelines and the local setup above. +- **Good places to jump in:** + - DigitalOcean / GCP deployment guides (Azure reference IaC already exists in [infra/](infra/) to model from) + - New marketplace plugins and themes built on the [Plugin SDK](packages/plugins) and [Theme SDK](packages/themes) + - Additional AI provider integrations and example apps + - Documentation, tutorials, and the [examples gallery](docs/pages/examples.mdx) +- **Found a bug or have an idea?** Open an issue โ€” well-scoped issues and PRs are the fastest way to help. ## License