Documentation Index
Fetch the complete documentation index at: https://docs.hellofriday.ai/llms.txt
Use this file to discover all available pages before exploring further.
Signature
Required Parameters
The build API validates that all three are present. Missing any returns HTTP 400 with"phase": "validate".
id
- Type:
str - Description: Unique identifier for the agent. Use kebab-case.
- Constraints: Must be unique within your workspace.
- Example:
"text-analyzer","github-helper","jira-operations"
version
- Type:
str - Description: Semantic version of the agent.
- Example:
"1.0.0","2.1.0-alpha.1" - Behaviour: Multiple versions coexist on disk; Friday resolves the ID to the highest semver version.
description
- Type:
str - Description: What the agent does. Used by the planner for delegation decisions.
- Guidance: Be specific about capabilities and use cases. 50-200 characters.
- Required: Build fails without this field.
Optional Parameters
display_name
- Type:
str | None - Description: Human-readable name for the UI. Falls back to
idif not provided.
summary
- Type:
str | None - Description: One-line summary for agent listings.
constraints
- Type:
str | None - Description: Limitations, requirements, or conditions for using the agent.
- Example:
"Requires GitHub token. Cannot access workspace database tables."
examples
- Type:
list[str] | None - Description: Example prompts that trigger this agent. Helps the planner learn delegation patterns.
input_schema
- Type:
type | None - Description: Dataclass type for structured input parsing. Currently informational; used for documentation generation.
output_schema
- Type:
type | None - Description: Dataclass type for structured output. Passed to agent via
ctx.output_schema.
use_workspace_skills
- Type:
bool - Default:
False - Description: Whether the agent loads workspace skills before execution.
Environment Configuration
environment
- Type:
dict[str, Any] | None - Description: Environment variable requirements.
ctx.env["API_KEY"].
MCP Configuration
mcp
- Type:
dict[str, Any] | None - Description: MCP servers to launch alongside the agent.
LLM Configuration
llm
- Type:
dict[str, Any] | None - Description: Default LLM provider and model for the agent.
ctx.llm.generate() is called without explicit model. See How to Call LLMs for resolution cascade.
Handler Function Signature
The decorated function receives:Parameters
prompt— The enriched prompt string from Friday (includes task, context, temporal facts)ctx— AgentContext with capabilities and metadata
Return Types
Return either:ok(data)— Success with structured dataok(data, extras=AgentExtras(...))— Success with metadataerr(message)— Failure with error message
Example
Registration Validation
When you register an agent, the daemon validates metadata. Errors return:Version Semantics
Agent versions follow Semantic Versioning:MAJOR— Breaking changes to agent behaviorMINOR— New capabilities, backwards compatiblePATCH— Bug fixes, backwards compatible
See Also
AgentContext
Execution context and capabilities
Result Types
ok() and err() constructors
How to Use MCP Tools
Task-oriented guide for MCP tool integration

