Directories
¶
| Path | Synopsis |
|---|---|
|
Package agentutils provides utilities used by the agent and orchestrator layer.
|
Package agentutils provides utilities used by the agent and orchestrator layer. |
|
agentutilsfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package agui provides types and helpers for the Agent GUI (AG-UI) event protocol used by Genie to stream agent state to UIs (TUI, web, external systems).
|
Package agui provides types and helpers for the Agent GUI (AG-UI) event protocol used by Genie to stream agent state to UIs (TUI, web, external systems). |
|
aguifakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package app provides the Application service layer that owns the full Genie lifecycle: config → bootstrap → start → close.
|
Package app provides the Application service layer that owns the full Genie lifecycle: config → bootstrap → start → close. |
|
Package audit provides durable, structured logging of agent and tool events (commands, tool calls, LLM requests/responses, errors) for debugging and compliance.
|
Package audit provides durable, structured logging of agent and tool events (commands, tool calls, LLM requests/responses, errors) for debugging and compliance. |
|
auditfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package browser provides a chromedp-backed browser automation provider.
|
Package browser provides a chromedp-backed browser automation provider. |
|
Package clarify provides a durable store for clarifying questions that the LLM can ask the user.
|
Package clarify provides a durable store for clarifying questions that the LLM can ask the user. |
|
Package config provides loading and aggregation of Genie configuration.
|
Package config provides loading and aggregation of Genie configuration. |
|
Package cron provides a recurring task scheduler whose task definitions and execution history are persisted in a GORM-backed database.
|
Package cron provides a recurring task scheduler whose task definitions and execution history are persisted in a GORM-backed database. |
|
cronfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package datasource defines the unified data source abstraction for Genie: connectors that enumerate items from external systems (Drive, Gmail, Slack, Linear, GitHub, Calendar) and produce normalized items for vectorization.
|
Package datasource defines the unified data source abstraction for Genie: connectors that enumerate items from external systems (Drive, Gmail, Slack, Linear, GitHub, Calendar) and produce normalized items for vectorization. |
|
datasourcefakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package db provides a central GORM-based database layer backed by SQLite.
|
Package db provides a central GORM-based database layer backed by SQLite. |
|
Package dedup provides a generic type-safe wrapper around golang.org/x/sync/singleflight.
|
Package dedup provides a generic type-safe wrapper around golang.org/x/sync/singleflight. |
|
Package doctor runs diagnostic checks on Genie configuration and environment (config file, secrets, MCP, SCM, model provider) and returns a list of results (errors, warnings, info) with stable ErrCodes for troubleshooting.
|
Package doctor runs diagnostic checks on Genie configuration and environment (config file, secrets, MCP, SCM, model provider) and returns a list of results (errors, warnings, info) with stable ErrCodes for troubleshooting. |
|
Package expert provides the LLM "expert" abstraction used by Genie's orchestrator and ReAcTree execution engine.
|
Package expert provides the LLM "expert" abstraction used by Genie's orchestrator and ReAcTree execution engine. |
|
expertfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
modelprovider/modelproviderfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package hitl implements human-in-the-loop approval for non-readonly tool calls.
|
Package hitl implements human-in-the-loop approval for non-readonly tool calls. |
|
hitlfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package hooks defines lifecycle hook interfaces for the ReAcTree execution engine.
|
Package hooks defines lifecycle hook interfaces for the ReAcTree execution engine. |
|
Package htmlutils provides utilities for extracting readable text content from raw HTML.
|
Package htmlutils provides utilities for extracting readable text content from raw HTML. |
|
Package httputil provides HTTP client and transport utilities used across Genie.
|
Package httputil provides HTTP client and transport utilities used across Genie. |
|
Package interrupt defines the [InterruptError] sentinel used by tools and middleware to signal that a tool call needs external input (human approval, clarification answer, etc.) before it can complete.
|
Package interrupt defines the [InterruptError] sentinel used by tools and middleware to signal that a tool call needs external input (human approval, clarification answer, etc.) before it can complete. |
|
Package langfuse provides observability and tracing for LLM interactions via the Langfuse service.
|
Package langfuse provides observability and tracing for LLM interactions via the Langfuse service. |
|
langfusefakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package logger provides structured logging (slog) and context-aware logger retrieval for Genie.
|
Package logger provides structured logging (slog) and context-aware logger retrieval for Genie. |
|
Package mcp provides MCP (Model Context Protocol) integration for Genie using trpc-agent-go.
|
Package mcp provides MCP (Model Context Protocol) integration for Genie using trpc-agent-go. |
|
Package mcputils provides utilities for integrating MCP (Model Context Protocol) tools with trpc-agent-go.
|
Package mcputils provides utilities for integrating MCP (Model Context Protocol) tools with trpc-agent-go. |
|
memory
|
|
|
graph
Package graph provides a knowledge graph store (entities and relations) for agent memory.
|
Package graph provides a knowledge graph store (entities and relations) for agent memory. |
|
graph/graphfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
vector
Package vector provides the vector store used for Genie's semantic memory: embedding and searching over documents (runbooks, synced data from Drive, Gmail, Slack, etc.) so the agent can retrieve relevant context via memory_search.
|
Package vector provides the vector store used for Genie's semantic memory: embedding and searching over documents (runbooks, synced data from Drive, Gmail, Slack, etc.) so the agent can retrieve relevant context via memory_search. |
|
vector/vectorfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package messenger provides a generic, platform-agnostic interface for bi-directional messaging across chat platforms (Slack, Telegram, Teams, Google Chat, Discord, etc.).
|
Package messenger provides a generic, platform-agnostic interface for bi-directional messaging across chat platforms (Slack, Telegram, Teams, Google Chat, Discord, etc.). |
|
agui
Package agui provides a Messenger adapter for the AG-UI SSE server.
|
Package agui provides a Messenger adapter for the AG-UI SSE server. |
|
agui/aguifakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
discord
Package discord provides a Messenger adapter for the Discord platform using the WebSocket gateway for bi-directional communication.
|
Package discord provides a Messenger adapter for the Discord platform using the WebSocket gateway for bi-directional communication. |
|
googlechat
Package googlechat provides a Messenger adapter for Google Chat using HTTP push for incoming events and the Chat API for outgoing messages.
|
Package googlechat provides a Messenger adapter for Google Chat using HTTP push for incoming events and the Chat API for outgoing messages. |
|
media
Package media provides shared utility functions for building and describing messenger.Attachment values across platform adapters.
|
Package media provides shared utility functions for building and describing messenger.Attachment values across platform adapters. |
|
messengerfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
slack
Package slack provides a DataSource connector that enumerates Slack channel messages for vectorization.
|
Package slack provides a DataSource connector that enumerates Slack channel messages for vectorization. |
|
teams
Package teams provides a Messenger adapter for Microsoft Teams using the Bot Framework protocol for bi-directional communication.
|
Package teams provides a Messenger adapter for Microsoft Teams using the Bot Framework protocol for bi-directional communication. |
|
telegram
Package telegram provides a Messenger adapter for the Telegram platform using long-polling for bi-directional communication.
|
Package telegram provides a Messenger adapter for the Telegram platform using long-polling for bi-directional communication. |
|
whatsapp
Package whatsapp provides a Messenger adapter for WhatsApp using the WhatsApp Web multi-device protocol via whatsmeow.
|
Package whatsapp provides a Messenger adapter for WhatsApp using the WhatsApp Web multi-device protocol via whatsmeow. |
|
Package orchestrator implements Genie's request routing and execution flow: it receives user messages, classifies intent (simple vs complex), runs the appropriate expert(s), and coordinates ReAcTree multi-step workflows.
|
Package orchestrator implements Genie's request routing and execution flow: it receives user messages, classifies intent (simple vs complex), runs the appropriate expert(s), and coordinates ReAcTree multi-step workflows. |
|
orchestratorfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package osutils provides OS and path helpers used by Genie.
|
Package osutils provides OS and path helpers used by Genie. |
|
Package pii — context helpers for PII rehydration.
|
Package pii — context helpers for PII rehydration. |
|
Package qrutil provides utilities for generating QR code images and terminal-printable QR codes from arbitrary string content such as URLs, pairing codes, or any text that needs to be shared visually.
|
Package qrutil provides utilities for generating QR code images and terminal-printable QR codes from arbitrary string content such as URLs, pairing codes, or any text that needs to be shared visually. |
|
Package reactree implements the ReAcTree (Reasoning-Acting Tree) execution engine for Genie's multi-step agent workflows.
|
Package reactree implements the ReAcTree (Reasoning-Acting Tree) execution engine for Genie's multi-step agent workflows. |
|
memory/memoryfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
reactreefakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
report
|
|
|
activityreport
Package activityreport generates markdown reports from recent audit activities and writes them to ~/.genie/reports/<agent_name>/<YYYYMMDD>_<report_name>.md, then stores the summary in the vector store so the agent can use it as runbook/skill for future runs.
|
Package activityreport generates markdown reports from recent audit activities and writes them to ~/.genie/reports/<agent_name>/<YYYYMMDD>_<report_name>.md, then stores the summary in the vector store so the agent can use it as runbook/skill for future runs. |
|
Package retrier provides configurable retry logic with backoff for operations that may transiently fail (e.g.
|
Package retrier provides configurable retry logic with backoff for operations that may transiently fail (e.g. |
|
Package runbook provides a loader for customer-provided instructional files ("runbooks") using the trpc-agent-go document reader framework.
|
Package runbook provides a loader for customer-provided instructional files ("runbooks") using the trpc-agent-go document reader framework. |
|
Package security provides a centralized SecretProvider abstraction backed by gocloud.dev/runtimevar.
|
Package security provides a centralized SecretProvider abstraction backed by gocloud.dev/runtimevar. |
|
keyring
Package keyring: device keychain storage for arbitrary key-value secrets.
|
Package keyring: device keychain storage for arbitrary key-value secrets. |
|
securityfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package setup provides config generation for the day-1 onboarding wizard.
|
Package setup provides config generation for the day-1 onboarding wizard. |
|
skillsfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package tools provides a centralized tool registry that bootstraps all tools from various integration points (file, shell, browser, MCP, etc.) and filters denied tools based on HITL configuration.
|
Package tools provides a centralized tool registry that bootstraps all tools from various integration points (file, shell, browser, MCP, etc.) and filters denied tools based on HITL configuration. |
|
codeskim
Package codeskim provides a code outline/skimming tool for agents.
|
Package codeskim provides a code outline/skimming tool for agents. |
|
datetime
Package datetime provides time and date tools for agents.
|
Package datetime provides time and date tools for agents. |
|
doctool
Package doctool provides document parsing tools for agents.
|
Package doctool provides document parsing tools for agents. |
|
encodetool
Package encodetool provides encoding, decoding, and hashing tools for agents.
|
Package encodetool provides encoding, decoding, and hashing tools for agents. |
|
google/calendar
Package calendar provides calendar management tools for agents.
|
Package calendar provides calendar management tools for agents. |
|
google/contacts
Package contacts provides Google Contacts (People API) tools for agents.
|
Package contacts provides Google Contacts (People API) tools for agents. |
|
google/gdrive
Package gdrive provides a DataSource connector that enumerates Google Drive files in configured folders for vectorization.
|
Package gdrive provides a DataSource connector that enumerates Google Drive files in configured folders for vectorization. |
|
google/gdrive/gdrivefakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
google/gmail
Package gmail provides a DataSource connector that enumerates Gmail messages for given labels for vectorization.
|
Package gmail provides a DataSource connector that enumerates Gmail messages for given labels for vectorization. |
|
google/oauth
Package oauth: browser_flow runs the OAuth2 authorization code flow by opening the system browser and running a local redirect server to capture the code, then exchanging it for a token and storing it in the device keyring.
|
Package oauth: browser_flow runs the OAuth2 authorization code flow by opening the system browser and running a local redirect server to capture the code, then exchanging it for a token and storing it in the device keyring. |
|
google/tasks
Package tasks provides Google Tasks API tools for agents.
|
Package tasks provides Google Tasks API tools for agents. |
|
jsontool
Package jsontool provides JSON querying, validation, and transformation tools backed by gjson (reads) and sjson (writes).
|
Package jsontool provides JSON querying, validation, and transformation tools backed by gjson (reads) and sjson (writes). |
|
math
Package math provides mathematical tools (a unified arithmetic tool and a calculator/expression evaluator) that can be registered with the tool registry.
|
Package math provides mathematical tools (a unified arithmetic tool and a calculator/expression evaluator) that can be registered with the tool registry. |
|
networking
Package networking provides agent-callable tools for making HTTP requests (GET, POST, etc.) to arbitrary URLs with configurable headers, body, and timeout.
|
Package networking provides agent-callable tools for making HTTP requests (GET, POST, etc.) to arbitrary URLs with configurable headers, body, and timeout. |
|
ocrtool
Package ocrtool provides optical character recognition (OCR) tools for agents.
|
Package ocrtool provides optical character recognition (OCR) tools for agents. |
|
pm
Package pm provides a DataSource connector for issue-tracking systems.
|
Package pm provides a DataSource connector for issue-tracking systems. |
|
pm/pmfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
regextool
Package regextool provides regular expression tools for agents.
|
Package regextool provides regular expression tools for agents. |
|
scm
Package scm provides a single DataSource connector backed by go-scm for all SCM providers (GitHub, GitLab, Bitbucket).
|
Package scm provides a single DataSource connector backed by go-scm for all SCM providers (GitHub, GitLab, Bitbucket). |
|
scm/scmfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
sqltool
Package sqltool provides SQL database query tools for agents.
|
Package sqltool provides SQL database query tools for agents. |
|
toolsfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
webfetch
Package webfetch provides a URL content fetcher for agents.
|
Package webfetch provides a URL content fetcher for agents. |
|
youtubetranscript
Package youtubetranscript provides a tool to fetch transcript/captions from YouTube videos.
|
Package youtubetranscript provides a tool to fetch transcript/captions from YouTube videos. |
|
Package toolwrap provides composable middleware for tool execution.
|
Package toolwrap provides composable middleware for tool execution. |
|
toolwrapfakes
Code generated by counterfeiter.
|
Code generated by counterfeiter. |
|
Package ttlcache provides a TTL-based cache for values that can be refreshed on expiry (e.g.
|
Package ttlcache provides a TTL-based cache for values that can be refreshed on expiry (e.g. |
Click to show internal directories.
Click to hide internal directories.