Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AgentAutoSelectionDefaults ¶ added in v0.2.36
type AgentAutoSelectionDefaults struct {
// Model is the model used for routing decisions. When empty, runtime falls back
// to the conversation default model or Defaults.Model.
Model string `yaml:"model,omitempty" json:"model,omitempty"`
// Prompt optionally overrides the default system prompt used by the router.
Prompt string `yaml:"prompt,omitempty" json:"prompt,omitempty"`
// OutputKey controls the JSON field name the classifier should output.
// Examples: "agentId" (default), "agent_id".
OutputKey string `yaml:"outputKey,omitempty" json:"outputKey,omitempty"`
}
AgentAutoSelectionDefaults controls the LLM-based agent classifier used for auto routing.
type Defaults ¶
type Defaults struct {
Model string
Embedder string
Agent string
// RuntimeRoot allows separating runtime state (db, snapshots, indexes) from the workspace.
// Supports ${workspaceRoot}. When empty, defaults to ${workspaceRoot}.
RuntimeRoot string `yaml:"runtimeRoot,omitempty" json:"runtimeRoot,omitempty"`
// StatePath overrides the runtime state root (used by cookies/tokens).
// Supports ${workspaceRoot} and ${runtimeRoot}. When empty, defaults to ${runtimeRoot}/state.
StatePath string `yaml:"statePath,omitempty" json:"statePath,omitempty"`
// DBPath overrides the SQLite database file path when AGENTLY_DB_* is not set.
// Supports ${workspaceRoot} and ${runtimeRoot}. When empty, defaults to ${runtimeRoot}/db/agently.db.
DBPath string `yaml:"dbPath,omitempty" json:"dbPath,omitempty"`
// ---- Agent routing defaults (optional) -------------------------
// When Agent == "auto", the runtime may use these settings to pick a concrete
// agent for the turn using an LLM-based classifier.
AgentAutoSelection AgentAutoSelectionDefaults `yaml:"agentAutoSelection,omitempty" json:"agentAutoSelection,omitempty"`
// ---- Tool routing defaults (optional) --------------------------
// When enabled, the runtime may select tool bundles for the turn based on the
// user request when the caller did not explicitly provide tools/bundles.
ToolAutoSelection ToolAutoSelectionDefaults `yaml:"toolAutoSelection,omitempty" json:"toolAutoSelection,omitempty"`
// ---- Conversation summary defaults (optional) -------------------
// When empty the runtime falls back to hard-coded defaults.
SummaryModel string `yaml:"summaryModel" json:"summaryModel"`
SummaryPrompt string `yaml:"summaryPrompt" json:"summaryPrompt"`
SummaryLastN int `yaml:"summaryLastN" json:"summaryLastN"`
// CapabilityPrompt overrides the system prompt used for capability discovery responses.
CapabilityPrompt string `yaml:"capabilityPrompt" json:"capabilityPrompt"`
// ---- Tool-call result controls (grouped) ---------------------
PreviewSettings PreviewSettings `yaml:"previewSettings" json:"previewSettings"`
ToolCallMaxResults int `yaml:"toolCallMaxResults" json:"toolCallMaxResults"`
// ---- Execution timeouts -------------------------------------
// ToolCallTimeoutSec sets the default per-tool execution timeout in seconds.
// When zero or missing, runtime falls back to a built-in default.
ToolCallTimeoutSec int `yaml:"toolCallTimeoutSec,omitempty" json:"toolCallTimeoutSec,omitempty"`
// ElicitationTimeoutSec caps how long the agent waits for an elicitation
// (assistant- or tool-originated) before auto-declining. When zero, no
// special timeout is applied (waits until the turn/request is canceled).
ElicitationTimeoutSec int `yaml:"elicitationTimeoutSec,omitempty" json:"elicitationTimeoutSec,omitempty"`
// ---- Match defaults (optional) -------------------------------
Match MatchDefaults `yaml:"match" json:"match"`
// ---- Resources defaults (optional) ---------------------------
Resources ResourcesDefaults `yaml:"resources,omitempty" json:"resources,omitempty"`
}
type MatchDefaults ¶ added in v0.2.6
type MatchDefaults struct {
// MaxFiles is the default per-location cap used by auto/full decision
// when a knowledge/MCP entry does not specify MaxFiles. When zero,
// the runtime falls back to hard-coded default (5).
MaxFiles int `yaml:"maxFiles" json:"maxFiles"`
}
MatchDefaults groups retrieval/matching defaults
type PreviewSettings ¶ added in v0.2.10
type PreviewSettings struct {
Limit int `yaml:"limit" json:"limit"`
AgedLimit int `yaml:"agedLimit" json:"agedLimit"`
// How far back until we switch the UI to an aged preview.
AgedAfterSteps int `yaml:"agedAfterSteps" json:"agedAfterSteps"`
SummarizeChunk int `yaml:"summarizeChunk" json:"summarizeChunk"`
MatchChunk int `yaml:"matchChunk" json:"matchChunk"`
SummaryModel string `yaml:"summaryModel" json:"summaryModel"`
EmbeddingModel string `yaml:"embeddingModel" json:"embeddingModel"`
// Optional system guide document (path or URL) injected when overflow occurs.
SystemGuidePath string `yaml:"systemGuidePath" json:"systemGuidePath"`
// SummaryThresholdBytes controls when internal/message:summarize is
// exposed for overflowed messages. When zero or negative, any
// overflowed message may use summarize.
SummaryThresholdBytes int `yaml:"summaryThresholdBytes,omitempty" json:"summaryThresholdBytes,omitempty"`
}
PreviewSettings groups tool-call result presentation and processing settings.
type ResourceRoot ¶ added in v0.2.38
type ResourceRoot struct {
ID string `yaml:"id,omitempty" json:"id,omitempty"`
URI string `yaml:"uri,omitempty" json:"uri,omitempty"`
UpstreamRef string `yaml:"upstreamRef,omitempty" json:"upstreamRef,omitempty"`
SyncEnabled *bool `yaml:"syncEnabled,omitempty" json:"syncEnabled,omitempty"`
MinInterval int `yaml:"minIntervalSeconds,omitempty" json:"minIntervalSeconds,omitempty"`
Batch int `yaml:"batch,omitempty" json:"batch,omitempty"`
Shadow string `yaml:"shadow,omitempty" json:"shadow,omitempty"`
Force *bool `yaml:"force,omitempty" json:"force,omitempty"`
}
ResourceRoot defines a non-MCP resource root with optional upstream binding.
type ResourceUpstream ¶ added in v0.2.38
type ResourceUpstream struct {
Name string `yaml:"name,omitempty" json:"name,omitempty"`
Driver string `yaml:"driver,omitempty" json:"driver,omitempty"`
DSN string `yaml:"dsn,omitempty" json:"dsn,omitempty"`
Shadow string `yaml:"shadow,omitempty" json:"shadow,omitempty"`
Batch int `yaml:"batch,omitempty" json:"batch,omitempty"`
Force bool `yaml:"force,omitempty" json:"force,omitempty"`
Enabled *bool `yaml:"enabled,omitempty" json:"enabled,omitempty"`
MinIntervalSeconds int `yaml:"minIntervalSeconds,omitempty" json:"minIntervalSeconds,omitempty"`
}
ResourceUpstream defines an upstream database used for local resource sync.
type ResourceUpstreamStore ¶ added in v0.2.56
type ResourceUpstreamStore struct {
Driver string `yaml:"driver,omitempty" json:"driver,omitempty"`
DSN string `yaml:"dsn,omitempty" json:"dsn,omitempty"`
Shadow string `yaml:"shadow,omitempty" json:"shadow,omitempty"`
Batch int `yaml:"batch,omitempty" json:"batch,omitempty"`
Force bool `yaml:"force,omitempty" json:"force,omitempty"`
MinIntervalSeconds int `yaml:"minIntervalSeconds,omitempty" json:"minIntervalSeconds,omitempty"`
}
ResourceUpstreamStore defines a default upstream used when no upstreamRef is set.
type ResourcesDefaults ¶ added in v0.2.21
type ResourcesDefaults struct {
// Locations are root URIs or paths (relative to workspace) such as
// "documents/", "file:///abs/path", or "mcp:server:/prefix".
Locations []string `yaml:"locations,omitempty" json:"locations,omitempty"`
// Roots define resource roots with optional upstream bindings for local/workspace locations.
Roots []ResourceRoot `yaml:"roots,omitempty" json:"roots,omitempty"`
// Upstreams define upstream databases for local/workspace resource sync.
Upstreams []ResourceUpstream `yaml:"upstreams,omitempty" json:"upstreams,omitempty"`
// UpstreamStore defines the default upstream used when roots omit upstreamRef.
UpstreamStore *ResourceUpstreamStore `yaml:"upstreamStore,omitempty" json:"upstreamStore,omitempty"`
// IndexPath controls where Embedius stores local indexes. Supports
// ${workspaceRoot} and ${user} macros. If empty, defaults to
// ${workspaceRoot}/index/${user}.
IndexPath string `yaml:"indexPath,omitempty" json:"indexPath,omitempty"`
// SnapshotPath controls where MCP snapshot caches are stored. Supports
// ${workspaceRoot} and ${user} macros. If empty, defaults to
// ${workspaceRoot}/snapshots.
SnapshotPath string `yaml:"snapshotPath,omitempty" json:"snapshotPath,omitempty"`
// TrimPath optionally trims this prefix from presented URIs.
TrimPath string `yaml:"trimPath,omitempty" json:"trimPath,omitempty"`
// SummaryFiles lookup order for root descriptions.
SummaryFiles []string `yaml:"summaryFiles,omitempty" json:"summaryFiles,omitempty"`
// DescribeMCP enables MCP description fetches for resources.roots when
// no description is provided by config/metadata.
DescribeMCP bool `yaml:"describeMCP,omitempty" json:"describeMCP,omitempty"`
// UpstreamSyncConcurrency controls parallel root syncs for MCP upstreams.
UpstreamSyncConcurrency int `yaml:"upstreamSyncConcurrency,omitempty" json:"upstreamSyncConcurrency,omitempty"`
// MatchConcurrency controls parallel match execution across roots.
MatchConcurrency int `yaml:"matchConcurrency,omitempty" json:"matchConcurrency,omitempty"`
// IndexAsync enables background indexing for resource matches.
IndexAsync *bool `yaml:"indexAsync,omitempty" json:"indexAsync,omitempty"`
}
ResourcesDefaults defines default resource roots and presentation hints.
type ToolAutoSelectionDefaults ¶ added in v0.2.36
type ToolAutoSelectionDefaults struct {
// Enabled turns on auto tool selection when the caller did not specify tools.
Enabled bool `yaml:"enabled,omitempty" json:"enabled,omitempty"`
// Model is the model used for routing decisions. When empty, runtime falls back
// to the conversation default model or Defaults.Model.
Model string `yaml:"model,omitempty" json:"model,omitempty"`
// Prompt optionally overrides the default system prompt used by the router.
Prompt string `yaml:"prompt,omitempty" json:"prompt,omitempty"`
// OutputKey controls the JSON field name the classifier should output.
// Example: "toolBundles" (default).
OutputKey string `yaml:"outputKey,omitempty" json:"outputKey,omitempty"`
// MaxBundles caps the number of bundles the router may select.
// When zero, a small default is applied.
MaxBundles int `yaml:"maxBundles,omitempty" json:"maxBundles,omitempty"`
}
ToolAutoSelectionDefaults controls the optional tool bundle selector.
Click to show internal directories.
Click to hide internal directories.