Agent skill
scriptlets
Create extension bundles (scriptlets) for text expansions, snippets, shell commands, and lightweight helpers in a single markdown file. Use when the user wants quick shortcuts or grouped utilities.
Install this agent skill to your Project
npx add-skill https://github.com/johnlindquist/script-kit-next/tree/main/kit-init/skills/scriptlets
SKILL.md
Scriptlets (Extension Bundles)
Use an extension bundle when the user wants text expansions, snippets, quick shell commands, or several lightweight helpers grouped in one markdown file.
Write Here
~/.scriptkit/kit/main/extensions/<name>.md
Do not create new user bundles in built-in kits or example kits.
Read These Files In Order
~/.scriptkit/examples/extensions/howto.md~/.scriptkit/examples/extensions/main.md~/.scriptkit/examples/extensions/advanced.md
Canonical Bundle Shape
---
name: My Bundle
description: Personal helpers
icon: sparkles
---
## Email Sign-off
```metadata
keyword: !bye
description: Quick email sign-off
Thanks,
Your Name
Quick Note
description: Save a quick note
import "@scriptkit/sdk";
const note = await arg("Note");
await Bun.write(`${env.HOME}/quick-note.txt`, note);
await notify("Saved");
## Fence Map
| Fence | Use for |
|------|---------|
| `paste` | Static text expansion |
| `bash` | Shell command |
| `tool:<name>` | TypeScript with the Script Kit SDK |
| `template:<name>` | Template expansion |
| `open` | URL or file target |
`tool:<name>` fences still need `import "@scriptkit/sdk";` as the first line.
## Metadata
Prefer `metadata` code fences for:
- `keyword`
- `description`
- `shortcut`
- `alias`
- `schedule`
- `cron`
- `icon`
- boolean flags
Legacy HTML comments still work, but do not generate them for new harness-authored bundles unless the user explicitly asks for legacy format.
## Choose Script vs Extension Bundle
Choose a `.ts` script when the request needs:
- rich UI
- multi-step logic
- file/network workflows
- external APIs
Choose an extension bundle when the request is:
- a snippet
- a text expansion
- a quick shell command
- a small grouped helper set
## Done When
- the file lives in `~/.scriptkit/kit/main/extensions/`
- each `##` heading is one scriptlet
- the fence type matches the intended behavior
- the bundle is the smallest artifact that fits
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
Generate Component Documentation
Based on existing docs styles and specific API implementations, and referencing same name stories, generate comprehensive documentation for the new component.
Generate Component Story
Generate a comprehensive story for a new component for as example.
new-component
How to write a new component of GPUI Component.
troubleshooting
Diagnose and fix common Script Kit issues. Use when the user reports bugs, crashes, missing features, or unexpected behavior in Script Kit GPUI.
script-authoring
Create and manage TypeScript scripts for Script Kit. Use when the user wants to write a new script, edit an existing script, or understand Script Kit's SDK and metadata system.
agents
Create mdflow-backed agent files for Script Kit. Use when the user wants to create AI agents, configure agent backends (Claude, Gemini, Codex), or manage agent metadata.
Didn't find tool you were looking for?