pkg/

directory
v0.1.5 Latest Latest
Warning

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

Go to latest
Published: Mar 1, 2026 License: Apache-2.0

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.

Jump to

Keyboard shortcuts

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