Skip to content

Inline skills

The inline-skills extension lets you invite installed skills directly inside a message by typing $skill-name. It provides autocomplete suggestions and expands matched skills into the conversation context before the agent runs.

Bundled with Selesai

Loaded automatically with Selesai; no per-extension npm install is required.

Manifest entry
./inline-skills.ts
Runtime surface
Skill-backed

Setup and prerequisites

  • Bundled with Selesai and loaded automatically.
  • Works only with skills that are already installed (source in src/skills/ or user-level skill files).
  • Requires an interactive session with editor autocomplete; headless or non-TUI use still expands already-typed $skill-name tokens.

What it sets up

  • Registers an autocomplete provider triggered by $. As you type, it suggests installed skill names that contain the token.
  • Hooks input events to expand any $skill-name tokens into <skill> blocks appended before the original message.
  • Reads each skill’s source file from the path recorded by the skill loader and strips its frontmatter.

What you can configure

Inline skills depend on installed skill files. The # token and autocomplete behavior are fixed; there are no persistent settings.

No user configuration

This capability does not expose user-editable settings. Its behavior is controlled by the commands and runtime rules documented below.

Command, tool, and shortcut controls

Key / pathDescription
#skill-nameType # followed by a skill name to trigger autocomplete.
[[skill:...]]Legacy inline skill invitation syntax.

Source evidence

What you can do

  • Start typing $ in the editor to see installed skill suggestions.
  • Accept a suggestion to insert $skill-name as text.
  • Send the message. Before the agent runs, the extension replaces the inline token with the skill’s <skill> block.
  • Mention multiple skills in one message: $grill-me $ponytail expands both if they are installed.

Commands, tools, and shortcuts

There are no slash commands, tools, or shortcuts. The extension surface is:

SurfaceBehavior
$<token> autocompleteSuggests installed skills matching <token>.
$<skill-name> in a messageExpands the matching skill body into context.

Limits and safety

  • Inline skills only expand if the skill is installed and its sourceInfo.path is readable. Unavailable or unreadable skills are silently skipped.
  • Each distinct skill is expanded at most once per message, even if you mention it multiple times.
  • The matching is case-insensitive and accepts skill names using lowercase letters, digits, and hyphens.
  • An inline skill token must be preceded by a word boundary or whitespace and followed by a non-identifier character (space, punctuation, end of line) to be recognized.
  • The expansion is a pre-send transform; it does not add the skill as a persistent session instruction and it does not change the model’s tool set.
  • If the input comes from another extension (event.source === "extension"), the transform is skipped to avoid loops.

Source evidence

Selesai version: 0.10.0