mirror of
https://github.com/tiennm99/goclaw.git
synced 2026-10-13 06:15:25 +00:00
feat(skills): add slash command activation
This commit is contained in:
1 parent
14b32bd219
commit
c99f7e1fa4
24 files changed
+978
-40
No files matched your search
@@ -279,6 +279,30 @@ This decision is re-evaluated each time the system prompt is built, so newly hot
|
||||
|
||||
---
|
||||
|
||||
## 9.5. Explicit Slash Skill Commands
|
||||
|
||||
Users can bypass implicit skill matching by starting a prompt with a slash command:
|
||||
|
||||
| Pattern | Behavior |
|
||||
|---------|----------|
|
||||
| `/<slug> prompt` | Activates the skill by slug and treats `prompt` as the skill input |
|
||||
| `/use <slug-or-name> prompt` | Activates the skill by slug or display name |
|
||||
| `/list-skills` | Shows available skills for the current agent context |
|
||||
| `/help <slug-or-name>` | Shows description and usage guidance for one skill |
|
||||
|
||||
Slash detection runs during prompt construction after request context is scoped and before the skills section is built. A matched skill narrows the per-request `SkillFilter` to that skill and injects the full `SKILL.md` instructions into the system prompt for the current turn only. Normal matching remains unchanged for messages that do not start with the configured prefix, path-like strings such as `/home/user/file`, or unresolved commands without suggestions.
|
||||
|
||||
Tenant settings live in `system_configs`:
|
||||
|
||||
| Key | Default | Behavior |
|
||||
|-----|---------|----------|
|
||||
| `skills.slash_commands.enabled` | `true` | Enable slash command detection |
|
||||
| `skills.slash_commands.suggest_not_found` | `true` | Suggest similar skills for unknown commands |
|
||||
| `skills.slash_commands.partial_matching` | `false` | Allow unique prefixes such as `/frontend` |
|
||||
| `skills.slash_commands.prefix` | `/` | Single-character command prefix |
|
||||
|
||||
---
|
||||
|
||||
## 10. Skills -- BM25 Search
|
||||
|
||||
An in-memory BM25 index provides keyword-based skill search. The index is lazily rebuilt whenever the skill version changes.
|
||||
|
||||
@@ -29,6 +29,11 @@ How skills access Python, Node.js, and system tools inside Docker containers and
|
||||
└─────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
Explicit skill activation is handled before runtime execution. When a user starts
|
||||
their prompt with `/<skill-slug>` or `/use <skill name>`, the gateway resolves
|
||||
the skill, injects its `SKILL.md` into the current turn, and then normal runtime
|
||||
rules apply to any scripts or package dependencies that skill uses.
|
||||
|
||||
---
|
||||
|
||||
## 2. Pre-installed Packages (Option A)
|
||||
|
||||
@@ -337,6 +337,12 @@ tenant `system_configs["skills.max_upload_size_mb"]`, then `SKILL.md` frontmatte
|
||||
`GOCLAW_SKILLS_MAX_UPLOAD_SIZE_MB`, then the default 20 MB. Values are clamped
|
||||
to 1-500 MB.
|
||||
|
||||
Skill slash-command behavior is configured through tenant `system_configs`:
|
||||
`skills.slash_commands.enabled`, `skills.slash_commands.suggest_not_found`,
|
||||
`skills.slash_commands.partial_matching`, and `skills.slash_commands.prefix`.
|
||||
The default prefix is `/`; supported prompt forms are `/<slug> prompt`,
|
||||
`/use <slug-or-name> prompt`, `/list-skills`, and `/help <slug-or-name>`.
|
||||
|
||||
| Method | Path | Description |
|
||||
|--------|------|-------------|
|
||||
| `POST` | `/v1/skills/{id}/grants/agent` | Grant skill to agent |
|
||||
|
||||
@@ -6,6 +6,17 @@ Significant changes, features, and fixes in reverse chronological order.
|
||||
|
||||
## 2026-05-24
|
||||
|
||||
### Slash skill commands
|
||||
|
||||
**Features**
|
||||
|
||||
- Added explicit slash skill activation for `/<slug>`, `/use <slug-or-name>`, `/list-skills`, and `/help <slug-or-name>`.
|
||||
- Added tenant settings for slash command enablement, similar-skill suggestions, partial matching, and custom prefix.
|
||||
|
||||
**Tests**
|
||||
|
||||
- Added backend coverage for parser false positives, exact/partial skill resolution, suggestions, help/list commands, and config overlays.
|
||||
|
||||
### Configurable skill upload limits
|
||||
|
||||
**Features**
|
||||
|
||||
Reference in new issue
Block a user