Built with open source

Painted Wolf Code wouldn’t be possible without Open Source Software. The projects below are the ones we bundle or lean on hardest and want to acknowledge.

The engine

Painted Wolf Code runs a local engine written in Go. It serves the host API, runs the agents, and does the reading and parsing.

  • Go

    The engine is written in Go — one static binary, no runtime to install.

    1.26.6 BSD-3-Clause

  • chi

    Routes the local host API that the desktop app and the CLI both talk to.

    github.com/go-chi/chi/v5 MIT

  • CEL

    Evaluates the expressions in Open Agent Rules, so guardrails are a sandboxed language rather than arbitrary code.

    github.com/google/cel-go Apache-2.0

  • modernc.org/sqlite

    SQLite compiled to pure Go, so session history is a real database with no cgo and no system library to match.

    modernc.org/sqlite BSD-3-Clause

  • go-tree-sitter

    Binds Tree-sitter grammars for parsing source into syntax trees, which is how agents locate symbols instead of guessing at line numbers.

    github.com/odvcencio/gotreesitter MIT

  • MCP Go SDK

    Speaks Model Context Protocol, so any MCP server works as a tool source.

    github.com/modelcontextprotocol/go-sdk MIT

  • pongo2

    Renders the prompt and task templates that packs ship as plain text.

    github.com/flosch/pongo2/v6 MIT

  • gojq

    Implements the built-in jq tool, so agents query JSON in-process instead of shelling out.

    github.com/itchyny/gojq MIT

  • yq

    Decodes YAML for that same tool, so one query language covers both formats.

    github.com/mikefarah/yq/v4/pkg/yqlib MIT

  • Rod

    Drives the headless browser behind web research.

    github.com/go-rod/rod MIT

  • Chrome for Testing

    The pinned headless shell web research runs pages in.

    chrome-headless-shell BSD-3-Clause

  • enry

    Identifies languages in a repository, which sets what a project gets by default.

    github.com/go-enry/go-enry/v2 Apache-2.0

  • Bubble Tea

    Charm's terminal UI framework, behind the log viewer `pw logs` opens.

    github.com/charmbracelet/bubbletea MIT

  • Chroma

    Highlights source and captured output in that viewer.

    github.com/alecthomas/chroma/v2 MIT

  • santhosh-tekuri/jsonschema

    Validates tool arguments and pack manifests against their schemas before anything runs.

    github.com/santhosh-tekuri/jsonschema/v6 Apache-2.0

Security scanning

Scanning runs locally, on your machine. These are the engines and third-party rule sets we bundle — our own rules build on top of them.

  • Opengrep

    The static analysis engine bundled with the app. Rules are patterns you can read, and it runs entirely on your machine.

    opengrep LGPL-2.1

  • Gitleaks

    Finds credentials in working trees and git history before they leave the machine.

    github.com/zricethezav/gitleaks/v8 MIT

  • OSV-Scalibr

    Inventories dependencies across ecosystems and matches them against known advisories.

    github.com/google/osv-scalibr Apache-2.0

  • Kingfisher

    MongoDB's secret detection rules, copied into the app and run alongside our own.

    Kingfisher secret definitions Apache-2.0

The desktop app

The desktop shell is Rust; the interface inside it is a web app that talks to the local engine and nothing else.

  • Tauri

    The desktop shell — a native window over the system webview, with the filesystem and shell reachable only through capabilities we declare.

    tauri Apache-2.0

  • Wry

    The webview layer Tauri renders into on each platform.

    wry Apache-2.0

  • Tokio

    The async runtime the shell uses to talk to the engine without blocking the UI.

    tokio MIT

  • Rustls

    Terminates TLS in Rust rather than binding to a platform OpenSSL.

    rustls Apache-2.0

  • Serde

    Serializes everything crossing the boundary between the shell and the engine.

    serde Apache-2.0

  • Solid

    The reactive framework the interface is built on — fine-grained updates, no virtual DOM diff on every token that streams in.

    solid-js MIT

  • CodeMirror

    The editor — syntax, search, linting, and the diff view used for review.

    @codemirror/view MIT

  • marked

    Renders the Markdown that agents write back into chat.

    marked MIT

  • DOMPurify

    Sanitizes that rendered Markdown, because model output is untrusted input like any other.

    isomorphic-dompurify MIT

  • Tailwind CSS

    Styles the interface.

    tailwindcss MIT

  • Vite

    Builds the interface into the static assets the app bundle carries.

    vite MIT

  • TypeScript

    Types the interface, including the API client generated from our own OpenAPI spec.

    typescript Apache-2.0

This website

paintedwolf.ai is a static site. It ships no analytics and makes no third-party requests.

  • Hugo

    Builds this site to static files.

    0.162.1 Apache-2.0

  • Inter

    The typeface, self-hosted here and in the app.

    Inter OFL-1.1

  • Redoc

    Renders the host API reference. The bundle is vendored and patched to make no third-party requests.

    redoc MIT

And everyone else

The full dependency tree runs to hundreds of projects. The complete list, with license text, is on our license page.