tingly-box

module
v0.260224.1130 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 24, 2026 License: MPL-2.0

README

Tingly Box Web UI Demo

Tingly Box

Quick StartFeaturesUsageDocumentationIssues

Go Version License Platform

Tingly Box decides which model to call, when to compress context, and how to route requests for maximum efficiency, offering secure, reliable, and customizable functional extensions.

Tingly Box Web UI Demo

Key Features

  • Unified API – One mixin endpoint to rule them all, use what you like - OpenAI / Anthropic / Google
  • Smart Routing, Not Just Load Balancing – Intelligently route requests across models and tokens based on cost, speed, or custom policies, not simple load balancing
  • Smart Context Compression – (Coming soon) Automatically distill context to its essential parts: sharper relevance, lower cost, and faster responses
  • Auto API Translation – Seamlessly bridge OpenAI, Anthropic, Google, and other API dialects—no code changes needed
  • Blazing Fast – Adds typically < 1ms of overhead—so you get flexibility without latency tax
  • Flexible Auth – Support for both API keys and OAuth (e.g., Claude.ai), so you can use your existing quotas anywhere
  • Visual Control Panel – Intuitive UI to manage providers, routes, aliases, and models at a glance
  • Client Side Usage Stats - Track token consumption, latency, cost estimates, and model selection per request—directly from your client

Quick Start

Install

From npm (recommended)

# Install and run (auto service migration without any args)
npx tingly-box@latest

if any trouble, please check tingly-box process and port 12580 and confirm to kill them.

From source code

Requires: Go 1.21+, Node.js 18+, pnpm, task, openapi-generator-cli

# Install dependencies
# - Go: https://go.dev/doc/install
# - Node.js: https://nodejs.org/
# - pnpm: `npm install -g pnpm`
# - task: https://taskfile.dev/installation/, or `go install github.com/go-task/task/v3/cmd/task@latest`
# - openapi-generator-cli: `npm install @openapitools/openapi-generator-cli -g`

git submodule update --init --recursive

# Build with frontend
task build

# Build GUI binary via wails3
task wails:build

From Docker (Github)

mkdir tingly-data
docker run -d \
  --name tingly-box \
  -p 12580:12580 \
  -v `pwd`/tingly-data:/home/tingly/.tingly-box \
  ghcr.io/tingly-dev/tingly-box

Use with IDE, CLI, SDK and any AI application

Tool Integration

  • Claude Code
  • OpenCode
  • Xcode
  • Gemini
  • ……

Any application is ready to use.

OpenAI SDK

from openai import OpenAI

client = OpenAI(
    api_key="your-tingly-model-token",
    base_url="http://localhost:12580/tingly/openai/v1"
)

response = client.chat.completions.create(
    model="tingly-gpt",
    messages=[{"role": "user", "content": "Hello!"}]
)
print(response)

Anthropic SDK

from anthropic import Anthropic

client = Anthropic(
    api_key="your-tingly-model-token",
    base_url="http://localhost:12580/tingly/anthropic"
)

response = client.messages.create(
    model="tingly",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Hello!"}
    ]
)
print(response)

Tingly Box proxies requests transparently for SDKs and CLI tools.

Using OAuth Providers

You can also add OAuth providers (like Claude Code) and use your existing quota in any OpenAI-compatible tool:

# 1. Add Claude Code via OAuth in Web UI (http://localhost:12580)
# 2. Configure your tool with Tingly Box endpoint

Requests route through your OAuth-authorized provider, using your existing Claude Code quota instead of requiring a separate API key.

This works with any tool that supports OpenAI-compatible endpoints: Cherry Studio, VS Code extensions, or custom AI agents.

Web Management UI

npx tingly-box@latest

Documentation

User Manual – Installation, configuration, and operational guide

Philosophy

  • One endpoint, many providers – Consolidates multiple providers behind a single API with minimal configuration.
  • Seamless integration – Works with SDKs and CLI tools with minimal setup.

How to Contribute

We welcome contributions! Follow these steps, inspired by popular open-source repositories:

  1. Fork the repository – Click the “Fork” button on GitHub.

  2. Clone your fork

    git clone https://github.com/your-username/tingly-box.git
    cd tingly-box
    
  3. Create a new branch

    git checkout -b feature/my-new-feature
    
  4. Make your changes – Follow existing code style and add tests if applicable.

  5. Run tests

    task test
    
  6. Commit your changes

    git commit -m "Add concise description of your change"
    
  7. Push your branch

    git push origin feature/my-new-feature
    
  8. Open a Pull Request – Go to the GitHub repository and open a PR against main.

Support

Telegram Wechat
image image
https://t.me/+V1sqeajw1pYwMzU1 http://chv.ckcoa5.cn/t/OSFb

Contributors



Eearly contributor badges are given to following contributors:
image image

Mozilla Public License Version 2.0 · © Tingly Dev

Directories

Path Synopsis
cli
remote-coder command
tingly-box command
imbot module
feature
Package feature provides experimental feature flag definitions and parsing.
Package feature provides experimental feature flag definitions and parsing.
obs
Package obs provides a unified observability layer for Go applications, integrating structured logging, metrics, and distributed tracing via OpenTelemetry.
Package obs provides a unified observability layer for Go applications, integrating structured logging, metrics, and distributed tracing via OpenTelemetry.
smart_compact
Package smart_compact provides smart context compression for Anthropic requests.
Package smart_compact provides smart context compression for Anthropic requests.
tui
typ
pkg
fs
oauth/example command
Package main provides an example OAuth client that demonstrates how to use the oauth package for performing OAuth 2.0 authorization flows.
Package main provides an example OAuth client that demonstrates how to use the oauth package for performing OAuth 2.0 authorization flows.
obs

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL