Agent skill
script-kit-scripting
Script metadata and scriptlet bundle patterns for Script Kit. Use when writing scripts, test files, or scriptlet bundles. Covers global metadata, legacy comment-based metadata, and YAML frontmatter for bundles.
Install this agent skill to your Project
npx add-skill https://github.com/johnlindquist/script-kit-next/tree/main/.claude/skills/script-kit-scripting
SKILL.md
Script Kit Scripting
Patterns for writing scripts and scriptlet bundles.
Script Metadata (Preferred: Global Export)
Use for all new scripts/tests:
import '../../scripts/kit-sdk';
export const metadata = {
name: "My Script",
description: "Does something useful",
shortcut: "cmd+shift+m",
author: "Your Name",
// more typed fields available
};
Why prefer global metadata:
- Type safety (TS types)
- IDE autocomplete + validation
- More fields + easier extensibility
- Compile-time feedback (vs runtime parsing)
Legacy Comment-Based Metadata
Supported for backwards compatibility:
// Name: My Script
// Description: Does something useful
// Shortcut: cmd+shift+m
import '../../scripts/kit-sdk';
SDK Import in Tests
Tests import from repo path:
import '../../scripts/kit-sdk'; // globals: arg(), div(), editor(), fields(), captureScreenshot(), getLayoutInfo(), ...
Production scripts use runtime-extracted SDK at ~/.scriptkit/sdk/kit-sdk.ts.
Scriptlet Bundles (~/.scriptkit/snippets/*.md)
Optional YAML frontmatter (line 1 must be ---, closed by --- on its own line):
---
name: My API Tools
description: Collection of useful API utilities
author: John Doe
icon: api
---
Fields: name, description, author, icon (all optional). Unknown fields ignored.
Backwards Compatibility
- Frontmatter optional; bundles without it still work
- Filename fallback: missing
nameuses filename (sans.md) - Invalid frontmatter logs warnings but does not break parsing
Validation Behavior
- Missing closing
---→ warn (line #), skip frontmatter - Invalid YAML → warn (error + line #), skip frontmatter
- Errors surface to users via HUD notifications with line #
Default Icon Mapping
When no explicit icon::
template→text-cursor-inputtool→wrenchsnippet→codescript→terminalprompt→message-circleaction→zap- fallback →
file-text
Icon resolution priority:
- explicit frontmatter icon
- tool-type default
- bundle fallback
file-text
Troubleshooting
- Frontmatter not parsed → must start on line 1 with
---and have closing---on its own line - Icon not showing → verify icon name exists; check
[CACHE]logs - HUD validation error → use the reported line number; quote special chars
- Metadata not updating → touch file to refresh cache; check logs
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?