What a skill is
A skill is aSKILL.md file. The frontmatter declares its name, triggers, and parameters. The body is a prompt template.
SKILL.md
Version-controlled in the repo
Skills live inbackend/skills/ in the repository. Meaning:
Tracked in git
Alongside the rest of the codebase.
Reviewed like code
Changes go through code review and roll back like any other code.
Shared via the repo
Teams share a common skill library — no hidden per-user config.
skills/ directory into the database, making them available to every user in the tenant.
Creating a custom skill
Write the prompt body
Use
{{variable}} placeholders for parameters. Reference other Fabric tools (the agent can call search_knowledge, query_database, etc. when the skill runs).How skills are triggered
The chat interface matches user input against skill triggers. If a match is detected, the skill is invoked with extracted parameters. Users can also invoke skills explicitly by name.Skill parameters
Parameters can be extracted from the user’s message or filled interactively. A skill declares required parameters; Fabric prompts the user for any that are missing before invocation.System skills
Fabric ships with system skills inbackend/skills/_system/ that teach the agent how to use Fabric’s own tools effectively:
searching-gmail
Best practices for querying Gmail-sourced nodes.
searching-slack
Channel-scoped retrieval patterns.
searching-imap
Generic email search across IMAP accounts.
navigating-knowledge-graph
Multi-hop graph traversal examples.