Skip to content

feat(tui): add inline skill picker#33019

Open
alexx855 wants to merge 5 commits into
anomalyco:devfrom
alexx855:inline-skills
Open

feat(tui): add inline skill picker#33019
alexx855 wants to merge 5 commits into
anomalyco:devfrom
alexx855:inline-skills

Conversation

@alexx855

@alexx855 alexx855 commented Jun 19, 2026

Copy link
Copy Markdown

Issue for this PR

Closes #20982
Refs #15617
Refs #29217
Refs #25439

Type of change

  • Bug fix
  • New feature
  • Refactor / code improvement
  • Documentation

What does this PR do?

Adds a minimal TUI $ skill picker flow.

When $ is typed as its own token, opencode opens the existing skills picker. Selecting a skill inserts $skill-name into the current prompt instead of replacing the whole prompt, so multiple skills can be selected in one prompt.

Selected skills are sent as native skill prompt parts and resolved server-side through the skill service. This avoids routing skill invocation through slash-command execution.

How did you verify your code works?

  • ./packages/sdk/js/script/build.ts
  • bun test --timeout 30000 test/session/prompt.test.ts -t "resolves selected skill parts" from packages/opencode
  • bun --cwd packages/opencode test test/session/prompt.test.ts
  • bun --cwd packages/opencode typecheck
  • bun --cwd packages/tui typecheck
  • bun --cwd packages/sdk/js typecheck

Screenshots / recordings

Not captured. This reuses the existing skills picker UI and only changes how $ opens it and inserts the selected skill into the prompt.

Checklist

  • I have tested my changes locally
  • I have not included unrelated changes in this PR

@github-actions

Copy link
Copy Markdown
Contributor

The following comment was made by an LLM, it may be inaccurate:

Potential Related PRs Found

Based on the searches, there are several related PRs that might be addressing similar functionality:

  1. feat(tui): Add inline $skill invocations with SKILL pill + pasteText support #29217 - feat(tui): Add inline $skill invocations with SKILL pill + pasteText support

  2. fix(tui): insert skill name without wiping existing prompt text #27632 - fix(tui): insert skill name without wiping existing prompt text

    • This PR directly addresses the core feature of PR feat(tui): add inline skill picker #33019: inserting skill names without replacing the entire prompt
    • May contain earlier attempts at or related work on this functionality
  3. feat(tui): fuzzy search on skill descriptions, recently used skills, skill detail view #32454 - feat(tui): fuzzy search on skill descriptions, recently used skills, skill detail view

    • Related to skill picker enhancements, though focused on different aspects (fuzzy search, history, details)

Note: PR #33019 itself is the current PR being checked, so it's excluded from duplicate consideration. The references in the PR description (#20982, #15617, #29217, #25439) suggest the author is already aware of related work in this area.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE]: Add $ trigger for skills autocomplete in the prompt composer

1 participant