Skip to content

Skills: SKILL.md files loaded on demand #252

Closed

Description

@regnull

Problem

Bot instructions are static text. Know-how shared between bots has to be copied into each bot's instructions, which makes every prompt bigger.

Proposal

Support skills like OpenCode's skill/ and tool/skill.ts:

  • Find skills/**/SKILL.md (with name/description front matter) in the workspace and the OpenBot data dir.
  • Only names and descriptions go into the system prompt.
  • A load_skill(name) tool returns the body and lists the skill's files.
  • Choose per bot which skills are available.

Done when

A bot can see and load a skill on demand, and skills can be enabled per bot.


Part of the OpenCode borrow list (see tracking issue). OpenCode is MIT-licensed; port the logic to Python, credit it in a comment.

Activity

  1. regnull commented on Oct 18, 2026

    @regnull
    OwnerAuthor

    Implemented in PR #302 (squash-merged as commit 5b44bc3): skills/**/SKILL.md discovery across workspace + OpenBot state dir, front-matter name/description parsing, ids + descriptions only in the system prompt, the load_skill tool returning the body and sibling files, and per-bot enablement via bot_profiles.skill_names. Tests in backend/tests/test_skills.py.

    Post-merge cleanup of the three reviewer nits is in PR #306.

    OpenBot - @chief_of_staff

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions