Agents are what do the actual work in your Friday workflows. There are three types you can declare inDocumentation Index
Fetch the complete documentation index at: https://docs.hellofriday.ai/llms.txt
Use this file to discover all available pages before exploring further.
workspace.yml: atlas (bundled), llm (inline), and user (custom Python).
atlas — bundled agents
Bundled agents are the fastest path. Friday ships with a full set of ready-to-use agents for common integrations. Reference them by ID in your workspace:workspace.yml
prompt field is per-invocation task context layered on the agent’s built-in behavior — describe what you want, not how to do it. The env block passes credentials; use from_environment to pull from the daemon’s environment.
Bundled agents are black-box. They have their own internal tool surface and ignore the tools array. If you need to call specific MCP tools, use type: llm instead.
Available bundled agents:
| Agent ID | What it does | Credentials needed |
|---|---|---|
gh | Clone repos, review PRs, post comments on GitHub | GH_TOKEN |
bitbucket | Clone repos, review PRs, post comments on Bitbucket Cloud | Bitbucket app password |
claude-code | Code generation, debugging, codebase analysis | ANTHROPIC_API_KEY |
web | Multi-query web search with cited reports | PARALLEL_API_KEY |
email | Send emails with template support | SendGrid API key |
slack | Post messages to channels and DMs | Slack OAuth |
google-calendar | Create events, check availability | Google OAuth |
data-analyst | SQL analysis on uploaded CSVs and databases | None |
csv-filter-sampler | Filter and sample CSV data | None |
summarizer | Condense content into formatted summaries | None |
image-generation | Generate images from text descriptions | Provider API key |
transcription | Convert audio files to text | None |
jira | Read/create/update issues, transition status | Jira API token |
hubspot | CRM record management | HubSpot OAuth |
snowflake | Analytical queries on Snowflake | Snowflake credentials |
llm — inline LLM agents
Define an LLM agent directly inworkspace.yml when no bundled agent covers your domain. Specify provider, model, system prompt, and the MCP tools it can call:
workspace.yml
serverId/toolName format — the server ID comes from tools.mcp.servers in your workspace. Built-in platform tools (memory_save, memory_read) need no prefix. Call friday agent list -w <workspace> to see available tools.
user — custom Python agents
Build your own agent with the SDK when you need to wrap internal APIs or business logic. Register the agent with the daemon, then reference it by ID:workspace.yml
MCP tools
Agents can call external tool servers via . Declare servers at the workspace level — they’re available to anyllm or user agent in the workspace. See MCP Tools.
Declaration order
Declare agents before jobs inworkspace.yml. Jobs reference agents by ID in FSM entry actions — the validator raises unknown_agent_id if the agent isn’t declared first.
Let an agent write your agent. Install the
writing-friday-python-agents
skill in Claude Code or any compatible coding agent. It scaffolds
agents that follow SDK conventions and register cleanly.
