Standalone Cloud Proxy Integration Guide
Intutic's proxy engine (intutic-proxy) is a high-performance, OpenAI-compatible proxy gateway written in Rust. It can be deployed on your own infrastructure to audit, cache, and govern agent model traffic centrally without installing any workstation shims or developer daemons.
🚀 Deployment Topologies
Intutic Proxy supports two primary self-hosted deployment topologies depending on whether you require multi-provider LLM gateway translation (via LiteLLM) or direct model provider routing:
[ Option A: Dual Self-Hosted Proxy ]
Developer IDE / CLI Upstream LLM Providers
(Claude Code, Cursor, ──────► Intutic Proxy ──────► LiteLLM Proxy ──────► (Anthropic, OpenAI,
LangGraph) (Rust — :4000) (Python — :4001) Bedrock, Vertex, Ollama)
│ │
▼ ▼
Governance & PCAS Model Translation &
WASM Policy Engine Unified API Gateway
[ Option B: Standalone Intutic Proxy ]
Developer IDE / CLI Intutic Proxy Upstream LLM Providers
(Claude Code, Cursor, ──────► (Rust — :4000) ─────────────────────────────► (api.anthropic.com,
LangGraph) │ api.openai.com)
▼
Governance & PCAS
WASM Policy Engine
[ Option C: Native NPM Binary Execution ]
Developer / CI npx @intutic/proxy Upstream LLM Providers
(Node.js / Terminal) ──────► (Native Rust Gateway) ────────────────────► (api.anthropic.com,
│ api.openai.com)
▼
Governance & PCAS
WASM Policy EngineOption A: Dual Self-Hosted Proxy (Intutic + LiteLLM Gateway)
- How it works: Intutic Proxy (Rust
:4000) sits in front of LiteLLM (:4001). Intutic enforces security SOPs, WASM policies, and PCAS primitives in-process, then forwards clean requests to LiteLLM to translate and route across 100+ model providers (Bedrock, Azure, Vertex, Ollama). - Docker Compose Snippet:yaml
services: intutic-proxy: image: intutic/proxy:latest ports: - "4000:4000" environment: - UPSTREAM_URL=http://litellm:4000 # No CONTROL_PLANE_URL: open core ships no control plane, and pointing # this at a host that does not exist makes the policy pre-check fail — # which, with the default `fail_closed: true`, blocks every request. # Set it only when you actually have a control plane to talk to. litellm: image: ghcr.io/berriai/litellm@sha256:be646214d7bc1cda0be57debbbf58e822ca4f233ddc50d0c0c7fa9b4a28063af ports: - "4001:4000" volumes: - ./config.yaml:/app/config.yaml
Option B: Standalone Intutic Proxy (Direct Provider Connection)
- How it works: Run Intutic Proxy standalone without LiteLLM. Route traffic directly to upstream provider endpoints (
api.anthropic.comorapi.openai.com). - Environment Setup:bash
export ANTHROPIC_BASE_URL="http://localhost:4000/v1" intutic start --upstream-url "https://api.anthropic.com"
Option C: Native NPM Binary Runner (npx @intutic/proxy)
How it works: Execute the native high-performance Rust proxy binary directly via npm without needing Docker or Kubernetes:
bash# Run directly via npx npx @intutic/proxy # Or install once and skip the npx download step on every run npm install -g @intutic/proxy intutic-proxyBoth commands run the proxy in the foreground — there is no bundled systemd/launchd unit for
intutic-proxyitself (unlike the sync daemon and MCP daemon, whichintutic daemon installdoes manage this way). For unattended background operation on a single host, supervise it the same way you would any other long-running process — your own systemd unit, a process manager like pm2 or supervisord — or use Option A/B's Docker container above, which Docker's own restart policy already supervises.
🛠️ Framework Integration
Connecting any standard LLM framework to the standalone proxy is simple. Just override the base_url parameter and pass your Intutic API key.
1. LangGraph (Python & TypeScript)
LangGraph now has a dedicated harness adapter — see the LangGraph integration guide for the full setup: base_url snippets for both Python and TypeScript, the SDK-side tool gate (intutic_clawde.gate), and the x-intutic-harness trace-attribution header. The short version is the same base_url override as every other framework on this page, pointed at your hosted proxy.
2. Amazon Bedrock AgentCore & Anthropic Managed Agents
Amazon Bedrock AgentCore and Anthropic Managed Agents connect to Intutic Proxy by configuring the provider gateway endpoint:
import os
from langchain_community.chat_models import BedrockChat
# Route Amazon Bedrock traffic through Intutic Proxy (Option A: Intutic + LiteLLM)
os.environ["AWS_BEDROCK_RUNTIME_ENDPOINT"] = "http://localhost:4000/v1"
llm = BedrockChat(
model_id="anthropic.claude-3-5-sonnet-20241022-v2:0",
model_kwargs={"temperature": 0.1}
)3. Custom & Proprietary Company Harnesses
Any internal, microservice-based, or custom company agent framework can be governed by Intutic with zero refactoring:
- Standard HTTP Protocol Override: Point
OPENAI_BASE_URL,ANTHROPIC_BASE_URL,HTTP_PROXY, orHTTPS_PROXYtohttps://proxy.your-company.com/v1. - Native Package Suite: Import
@intutic/clawde(TypeScript SDK) or spawnnpx @intutic/proxydirectly inside microservice containers. - Custom Harness Config Adapters: Intutic supports Markdown (
.md), YAML (.yml), JSON (.json), and Env (.env) harness config formats.
🔒 Air-Gapped VPC & Offline Deployment
For strict security environments requiring zero data egress:
- 100% Offline Local Operation: Intutic Proxy, WASM policy engine, and Valkey memory cache operate entirely inside your private VPC or local workstation without sending telemetry to external clouds.
- Local Log & Spend Sharding: Offline telemetry and prompt logs are written to sharded local files (
~/.intutic/logs/traces-YYYY-MM-DD.jsonl). - Automated Offline Sync: When a VPC network connection is established (or during scheduled sync windows), the sync daemon reconciles spend back to your self-hosted Control Plane (
/api/v1/traces/sync-back).
⚡ Interactive Slash Commands
Because the proxy intercepts prompt content pre-flight, developers can invoke interactive slash commands directly inside their chat prompts or agent sessions.
If a prompt begins with /intutic or @intutic, the proxy will process the command immediately and return the output without calling the upstream provider:
# Returns active session budget usage and audit compliance rating
response = llm.invoke("/intutic status")
print(response.content)Protocol Compliance
To prevent client-side SDK parser failures, the proxy automatically formats the slash command response content to match the requested protocol schema:
- OpenAI SDK: Wraps the payload in a standard
chat.completionChoice object. - Anthropic SDK: Wraps the payload in a standard
messageJSON block. - Streaming Content: Streams command outputs using Server-Sent Events (SSE) chunks if
stream: trueis configured.