Directories
¶
| Path | Synopsis |
|---|---|
|
Command hive-desktop is the desktop app's entrypoint.
|
Command hive-desktop is the desktop app's entrypoint. |
|
devserver
command
Command devserver fronts the GitHub API for local development: it caches responses so several desktop instances share one rate-limit budget, rewrites them from a config-driven overlay so workflows can be simulated against real data, and pushes webhook payloads at a running instance's local listener.
|
Command devserver fronts the GitHub API for local development: it caches responses so several desktop instances share one rate-limit budget, rewrites them from a config-driven overlay so workflows can be simulated against real data, and pushes webhook payloads at a running instance's local listener. |
|
devtools
command
Command devtools prepares an isolated worktree-local Hive Desktop development instance and writes the environment mise loads before launch.
|
Command devtools prepares an isolated worktree-local Hive Desktop development instance and writes the environment mise loads before launch. |
|
internal/adapter/httpapi
Package httpapi is the HTTP adapter over app.App, mounted on the webhook listener's loopback server, which also hosts the optional pprof handler (ADR pprof-debug-endpoint).
|
Package httpapi is the HTTP adapter over app.App, mounted on the webhook listener's loopback server, which also hosts the optional pprof handler (ADR pprof-debug-endpoint). |
|
internal/adapter/mcpsrv
Package mcpsrv is the agent-facing MCP adapter over app.App: the desktop's capabilities as MCP tools, served over Streamable HTTP on the same loopback server that hosts the webhook listener (ADR agent-http-api).
|
Package mcpsrv is the agent-facing MCP adapter over app.App: the desktop's capabilities as MCP tools, served over Streamable HTTP on the same loopback server that hosts the webhook listener (ADR agent-http-api). |
|
internal/adapter/wailsui
Package wailsui is the Wails driving adapter: the service structs the frontend calls over RPC, the native shell (window, tray, updater, notifications), and the event signals it emits.
|
Package wailsui is the Wails driving adapter: the service structs the frontend calls over RPC, the native shell (window, tray, updater, notifications), and the event signals it emits. |
|
internal/app
Package app is the headless core's facade: the App value driving adapters hold, the error vocabulary they translate, and the per-domain services that own orchestration.
|
Package app is the headless core's facade: the App value driving adapters hold, the error vocabulary they translate, and the per-domain services that own orchestration. |
|
internal/app/actions
Package actions implements the desktop pipeline's actions.yml schema: the output/action layer a flow's terminal `action` node targets (see cmd/desktop/internal/app/flow's ActionConfig) and the source for the desktop detail pane's action buttons.
|
Package actions implements the desktop pipeline's actions.yml schema: the output/action layer a flow's terminal `action` node targets (see cmd/desktop/internal/app/flow's ActionConfig) and the source for the desktop detail pane's action buttons. |
|
internal/app/activity
Package activity is the desktop app's user-facing audit log.
|
Package activity is the desktop app's user-facing audit log. |
|
internal/app/agentws
Package agentws owns the on-disk agent-workspace root: the directory tree holding mcps.yaml, .shared/, and one directory per workspace (spec §4).
|
Package agentws owns the on-disk agent-workspace root: the directory tree holding mcps.yaml, .shared/, and one directory per workspace (spec §4). |
|
internal/app/canvas
Package canvas renders canvas documents for the desktop: the html sanitizer the pane and the export run through, and the markdown export.
|
Package canvas renders canvas documents for the desktop: the html sanitizer the pane and the export run through, and the markdown export. |
|
internal/app/configmigrate
Package configmigrate upgrades an older on-disk config document to the version the running build expects, forward-only and one step per version.
|
Package configmigrate upgrades an older on-disk config document to the version the running build expects, forward-only and one step per version. |
|
internal/app/data/queries
Package queries is the desktop app's dedicated SQLite store: the event log (event_log/consumer_offset), durable inbox substrate (inbox_item/inbox_event), feed membership claims, output commands, activity events and jobs, and per-node run metrics.
|
Package queries is the desktop app's dedicated SQLite store: the event log (event_log/consumer_offset), durable inbox substrate (inbox_item/inbox_event), feed membership claims, output commands, activity events and jobs, and per-node run metrics. |
|
internal/app/dirwatch
Package dirwatch runs a debounced callback when matching files in a directory change.
|
Package dirwatch runs a debounced callback when matching files in a directory change. |
|
internal/app/events
Package events is the core's typed publish/subscribe bus.
|
Package events is the core's typed publish/subscribe bus. |
|
internal/app/flow
Package flow implements the flows/*.yaml config schema for the desktop pipeline's Node-RED-style graph: a strict decoder, a per-node-type registry, cross-file reference validation, and directory loaders.
|
Package flow implements the flows/*.yaml config schema for the desktop pipeline's Node-RED-style graph: a strict decoder, a per-node-type registry, cross-file reference validation, and directory loaders. |
|
internal/app/fonts
Package fonts enumerates the font families installed on this machine so the app's chrome and its terminals can be pointed at one of them.
|
Package fonts enumerates the font families installed on this machine so the app's chrome and its terminals can be pointed at one of them. |
|
internal/app/hiveconf
Package hiveconf reads the hive config file the `hive` binary shares.
|
Package hiveconf reads the hive config file the `hive` binary shares. |
|
internal/app/hivewatch
Package hivewatch observes hive.db state that another process writes.
|
Package hivewatch observes hive.db state that another process writes. |
|
internal/app/icons
Package icons holds the curated glyph set feed rows and sidebar entries draw from.
|
Package icons holds the curated glyph set feed rows and sidebar entries draw from. |
|
internal/app/ingest
Package ingest is the pipeline's producer side: the poll loop that turns configured source connectors into event_log rows, and the resolver that turns the current flow set into the connector instances it drives.
|
Package ingest is the pipeline's producer side: the poll loop that turns configured source connectors into event_log rows, and the resolver that turns the current flow set into the connector instances it drives. |
|
internal/app/jobs
Package jobs is the desktop app's live action-run lifecycle.
|
Package jobs is the desktop app's live action-run lifecycle. |
|
internal/app/mcpcatalog
Package mcpcatalog is the shipped MCP server catalogue: the vocabulary one entry is declared in (Stability, Transport, Server, Descriptor) and the registry that holds every entry.
|
Package mcpcatalog is the shipped MCP server catalogue: the vocabulary one entry is declared in (Stability, Transport, Server, Descriptor) and the registry that holds every entry. |
|
internal/app/perf
Package perf records UI performance spans to a size-capped JSONL file for offline analysis.
|
Package perf records UI performance spans to a size-capped JSONL file for offline analysis. |
|
internal/app/procstats
Package procstats samples what this install is costing the machine: the desktop process, the processes it parents (a terminal's shell, an agent), and the Go runtime's own view of itself.
|
Package procstats samples what this install is costing the machine: the desktop process, the processes it parents (a terminal's shell, an agent), and the Go runtime's own view of itself. |
|
internal/app/profileimg
Package profileimg stores a profile's (flow's) avatar as a normalized square PNG under the app data dir — one file per flow id.
|
Package profileimg stores a profile's (flow's) avatar as a normalized square PNG under the app data dir — one file per flow id. |
|
internal/app/prompts
Package prompts owns every paste-ready LLM prompt Hive Desktop offers, and the templates they are composed from.
|
Package prompts owns every paste-ready LLM prompt Hive Desktop offers, and the templates they are composed from. |
|
internal/app/ptyterm
Package ptyterm runs ephemeral terminals: this process owns a PTY and the process on the far end of it, with no terminal multiplexer in between.
|
Package ptyterm runs ephemeral terminals: this process owns a PTY and the process on the far end of it, with no terminal multiplexer in between. |
|
internal/app/report
Package report builds the two halves of a bug report, which are deliberately not one artifact.
|
Package report builds the two halves of a bug report, which are deliberately not one artifact. |
|
internal/app/runtime
Package runtime is the flow engine: it executes one flow over one batch of event-log messages and produces the CommitBatch that batch is worth.
|
Package runtime is the flow engine: it executes one flow over one batch of event-log messages and produces the CommitBatch that batch is worth. |
|
internal/app/runtime/js
Package js implements the engine's ScriptRuntime port with goja, a pure-Go ECMAScript interpreter.
|
Package js implements the engine's ScriptRuntime port with goja, a pure-Go ECMAScript interpreter. |
|
internal/app/schedule
Package schedule launches recurring agent chats.
|
Package schedule launches recurring agent chats. |
|
internal/app/settings
Package settings resolves the desktop app's typed settings and on-disk locations.
|
Package settings resolves the desktop app's typed settings and on-disk locations. |
|
internal/app/skills
Package skills renders Hive Desktop's paste-ready prompts in the Agent Skills format: a SKILL.md with YAML frontmatter (name, description) over the prompt text.
|
Package skills renders Hive Desktop's paste-ready prompts in the Agent Skills format: a SKILL.md with YAML frontmatter (name, description) over the prompt text. |
|
internal/app/slug
Package slug is the id rule the flow and action schemas share.
|
Package slug is the id rule the flow and action schemas share. |
|
internal/app/sourcemark
Package sourcemark stores a source node's custom feed mark as a normalized square PNG under the app data dir, content-addressed by hash.
|
Package sourcemark stores a source node's custom feed mark as a normalized square PNG under the app data dir, content-addressed by hash. |
|
internal/app/sources
Package sources is the source connector registry: the one place every connector type is declared, and the lookups the rest of the app resolves a connector through.
|
Package sources is the source connector registry: the one place every connector type is declared, and the lookups the rest of the app resolves a connector through. |
|
internal/app/sources/bindingstore
Package bindingstore persists each connected account's non-secret binding — the host, stack, or project a credential was connected to — keyed by credential ref.
|
Package bindingstore persists each connected account's non-secret binding — the host, stack, or project a credential was connected to — keyed by credential ref. |
|
internal/app/sources/canonical
Package canonical is the item contract a connector uses when its payload is the canonical item shape itself (ADR canonical-item-contract) rather than a provider's own: the top-level `state` vocabulary, the classifier that maps it to lifecycle, and the rewrite an authoritative snapshot mints for an item that left it.
|
Package canonical is the item contract a connector uses when its payload is the canonical item shape itself (ADR canonical-item-contract) rather than a provider's own: the top-level `state` vocabulary, the classifier that maps it to lifecycle, and the rewrite an authoritative snapshot mints for an item that left it. |
|
internal/app/sources/connector
Package connector is the vocabulary a source connector is declared in: the Descriptor that describes one, the Config it parses, and the Instance the app constructs per use.
|
Package connector is the vocabulary a source connector is declared in: the Descriptor that describes one, the Config it parses, and the Instance the app constructs per use. |
|
internal/app/sources/exec
Package exec is the command source connector: it runs the user's own command on the poll tick and ingests its stdout as an authoritative snapshot, so a CLI is a first-party source with no external scheduler, no webhook bridge, and no hand-rolled state file.
|
Package exec is the command source connector: it runs the user's own command on the poll tick and ingests its stdout as an authoritative snapshot, so a CLI is a first-party source with no external scheduler, no webhook bridge, and no hand-rolled state file. |
|
internal/app/sources/gitea
Package gitea is the Gitea source connector: the config a gitea source node carries, the descriptor declaring what the connector supports, and the instance the producer drains on a tick.
|
Package gitea is the Gitea source connector: the config a gitea source node carries, the descriptor declaring what the connector supports, and the instance the producer drains on a tick. |
|
internal/app/sources/gitea/giteaclient
Package giteaclient is the desktop's Gitea/Forgejo REST client: token validation, the issue/PR search, the notification inbox, and the single-issue lookup absence confirmation needs.
|
Package giteaclient is the desktop's Gitea/Forgejo REST client: token validation, the issue/PR search, the notification inbox, and the single-issue lookup absence confirmation needs. |
|
internal/app/sources/github
Package github is the GitHub source connector: the config a github source node carries, the descriptor declaring what the connector supports, and the instance the producer drains on a tick.
|
Package github is the GitHub source connector: the config a github source node carries, the descriptor declaring what the connector supports, and the instance the producer drains on a tick. |
|
internal/app/sources/github/feed
Package feed is the desktop's GitHub fetch layer: the wire Item type and a cached, coalesced LiveProvider the pipeline producer uses to turn a source into event_log rows.
|
Package feed is the desktop's GitHub fetch layer: the wire Item type and a cached, coalesced LiveProvider the pipeline producer uses to turn a source into event_log rows. |
|
internal/app/sources/github/ghclient
Package ghclient is the desktop's own GitHub REST/GraphQL client: in-app authentication (OAuth device flow, PAT validation via User) and the typed API calls the connector needs (batched search, notifications, single-issue hydration).
|
Package ghclient is the desktop's own GitHub REST/GraphQL client: in-app authentication (OAuth device flow, PAT validation via User) and the typed API calls the connector needs (batched search, notifications, single-issue hydration). |
|
internal/app/sources/grafana
Package grafana is the Grafana source connector: the metrics and alerts source nodes and the stack auth that connects a stack.
|
Package grafana is the Grafana source connector: the metrics and alerts source nodes and the stack auth that connects a stack. |
|
internal/app/sources/grafana/client
Package client is the desktop's Grafana HTTP client: token validation, a PromQL query through the datasource proxy, the firing-alerts list, and the IRM/OnCall alert groups.
|
Package client is the desktop's Grafana HTTP client: token validation, a PromQL query through the datasource proxy, the firing-alerts list, and the IRM/OnCall alert groups. |
|
internal/app/sources/itemtext
Package itemtext derives the session text an inbox item suggests: the branch name a session on it would use, and the default prompt the launch dialog opens with.
|
Package itemtext derives the session text an inbox item suggests: the branch name a session on it would use, and the default prompt the launch dialog opens with. |
|
internal/app/sources/posthog
Package posthog is the PostHog source connector: the error-tracking and insight-alert source nodes and the project auth that connects a project.
|
Package posthog is the PostHog source connector: the error-tracking and insight-alert source nodes and the project auth that connects a project. |
|
internal/app/sources/posthog/client
Package client is the desktop's PostHog HTTP client: project listing (which doubles as token validation), the error-tracking issue query, and the insight-alert list.
|
Package client is the desktop's PostHog HTTP client: project listing (which doubles as token validation), the error-tracking issue query, and the insight-alert list. |
|
internal/app/sources/rss
Package rss is the feed source connector: it fetches one RSS, Atom, or JSON Feed URL on the poll tick and ingests its entries as items, so a blog, a release feed, or a status page is a first-party source with no bridge in between.
|
Package rss is the feed source connector: it fetches one RSS, Atom, or JSON Feed URL on the poll tick and ingests its entries as items, so a blog, a release feed, or a status page is a first-party source with no bridge in between. |
|
internal/app/sources/sourcehttp
Package sourcehttp is the HTTP toolkit a pull connector's API client is built over: the failure taxonomy, status and rate-limit mapping, conditional requests, and a logging transport.
|
Package sourcehttp is the HTTP toolkit a pull connector's API client is built over: the failure taxonomy, status and rate-limit mapping, conditional requests, and a logging transport. |
|
internal/app/sources/webhook
Package webhook is the webhook source connector: the config a webhook source node carries, the descriptor declaring what the connector supports, and the local HTTP listener deliveries arrive on.
|
Package webhook is the webhook source connector: the config a webhook source node carries, the descriptor declaring what the connector supports, and the local HTTP listener deliveries arrive on. |
|
internal/app/telemetry
Package telemetry configures the OpenTelemetry and Pyroscope SDKs, registers the OTel providers globally, and owns their shutdown (ADR continuous-profiles-are-pushed-directly-with-pyroscope).
|
Package telemetry configures the OpenTelemetry and Pyroscope SDKs, registers the OTel providers globally, and owns their shutdown (ADR continuous-profiles-are-pushed-directly-with-pyroscope). |
|
internal/devproxy
Package devproxy is the contract shared by cmd/desktop/devserver and cmd/desktop/devtools: where the development GitHub proxy listens, and how to tell whether one is already running there.
|
Package devproxy is the contract shared by cmd/desktop/devserver and cmd/desktop/devtools: where the development GitHub proxy listens, and how to tell whether one is already running there. |
|
releasenotes
Package releasenotes embeds Hive Desktop's changelog.
|
Package releasenotes embeds Hive Desktop's changelog. |
|
Command hive-drive-server serves Hive Drive documents to many users.
|
Command hive-drive-server serves Hive Drive documents to many users. |
|
frontend
Package frontend embeds the built web UI.
|
Package frontend embeds the built web UI. |
|
internal/app
Package app wires the drive server: the core services over control.db, the HTTP server, and the plugs manager that runs it.
|
Package app wires the drive server: the core services over control.db, the HTTP server, and the plugs manager that runs it. |
|
internal/config
Package config resolves the drive server's settings.
|
Package config resolves the drive server's settings. |
|
internal/core
Package core holds the drive server's accounts, tokens, and policies.
|
Package core holds the drive server's accounts, tokens, and policies. |
|
internal/guard
Package guard holds the request guards that need no HTTP: a bounded keyed rate limiter and the client-IP rule.
|
Package guard holds the request guards that need no HTTP: a bounded keyed rate limiter and the client-IP rule. |
|
internal/httpapi
Package httpapi is the drive server's HTTP adapter.
|
Package httpapi is the drive server's HTTP adapter. |
|
internal/mail
Package mail sends the outbox: a Mailer drains queued mail through a Sender, either SMTP or a Log sender for development.
|
Package mail sends the outbox: a Mailer drains queued mail through a Sender, either SMTP or a Log sender for development. |
|
internal/store/control
Package control is control.db: accounts, API tokens, sessions, share links, and the mail outbox.
|
Package control is control.db: accounts, API tokens, sessions, share links, and the mail outbox. |
|
internal/store/userdb
Package userdb is the per-user document databases, <data>/users/<id>.db.
|
Package userdb is the per-user document databases, <data>/users/<id>.db. |
|
releasenotes
Package releasenotes embeds the drive server's changelog.
|
Package releasenotes embeds the drive server's changelog. |
|
cli
Package cli is the hive command line program.
|
Package cli is the hive command line program. |
|
internal/app
Package app is the hive CLI's composition root: the engine services plus the pieces only the CLI has (plugins, the command set, sources, its config).
|
Package app is the hive CLI's composition root: the engine services plus the pieces only the CLI has (plugins, the command set, sources, its config). |
|
internal/config
Package config holds the hive CLI's configuration: the engine sections from internal/config plus the sections only the CLI reads (views, keybindings, user commands, TUI, plugins, sources).
|
Package config holds the hive CLI's configuration: the engine sections from internal/config plus the sections only the CLI reads (views, keybindings, user commands, TUI, plugins, sources). |
|
internal/kvcache
Package kvcache provides a generic thread-safe key-value store.
|
Package kvcache provides a generic thread-safe key-value store. |
|
internal/plugins
Package plugins provides a plugin system for extending Hive with additional commands and status providers.
|
Package plugins provides a plugin system for extending Hive with additional commands and status providers. |
|
internal/plugins/claude
Package claude provides Claude Code integration for Hive.
|
Package claude provides Claude Code integration for Hive. |
|
internal/plugins/contextdir
Package contextdir provides commands for opening context directories.
|
Package contextdir provides commands for opening context directories. |
|
internal/plugins/github
Package github provides a GitHub plugin for Hive.
|
Package github provides a GitHub plugin for Hive. |
|
internal/plugins/lazygit
Package lazygit provides a lazygit plugin for Hive.
|
Package lazygit provides a lazygit plugin for Hive. |
|
internal/plugins/neovim
Package neovim provides a Neovim plugin for Hive.
|
Package neovim provides a Neovim plugin for Hive. |
|
internal/plugins/tmux
Package tmux provides a tmux plugin for Hive with default session management commands.
|
Package tmux provides a tmux plugin for Hive with default session management commands. |
|
internal/sources
Package sources defines the domain contract for browsing external systems (GitHub issues, and later Gitea/Grafana/etc.) and mapping a selected item into hive session-creation inputs.
|
Package sources defines the domain contract for browsing external systems (GitHub issues, and later Gitea/Grafana/etc.) and mapping a selected item into hive session-creation inputs. |
|
internal/sources/cliengine
Package cliengine is the shared execution engine behind hive's CLI-backed sources (GitHub via gh, Gitea/Forgejo via tea).
|
Package cliengine is the shared execution engine behind hive's CLI-backed sources (GitHub via gh, Gitea/Forgejo via tea). |
|
internal/sources/ghcli
Package ghcli implements hive's built-in GitHub sources as cliengine drivers backed by the gh CLI.
|
Package ghcli implements hive's built-in GitHub sources as cliengine drivers backed by the gh CLI. |
|
internal/sources/teacli
Package teacli implements hive's built-in Gitea/Forgejo sources as cliengine drivers backed by the tea CLI.
|
Package teacli implements hive's built-in Gitea/Forgejo sources as cliengine drivers backed by the tea CLI. |
|
internal/styles
Package styles provides shared lipgloss v2 styles for CLI and TUI components.
|
Package styles provides shared lipgloss v2 styles for CLI and TUI components. |
|
internal/theme
Package theme holds the built-in color palettes.
|
Package theme holds the built-in color palettes. |
|
internal/tui/components
Package components provides reusable TUI components.
|
Package components provides reusable TUI components. |
|
internal/tui/views/review
Package review implements a TUI for reviewing and commenting on markdown documents.
|
Package review implements a TUI for reviewing and commenting on markdown documents. |
|
releasenotes
Package releasenotes embeds the hive CLI's changelog.
|
Package releasenotes embeds the hive CLI's changelog. |
|
tools
|
|
|
adr
command
Command adr manages the architecture decision records in docs/decisions.
|
Command adr manages the architecture decision records in docs/decisions. |
|
perfreport
command
Command perfreport summarizes the perf.jsonl file Hive Desktop records in a dev build.
|
Command perfreport summarizes the perf.jsonl file Hive Desktop records in a dev build. |
|
release
command
Command release cuts one release of every program in this repository: it manages the release notes, publishes Hive Desktop, tags the shared version, and dispatches the workflow that ships the hive CLI.
|
Command release cuts one release of every program in this repository: it manages the release notes, publishes Hive Desktop, tags the shared version, and dispatches the workflow that ships the hive CLI. |
Click to show internal directories.
Click to hide internal directories.