Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add joonlab/joonlab-claudecode-setting-for-share --skill raycast-extension-creatorgit clone --depth 1 https://github.com/joonlab/joonlab-claudecode-setting-for-shareWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/joonlab/joonlab-claudecode-setting-for-share/raycast-extension-creator)<a href="https://agentmods.dev/skills/joonlab/joonlab-claudecode-setting-for-share/raycast-extension-creator"><img src="https://agentmods.dev/badge/skills/joonlab/joonlab-claudecode-setting-for-share/raycast-extension-creator/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/joonlab/joonlab-claudecode-setting-for-share/raycast-extension-creator"><img src="https://agentmods.dev/badge/skills/joonlab/joonlab-claudecode-setting-for-share/raycast-extension-creator.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00123 | $0.02648 |
| Opus 5 | $0.00062 | $0.01324 |
| Sonnet 5 | $0.00025 | $0.00530 |
| Haiku 4.5 | $0.00012 | $0.00265 |
Grade A, and why
raycast-extension-creator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 390 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Raycast Extension Creator
Raycast Extension을 TypeScript로 생성하고 설정하는 스킬.
언제 사용하는가
- Raycast Extension 개발 요청 시
- List, Form, Detail 등 UI가 필요한 앱 요청 시
- 클립보드 히스토리, HUD 알림, 폼 입력 등 Raycast API 필요 시
- 기존 쉘 스크립트를 Raycast Extension으로 업그레이드할 때
Raycast Extension vs Script Command
| 구분 | Script Command (.sh) | Extension (TypeScript) |
|---|---|---|
| 복잡도 | 단순 명령어 | 복잡한 로직/UI |
| API 접근 | pbcopy/osascript | Raycast API 전체 |
| 클립보드 히스토리 | polling 방식 (불안정) | Clipboard.copy (확실) |
| UI | 없음 | Form, List, Detail, Grid |
| 사용 케이스 | 단순 스크립트 | 앱 수준 기능 |
Extension 생성 워크플로우
1. 프로젝트 초기화
mkdir -p <project-path>/src <project-path>/assets
2. package.json 템플릿
{
"$schema": "https://www.raycast.com/schemas/extension.json",
"name": "<extension-name>",
"title": "<Extension Title>",
"description": "<설명>",
"icon": "icon.png",
"author": "<author>",
"categories": ["Productivity"],
"license": "MIT",
"commands": [
{
"name": "<command-name>",
"title": "<Command Title>",
"description": "<명령어 설명>",
"mode": "view"
}
],
"dependencies": {
"@raycast/api": "^1.65.0",
"@raycast/utils": "^1.10.0"
},
"devDependencies": {
"@raycast/eslint-config": "^1.0.8",
"@types/node": "20.10.0",
"@types/react": "18.2.38",
"eslint": "^8.54.0",
"prettier": "^3.1.0",
"typescript": "^5.3.2"
},
"scripts": {
"build": "ray build -e dist",
"dev": "ray develop",
"fix-lint": "ray lint --fix",
"lint": "ray lint"
}
}
3. tsconfig.json 템플릿
{
"$schema": "https://json.schemastore.org/tsconfig",
"display": "Raycast Extension",
"compilerOptions": {
"lib": ["ES2021"],
"module": "commonjs",
"target": "ES2021",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true,
"jsx": "react-jsx",
"outDir": "dist"
},
"include": ["src/**/*"]
}
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 390 lines · 123 tokens per session scan A 56df6e219940
raycast-extension-creator is a skill published in the GitHub repository joonlab/joonlab-claudecode-setting-for-share (10 stars, last pushed 1mo ago), licensed MIT. It adds 123 tokens to every session and 2,648 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
material-ui-nextjs
Integrates Material UI with Next.js App and Pages routers using @mui/material-nextjs, Emotion cache providers, next/font, CSS layers with Tailwind/CSS Modules, Link component prop patterns, CSS theme variables SSR notes, and App Router useSearchParams + Suspense. Use when setting up or debugging MUI in a Next.js app.
Webdesign
Design and integrate web interfaces via three paths: DirectDesign (write design inline with Anthropic frontend-design philosophy — the default workhorse), native /design + /design-sync Claude Code commands (preferred for code integration and design-system sync), or ClaudeDesign (drive claude.ai/design through…
Remotion
Creates programmatic video with React via Remotion — compositions, sequences, and motion graphics animated with useCurrentFrame() and rendered to MP4. USE WHEN video, animation, motion graphics, video rendering, React video, render video, animate content, make a short, create animations, video overlay, explainer…
slide-deck
When you want to draft, update, convert, or export a slide deck for a React/Next.js slide system (${SLIDEDECKREPO:-$HOME/code/your-slide-deck-site}/src/app/slides/). Writes TypeScript Slide[] arrays using your primitives (Eyebrow, Heading, Accent, Body, BulletList, Divider, TwoCol, GradientText), 12 cycling brand…
recipe-front-review
Reviews completed frontend implementation for governing-source compliance, scope economy, repository quality, and security, then applies user-approved React corrections.
frontend-ai-guide
Applies React/TypeScript-specific technical decision criteria, anti-pattern detection, debugging, and frontend quality gates. Use when reviewing components, hooks, browser behavior, or frontend implementation completeness.