OnyxAxisOwO/ObsidianArc
A self-hosted AI platform with a Go server, multi-provider routing, usage tracking and an admin console, with chat and agentic work modes.
What it solves
Obsidian Arc provides a comprehensive, self-hosted solution for managing multi-user access to various AI models. It eliminates the need for complex infrastructure (like Redis or message queues) by bundling a chat interface and an API gateway into a single Go binary, allowing operators to control model routing, user quotas, and security in one place.
How it works
The system acts as a middleware between users and AI providers. It aggregates multiple APIs (OpenAI, Anthropic, DeepSeek, etc.) and exposes them through a unified interface. It uses SQLite or PostgreSQL for data persistence and includes an embedded Vue 3 frontend. For administrators, it provides a modular workbench and a command-line terminal (accessible via web or SSH) to manage users, groups, and system health.
Who it’s for
- Self-hosters wanting a private, multi-user AI chat platform.
- Operators who need to manage API costs and access via quotas and user groups.
- Developers looking for a unified API gateway that supports both OpenAI and Anthropic formats.
Highlights
- Unified API Gateway: Supports OpenAI and Anthropic Messages API formats, including tool calling and image generation.
- Advanced User Management: Features user groups, invite codes, 2FA (TOTP), and OpenID Connect integration.
- Granular Quota Control: Implements usage accounting with limits based on tokens or requests over custom time windows.
- Robust Security: Includes proof-of-work challenges, email domain filtering, and encrypted storage of upstream API keys.
- Project-Based Contexts: Allows users to organize conversations into projects with inherited system prompts.
- Lightweight Footprint: Extremely low resource usage (approx. 16MB idle RSS) and fast cold starts.
Related
- Project
- Project
- Project
- Project