New request
#2977: Request: Allow users to manually attach/force a skill before a conversation turn
We'll provision a sandbox, run an agent against the issue, and open a draft PR. You can pull the branch and iterate from there.
Problem
Hermes skill triggering is entirely prompt-driven with no code-level enforcement. The model decides whether to load a skill based on the system prompt's <available_skills> list, but this decision is voluntary — the model can ignore relevant skills and answer directly.
This means most skills effectively become dead weight. A user may have a well-written skill for a specific task, but the model will only use it if it voluntarily decides to call skill_view.
Requested Feature
Allow users to manually attach/force a specific skill before or during a conversation turn, so the model is forced to follow that skill's workflow regardless of its own judgment.
Concretely:
- Add a UI control (dropdown, command, or sidebar panel) listing all available skills
- When a skill is selected, inject its content into the context before the next model call
- The model should be explicitly told: "You MUST follow the workflow in this skill"
This ensures skill author intent is respected and removes the dependency on model goodwill.
Why This Matters
- Skill authors spend significant effort writing detailed workflows
- Without enforcement, those workflows are effectively optional
- Users have no way to hold the model accountable to a specific process
- This is especially important for regulated workflows (code review, debugging, planning)
Suggested UX
Option A: /use <skill-name> command — prepends skill to next turn
Option B: Sidebar skill picker — click to attach, click again to detach
Option C: Both
Forcing skill attachment requires new frontend skill-selection controls and backend logic to inject skill content into the conversation context.
- static/js/skills.js
- static/js/command_handler.js
- api/sessions.py
- api/skills.py