internal/

directory
v0.12.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2026 License: MIT

Directories

Path Synopsis
Package accesstoken manages Personal Access Tokens — static bearer credentials a user generates from /profile/tokens and pastes into a remote MCP client (Claude Desktop, Cursor, VSCode plugin, custom CLI).
Package accesstoken manages Personal Access Tokens — static bearer credentials a user generates from /profile/tokens and pastes into a remote MCP client (Claude Desktop, Cursor, VSCode plugin, custom CLI).
view
templ: version: v0.3.1020
templ: version: v0.3.1020
view
templ: version: v0.3.1020
templ: version: v0.3.1020
agents
askuser
Package askuser holds the daemon-side coordinator for the ask_user MCP tool.
Package askuser holds the daemon-side coordinator for the ask_user MCP tool.
capability
Package capability declares per-provider hook-support metadata and a self-registering registry for it.
Package capability declares per-provider hook-support metadata and a self-registering registry for it.
channels
Package channels provides message channel implementations for the Agents subsystem.
Package channels provides message channel implementations for the Agents subsystem.
channels/rest
Package rest implements an OpenAI Chat Completions compatible HTTP channel for the agents pool.
Package rest implements an OpenAI Chat Completions compatible HTTP channel for the agents pool.
channels/setup
Package setup composes channel implementations into a registry.
Package setup composes channel implementations into a registry.
channels/slack
Package slack implements the Slack transport for the agents channel registry.
Package slack implements the Slack transport for the agents channel registry.
channels/telegram
Package telegram implements the Telegram transport for the agents channel registry.
Package telegram implements the Telegram transport for the agents channel registry.
config
Package config holds the runtime-editable Agents config (General / Slack / Workspace structs reflected into the configs DB table) plus the on-disk Layout — the single source of truth for path math under the platform default data directory (~/.<app>/agents).
Package config holds the runtime-editable Agents config (General / Slack / Workspace structs reflected into the configs DB table) plus the on-disk Layout — the single source of truth for path math under the platform default data directory (~/.<app>/agents).
event
Package event holds the CLI-agnostic event abstraction.
Package event holds the CLI-agnostic event abstraction.
gate
Package gate is the command whitelist enforcement layer.
Package gate is the command whitelist enforcement layer.
pool
Package pool manages the global agent subprocess slot count + FIFO queue.
Package pool manages the global agent subprocess slot count + FIFO queue.
preset
Package preset manages reusable agent templates stored at `<BaseDir>/presets/<name>/agent.md`.
Package preset manages reusable agent templates stored at `<BaseDir>/presets/<name>/agent.md`.
provider
Package runtime owns the per-AI-CLI runtime layer for agents:
Package runtime owns the per-AI-CLI runtime layer for agents:
provider/claude
Package claude is the Claude-CLI specific Spawner implementation.
Package claude is the Claude-CLI specific Spawner implementation.
provider/codex
Package codex will hold the Codex-CLI specific Spawner implementation.
Package codex will hold the Codex-CLI specific Spawner implementation.
provider/gemini
Package gemini will hold the Gemini-CLI specific Spawner implementation.
Package gemini will hold the Gemini-CLI specific Spawner implementation.
providersync
Package providersync syncs provider credential files to/from the DB.
Package providersync syncs provider credential files to/from the DB.
registry
Package registry holds the in-memory cache of on-disk Agents state (Registry) plus a mutator wrapper (Manager) and the boot entrypoint (Bootstrap).
Package registry holds the in-memory cache of on-disk Agents state (Registry) plus a mutator wrapper (Manager) and the boot entrypoint (Bootstrap).
session
Package session manages on-disk session entries at `<BaseDir>/sessions/<id>/`.
Package session manages on-disk session entries at `<BaseDir>/sessions/<id>/`.
state
Package state holds the per-agent runtime state machine.
Package state holds the per-agent runtime state machine.
storage
Package storage holds the filesystem primitives used by every other agents subpackage: atomic JSON write, JSONL append/read/tail/truncate, directory scan, and identifier validation.
Package storage holds the filesystem primitives used by every other agents subpackage: atomic JSON write, JSONL append/read/tail/truncate, directory scan, and identifier validation.
store
Package store is the agents pipeline sink: it consumes AgentEvent values produced by a Parser and writes them to the on-disk session folder (conversation.jsonl, raw.jsonl, agents.json cli_session_id).
Package store is the agents pipeline sink: it consumes AgentEvent values produced by a Parser and writes them to the on-disk session folder (conversation.jsonl, raw.jsonl, agents.json cli_session_id).
transport
Package transport defines the boundary between Agents and message sources (Slack, UI, future API).
Package transport defines the boundary between Agents and message sources (Slack, UI, future API).
transport/api
Package api will hold the HTTP API transport — external integrations that POST messages directly into a session, bypassing UI / Slack.
Package api will hold the HTTP API transport — external integrations that POST messages directly into a session, bypassing UI / Slack.
transport/slack
Package slack will hold the Slack transport: socket-mode (default) or HTTP Event API listener, reaction lifecycle, chunked replies, access control, and meta-command routing.
Package slack will hold the Slack transport: socket-mode (default) or HTTP Event API listener, reaction lifecycle, chunked replies, access control, and meta-command routing.
transport/ui
Package ui will hold the UI transport: an HTTP handler glue layer that turns POST /tools/agents/sessions/{id}/send into an IncomingMessage and pumps it through the pool.
Package ui will hold the UI transport: an HTTP handler glue layer that turns POST /tools/agents/sessions/{id}/send into an IncomingMessage and pumps it through the pool.
workspace
Package workspace manages on-disk workspace entries at `<BaseDir>/workspaces/<name>/` (managed) or any user-supplied absolute path (custom).
Package workspace manages on-disk workspace entries at `<BaseDir>/workspaces/<name>/` (managed) or any user-supplied absolute path (custom).
Package appname is the single source of truth for the running app's *path-safe identifier* — the slug used in `~/.<app>/` for DB, logs, agents Layout, gate spec/socket.
Package appname is the single source of truth for the running app's *path-safe identifier* — the slug used in `~/.<app>/` for DB, logs, agents Layout, gate spec/socket.
Package autostart registers the running binary to launch at OS user login.
Package autostart registers the running binary to launch at OS user login.
Package builder compiles a wick app into a raw Go binary plus the platform-native distributable that ships with each release:
Package builder compiles a wick app into a raw Go binary plus the platform-native distributable that ships with each release:
darwin
Package darwin handles macOS-specific build steps — wrapping the raw binary into a .app bundle and (host-darwin only) further wrapping that into a .dmg disk image.
Package darwin handles macOS-specific build steps — wrapping the raw binary into a .app bundle and (host-darwin only) further wrapping that into a .dmg disk image.
linux
Package linux handles Linux-specific build steps — wrapping the raw binary into a Debian binary package (.deb).
Package linux handles Linux-specific build steps — wrapping the raw binary into a Debian binary package (.deb).
windows
Package windows handles Windows-specific build steps — currently the .syso resource that embeds the brand icon plus version metadata into the .exe.
Package windows handles Windows-specific build steps — currently the .syso resource that embeds the brand icon plus version metadata into the .exe.
Package configs manages runtime-editable configuration stored in the `configs` table.
Package configs manages runtime-editable configuration stored in the `configs` table.
Package connectors is the central registry for every connector definition wick will expose via MCP.
Package connectors is the central registry for every connector definition wick will expose via MCP.
crudcrud
Package crudcrud is a sample connector that wraps the crudcrud.com REST sandbox — a free, throwaway JSON store useful for demos and integration smoke tests.
Package crudcrud is a sample connector that wraps the crudcrud.com REST sandbox — a free, throwaway JSON store useful for demos and integration smoke tests.
github
Package github wraps the GitHub REST API v3 as a wick connector.
Package github wraps the GitHub REST API v3 as a wick connector.
httprest
Package httprest is a generic HTTP/REST connector that lets an LLM call any JSON API without writing a custom connector.
Package httprest is a generic HTTP/REST connector that lets an LLM call any JSON API without writing a custom connector.
slack
Package slack wraps Slack's Web API as a wick connector.
Package slack wraps Slack's Web API as a wick connector.
wickmanager
Package wickmanager exposes wick's own management plane (apps, jobs, tools, connectors, lifecycle server/worker) as a fixed single- instance connector.
Package wickmanager exposes wick's own management plane (apps, jobs, tools, connectors, lifecycle server/worker) as a fixed single- instance connector.
Package enc implements wick's encrypted-fields layer: a per-user AES-256-GCM cipher that lets credentials and other sensitive values flow between an LLM and a connector without ever appearing as plaintext in the LLM's context window or in audit logs.
Package enc implements wick's encrypted-fields layer: a per-user AES-256-GCM cipher that lets credentials and other sensitive values flow between an LLM and a connector without ever appearing as plaintext in the LLM's context window or in audit logs.
templ: version: v0.3.1020
templ: version: v0.3.1020
Package initcreds writes / clears the initial-admin credentials file.
Package initcreds writes / clears the initial-admin credentials file.
Package jobrunner mounts the operator-facing /jobs/{key} surface where users can run a job and see its recent history.
Package jobrunner mounts the operator-facing /jobs/{key} surface where users can run a job and see its recent history.
view
templ: version: v0.3.1020
templ: version: v0.3.1020
Package jobs is the single place to register all background job modules.
Package jobs is the single place to register all background job modules.
connector-runs-purge
Package connectorrunspurge is wick's built-in maintenance job that trims old rows from the connector_runs audit table.
Package connectorrunspurge is wick's built-in maintenance job that trims old rows from the connector_runs audit table.
provider-storage-retention
Package providerstorageretention purges expired provider_storage file rows and old history rows on a daily schedule.
Package providerstorageretention purges expired provider_storage file rows and old history rows on a daily schedule.
provider-storage-sync
Package providerstoragesync is a background job that backs up all enabled provider-storage sources from disk to DB on a fixed interval.
Package providerstoragesync is a background job that backs up all enabled provider-storage sources from disk to DB on a fixed interval.
sample-post
Package samplepost is a sample job that fetches a post from a JSONPlaceholder-compatible API and returns the result as markdown.
Package samplepost is a sample job that fetches a post from a JSONPlaceholder-compatible API and returns the result as markdown.
view
templ: version: v0.3.1020
templ: version: v0.3.1020
view
templ: version: v0.3.1020
templ: version: v0.3.1020
view/type
templ: version: v0.3.1020
templ: version: v0.3.1020
Package mcp implements the Model Context Protocol JSON-RPC 2.0 transport that LLM clients (Claude Desktop, Cursor, Claude.ai web) call to discover and invoke wick connectors as tools.
Package mcp implements the Model Context Protocol JSON-RPC 2.0 transport that LLM clients (Claude Desktop, Cursor, Claude.ai web) call to discover and invoke wick connectors as tools.
Package mcpconfig writes MCP server entries into client config files (Claude Desktop, Cursor, Gemini CLI, Codex CLI, Claude Code) and detects which clients are installed on the host.
Package mcpconfig writes MCP server entries into client config files (Claude Desktop, Cursor, Gemini CLI, Codex CLI, Claude Code) and detects which clients are installed on the host.
Package metrics defines the Recorder interface that connectors.Service uses to emit telemetry.
Package metrics defines the Recorder interface that connectors.Service uses to emit telemetry.
Package oauth implements the minimal OAuth 2.1 authorization server every spec-compliant MCP client (notably Claude.ai web) requires.
Package oauth implements the minimal OAuth 2.1 authorization server every spec-compliant MCP client (notably Claude.ai web) requires.
view
templ: version: v0.3.1020
templ: version: v0.3.1020
pkg
api
render
Package render builds the tool.RenderFunc that wraps a body fragment in wick's page shell (Layout + Navbar).
Package render builds the tool.RenderFunc that wraps a body fragment in wick's page shell (Layout + Navbar).
ui
templ: version: v0.3.1020
templ: version: v0.3.1020
Package processctl owns the in-process lifecycle of the HTTP server and background worker: Start/Stop/IsRunning + a per-process IsManaged flag that says whether wick was launched via the system tray (and is therefore allowed to mutate its own server/worker state).
Package processctl owns the in-process lifecycle of the HTTP server and background worker: Start/Stop/IsRunning + a per-process IsManaged flag that says whether wick was launched via the system tray (and is therefore allowed to mutate its own server/worker state).
Package sso manages SSO provider credentials (currently Google OAuth).
Package sso manages SSO provider credentials (currently Google OAuth).
Package systemtray runs the OS system tray UI for a wick-powered app: start/stop the local HTTP server and the background job worker (both in-process via cancellable goroutines), and install or uninstall the app's MCP entry into detected MCP clients (Claude Desktop, Cursor, etc).
Package systemtray runs the OS system tray UI for a wick-powered app: start/stop the local HTTP server and the background job worker (both in-process via cancellable goroutines), and install or uninstall the app's MCP entry into detected MCP clients (Claude Desktop, Cursor, etc).
Package tools is the central registry for every tool instance wick will mount.
Package tools is the central registry for every tool instance wick will mount.
agents
Package agents backs /tools/agents — the Agents UI Manager.
Package agents backs /tools/agents — the Agents UI Manager.
agents/view
templ: version: v0.3.1020
templ: version: v0.3.1020
convert-text
Package converttext is a stateless text-conversion tool.
Package converttext is a stateless text-conversion tool.
encfields
Package encfields backs /tools/encfields — the in-app form for minting and reversing wick_enc_ tokens.
Package encfields backs /tools/encfields — the in-app form for minting and reversing wick_enc_ tokens.
external
Package external wraps third-party links as tool.Module entries so they show up on the home grid and palette alongside in-app tools.
Package external wraps third-party links as tool.Module entries so they show up on the home grid and palette alongside in-app tools.
provider-storage
Package providerstorage mounts a Provider Storage Manager UI under /tools/provider-storage.
Package providerstorage mounts a Provider Storage Manager UI under /tools/provider-storage.
webtty
Package webtty mounts a browser-based terminal under /tools/webtty.
Package webtty mounts a browser-based terminal under /tools/webtty.
Package updater downloads, verifies, and applies new release binaries from GitHub.
Package updater downloads, verifies, and applies new release binaries from GitHub.
Package userconfig persists per-machine user preferences for the system tray (auto-start toggles, default project, self-update state) in a single JSON file under a hidden app directory in the user's home.
Package userconfig persists per-machine user preferences for the system tray (auto-start toggles, default project, self-update state) in a single JSON file under a hidden app directory in the user's home.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL