Back to browse
GitHub Repository

A terminal bridge to Anvil apps via the Server Uplink. Run diagnostics, query Data Tables, invoke server functions, and drop into an interactive REPL — all from your shell or an AI coding assistant.

5 starsPython

Anvil-uplink-CLI – agent-safe terminal CLI for Anvil.works apps

by hoponthestack·Apr 21, 2026·1 point·0 comments

AI Analysis

●●SolidNiche GemShip It

Agent-safe key handling prevents credential leaks in AI coding agent transcripts.

Strengths
  • Dotenv key_ref scheme keeps credentials out of AI agent context and transcripts.
  • Pretty-prints Anvil-specific types like Data Table rows and Media objects.
Weaknesses
  • Only useful for developers already using the niche Anvil low-code platform.
  • Wraps existing anvil-uplink library rather than implementing new protocol features.
Target Audience

Anvil.works developers, teams using AI coding agents

Similar To

Official Anvil CLI · Database CLI tools

Post Description

Anvil.works is a low-code Python web-app platform. Its "Server Uplink" lets an external Python process act as a server module — connect over a websocket and you can call server functions, query Data Tables, etc.

anvil-uplink-cli is a thin CLI over that library. The bits worth looking at:

- query, call, row, run, repl — the things you'd otherwise do by pasting into the web Server Console - multi-app profiles, pretty/JSON output, works the same on Windows / macOS / Linux / WSL - a dotenv: key_ref scheme designed for AI coding agents: the Uplink key stays in a gitignored .env, never in a tool-call argument, never in the agent's context

That last bit is the part I most want feedback on. The standard "just use an env var" advice works fine for humans, but when a coding agent is driving your CLI, any inline KEY=... cmd lands in the transcript — and a malicious row from the database could then instruct the agent to exfiltrate it. dotenv: side-steps this by making the CLI read the key itself and never exposing it to the caller.

Built this scratching my own itch while using Claude Code on my Anvil apps. Early alpha, MIT.

Similar Projects

Developer Tools●●Solid

Initialize an Agent Harness with Forge CLI

Spec document ingestion and merge-safe CLAUDE.md handling show thoughtful DX, but agent scaffolding is crowded.

Ship ItSolve My Problem
samahlstrom
212mo ago