Documentation
¶
Overview ¶
Package webassets embeds the public/ static assets directory so that the web module can serve CSS, JS, and other frontend files from the compiled binary without depending on the process working directory.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var FS embed.FS
FS is the embedded filesystem rooted at the public/ directory. Use it with fiber's static middleware Config.FS field.
View Source
var SubFS fs.FS
SubFS is the embedded filesystem with the "public" prefix stripped, suitable for use with fiber's static middleware Config.FS field.
Functions ¶
This section is empty.
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package main is the entry point for the Flowbot server binary.
|
Package main is the entry point for the Flowbot server binary. |
|
cli
command
Package main is the entry point for the Flowbot CLI binary.
|
Package main is the entry point for the Flowbot CLI binary. |
|
cli/command
Package command implements CLI command definitions.
|
Package command implements CLI command definitions. |
|
cli/store
Package store provides local file storage for CLI data
|
Package store provides local file storage for CLI data |
|
cli/utils
Package utils provides shared CLI utility functions.
|
Package utils provides shared CLI utility functions. |
|
composer
command
Package main is the entry point for the Flowbot composer CLI binary.
|
Package main is the entry point for the Flowbot composer CLI binary. |
|
composer/action/admin
Package admin provides management commands for Flowbot administration.
|
Package admin provides management commands for Flowbot administration. |
|
composer/action/skills
Package skills generates SKILL.md files for CLI-invokable capabilities.
|
Package skills generates SKILL.md files for CLI-invokable capabilities. |
|
composer/action/webdoc
Package webdoc generates the Flowbot documentation website from markdown sources.
|
Package webdoc generates the Flowbot documentation website from markdown sources. |
|
docs
|
|
|
api
Package api Code generated by swaggo/swag.
|
Package api Code generated by swaggo/swag. |
|
skills
Package skills embeds Cap-ID Agent Skills for server startup import.
|
Package skills embeds Cap-ID Agent Skills for server startup import. |
|
internal
|
|
|
modules
Package modules provides fx dependency injection registration for all modules.
|
Package modules provides fx dependency injection registration for all modules. |
|
modules/example
Package example implements the example module demonstrating all module entry points.
|
Package example implements the example module demonstrating all module entry points. |
|
modules/hub
Package hub implements the hub management module providing chat commands for health checks, app management, and resource tag query endpoints.
|
Package hub implements the hub management module providing chat commands for health checks, app management, and resource tag query endpoints. |
|
modules/web
Package web provides a web UI module with server-rendered HTML pages.
|
Package web provides a web UI module with server-rendered HTML pages. |
|
platforms
Package platforms provides multi-platform integration for chat and messaging.
|
Package platforms provides multi-platform integration for chat and messaging. |
|
platforms/discord
Package discord implements the Discord platform integration.
|
Package discord implements the Discord platform integration. |
|
platforms/slack
Package slack implements the Slack platform integration.
|
Package slack implements the Slack platform integration. |
|
platforms/tailchat
Package tailchat implements the Tailchat platform integration.
|
Package tailchat implements the Tailchat platform integration. |
|
server
Package server provides the HTTP API server (Fiber v3) and route handlers.
|
Package server provides the HTTP API server (Fiber v3) and route handlers. |
|
server/chatagent
Package chatagent orchestrates the Flowbot chat assistant: session lifecycle, harness pooling, SSE streaming, tool confirmations, permissions, and scheduled tasks.
|
Package chatagent orchestrates the Flowbot chat assistant: session lifecycle, harness pooling, SSE streaming, tool confirmations, permissions, and scheduled tasks. |
|
store
Package store provides database storage implementations.
|
Package store provides database storage implementations. |
|
store/ent
Package ent provides the Ent ORM client initialization and database connectivity.
|
Package ent provides the Ent ORM client initialization and database connectivity. |
|
store/ent/schema
Package schema provides Ent ORM schema definitions.
|
Package schema provides Ent ORM schema definitions. |
|
store/postgres
Package postgres implements the PostgreSQL storage adapter.
|
Package postgres implements the PostgreSQL storage adapter. |
|
store/sqlitetest
Package sqlitetest opens in-memory SQLite databases for unit tests using modernc.org/sqlite.
|
Package sqlitetest opens in-memory SQLite databases for unit tests using modernc.org/sqlite. |
|
pkg
|
|
|
agent
Package agent implements the Observe-Think-Act agent loop and stateful runtime.
|
Package agent implements the Observe-Think-Act agent loop and stateful runtime. |
|
agent/clip
Package clip provides agent tools for creating and reading shareable markdown clips.
|
Package clip provides agent tools for creating and reading shareable markdown clips. |
|
agent/coding
Package coding provides agent tools for terminal control, filesystem navigation, search, patching, web access, and code execution.
|
Package coding provides agent tools for terminal control, filesystem navigation, search, patching, web access, and code execution. |
|
agent/ctxmgr
Package ctxmgr manages agent context budgets, compaction, and branch summarization.
|
Package ctxmgr manages agent context budgets, compaction, and branch summarization. |
|
agent/env
Package env provides filesystem and shell execution with Result-based error handling.
|
Package env provides filesystem and shell execution with Result-based error handling. |
|
agent/eval
Package eval provides FakeModel-scripted harness evaluation scenarios.
|
Package eval provides FakeModel-scripted harness evaluation scenarios. |
|
agent/event
Package event provides lifecycle event streaming for agent runs.
|
Package event provides lifecycle event streaming for agent runs. |
|
agent/example/echo
Package echo provides a reference echo tool for agent examples.
|
Package echo provides a reference echo tool for agent examples. |
|
agent/harness
Package harness orchestrates agent runs with hooks, tools, and session persistence.
|
Package harness orchestrates agent runs with hooks, tools, and session persistence. |
|
agent/hooks
Package hooks provides typed agent hook registration, emission, and loop Config bridging.
|
Package hooks provides typed agent hook registration, emission, and loop Config bridging. |
|
agent/llm
Package llm adapts langchaingo models for the agent loop and single-shot module tasks.
|
Package llm adapts langchaingo models for the agent loop and single-shot module tasks. |
|
agent/memory
Package memory provides filesystem-backed persistent agent memory outside the chat workspace.
|
Package memory provides filesystem-backed persistent agent memory outside the chat workspace. |
|
agent/model
Package model provides built-in LLM metadata and dual-model routing.
|
Package model provides built-in LLM metadata and dual-model routing. |
|
agent/msg
Package msg defines shared agent domain types used across subpackages.
|
Package msg defines shared agent domain types used across subpackages. |
|
agent/permission
Package permission evaluates tool invocation permissions with OpenCode-compatible rules.
|
Package permission evaluates tool invocation permissions with OpenCode-compatible rules. |
|
agent/result
Package result provides a discriminated Result type for expected failures in the agent stack.
|
Package result provides a discriminated Result type for expected failures in the agent stack. |
|
agent/sandbox
Package sandbox provides optional Docker isolation for agent shell and code tools.
|
Package sandbox provides optional Docker isolation for agent shell and code tools. |
|
agent/session
Package session manages branchable conversation trees and JSONL serialization.
|
Package session manages branchable conversation trees and JSONL serialization. |
|
agent/subagent
Package subagent runs a specialized agent loop in isolation so a primary agent can delegate a self-contained task and receive only the final result back.
|
Package subagent runs a specialized agent loop in isolation so a primary agent can delegate a self-contained task and receive only the final result back. |
|
agent/tool
Package tool provides tool registration and execution for agent runs.
|
Package tool provides tool registration and execution for agent runs. |
|
agent/transform
Package transform converts agent messages for LLM providers.
|
Package transform converts agent messages for LLM providers. |
|
backoff
Package backoff provides a unified retry strategy with configurable backoff, jitter, adaptive behavior, and error filtering.
|
Package backoff provides a unified retry strategy with configurable backoff, jitter, adaptive behavior, and error filtering. |
|
bulkhead
Package bulkhead provides per-capability semaphore isolation for ability invocations.
|
Package bulkhead provides per-capability semaphore isolation for ability invocations. |
|
cache
Package cache provides caching abstractions and implementations.
|
Package cache provides caching abstractions and implementations. |
|
capability
Package capability provides the capability invocation framework.
|
Package capability provides the capability invocation framework. |
|
capability/agent
Package agent provides the agent capability for pipeline steps to run chat agent prompts.
|
Package agent provides the agent capability for pipeline steps to run chat agent prompts. |
|
capability/clip
Package clip provides the clip capability for creating shareable markdown clips.
|
Package clip provides the clip capability for creating shareable markdown clips. |
|
capability/conformance
Package conformance provides a standard test suite for ability adapters.
|
Package conformance provides a standard test suite for ability adapters. |
|
capability/devops
Package devops implements the multi-provider devops capability aggregator.
|
Package devops implements the multi-provider devops capability aggregator. |
|
capability/example
Package example implements the example provider adapter for the example capability.
|
Package example implements the example provider adapter for the example capability. |
|
capability/fireflyiii
Package fireflyiii implements the Firefly III adapter for the finance capability.
|
Package fireflyiii implements the Firefly III adapter for the finance capability. |
|
capability/gitea
Package gitea implements the Gitea adapter for the forge capability.
|
Package gitea implements the Gitea adapter for the forge capability. |
|
capability/github
Package github implements the GitHub adapter for the github capability.
|
Package github implements the GitHub adapter for the github capability. |
|
capability/kanboard
Package kanboard implements the Kanboard adapter for the kanban capability.
|
Package kanboard implements the Kanboard adapter for the kanban capability. |
|
capability/karakeep
Package karakeep implements the Karakeep adapter for the bookmark capability.
|
Package karakeep implements the Karakeep adapter for the bookmark capability. |
|
capability/memos
Package memos implements the Memos adapter for the memo capability.
|
Package memos implements the Memos adapter for the memo capability. |
|
capability/miniflux
Package miniflux implements the Miniflux adapter for the reader capability.
|
Package miniflux implements the Miniflux adapter for the reader capability. |
|
capability/nocodb
Package nocodb implements the NocoDB adapter for the database capability.
|
Package nocodb implements the NocoDB adapter for the database capability. |
|
capability/notify
Package notify provides the notification capability for the capability framework.
|
Package notify provides the notification capability for the capability framework. |
|
capability/transmission
Package transmission implements the Transmission adapter for the download capability.
|
Package transmission implements the Transmission adapter for the download capability. |
|
capability/trilium
Package trilium implements the Trilium adapter for the note capability.
|
Package trilium implements the Trilium adapter for the note capability. |
|
client
Package client provides a Go client SDK for the Flowbot server's web service API.
|
Package client provides a Go client SDK for the Flowbot server's web service API. |
|
config
Package config provides runtime configuration loading and management.
|
Package config provides runtime configuration loading and management. |
|
cronutil
Package cronutil validates cron expressions shared by pipeline and chat scheduler.
|
Package cronutil validates cron expressions shared by pipeline and chat scheduler. |
|
event
Package event provides event system definition and data event types.
|
Package event provides event system definition and data event types. |
|
executor
Package executor provides the pipeline execution engine.
|
Package executor provides the pipeline execution engine. |
|
executor/runtime
Package runtime implements pipeline task execution runtimes.
|
Package runtime implements pipeline task execution runtimes. |
|
executor/runtime/capability
Package capability implements capability-based execution runtime.
|
Package capability implements capability-based execution runtime. |
|
executor/runtime/docker
Package docker implements the Docker execution runtime.
|
Package docker implements the Docker execution runtime. |
|
executor/runtime/machine
Package machine implements the machine execution runtime.
|
Package machine implements the machine execution runtime. |
|
executor/runtime/shell
Package shell implements the shell command execution runtime.
|
Package shell implements the shell command execution runtime. |
|
flog
Package flog provides structured logging for Flowbot.
|
Package flog provides structured logging for Flowbot. |
|
homelab
Package homelab provides homelab application scanning and registry.
|
Package homelab provides homelab application scanning and registry. |
|
homelab/probe
Package probe provides homelab service discovery and authentication detection.
|
Package probe provides homelab service discovery and authentication detection. |
|
hub
Package hub provides hub lifecycle management and automatic binding.
|
Package hub provides hub lifecycle management and automatic binding. |
|
media
Package media defines an interface which must be implemented by media upload/download handlers.
|
Package media defines an interface which must be implemented by media upload/download handlers. |
|
media/fs
Package fs implements github.com/flowline-io/flowbot/media interface by storing media objects in a single directory in the file system.
|
Package fs implements github.com/flowline-io/flowbot/media interface by storing media objects in a single directory in the file system. |
|
media/minio
Package minio implements media interface by storing media objects in Minio bucket.
|
Package minio implements media interface by storing media objects in Minio bucket. |
|
metrics
Package metrics provides Prometheus metrics collection for capabilities.
|
Package metrics provides Prometheus metrics collection for capabilities. |
|
module
Package module provides the module handler interface and base types.
|
Package module provides the module handler interface and base types. |
|
notify
Package notify provides the notification dispatcher interface and registry.
|
Package notify provides the notification dispatcher interface and registry. |
|
notify/manifest
Package manifest holds shared notification template and rule type definitions.
|
Package manifest holds shared notification template and rule type definitions. |
|
notify/messagepusher
Package messagepusher implements the Message Pusher notification provider.
|
Package messagepusher implements the Message Pusher notification provider. |
|
notify/ntfy
Package ntfy implements the ntfy notification provider.
|
Package ntfy implements the ntfy notification provider. |
|
notify/pushover
Package pushover implements Pushover notification provider.
|
Package pushover implements Pushover notification provider. |
|
notify/rules
Package rules provides the notification rule engine for throttling, aggregation, and mute/DND.
|
Package rules provides the notification rule engine for throttling, aggregation, and mute/DND. |
|
notify/slack
Package slack implements the Slack notification provider.
|
Package slack implements the Slack notification provider. |
|
notify/template
Package template provides notification template rendering using Go text/template with Sprig function library support.
|
Package template provides notification template rendering using Go text/template with Sprig function library support. |
|
parser
Package parser provides command and expression parsing.
|
Package parser provides command and expression parsing. |
|
pipeline
Package pipeline provides the event-driven pipeline execution engine.
|
Package pipeline provides the event-driven pipeline execution engine. |
|
pipeline/template
Package template provides pipeline template rendering engine.
|
Package template provides pipeline template rendering engine. |
|
plugin
Package plugin provides the plugin runner framework for extending flowbot via external binaries communicating over gRPC.
|
Package plugin provides the plugin runner framework for extending flowbot via external binaries communicating over gRPC. |
|
plugin/adapter
Package adapter provides bridge types that adapt plugin.Runner calls to flowbot's module, ability, and provider registries.
|
Package adapter provides bridge types that adapt plugin.Runner calls to flowbot's module, ability, and provider registries. |
|
plugin/grpc
Package grpc provides the gRPC-based plugin runtime implementation.
|
Package grpc provides the gRPC-based plugin runtime implementation. |
|
plugin/manager
Package manager provides the PluginManager that orchestrates plugin discovery, loading, lifecycle, and hot-reload.
|
Package manager provides the PluginManager that orchestrates plugin discovery, loading, lifecycle, and hot-reload. |
|
plugin/sdk
Package sdk provides the plugin SDK for building flowbot module plugins.
|
Package sdk provides the plugin SDK for building flowbot module plugins. |
|
plugin/source
Package source provides plugin discovery from local filesystem directories.
|
Package source provides plugin discovery from local filesystem directories. |
|
plugin/types
Package types provides shared plugin types with zero internal dependencies to avoid import cycles.
|
Package types provides shared plugin types with zero internal dependencies to avoid import cycles. |
|
plugin/wasm
Package wasm provides the WebAssembly-based plugin runner.
|
Package wasm provides the WebAssembly-based plugin runner. |
|
profiling
Package profiling provides runtime profiling and performance monitoring.
|
Package profiling provides runtime profiling and performance monitoring. |
|
providers
Package providers provides provider registry and common provider interfaces.
|
Package providers provides provider registry and common provider interfaces. |
|
providers/adguard
Package adguard implements the AdGuard Home provider.
|
Package adguard implements the AdGuard Home provider. |
|
providers/archivebox
Package archivebox implements the ArchiveBox provider.
|
Package archivebox implements the ArchiveBox provider. |
|
providers/beszel
Package beszel implements the Beszel host-monitoring provider (PocketBase API).
|
Package beszel implements the Beszel host-monitoring provider (PocketBase API). |
|
providers/dozzle
Package dozzle implements the Dozzle Docker log viewer provider (health-only MVP).
|
Package dozzle implements the Dozzle Docker log viewer provider (health-only MVP). |
|
providers/drone
Package drone implements the Drone CI provider.
|
Package drone implements the Drone CI provider. |
|
providers/dropbox
Package dropbox implements the Dropbox provider.
|
Package dropbox implements the Dropbox provider. |
|
providers/email
Package email implements the email provider.
|
Package email implements the email provider. |
|
providers/example
Package example implements the example provider using jsonplaceholder.typicode.com for demonstration.
|
Package example implements the example provider using jsonplaceholder.typicode.com for demonstration. |
|
providers/fireflyiii
Package fireflyiii implements the Firefly III finance provider.
|
Package fireflyiii implements the Firefly III finance provider. |
|
providers/gitea
Package gitea implements the Gitea provider.
|
Package gitea implements the Gitea provider. |
|
providers/github
Package github implements the GitHub API provider.
|
Package github implements the GitHub API provider. |
|
providers/grafana
Package grafana implements the Grafana HTTP API provider.
|
Package grafana implements the Grafana HTTP API provider. |
|
providers/kanboard
Package kanboard implements the Kanboard project management provider.
|
Package kanboard implements the Kanboard project management provider. |
|
providers/karakeep
Package karakeep implements the Karakeep bookmark provider.
|
Package karakeep implements the Karakeep bookmark provider. |
|
providers/memos
Package memos implements the Memos provider for note-taking and knowledge management.
|
Package memos implements the Memos provider for note-taking and knowledge management. |
|
providers/miniflux
Package miniflux implements the Miniflux RSS reader provider.
|
Package miniflux implements the Miniflux RSS reader provider. |
|
providers/n8n
Package n8n implements the n8n workflow automation provider.
|
Package n8n implements the n8n workflow automation provider. |
|
providers/netalertx
Package netalertx implements the NetAlertX network device monitoring provider.
|
Package netalertx implements the NetAlertX network device monitoring provider. |
|
providers/nocodb
Package nocodb implements the NocoDB provider.
|
Package nocodb implements the NocoDB provider. |
|
providers/slack
Package slack implements the Slack API provider.
|
Package slack implements the Slack API provider. |
|
providers/slash
Package slash implements the Slash provider.
|
Package slash implements the Slash provider. |
|
providers/traefik
Package traefik implements the Traefik reverse-proxy API provider.
|
Package traefik implements the Traefik reverse-proxy API provider. |
|
providers/transmission
Package transmission implements the Transmission BitTorrent provider.
|
Package transmission implements the Transmission BitTorrent provider. |
|
providers/trilium
Package trilium implements the Trilium Notes ETAPI provider.
|
Package trilium implements the Trilium Notes ETAPI provider. |
|
providers/uptimekuma
Package uptimekuma implements the Uptime Kuma monitoring provider.
|
Package uptimekuma implements the Uptime Kuma monitoring provider. |
|
providers/wakapi
Package wakapi implements the Wakapi coding-stats provider.
|
Package wakapi implements the Wakapi coding-stats provider. |
|
rdb
Package rdb provides a singleton Redis client with connection pool configuration.
|
Package rdb provides a singleton Redis client with connection pool configuration. |
|
route
Package route provides HTTP route registration and discovery.
|
Package route provides HTTP route registration and discovery. |
|
stats
Package stats provides runtime statistics and metrics collection.
|
Package stats provides runtime statistics and metrics collection. |
|
trace
Package trace provides OpenTelemetry tracing integration for Fiber.
|
Package trace provides OpenTelemetry tracing integration for Fiber. |
|
types
Package types provides core type definitions, interfaces, and value objects.
|
Package types provides core type definitions, interfaces, and value objects. |
|
types/audit
Package audit provides the Auditor interface and supporting types for audit logging.
|
Package audit provides the Auditor interface and supporting types for audit logging. |
|
types/model
Package model provides shared data types for UI views and transport.
|
Package model provides shared data types for UI views and transport. |
|
types/protocol
Package protocol provides platform-agnostic protocol types for request/response handling.
|
Package protocol provides platform-agnostic protocol types for request/response handling. |
|
types/ruleset/command
Package command implements the command ruleset type.
|
Package command implements the command ruleset type. |
|
types/ruleset/form
Package form implements the form ruleset type.
|
Package form implements the form ruleset type. |
|
types/ruleset/webservice
Package webservice implements the web service ruleset type.
|
Package webservice implements the web service ruleset type. |
|
utils
Package utils provides shared utility functions.
|
Package utils provides shared utility functions. |
|
utils/reexec
Package reexec facilitates the busybox style reexec of the docker binary that we require because of the forking limitations of using Go.
|
Package reexec facilitates the busybox style reexec of the docker binary that we require because of the forking limitations of using Go. |
|
utils/sets
Package sets provides generic set data structures.
|
Package sets provides generic set data structures. |
|
utils/syncx
Package syncx provides synchronized concurrent-safe data structures.
|
Package syncx provides synchronized concurrent-safe data structures. |
|
validate
Package validate provides shared validation rules and helpers for the application.
|
Package validate provides shared validation rules and helpers for the application. |
|
views/layout
templ: version: v0.3.1020
|
templ: version: v0.3.1020 |
|
views/pages
templ: version: v0.3.1020
|
templ: version: v0.3.1020 |
|
views/partials
templ: version: v0.3.1020
|
templ: version: v0.3.1020 |
|
workflow
Package workflow provides the workflow definition loader and runtime.
|
Package workflow provides the workflow definition loader and runtime. |
|
Package version provides build-time version and buildstamp information.
|
Package version provides build-time version and buildstamp information. |
Click to show internal directories.
Click to hide internal directories.