The 3-File Format
Every skill needs three files (plus an optional test file):Step-by-Step: Build a Weather Skill
1. Create the directory
2. Write SKILL.md
name, description) is used by the tool registry. The markdown body is injected into the LLM prompt as instructions.
3. Write fliiq.yaml
input_schema — JSON Schema defining what the LLM passes to the handler. Must be type: object.
output_schema — Documents the return format. Used by the LLM to understand the response.
credentials — List of environment variable names. Fliiq loads these from .env before calling the handler.
4. Write main.py
5. Add the API key
.env
6. Test it
~/.fliiq/skills/weather/ and makes it available to the agent.
Handler Contract
The handler function must follow these rules:Real Example: web_search
Here’s the actualweb_search skill that ships with Fliiq:
Promoting to Core
Once you’ve validated a local skill, promote it so it ships with your project:.fliiq/skills/weather/ to skills/core/weather/. See Promoting Skills for details.