{
  "$schema_doc": "https://gtmstacker.com/registry/schema/entry.schema.json",
  "stability": "emerging",
  "generator": "agentic-media-registry",
  "generated_at": "2026-10-01T00:00:00Z",
  "id": "com.gtmstacker.registry/tool/kavla",
  "type": "tool",
  "slug": "kavla",
  "canonical_url": "https://gtmstacker.com/registry/tool/kavla/",
  "title": "Kavla",
  "description": "Kavla is a self-hostable infinite-canvas data workspace: it pairs a tldraw canvas with an in-browser DuckDB and an OpenAI-compatible agent (works with the Codex CLI), so you can lay out, query, and explore data spatially and let an agent drive the analysis. Open source: yes (Apache-2.0); self-hostable. Free OSS; early project (~19 stars; ~75 commits).",
  "category": "analytics-bi",
  "tags": [
    "analytics-bi",
    "ai-infrastructure",
    "mcp-agents",
    "duckdb",
    "data-canvas",
    "self-hostable"
  ],
  "status": "active",
  "revision": 1,
  "content_hash": "056ebd3263f35d19d9f5ebfbe4321f032cff3c65e898affc98f20cfc9bfd037f",
  "date_published": "2026-10-01T00:00:00Z",
  "date_modified": "2026-10-01T00:00:00Z",
  "source": {
    "name": "aleda145 · GitHub",
    "url": "https://github.com/aleda145/kavla"
  },
  "license": "Apache-2.0",
  "one_liner": "Kavla is a self-hostable infinite-canvas data workspace pairing tldraw with an in-browser DuckDB and an OpenAI-compatible agent for exploring data.",
  "open_source": "yes",
  "self_hostable": "yes",
  "pricing_model": "free",
  "who_its_for": "An analyst or small data team that wants a spatial, canvas-style surface for exploring data with DuckDB in the browser, and an agent (OpenAI-compatible / Codex CLI) to help run the analysis — all self-hosted and open.",
  "who_its_not_for": "A team that needs a governed, production BI platform with sharing, permissions, and a managed warehouse, or anyone who wants a mature, battle-tested tool rather than an early, low-traction open-source project.",
  "aliases": [
    "kavla",
    "aleda145/kavla",
    "Kavla"
  ],
  "alternatives": [
    "duckdb-mk",
    "open-agent-db",
    "atlas-dataforge"
  ],
  "secondary_categories": [
    "ai-infrastructure",
    "mcp-agents"
  ],
  "last_verified": "2026-10-01",
  "evidence": {
    "claim_type": "vendor-claim",
    "source_id": "https://github.com/aleda145/kavla",
    "note": "Apache-2.0 per repo (license read from GitHub metadata, not guessed); ~19 stars; ~75 commits on main; self-hostable (github.com/aleda145/kavla, verified 2026-10-01). The combination — tldraw infinite canvas, in-browser DuckDB, and an OpenAI-compatible agent that works with the Codex CLI — is described by the project; capabilities are not independently tested here."
  },
  "caveats": "Verified from the primary repo (2026-10-01); no independent testing here. This is an early, low-traction project (~19 stars, single-maker) — promising for exploration and prototyping, not a governed BI platform; expect rough edges and API churn. 'OpenAI-compatible' means you supply your own model/endpoint. In-browser DuckDB suits interactive exploration over moderate data, not large-warehouse workloads. Surfaced via X.",
  "lead": "Kavla is a self-hostable, infinite-canvas data workspace: it puts a tldraw canvas, an in-browser DuckDB, and an OpenAI-compatible agent on one surface, so you can lay data out spatially, query it locally, and let an agent help drive the analysis. Open source: yes (Apache-2.0); self-hostable; free OSS. It is an…",
  "chunks": [
    {
      "index": 0,
      "heading_path": [],
      "est_tokens": 111,
      "text": "Kavla is a self-hostable, infinite-canvas data workspace: it puts a tldraw canvas, an in-browser DuckDB, and an OpenAI-compatible agent on one surface, so you can lay data out spatially, query it locally, and let an agent help drive the analysis. Open source: yes (Apache-2.0); self-hostable; free OSS. It is an early project (~19 stars, ~75 commits) from a single maker, and it works with the Codex CLI and other OpenAI-compatible endpoints."
    },
    {
      "index": 1,
      "heading_path": [
        null,
        "What it does"
      ],
      "est_tokens": 268,
      "text": "surface, so you can lay data out spatially, query it locally, and let an agent help drive the analysis. Open source: yes (Apache-2.0); self-hostable; free OSS. It is an early project (~19 stars, ~75 commits) from a single maker, and it works with the Codex CLI and other OpenAI-compatible endpoints.\n\nMost data exploration happens in a notebook or a BI tool's rigid grid. Kavla swaps that for an infinite canvas (built on tldraw): you arrange queries, results, and notes spatially, the way you'd sketch on a whiteboard. Underneath, an in-browser DuckDB runs the SQL locally, so exploration stays fast and nothing has to leave the page, and an OpenAI-compatible agent — compatible with the Codex CLI — sits alongside to help write queries and move the analysis forward. The whole thing is self-hostable and Apache-2.0, so the canvas, the data, and the agent wiring are yours to run. Open source: yes (Apache-2.0); self-hostable; free OSS. It is early and low-traction today, so treat it as a tool for exploration and prototyping rather than governed production reporting."
    },
    {
      "index": 2,
      "heading_path": [
        null,
        "Provenance"
      ],
      "est_tokens": 222,
      "text": "analysis forward. The whole thing is self-hostable and Apache-2.0, so the canvas, the data, and the agent wiring are yours to run. Open source: yes (Apache-2.0); self-hostable; free OSS. It is early and low-traction today, so treat it as a tool for exploration and prototyping rather than governed production reporting.\n\n- Apache-2.0 per repo (license read from GitHub metadata, not guessed); ~19 stars; ~75 commits on main; self-hostable (github.com/aleda145/kavla, verified 2026-10-01).\n- Combines a tldraw infinite canvas, an in-browser DuckDB, and an OpenAI-compatible agent (works with the Codex CLI) on one workspace (project description).\n- Surfaced in the GTM Stacker X/Twitter signal report (2026-10-01 pass); license/facts independently verified 2026-10-01.\n- Early single-maker project; capabilities described by the project are not independently tested here (vendor-claim)."
    },
    {
      "index": 3,
      "heading_path": [
        null,
        "Why it matters for a GTM stack"
      ],
      "est_tokens": 287,
      "text": "tldraw infinite canvas, an in-browser DuckDB, and an OpenAI-compatible agent (works with the Codex CLI) on one workspace (project description). - Surfaced in the GTM Stacker X/Twitter signal report (2026-10-01 pass); license/facts independently verified 2026-10-01. - Early single-maker project; capabilities described by the project are not independently tested here (vendor-claim).\n\nA lot of GTM analysis is exploratory — pulling a CSV, joining two tables, eyeballing a cohort — and that work fits a spatial canvas better than a locked dashboard. Kavla's combination is appealing for that: local DuckDB speed, a whiteboard-style layout, and an agent to take some of the SQL off your hands, all self-hosted and open so sensitive data stays in the browser. For an analyst or small RevOps team that wants to prototype on owned data with an agent in the loop, it is worth a look. The honest read: this is an early, ~19-star, single-maker project — a promising exploration tool, not a governed BI platform — so use it for prototyping, bring your own model endpoint, and don't expect production-grade sharing, permissions, or large-warehouse scale yet."
    }
  ],
  "alternates": {
    "markdown": "https://gtmstacker.com/registry/tool/kavla/index.md",
    "html": "https://gtmstacker.com/registry/tool/kavla/",
    "json": "https://gtmstacker.com/registry/tool/kavla/index.json",
    "server_json": "https://gtmstacker.com/registry/tool/kavla/server.json"
  },
  "jsonld": {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "WebSite",
        "@id": "https://gtmstacker.com/#website",
        "url": "https://gtmstacker.com/",
        "name": "GTM Stacker Agent Registry",
        "description": "A daily-updated, agent-native registry of open-source tool discoveries, tool updates, and curated news for the go-to-market / RevOps engineering niche. Machine-readable first: agents can discover, parse, page, and delta-sync it without scraping HTML.",
        "inLanguage": "en",
        "publisher": {
          "@id": "https://gtmstacker.com/#organization"
        }
      },
      {
        "@type": "Organization",
        "@id": "https://gtmstacker.com/#organization",
        "name": "GTM Stacker",
        "url": "https://gtmstacker.com",
        "description": "The growth-systems practice of Theo Popov: AI-native enrichment, outbound, content engines and internal tooling for startups and venture programs. Its agent-native media property, the GTM Stacker Agent Registry, maintains a daily-updated catalog of open-source go-to-market and RevOps tools that both people and AI engines can discover, compare, and cite.",
        "foundingDate": "2024-08",
        "knowsAbout": [
          "go-to-market engineering",
          "RevOps",
          "sales automation",
          "marketing operations",
          "open-source software",
          "AI agents"
        ],
        "founder": {
          "@type": "Person",
          "@id": "https://gtmstacker.com/#founder",
          "name": "Theo Popov",
          "jobTitle": "Growth Operations & GTM Systems",
          "url": "https://gtmstacker.com/about/",
          "sameAs": [
            "https://www.linkedin.com/in/theo-popov",
            "https://x.com/Theo_Popov",
            "https://github.com/theopopov"
          ],
          "worksFor": {
            "@id": "https://gtmstacker.com/#organization"
          }
        },
        "sameAs": [
          "https://www.linkedin.com/company/gtmstacker",
          "https://www.youtube.com/@gtmstacker",
          "https://www.instagram.com/gtmstacker/",
          "https://www.tiktok.com/@gtmstacker"
        ],
        "mainEntityOfPage": "https://gtmstacker.com/registry/about/"
      },
      {
        "@type": "SoftwareApplication",
        "@id": "https://gtmstacker.com/registry/tool/kavla/#software",
        "name": "Kavla",
        "identifier": "aleda145/kavla",
        "description": "Kavla is a self-hostable infinite-canvas data workspace: it pairs a tldraw canvas with an in-browser DuckDB and an OpenAI-compatible agent (works with the Codex CLI), so you can lay out, query, and explore data spatially and let an agent drive the analysis. Open source: yes (Apache-2.0); self-hostable. Free OSS; early project (~19 stars; ~75 commits).",
        "applicationCategory": "DeveloperApplication",
        "url": "https://gtmstacker.com/registry/tool/kavla/",
        "datePublished": "2026-10-01T00:00:00Z",
        "dateModified": "2026-10-01T00:00:00Z",
        "isPartOf": {
          "@id": "https://gtmstacker.com/#website"
        },
        "license": "https://spdx.org/licenses/Apache-2.0.html",
        "codeRepository": "https://github.com/aleda145/kavla",
        "keywords": "analytics-bi, ai-infrastructure, mcp-agents, duckdb, data-canvas, self-hostable",
        "author": {
          "@type": "Organization",
          "name": "aleda145",
          "url": "https://github.com/aleda145",
          "sameAs": [
            "https://github.com/aleda145/kavla"
          ]
        },
        "offers": {
          "@type": "Offer",
          "price": 0,
          "priceCurrency": "USD"
        },
        "isSimilarTo": [
          {
            "@type": "SoftwareApplication",
            "name": "duckdb.mk",
            "url": "https://gtmstacker.com/registry/tool/duckdb-mk/",
            "applicationCategory": "DeveloperApplication",
            "offers": {
              "@type": "Offer",
              "price": 0,
              "priceCurrency": "USD"
            }
          },
          {
            "@type": "SoftwareApplication",
            "name": "Open-Agent-DB",
            "url": "https://gtmstacker.com/registry/tool/open-agent-db/",
            "applicationCategory": "DeveloperApplication",
            "offers": {
              "@type": "Offer",
              "price": 0,
              "priceCurrency": "USD"
            }
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "@id": "https://gtmstacker.com/registry/tool/kavla/#breadcrumb",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "GTM Stacker Registry",
            "item": "https://gtmstacker.com/registry/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "Analytics BI",
            "item": "https://gtmstacker.com/registry/category/analytics-bi/"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "Kavla",
            "item": "https://gtmstacker.com/registry/tool/kavla/"
          }
        ]
      }
    ]
  },
  "tool": {
    "name": "aleda145/kavla",
    "repository": {
      "url": "https://github.com/aleda145/kavla",
      "source": "github"
    }
  }
}
