Blitzdenk Pages

Lua API

Lua config is loaded from ~/.config/blitzdenk/blitz.lua and optionally from ./blitz.lua.

The global API table is blitz.

The generated meta file is the source of truth for function signatures and descriptions:

Use that file in your editor for completion and inline docs. The website does not duplicate the full API list because it would drift.

Shape of a config

local tools = require("tools")

local provider = blitz.add_provider({
	type = "openai",
	url = "https://api.openai.com/v1",
	key_envar = "OPENAI_API_KEY",
})

blitz.set_model("gpt-5.4-mini", provider)

blitz.set_agent_tools(blitz.AGENT_GENERAL, {
	blitz.tools.BASH,
	blitz.tools.READ,
	blitz.tools.WRITE,
	blitz.tools.EDIT,
	blitz.tools.RIPGREP,
	tools.web_fetch,
	tools.web_search,
})

Common API areas

AreaWhat to look for in meta.lua
Providersblitz.add_provider, blitz.set_model, blitz.set_model_agent
Toolsblitz.register_tool, blitz.add_tool, blitz.set_agent_tools, blitz.tools
Agentsblitz.add_agent, blitz.AGENT_GENERAL
Commandsblitz.add_command, blitz.queue.*
Keybindsblitz.bind
Modesblitz.add_mode, blitz.set_mode, mode prompt setters
Eventsblitz.events.add_listener, blitz.events.*
MCPblitz.mcp.add, blitz.mcp.enable
LSPblitz.lsp.add, blitz.lsp.enable
JSON and shellblitz.json.encode, blitz.json.decode, blitz.shell
UIblitz.push_notification, blitz.status_bar_render, flags

See Examples for real configuration snippets.