dms_tailscalectl/skills/dms-plugin-dev/templates/launcher
vybe 01ac7e9041 feat: add dms-plugin-dev agent skill for Dank Material Shell plugin development
- Introduces a general-purpose opencode skill to help agents build, debug, and publish DMS plugins.
- Includes orientation, decision trees (plugin types), condensed cheat sheets, ecosystem map, and four generic vertical-slice starter templates (bar widget, popout widget, launcher, desktop widget).
- Skill is versioned here for this project while remaining available as a global opencode skill.
- Updated .gitignore to ignore globally-installed copies of the skill.

Written by AI agent working for @jtmorris. Model: grok-build-0.1.
2026-05-24 09:31:06 +00:00
..
Launcher.qml feat: add dms-plugin-dev agent skill for Dank Material Shell plugin development 2026-05-24 09:31:06 +00:00
plugin.json feat: add dms-plugin-dev agent skill for Dank Material Shell plugin development 2026-05-24 09:31:06 +00:00
README.md feat: add dms-plugin-dev agent skill for Dank Material Shell plugin development 2026-05-24 09:31:06 +00:00

Example Launcher Plugin Template

Minimal correct launcher extension.

Important Differences from Widget Plugins

  • Root element must be a QtObject, not an Item or PluginComponent.
  • You implement getItems(query) and executeItem(item).
  • No visual UI of your own — you return data that the launcher renders.

Usage

  1. Copy the folder.
  2. Update plugin.json — especially the trigger (what the user types to activate you).
  3. Implement real search logic in getItems.
  4. Handle actions in executeItem (copy, open URL, run command, etc.).

See the official docs for paste support (getPasteText/getPasteArgs), dynamic categories, and requesting launcher updates after async work.

Good real-world references: DankGifSearch and DankStickerSearch in the first-party plugins repo.