local-first · programmable

Every column is a function.

gtm grid is a programmable spreadsheet for go-to-market teams. Rows are leads, companies, posts. Columns are functions — a manual value, an AI prompt, or a connector call. Template inputs with {{Column Name}}, hit run, and watch cells fill pending → running → done.

runs on your machine — SQLite engine, QuickJS sandbox, bring your own AI key.

how it works

A spreadsheet that computes.

No glue scripts, no brittle automations. Define each column once as a function, and the grid recomputes the rows that depend on it.

Functional columns

Each column is a manual value, an ai.generate prompt, or a connector call like trigify.enrichProfile. Inputs template off other columns with {{name}}.

In-app agent

Drive your grid in plain language. Ask the built-in Claude Code / Codex agent to create a table, add columns, and run them — over MCP, live.

Declarative connectors

Enrichment and outreach providers ship as manifests. Connect a key once, then call leadmagic.findEmail from any cell.

Honest status

Cells are literal: pending, running, done, or an error with its Status Code: 200. Un-run functions read .

Inbound webhooks

Give a table a unique POST endpoint. Map incoming JSON to columns, auto-run the functions, and watch deliveries arrive in real time.

Your keys, your machine

AI keys and connector secrets are AES-256-GCM encrypted and never leave the device. The execution sandbox runs locally — always.

local-first guarantee

Free and offline by default.

The solo tier is 100% local — a bundled SQLite engine, no caps, no account required. Upgrade for a team and only your schema and row data sync; keys and execution stay put.

  • Keys, connector secrets, and the sandbox never leave the machine.
  • Bundled SQLite storage — works fully offline, no caps.
  • Cloud sync (Pro) shares schema + rows only; execution still runs local.

what stays local

ai.key            local · encrypted
connector.secret  local · encrypted
quickjs.sandbox   local
table.schema      sync (pro)
table.rows        sync (pro)
open-core

Two tiers. No surprises.

Start solo and local for free. Move to the cloud when your team needs realtime multiplayer — billed per seat.

Local solo

free

100% local and offline. Bundled SQLite engine, QuickJS sandbox, bring your own AI key. No caps, no account.