Open-source AI CLI and local MCP server connecting 25 clients—Claude Code, Cursor, Codex, ChatGPT, Hermes, and OpenClaw—to 2,000+ models/APIs, with OAuth and rollback.
Drift inferred · capture-to-capture
tool count over time
08-15 00:38 now
6t
6t
transport stdio · streamable-http · http
verified
reported
listed in the official MCP registry counts 6 tools · 0 res
· 0 prompts
permission surface via README inference
tools
-
sandbase_account
Check account balance (free, no cost)
-
sandbase_discover
Search all 2,000+ available AI models and APIs
-
sandbase_inspect
Get input schema, pricing, and ready-to-use template
-
sandbase_run
Execute a model or API endpoint
-
sandbase_run_get
Poll status/result of an async run (video gen, etc.)
-
sandbase_runs
List your recent API calls with cost breakdown
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 00f144a · analyzer v33 · 1w ago
skills & prompt files 2
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 42
filesystem 30
- fs sandbaseai-cli-00f144a/assets/mcp-bridge.mjs :2
import { readFile } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/a1-adapters.ts :2
import { chmod, mkdir, rm, stat } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/adapters/index.ts :1
import { mkdir, readFile } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/b-adapters.ts :2
import { rm } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/c-adapters.ts :2
import { existsSync } from "node:fs"; - fs sandbaseai-cli-00f144a/src/claude-desktop.ts :2
import { rm } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/cowork.ts :2
import { rm } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/credentials/store.ts :5
import { mkdir, rm, stat } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/desktop-bridge.ts :1
import { rm } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/fs-safe.ts :1
import { chmod, copyFile, mkdir, open, readFile, rename, rm, stat } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/kiro-ide.ts :2
import { rm } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/paths.ts :3
import { existsSync } from "node:fs";
show 18 more
- fs sandbaseai-cli-00f144a/src/skills-cli.ts :3
import { readFile } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/skills.ts :2
import { mkdir, readFile, rm } from "node:fs/promises"; - fs sandbaseai-cli-00f144a/src/warp-adapter.ts :2
import { rm } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/a1-adapters.test.ts :3
import { mkdir, mkdtemp, readFile, stat, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/adapters.test.ts :3
import { chmod, mkdtemp, mkdir, readFile, readdir, stat, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/b-adapters.test.ts :3
import { mkdir, mkdtemp, readFile, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/c-adapters.test.ts :3
import { mkdir, mkdtemp, readFile, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/chatgpt.test.ts :3
import { mkdtemp } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/claude-desktop.test.ts :3
import { mkdtemp, readFile, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/commands.test.ts :3
import { mkdir, mkdtemp, readFile, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/connect.test.ts :3
import { mkdir, mkdtemp, readFile, stat, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/cowork.test.ts :3
import { mkdtemp, readFile, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/desktop-bridge.test.ts :3
import { mkdtemp, readFile, rm, stat, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/kiro-ide.test.ts :3
import { mkdtemp, mkdir, readFile, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/mcp-bridge.test.ts :3
import { mkdtemp } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/package.test.ts :2
import { readFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/skills.test.ts :2
import { mkdir, mkdtemp, readFile, writeFile } from "node:fs/promises"; - fs (weak) sandbaseai-cli-00f144a/test/warp-adapter.test.ts :3
import { mkdtemp, mkdir, readFile, writeFile } from "node:fs/promises";
shell / exec 8
- shell sandbaseai-cli-00f144a/src/a1-adapters.ts :1
import { spawnSync } from "node:child_process"; - shell sandbaseai-cli-00f144a/src/adapters/index.ts :4
import { spawnSync } from "node:child_process"; - shell sandbaseai-cli-00f144a/src/b-adapters.ts :1
import { spawnSync } from "node:child_process"; - shell sandbaseai-cli-00f144a/src/c-adapters.ts :1
import { spawnSync } from "node:child_process"; - shell sandbaseai-cli-00f144a/src/commands.ts :1
import { spawn } from "node:child_process"; - shell sandbaseai-cli-00f144a/src/skills-cli.ts :1
import { spawn } from "node:child_process"; - shell (weak) sandbaseai-cli-00f144a/test/commands.test.ts :2
import { spawnSync } from "node:child_process"; - shell (weak) sandbaseai-cli-00f144a/test/mcp-bridge.test.ts :2
import { spawn } from "node:child_process";
network 1
- net (weak) sandbaseai-cli-00f144a/test/mcp-bridge.test.ts :4
import { createServer, type IncomingMessage } from "node:http";
install hooks 1
- prepack sandbaseai-cli-00f144a/package.json :26
npm run build
declared dependencies 5
- jsonc-parser@3.3.1
- smol-toml@1.7.0
- yaml@2.9.0
- @types/node@22.15.3
- typescript@5.8.3