Skip to main content

Onekey

Unified API Key Management for Developers
Securely store, manage, rotate, and call multiple AI/LLM API keys (OpenAI, Anthropic, Groq, Gemini, and more) from one place — with zero plaintext leaks and unified interface.

Python License: MIT CLI on PyPI

The Problem Developers Face Every Day

Juggling 10–50+ API keys across providers is painful:

  • Scattered .env files everywhere → easy to commit by mistake to Git
  • Plaintext keys on disk → security nightmare
  • Different API signatures → constant code changes when switching providers
  • No visibility into usage → surprise bills, no idea which key is burning tokens
  • Hard to rotate or expire keys → manual, error-prone process

Onekey solves all of this — one secure vault, one unified interface, beautiful CLI + web dashboard, zero vendor lock-in.

Key Features

  • AES-256 client-side encryption — keys never touch the server in plaintext
  • Deployment - Render
  • Single platform key — one unified key per user across all providers
  • Category proxy route — call providers by category (/proxy/sdk/<category>/<provider>/<slug>)
  • CLI power tool (Onekey): add, list, delete, call, usage — with Rich beautiful tables, sparklines & panels
  • Automatic provider detection (e.g. sk- → OpenAI)
  • Built-in usage tracking — tokens used, latency, status codes, errors — per key/provider
  • Flexible auth — JWT (username/password) + OAuth (GitHub / GitLab)
  • Normalized responses — consistent output across OpenAI, Groq, Anthropic, Gemini ...
  • CLI for fast development — install via pipx install Onekey-cli, works everywhere (macOS/Linux/Windows)

Architecture

Onekey/
├── backend/          # FastAPI server (auth, vault, proxy, usage)
├── frontend/         # frontend on valinna js , HTML and css
├── onekey_sdk/       # Category-based Python SDK package
├── Dockerfile        # Easy containerization
└── ... (pyproject.toml, requirements.txt, etc.)
  • Database: **NeonDB — PostgreSQL support planned
  • Encryption: AES-256 at rest (client-side)
  • Auth: Argon2 password hashing + JWT (short-lived)
  • Proxy: Normalizes requests/responses + retries + logging

Quick Start

pipx install Onekey-cli    # install the pypy package

Onekey login               # OAuth or username/password
Onekey add-key             # Add your OpenAI / Groq / etc. key
Onekey ls                  # Beautiful table of all keys
Onekey call <unified_key>   # Test call using unified key
Onekey usage               # Usage overview with sparklines

2. Python SDK (category-based)

from onekey_sdk import OnekeyClient
from onekey_sdk.llm import LLMClient

base_url = "https://onekey-ciwz.onrender.com"
platform_key = "okp-<your-platform-key>"

client = OnekeyClient(base_url=base_url, platform_api_key=platform_key)
llm = LLMClient(client)

result = llm.chat(
	provider="groq",
	key_slug="my-groq-key",
	model="llama-3.3-70b-versatile",
	messages=[{"role": "user", "content": "Hello from Onekey SDK"}],
)

print(result)

Get your platform key after login from GET /keys/platform-key.

3. Full stack (fastAPI backend + interactive Vanilla JS frontend)

Default: backend on http://localhost:8000, frontend proxies to it.

Security Highlights

  • Keys encrypted client-side before ever hitting the database
  • No plaintext in logs, memory, or disk
  • Short-lived JWTs + secure OAuth flows
  • Strict input validation (Pydantic)
  • Security headers & CORS in FastAPI
  • Designed with zero-trust principles

Who Is This For?

  • ML/AI engineers juggling multiple LLM providers
  • Indie hackers & solo devs tired of .env chaos
  • Anyone who wants usage visibility in a easy way
  • One who wants to store their API keys at a single place

License

MIT License — free to use, modify, distribute.


Built with ❤️ by Anik Chand and Abhiraj Adhikary Onekey — because your keys deserve better than a .env file.

Metadata

Release files for onekey 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for onekey 0.1.0
File Size Uploaded
onekey-0.1.0.tar.gz 9.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for onekey 0.1.0
File Interpreter ABI Platform
onekey-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 21.0 kB

Release files / onekey-0.1.0.tar.gz

Download URL onekey-0.1.0.tar.gz
Size 9.3 kB
Tags Source
SHA-256 checksum
How to use checksums
7bc818b05828b59ad3bfde0bc2afcd746052052a89c0edda83b64e8a208019e3
BLAKE2b-256 checksum
How to use checksums
07d5750d88821c0ed78b81d696e07a695c3834e97a7349fadbd1bef6afe67e68
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.17

Release files / onekey-0.1.0-py3-none-any.whl

Download URL onekey-0.1.0-py3-none-any.whl
Size 11.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
80253d69eb4cdbf20d98197b59598c7d5da99f4859d91006850537af791d55b4
BLAKE2b-256 checksum
How to use checksums
8c0870bbe88117df1a4dcbe03ff2d87f743ac529f9348292f33e56d7b7023faf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.17

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page