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 space.
- 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 space 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 space 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 order.
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

