Skill Bot

An AI agent that dynamically discovers and executes skills stored in a linked space - reading skill definitions at runtime to extend its own capabilities without any code changes.

skills
space storage
dynamic capabilities
458

The Skill Bot blueprint demonstrates a uniquely extensible agent pattern: rather than hardcoding its capabilities at design time, the bot discovers what it can do by reading skill files from a linked space at runtime.

This makes the agent infinitely customisable without touching its configuration. Drop a new .skills/my-skill/SKILL.md file into the space and the agent will find it, read it, and follow its instructions the next time a relevant request comes in.

How Skills Work

Skills are Markdown files stored in .skills, .github/skills, or .claude/skills directories within the linked space. Each file contains a name, description, and step-by-step instructions for completing a specific task. The bot treats them as dynamically loaded system prompt extensions - only pulling in what is needed for each request.

Three space skill abilities power this discovery loop:

  • List Space Skills - scans all known skill directories and returns the name, description, and path of every skill found. The agent always calls this first so it never assumes a capability is unavailable.
  • Read Space Skills - loads the full content of one or more skill files by path. Once read, the agent follows the skill's instructions to complete the task.
  • Create Space Skills - writes new skills into the space under the .skills directory. Users can teach the agent new capabilities mid conversation, and those skills persist for future sessions.

Shell Execution

A bash ability gives the agent real execution power. Skills can include shell commands as part of their instructions, and the agent runs them in an isolated sandbox. API keys and credentials are stored in a .env file in the space; the agent sources this file before making any API calls, keeping secrets out of the conversation entirely.

Space File Browser

A Space File Browser dashboard tool provides live visibility into the space contents - skill files, the .env file, and any assets written during execution - without leaving the canvas.

Getting Started

  1. Upload a .env file to the space with any API keys your skills need.
  2. Create one or more skill files under .skills/<skill-name>/SKILL.md describing what the agent should do and how.
  3. Ask the bot to perform a task - it will discover the relevant skill and follow its instructions automatically.

This pattern is ideal for teams that want a single shared agent that different members can extend with their own workflows, without any platform configuration changes.

Backstory

Common information about the bot's experience, skills and personality. For more information, see the Backstory documentation.

## Important Behavior Rule Before responding to any user request, always use the `list_space_skills` tool to discover available skills in the space. If a relevant skill exists, use `read_space_skills` to load it and follow its instructions to complete the task. Never assume a capability is unavailable without first checking the available skills. ## API Keys & Credentials All API keys and credentials are stored in a `.env` file in the space. When a skill or task requires an API key, read it from the `.env` file using the `bash` tool before making any API calls. For example: ```bash source .env ``` Never ask the user for API keys if they can be sourced from the `.env` file.

Skillset

This example uses a dedicated Skillset. Skillsets are collections of abilities that can be used to create a bot with a specific set of functions and features it can perform.

  • 🎿

    List Space Skills

    Lists all available skills in the linked space by scanning .skills, .github/skills, and .claude/skills directories. Returns the name, description, and path for each skill found.
  • 🎭

    Read Space Skills

    Reads the full content of one or more skill files from the linked space by their paths. Use the list ability first to discover available skill paths.
  • 🇫🇷

    Create Space Skills

    Creates one or more skills in the linked space under the .skills directory. Each skill is stored as a SKILL.md file with frontmatter containing the name and description.
  • ✂️

    bash

    Execute a shell command or script

Terraform Code

This blueprint can be deployed using Terraform, enabling infrastructure-as-code management of your ChatBotKit resources. Use the code below to recreate this example in your own environment.

Copy this Terraform configuration to deploy the blueprint resources:

Next steps:

  1. Save the code above to a file named main.tf
  2. Set your API key: export CHATBOTKIT_API_KEY=your-api-key
  3. Run terraform init to initialize
  4. Run terraform plan to preview changes
  5. Run terraform apply to deploy

Learn more about the Terraform provider

A dedicated team of experts is available to help you create your perfect chatbot. Reach out via or chat for more information.