diff --git a/.gitmodules b/.gitmodules index 9594e25..0496683 100644 --- a/.gitmodules +++ b/.gitmodules @@ -28,69 +28,12 @@ [submodule "external-plugins/open-aware"] path = external-plugins/open-aware url = git@github.com:amondnet/open-aware.git -[submodule "vendor/antfu-skills"] - path = vendor/antfu-skills - url = https://github.com/antfu/skills.git [submodule "external-plugins/playwright-cli"] path = external-plugins/playwright-cli url = git@github.com:pleaseai/playwright-cli.git -[submodule "sources/vue"] - path = sources/vue - url = https://github.com/vuejs/docs -[submodule "sources/nuxt"] - path = sources/nuxt - url = https://github.com/nuxt/nuxt -[submodule "sources/vite"] - path = sources/vite - url = https://github.com/vitejs/vite -[submodule "sources/unocss"] - path = sources/unocss - url = https://github.com/unocss/unocss -[submodule "sources/pnpm"] - path = sources/pnpm - url = https://github.com/pnpm/pnpm.io -[submodule "sources/pinia"] - path = sources/pinia - url = https://github.com/vuejs/pinia -[submodule "sources/vitest"] - path = sources/vitest - url = https://github.com/vitest-dev/vitest -[submodule "sources/vitepress"] - path = sources/vitepress - url = https://github.com/vuejs/vitepress -[submodule "vendor/slidev"] - path = vendor/slidev - url = https://github.com/slidevjs/slidev -[submodule "vendor/vueuse"] - path = vendor/vueuse - url = https://github.com/vueuse/skills -[submodule "vendor/vuejs-ai"] - path = vendor/vuejs-ai - url = https://github.com/vuejs-ai/skills [submodule "vendor/web-design-guidelines"] path = vendor/web-design-guidelines url = https://github.com/vercel-labs/agent-skills -[submodule "vendor/mastra"] - path = vendor/mastra - url = https://github.com/mastra-ai/skills -[submodule "vendor/nuxt-ui"] - path = vendor/nuxt-ui - url = https://github.com/nuxt/ui -[submodule "vendor/supabase"] - path = vendor/supabase - url = https://github.com/supabase/agent-skills -[submodule "vendor/prisma"] - path = vendor/prisma - url = https://github.com/prisma/skills -[submodule "vendor/better-auth"] - path = vendor/better-auth - url = https://github.com/better-auth/skills -[submodule "vendor/agent-browser"] - path = vendor/agent-browser - url = https://github.com/vercel-labs/agent-browser -[submodule "vendor/ai-sdk"] - path = vendor/ai-sdk - url = https://github.com/vercel/ai [submodule "external-plugins/google-workspace"] path = external-plugins/google-workspace url = https://github.com/googleworkspace/cli diff --git a/plugins/agent-browser/skills/agent-browser/SKILL.md b/plugins/agent-browser/.agents/skills/agent-browser/SKILL.md similarity index 63% rename from plugins/agent-browser/skills/agent-browser/SKILL.md rename to plugins/agent-browser/.agents/skills/agent-browser/SKILL.md index 8cd7b7a..ba9cb20 100644 --- a/plugins/agent-browser/skills/agent-browser/SKILL.md +++ b/plugins/agent-browser/.agents/skills/agent-browser/SKILL.md @@ -6,6 +6,8 @@ allowed-tools: Bash(npx agent-browser:*), Bash(agent-browser:*) # Browser Automation with agent-browser +The CLI uses Chrome/Chromium via CDP directly. Install via `npm i -g agent-browser`, `brew install agent-browser`, or `cargo install agent-browser`. Run `agent-browser install` to download Chrome. Run `agent-browser upgrade` to update to the latest version. + ## Core Workflow Every browser automation follows this pattern: @@ -44,6 +46,64 @@ agent-browser open https://example.com && agent-browser wait --load networkidle **When to chain:** Use `&&` when you don't need to read the output of an intermediate command before proceeding (e.g., open + wait + screenshot). Run commands separately when you need to parse the output first (e.g., snapshot to discover refs, then interact using those refs). +## Handling Authentication + +When automating a site that requires login, choose the approach that fits: + +**Option 1: Import auth from the user's browser (fastest for one-off tasks)** + +```bash +# Connect to the user's running Chrome (they're already logged in) +agent-browser --auto-connect state save ./auth.json +# Use that auth state +agent-browser --state ./auth.json open https://app.example.com/dashboard +``` + +State files contain session tokens in plaintext -- add to `.gitignore` and delete when no longer needed. Set `AGENT_BROWSER_ENCRYPTION_KEY` for encryption at rest. + +**Option 2: Persistent profile (simplest for recurring tasks)** + +```bash +# First run: login manually or via automation +agent-browser --profile ~/.myapp open https://app.example.com/login +# ... fill credentials, submit ... + +# All future runs: already authenticated +agent-browser --profile ~/.myapp open https://app.example.com/dashboard +``` + +**Option 3: Session name (auto-save/restore cookies + localStorage)** + +```bash +agent-browser --session-name myapp open https://app.example.com/login +# ... login flow ... +agent-browser close # State auto-saved + +# Next time: state auto-restored +agent-browser --session-name myapp open https://app.example.com/dashboard +``` + +**Option 4: Auth vault (credentials stored encrypted, login by name)** + +```bash +echo "$PASSWORD" | agent-browser auth save myapp --url https://app.example.com/login --username user --password-stdin +agent-browser auth login myapp +``` + +`auth login` navigates with `load` and then waits for login form selectors to appear before filling/clicking, which is more reliable on delayed SPA login screens. + +**Option 5: State file (manual save/load)** + +```bash +# After logging in: +agent-browser state save ./auth.json +# In a future session: +agent-browser state load ./auth.json +agent-browser open https://app.example.com/dashboard +``` + +See [references/authentication.md](references/authentication.md) for OAuth, 2FA, cookie-based auth, and token refresh patterns. + ## Essential Commands ```bash @@ -53,7 +113,6 @@ agent-browser close # Close browser # Snapshot agent-browser snapshot -i # Interactive elements with refs (recommended) -agent-browser snapshot -i -C # Include cursor-interactive elements (divs with onclick, cursor:pointer) agent-browser snapshot -s "#selector" # Scope to CSS selector # Interaction (use @refs from snapshot) @@ -73,24 +132,57 @@ agent-browser scroll down 500 --selector "div.content" # Scroll within a specif agent-browser get text @e1 # Get element text agent-browser get url # Get current URL agent-browser get title # Get page title +agent-browser get cdp-url # Get CDP WebSocket URL # Wait agent-browser wait @e1 # Wait for element agent-browser wait --load networkidle # Wait for network idle agent-browser wait --url "**/page" # Wait for URL pattern agent-browser wait 2000 # Wait milliseconds +agent-browser wait --text "Welcome" # Wait for text to appear (substring match) +agent-browser wait --fn "!document.body.innerText.includes('Loading...')" # Wait for text to disappear +agent-browser wait "#spinner" --state hidden # Wait for element to disappear # Downloads agent-browser download @e1 ./file.pdf # Click element to trigger download agent-browser wait --download ./output.zip # Wait for any download to complete agent-browser --download-path ./downloads open # Set default download directory +# Network +agent-browser network requests # Inspect tracked requests +agent-browser network requests --type xhr,fetch # Filter by resource type +agent-browser network requests --method POST # Filter by HTTP method +agent-browser network requests --status 2xx # Filter by status (200, 2xx, 400-499) +agent-browser network request # View full request/response detail +agent-browser network route "**/api/*" --abort # Block matching requests +agent-browser network har start # Start HAR recording +agent-browser network har stop ./capture.har # Stop and save HAR file + +# Viewport & Device Emulation +agent-browser set viewport 1920 1080 # Set viewport size (default: 1280x720) +agent-browser set viewport 1920 1080 2 # 2x retina (same CSS size, higher res screenshots) +agent-browser set device "iPhone 14" # Emulate device (viewport + user agent) + # Capture agent-browser screenshot # Screenshot to temp dir agent-browser screenshot --full # Full page screenshot agent-browser screenshot --annotate # Annotated screenshot with numbered element labels +agent-browser screenshot --screenshot-dir ./shots # Save to custom directory +agent-browser screenshot --screenshot-format jpeg --screenshot-quality 80 agent-browser pdf output.pdf # Save as PDF +# Clipboard +agent-browser clipboard read # Read text from clipboard +agent-browser clipboard write "Hello, World!" # Write text to clipboard +agent-browser clipboard copy # Copy current selection +agent-browser clipboard paste # Paste from clipboard + +# Dialogs (alert, confirm, prompt) +agent-browser dialog accept # Accept dialog +agent-browser dialog accept "my input" # Accept prompt dialog with text +agent-browser dialog dismiss # Dismiss/cancel dialog +agent-browser dialog status # Check if a dialog is currently open + # Diff (compare page states) agent-browser diff snapshot # Compare current vs last snapshot agent-browser diff snapshot --baseline before.txt # Compare current vs saved file @@ -100,6 +192,24 @@ agent-browser diff url --wait-until networkidle # Custom wait str agent-browser diff url --selector "#main" # Scope to element ``` +## Batch Execution + +Execute multiple commands in a single invocation by piping a JSON array of string arrays to `batch`. This avoids per-command process startup overhead when running multi-step workflows. + +```bash +echo '[ + ["open", "https://example.com"], + ["snapshot", "-i"], + ["click", "@e1"], + ["screenshot", "result.png"] +]' | agent-browser batch --json + +# Stop on first error +agent-browser batch --bail < commands.json +``` + +Use `batch` when you have a known sequence of commands that don't depend on intermediate output. Use separate commands or `&&` chaining when you need to parse output between steps (e.g., snapshot to discover refs, then interact). + ## Common Patterns ### Form Submission @@ -131,6 +241,8 @@ agent-browser auth show github agent-browser auth delete github ``` +`auth login` waits for username/password/submit selectors before interacting, with a timeout tied to the default action timeout. + ### Authentication with State Persistence ```bash @@ -170,6 +282,30 @@ agent-browser state clear myapp agent-browser state clean --older-than 7 ``` +### Working with Iframes + +Iframe content is automatically inlined in snapshots. Refs inside iframes carry frame context, so you can interact with them directly. + +```bash +agent-browser open https://example.com/checkout +agent-browser snapshot -i +# @e1 [heading] "Checkout" +# @e2 [Iframe] "payment-frame" +# @e3 [input] "Card number" +# @e4 [input] "Expiry" +# @e5 [button] "Pay" + +# Interact directly — no frame switch needed +agent-browser fill @e3 "4111111111111111" +agent-browser fill @e4 "12/28" +agent-browser click @e5 + +# To scope a snapshot to one iframe: +agent-browser frame @e2 +agent-browser snapshot -i # Only iframe content +agent-browser frame main # Return to main frame +``` + ### Data Extraction ```bash @@ -206,6 +342,8 @@ agent-browser --auto-connect snapshot agent-browser --cdp 9222 snapshot ``` +Auto-connect discovers Chrome via `DevToolsActivePort`, common debugging ports (9222, 9229), and falls back to a direct WebSocket connection if HTTP-based CDP discovery fails. + ### Color Scheme (Dark Mode) ```bash @@ -219,11 +357,35 @@ AGENT_BROWSER_COLOR_SCHEME=dark agent-browser open https://example.com agent-browser set media dark ``` +### Viewport & Responsive Testing + +```bash +# Set a custom viewport size (default is 1280x720) +agent-browser set viewport 1920 1080 +agent-browser screenshot desktop.png + +# Test mobile-width layout +agent-browser set viewport 375 812 +agent-browser screenshot mobile.png + +# Retina/HiDPI: same CSS layout at 2x pixel density +# Screenshots stay at logical viewport size, but content renders at higher DPI +agent-browser set viewport 1920 1080 2 +agent-browser screenshot retina.png + +# Device emulation (sets viewport + user agent in one step) +agent-browser set device "iPhone 14" +agent-browser screenshot device.png +``` + +The `scale` parameter (3rd argument) sets `window.devicePixelRatio` without changing CSS layout. Use it when testing retina rendering or capturing higher-resolution screenshots. + ### Visual Browser (Debugging) ```bash agent-browser --headed open https://example.com agent-browser highlight @e1 # Highlight element +agent-browser inspect # Open Chrome DevTools for the active page agent-browser record start demo.webm # Record session agent-browser profiler start # Start Chrome DevTools profiling agent-browser profiler stop trace.json # Stop and save profile (path optional) @@ -302,8 +464,9 @@ export AGENT_BROWSER_ACTION_POLICY=./policy.json ``` Example `policy.json`: + ```json -{"default": "deny", "allow": ["navigate", "snapshot", "click", "scroll", "wait", "get"]} +{ "default": "deny", "allow": ["navigate", "snapshot", "click", "scroll", "wait", "get"] } ``` Auth vault operations (`auth login`, etc.) bypass action policy but domain allowlist still applies. @@ -343,7 +506,7 @@ agent-browser diff url https://staging.example.com https://prod.example.com --sc ## Timeouts and Slow Pages -The default Playwright timeout is 25 seconds for local browsers. This can be overridden with the `AGENT_BROWSER_DEFAULT_TIMEOUT` environment variable (value in milliseconds). For slow websites or large pages, use explicit waits instead of relying on the default timeout: +The default timeout is 25 seconds. This can be overridden with the `AGENT_BROWSER_DEFAULT_TIMEOUT` environment variable (value in milliseconds). For slow websites or large pages, use explicit waits instead of relying on the default timeout: ```bash # Wait for network activity to settle (best for slow pages) @@ -365,6 +528,26 @@ agent-browser wait 5000 When dealing with consistently slow websites, use `wait --load networkidle` after `open` to ensure the page is fully loaded before taking a snapshot. If a specific element is slow to render, wait for it directly with `wait ` or `wait @ref`. +## JavaScript Dialogs (alert / confirm / prompt) + +When a page opens a JavaScript dialog (`alert()`, `confirm()`, or `prompt()`), it blocks all other browser commands (snapshot, screenshot, click, etc.) until the dialog is dismissed. If commands start timing out unexpectedly, check for a pending dialog: + +```bash +# Check if a dialog is blocking +agent-browser dialog status + +# Accept the dialog (dismiss the alert / click OK) +agent-browser dialog accept + +# Accept a prompt dialog with input text +agent-browser dialog accept "my input" + +# Dismiss the dialog (click Cancel) +agent-browser dialog dismiss +``` + +When a dialog is pending, all command responses include a `warning` field indicating the dialog type and message. In `--json` mode this appears as a `"warning"` key in the response object. + ## Session Management and Cleanup When running multiple agents or automations concurrently, always use named sessions to avoid conflicts: @@ -387,6 +570,12 @@ agent-browser --session agent1 close # Close specific session If a previous session was not closed properly, the daemon may still be running. Use `agent-browser close` to clean it up before starting new work. +To auto-shutdown the daemon after a period of inactivity (useful for ephemeral/CI environments): + +```bash +AGENT_BROWSER_IDLE_TIMEOUT_MS=60000 agent-browser open example.com +``` + ## Ref Lifecycle (Important) Refs (`@e1`, `@e2`, etc.) are invalidated when the page changes. Always re-snapshot after: @@ -415,6 +604,7 @@ agent-browser click @e2 # Click using ref from annotated screenshot ``` Use annotated screenshots when: + - The page has unlabeled icon buttons or visual-only elements - You need to verify visual layout or styling - Canvas or chart elements are present (invisible to text snapshots) @@ -457,6 +647,7 @@ agent-browser eval -b "$(echo -n 'Array.from(document.querySelectorAll("a")).map **Why this matters:** When the shell processes your command, inner double quotes, `!` characters (history expansion), backticks, and `$()` can all corrupt the JavaScript before it reaches agent-browser. The `--stdin` and `-b` flags bypass shell interpretation entirely. **Rules of thumb:** + - Single-line, no nested quotes -> regular `eval 'expression'` with single quotes is fine - Nested quotes, arrow functions, template literals, or multiline -> use `eval --stdin <<'EVALEOF'` - Programmatic/generated scripts -> use `eval -b` with base64 @@ -477,38 +668,45 @@ Priority (lowest to highest): `~/.agent-browser/config.json` < `./agent-browser. ## Deep-Dive Documentation -| Reference | When to Use | -|-----------|-------------| -| [references/commands.md](references/commands.md) | Full command reference with all options | -| [references/snapshot-refs.md](references/snapshot-refs.md) | Ref lifecycle, invalidation rules, troubleshooting | +| Reference | When to Use | +| -------------------------------------------------------------------- | --------------------------------------------------------- | +| [references/commands.md](references/commands.md) | Full command reference with all options | +| [references/snapshot-refs.md](references/snapshot-refs.md) | Ref lifecycle, invalidation rules, troubleshooting | | [references/session-management.md](references/session-management.md) | Parallel sessions, state persistence, concurrent scraping | -| [references/authentication.md](references/authentication.md) | Login flows, OAuth, 2FA handling, state reuse | -| [references/video-recording.md](references/video-recording.md) | Recording workflows for debugging and documentation | -| [references/profiling.md](references/profiling.md) | Chrome DevTools profiling for performance analysis | -| [references/proxy-support.md](references/proxy-support.md) | Proxy configuration, geo-testing, rotating proxies | +| [references/authentication.md](references/authentication.md) | Login flows, OAuth, 2FA handling, state reuse | +| [references/video-recording.md](references/video-recording.md) | Recording workflows for debugging and documentation | +| [references/profiling.md](references/profiling.md) | Chrome DevTools profiling for performance analysis | +| [references/proxy-support.md](references/proxy-support.md) | Proxy configuration, geo-testing, rotating proxies | -## Experimental: Native Mode +## Browser Engine Selection -agent-browser has an experimental native Rust daemon that communicates with Chrome directly via CDP, bypassing Node.js and Playwright entirely. It is opt-in and not recommended for production use yet. +Use `--engine` to choose a local browser engine. The default is `chrome`. ```bash -# Enable via flag -agent-browser --native open example.com +# Use Lightpanda (fast headless browser, requires separate install) +agent-browser --engine lightpanda open example.com -# Enable via environment variable (avoids passing --native every time) -export AGENT_BROWSER_NATIVE=1 +# Via environment variable +export AGENT_BROWSER_ENGINE=lightpanda agent-browser open example.com + +# With custom binary path +agent-browser --engine lightpanda --executable-path /path/to/lightpanda open example.com ``` -The native daemon supports Chromium and Safari (via WebDriver). Firefox and WebKit are not yet supported. All core commands (navigate, snapshot, click, fill, screenshot, cookies, storage, tabs, eval, etc.) work identically in native mode. Use `agent-browser close` before switching between native and default mode within the same session. +Supported engines: +- `chrome` (default) -- Chrome/Chromium via CDP +- `lightpanda` -- Lightpanda headless browser via CDP (10x faster, 10x less memory than Chrome) + +Lightpanda does not support `--extension`, `--profile`, `--state`, or `--allow-file-access`. Install Lightpanda from https://lightpanda.io/docs/open-source/installation. ## Ready-to-Use Templates -| Template | Description | -|----------|-------------| -| [templates/form-automation.sh](templates/form-automation.sh) | Form filling with validation | -| [templates/authenticated-session.sh](templates/authenticated-session.sh) | Login once, reuse state | -| [templates/capture-workflow.sh](templates/capture-workflow.sh) | Content extraction with screenshots | +| Template | Description | +| ------------------------------------------------------------------------ | ----------------------------------- | +| [templates/form-automation.sh](templates/form-automation.sh) | Form filling with validation | +| [templates/authenticated-session.sh](templates/authenticated-session.sh) | Login once, reuse state | +| [templates/capture-workflow.sh](templates/capture-workflow.sh) | Content extraction with screenshots | ```bash ./templates/form-automation.sh https://example.com/form diff --git a/plugins/agent-browser/skills/agent-browser/references/authentication.md b/plugins/agent-browser/.agents/skills/agent-browser/references/authentication.md similarity index 59% rename from plugins/agent-browser/skills/agent-browser/references/authentication.md rename to plugins/agent-browser/.agents/skills/agent-browser/references/authentication.md index 12ef5e4..89f4788 100644 --- a/plugins/agent-browser/skills/agent-browser/references/authentication.md +++ b/plugins/agent-browser/.agents/skills/agent-browser/references/authentication.md @@ -6,6 +6,9 @@ Login flows, session persistence, OAuth, 2FA, and authenticated browsing. ## Contents +- [Import Auth from Your Browser](#import-auth-from-your-browser) +- [Persistent Profiles](#persistent-profiles) +- [Session Persistence](#session-persistence) - [Basic Login Flow](#basic-login-flow) - [Saving Authentication State](#saving-authentication-state) - [Restoring Authentication](#restoring-authentication) @@ -16,6 +19,104 @@ Login flows, session persistence, OAuth, 2FA, and authenticated browsing. - [Token Refresh Handling](#token-refresh-handling) - [Security Best Practices](#security-best-practices) +## Import Auth from Your Browser + +The fastest way to authenticate is to reuse cookies from a Chrome session you are already logged into. + +**Step 1: Start Chrome with remote debugging** + +```bash +# macOS +"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --remote-debugging-port=9222 + +# Linux +google-chrome --remote-debugging-port=9222 + +# Windows +"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 +``` + +Log in to your target site(s) in this Chrome window as you normally would. + +> **Security note:** `--remote-debugging-port` exposes full browser control on localhost. Any local process can connect and read cookies, execute JS, etc. Only use on trusted machines and close Chrome when done. + +**Step 2: Grab the auth state** + +```bash +# Auto-discover the running Chrome and save its cookies + localStorage +agent-browser --auto-connect state save ./my-auth.json +``` + +**Step 3: Reuse in automation** + +```bash +# Load auth at launch +agent-browser --state ./my-auth.json open https://app.example.com/dashboard + +# Or load into an existing session +agent-browser state load ./my-auth.json +agent-browser open https://app.example.com/dashboard +``` + +This works for any site, including those with complex OAuth flows, SSO, or 2FA -- as long as Chrome already has valid session cookies. + +> **Security note:** State files contain session tokens in plaintext. Add them to `.gitignore`, delete when no longer needed, and set `AGENT_BROWSER_ENCRYPTION_KEY` for encryption at rest. See [Security Best Practices](#security-best-practices). + +**Tip:** Combine with `--session-name` so the imported auth auto-persists across restarts: + +```bash +agent-browser --session-name myapp state load ./my-auth.json +# From now on, state is auto-saved/restored for "myapp" +``` + +## Persistent Profiles + +Use `--profile` to point agent-browser at a Chrome user data directory. This persists everything (cookies, IndexedDB, service workers, cache) across browser restarts without explicit save/load: + +```bash +# First run: login once +agent-browser --profile ~/.myapp-profile open https://app.example.com/login +# ... complete login flow ... + +# All subsequent runs: already authenticated +agent-browser --profile ~/.myapp-profile open https://app.example.com/dashboard +``` + +Use different paths for different projects or test users: + +```bash +agent-browser --profile ~/.profiles/admin open https://app.example.com +agent-browser --profile ~/.profiles/viewer open https://app.example.com +``` + +Or set via environment variable: + +```bash +export AGENT_BROWSER_PROFILE=~/.myapp-profile +agent-browser open https://app.example.com/dashboard +``` + +## Session Persistence + +Use `--session-name` to auto-save and restore cookies + localStorage by name, without managing files: + +```bash +# Auto-saves state on close, auto-restores on next launch +agent-browser --session-name twitter open https://twitter.com +# ... login flow ... +agent-browser close # state saved to ~/.agent-browser/sessions/ + +# Next time: state is automatically restored +agent-browser --session-name twitter open https://twitter.com +``` + +Encrypt state at rest: + +```bash +export AGENT_BROWSER_ENCRYPTION_KEY=$(openssl rand -hex 32) +agent-browser --session-name secure open https://app.example.com +``` + ## Basic Login Flow ```bash diff --git a/plugins/agent-browser/skills/agent-browser/references/commands.md b/plugins/agent-browser/.agents/skills/agent-browser/references/commands.md similarity index 87% rename from plugins/agent-browser/skills/agent-browser/references/commands.md rename to plugins/agent-browser/.agents/skills/agent-browser/references/commands.md index e77196c..46de5f1 100644 --- a/plugins/agent-browser/skills/agent-browser/references/commands.md +++ b/plugins/agent-browser/.agents/skills/agent-browser/references/commands.md @@ -58,6 +58,7 @@ agent-browser get value @e1 # Get input value agent-browser get attr @e1 href # Get attribute agent-browser get title # Get page title agent-browser get url # Get current URL +agent-browser get cdp-url # Get CDP WebSocket URL agent-browser get count ".item" # Count matching elements agent-browser get box @e1 # Get bounding box agent-browser get styles @e1 # Get computed styles (font, color, bg, etc.) @@ -129,6 +130,7 @@ agent-browser find nth 2 "a" hover ```bash agent-browser set viewport 1920 1080 # Set viewport size +agent-browser set viewport 1920 1080 2 # 2x retina (same CSS size, higher res screenshots) agent-browser set device "iPhone 14" # Emulate device agent-browser set geo 37.7749 -122.4194 # Set geolocation (alias: geolocation) agent-browser set offline on # Toggle offline mode @@ -175,10 +177,36 @@ agent-browser window new # New window ## Frames ```bash -agent-browser frame "#iframe" # Switch to iframe +agent-browser frame "#iframe" # Switch to iframe by CSS selector +agent-browser frame @e3 # Switch to iframe by element ref agent-browser frame main # Back to main frame ``` +### Iframe support + +Iframes are detected automatically during snapshots. When the main-frame snapshot runs, `Iframe` nodes are resolved and their content is inlined beneath the iframe element in the output (one level of nesting; iframes within iframes are not expanded). + +```bash +agent-browser snapshot -i +# @e3 [Iframe] "payment-frame" +# @e4 [input] "Card number" +# @e5 [button] "Pay" + +# Interact directly — refs inside iframes already work +agent-browser fill @e4 "4111111111111111" +agent-browser click @e5 + +# Or switch frame context for scoped snapshots +agent-browser frame @e3 # Switch using element ref +agent-browser snapshot -i # Snapshot scoped to that iframe +agent-browser frame main # Return to main frame +``` + +The `frame` command accepts: +- **Element refs** — `frame @e3` resolves the ref to an iframe element +- **CSS selectors** — `frame "#payment-iframe"` finds the iframe by selector +- **Frame name/URL** — matches against the browser's frame tree + ## Dialogs ```bash @@ -245,6 +273,7 @@ agent-browser console --clear # Clear console agent-browser errors # View page errors agent-browser errors --clear # Clear errors agent-browser highlight @e1 # Highlight element +agent-browser inspect # Open Chrome DevTools for this session agent-browser trace start # Start recording trace agent-browser trace stop trace.zip # Stop and save trace agent-browser profiler start # Start Chrome DevTools profiling diff --git a/plugins/agent-browser/skills/agent-browser/references/profiling.md b/plugins/agent-browser/.agents/skills/agent-browser/references/profiling.md similarity index 100% rename from plugins/agent-browser/skills/agent-browser/references/profiling.md rename to plugins/agent-browser/.agents/skills/agent-browser/references/profiling.md diff --git a/plugins/agent-browser/skills/agent-browser/references/proxy-support.md b/plugins/agent-browser/.agents/skills/agent-browser/references/proxy-support.md similarity index 100% rename from plugins/agent-browser/skills/agent-browser/references/proxy-support.md rename to plugins/agent-browser/.agents/skills/agent-browser/references/proxy-support.md diff --git a/plugins/agent-browser/skills/agent-browser/references/session-management.md b/plugins/agent-browser/.agents/skills/agent-browser/references/session-management.md similarity index 100% rename from plugins/agent-browser/skills/agent-browser/references/session-management.md rename to plugins/agent-browser/.agents/skills/agent-browser/references/session-management.md diff --git a/plugins/agent-browser/skills/agent-browser/references/snapshot-refs.md b/plugins/agent-browser/.agents/skills/agent-browser/references/snapshot-refs.md similarity index 80% rename from plugins/agent-browser/skills/agent-browser/references/snapshot-refs.md rename to plugins/agent-browser/.agents/skills/agent-browser/references/snapshot-refs.md index c5868d5..3cc0fea 100644 --- a/plugins/agent-browser/skills/agent-browser/references/snapshot-refs.md +++ b/plugins/agent-browser/.agents/skills/agent-browser/references/snapshot-refs.md @@ -162,6 +162,31 @@ agent-browser snapshot @e9 @e10 [radio] selected # Selected radio ``` +## Iframes + +Snapshots automatically detect and inline iframe content. When the main-frame snapshot runs, each `Iframe` node is resolved and its child accessibility tree is included directly beneath it in the output. Refs assigned to elements inside iframes carry frame context, so interactions like `click`, `fill`, and `type` work without manually switching frames. + +```bash +agent-browser snapshot -i +# @e1 [heading] "Checkout" +# @e2 [Iframe] "payment-frame" +# @e3 [input] "Card number" +# @e4 [input] "Expiry" +# @e5 [button] "Pay" +# @e6 [button] "Cancel" + +# Interact with iframe elements directly using their refs +agent-browser fill @e3 "4111111111111111" +agent-browser fill @e4 "12/28" +agent-browser click @e5 +``` + +**Key details:** +- Only one level of iframe nesting is expanded (iframes within iframes are not recursed) +- Cross-origin iframes that block accessibility tree access are silently skipped +- Empty iframes or iframes with no interactive content are omitted from the output +- To scope a snapshot to a single iframe, use `frame @ref` then `snapshot -i` + ## Troubleshooting ### "Ref not found" Error diff --git a/plugins/agent-browser/skills/agent-browser/references/video-recording.md b/plugins/agent-browser/.agents/skills/agent-browser/references/video-recording.md similarity index 100% rename from plugins/agent-browser/skills/agent-browser/references/video-recording.md rename to plugins/agent-browser/.agents/skills/agent-browser/references/video-recording.md diff --git a/plugins/agent-browser/skills/agent-browser/templates/authenticated-session.sh b/plugins/agent-browser/.agents/skills/agent-browser/templates/authenticated-session.sh similarity index 100% rename from plugins/agent-browser/skills/agent-browser/templates/authenticated-session.sh rename to plugins/agent-browser/.agents/skills/agent-browser/templates/authenticated-session.sh diff --git a/plugins/agent-browser/skills/agent-browser/templates/capture-workflow.sh b/plugins/agent-browser/.agents/skills/agent-browser/templates/capture-workflow.sh similarity index 100% rename from plugins/agent-browser/skills/agent-browser/templates/capture-workflow.sh rename to plugins/agent-browser/.agents/skills/agent-browser/templates/capture-workflow.sh diff --git a/plugins/agent-browser/skills/agent-browser/templates/form-automation.sh b/plugins/agent-browser/.agents/skills/agent-browser/templates/form-automation.sh similarity index 100% rename from plugins/agent-browser/skills/agent-browser/templates/form-automation.sh rename to plugins/agent-browser/.agents/skills/agent-browser/templates/form-automation.sh diff --git a/plugins/agent-browser/skills/dogfood/SKILL.md b/plugins/agent-browser/.agents/skills/dogfood/SKILL.md similarity index 95% rename from plugins/agent-browser/skills/dogfood/SKILL.md rename to plugins/agent-browser/.agents/skills/dogfood/SKILL.md index be25ce5..dcd7d4d 100644 --- a/plugins/agent-browser/skills/dogfood/SKILL.md +++ b/plugins/agent-browser/.agents/skills/dogfood/SKILL.md @@ -190,9 +190,13 @@ agent-browser --session {SESSION} close ## Guidance - **Repro is everything.** Every issue needs proof -- but match the evidence to the issue. Interactive bugs need video and step-by-step screenshots. Static bugs (typos, placeholder text, visual glitches visible on load) only need a single annotated screenshot. +- **Verify reproducibility before collecting evidence.** Before recording video or taking screenshots, verify the issue is reproducible with at least one retry. If it can't be reproduced consistently, it's not a valid issue. - **Don't record video for static issues.** A typo or clipped text doesn't benefit from a video. Save video for issues that involve user interaction, timing, or state changes. - **For interactive issues, screenshot each step.** Capture the before, the action, and the after -- so someone can see the full sequence. - **Write repro steps that map to screenshots.** Each numbered step in the report should reference its corresponding screenshot. A reader should be able to follow the steps visually without touching a browser. +- **Use the right snapshot command.** + - `snapshot -i` — for finding clickable/fillable elements (buttons, inputs, links) + - `snapshot` (no flag) — for reading page content (text, headings, data lists) - **Be thorough but use judgment.** You are not following a test script -- you are exploring like a real user would. If something feels off, investigate. - **Write findings incrementally.** Append each issue to the report as you discover it. If the session is interrupted, findings are preserved. Never batch all issues for the end. - **Never delete output files.** Do not `rm` screenshots, videos, or the report mid-session. Do not close the session and restart. Work forward, not backward. diff --git a/plugins/agent-browser/skills/dogfood/references/issue-taxonomy.md b/plugins/agent-browser/.agents/skills/dogfood/references/issue-taxonomy.md similarity index 100% rename from plugins/agent-browser/skills/dogfood/references/issue-taxonomy.md rename to plugins/agent-browser/.agents/skills/dogfood/references/issue-taxonomy.md diff --git a/plugins/agent-browser/skills/dogfood/templates/dogfood-report-template.md b/plugins/agent-browser/.agents/skills/dogfood/templates/dogfood-report-template.md similarity index 100% rename from plugins/agent-browser/skills/dogfood/templates/dogfood-report-template.md rename to plugins/agent-browser/.agents/skills/dogfood/templates/dogfood-report-template.md diff --git a/plugins/agent-browser/skills/electron/SKILL.md b/plugins/agent-browser/.agents/skills/electron/SKILL.md similarity index 88% rename from plugins/agent-browser/skills/electron/SKILL.md rename to plugins/agent-browser/.agents/skills/electron/SKILL.md index 8de5718..e4bf00e 100644 --- a/plugins/agent-browser/skills/electron/SKILL.md +++ b/plugins/agent-browser/.agents/skills/electron/SKILL.md @@ -102,6 +102,31 @@ agent-browser tab 2 agent-browser tab --url "*settings*" ``` +## Webview Support + +Electron `` elements are automatically discovered and can be controlled like regular pages. Webviews appear as separate targets in the tab list with `type: "webview"`: + +```bash +# Connect to running Electron app +agent-browser connect 9222 + +# List targets -- webviews appear alongside pages +agent-browser tab +# Example output: +# 0: [page] Slack - Main Window https://app.slack.com/ +# 1: [webview] Embedded Content https://example.com/widget + +# Switch to a webview +agent-browser tab 1 + +# Interact with the webview normally +agent-browser snapshot -i +agent-browser click @e3 +agent-browser screenshot webview.png +``` + +**Note:** Webview support works via raw CDP connection. + ## Common Patterns ### Inspect and Navigate an App @@ -163,7 +188,7 @@ agent-browser --session vscode snapshot -i ## Color Scheme -Playwright overrides the color scheme to `light` by default when connecting via CDP. To preserve dark mode: +The default color scheme when connecting via CDP may be `light`. To preserve dark mode: ```bash agent-browser connect 9222 @@ -192,7 +217,6 @@ AGENT_BROWSER_COLOR_SCHEME=dark agent-browser connect 9222 ### Elements not appearing in snapshot - The app may use multiple webviews. Use `agent-browser tab` to list targets and switch to the right one -- Use `agent-browser snapshot -i -C` to include cursor-interactive elements (divs with onclick handlers) ### Cannot type in input fields diff --git a/plugins/agent-browser/skills/slack/SKILL.md b/plugins/agent-browser/.agents/skills/slack/SKILL.md similarity index 96% rename from plugins/agent-browser/skills/slack/SKILL.md rename to plugins/agent-browser/.agents/skills/slack/SKILL.md index a71c9d7..f64eeb4 100644 --- a/plugins/agent-browser/skills/slack/SKILL.md +++ b/plugins/agent-browser/.agents/skills/slack/SKILL.md @@ -235,15 +235,6 @@ agent-browser console agent-browser errors ``` -### View raw HTML of an element - -```bash -# Snapshot shows the accessibility tree. If an element isn't there, -# it may not be interactive (e.g., div instead of button) -# Use snapshot -i -C to include cursor-interactive divs -agent-browser snapshot -i -C -``` - ### Get current page state ```bash diff --git a/plugins/agent-browser/skills/slack/references/slack-tasks.md b/plugins/agent-browser/.agents/skills/slack/references/slack-tasks.md similarity index 97% rename from plugins/agent-browser/skills/slack/references/slack-tasks.md rename to plugins/agent-browser/.agents/skills/slack/references/slack-tasks.md index afd05c4..c916173 100644 --- a/plugins/agent-browser/skills/slack/references/slack-tasks.md +++ b/plugins/agent-browser/.agents/skills/slack/references/slack-tasks.md @@ -334,19 +334,13 @@ If you can't find an element: agent-browser snapshot -i ``` -3. **Try snapshot with extended range** - ```bash - # Include cursor-interactive elements (divs with onclick handlers) - agent-browser snapshot -i -C - ``` - -4. **Check current URL** +3. **Check current URL** ```bash agent-browser get url # Verify you're in the right section ``` -5. **Wait for page to load** +4. **Wait for page to load** ```bash agent-browser wait --load networkidle agent-browser wait 1000 diff --git a/plugins/agent-browser/skills/slack/templates/slack-report-template.md b/plugins/agent-browser/.agents/skills/slack/templates/slack-report-template.md similarity index 100% rename from plugins/agent-browser/skills/slack/templates/slack-report-template.md rename to plugins/agent-browser/.agents/skills/slack/templates/slack-report-template.md diff --git a/plugins/agent-browser/.claude-plugin/plugin.json b/plugins/agent-browser/.claude-plugin/plugin.json index f1c877c..59725e2 100644 --- a/plugins/agent-browser/.claude-plugin/plugin.json +++ b/plugins/agent-browser/.claude-plugin/plugin.json @@ -13,5 +13,6 @@ "browser", "automation", "agents" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/agent-browser/skills-lock.json b/plugins/agent-browser/skills-lock.json new file mode 100644 index 0000000..ffdd85d --- /dev/null +++ b/plugins/agent-browser/skills-lock.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "skills": { + "agent-browser": { + "source": "vercel-labs/agent-browser", + "sourceType": "github", + "computedHash": "34bde65aabea7d757dffb84f68e9f25bc79a12b77042511515b9c820a1d107f8" + }, + "dogfood": { + "source": "vercel-labs/agent-browser", + "sourceType": "github", + "computedHash": "055e73cddeec68e7eb75eab0c3f8490415384f72e98ac05405821427ed0e74b1" + }, + "electron": { + "source": "vercel-labs/agent-browser", + "sourceType": "github", + "computedHash": "9c6ee7f028f409be8ba695dd9a6493c7de9a3802ee538ee905baaceea419aba9" + }, + "slack": { + "source": "vercel-labs/agent-browser", + "sourceType": "github", + "computedHash": "187f9b0c41e418377a16ccb535e5aa04d55c482dae9a82da41755c6f5ee268f6" + } + } +} diff --git a/plugins/agent-browser/skills/agent-browser/LICENSE.md b/plugins/agent-browser/skills/agent-browser/LICENSE.md deleted file mode 100644 index 8226d36..0000000 --- a/plugins/agent-browser/skills/agent-browser/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright 2025 Vercel Inc. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/plugins/agent-browser/skills/agent-browser/SYNC.md b/plugins/agent-browser/skills/agent-browser/SYNC.md deleted file mode 100644 index 305a267..0000000 --- a/plugins/agent-browser/skills/agent-browser/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/agent-browser/skills/agent-browser` -- **Git SHA:** `8f6ad817f10b151b647234882f2a0fef6d2b43d1` -- **Synced:** 2026-03-05 diff --git a/plugins/agent-browser/skills/dogfood/LICENSE.md b/plugins/agent-browser/skills/dogfood/LICENSE.md deleted file mode 100644 index 8226d36..0000000 --- a/plugins/agent-browser/skills/dogfood/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright 2025 Vercel Inc. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/plugins/agent-browser/skills/dogfood/SYNC.md b/plugins/agent-browser/skills/dogfood/SYNC.md deleted file mode 100644 index 6750530..0000000 --- a/plugins/agent-browser/skills/dogfood/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/agent-browser/skills/dogfood` -- **Git SHA:** `8f6ad817f10b151b647234882f2a0fef6d2b43d1` -- **Synced:** 2026-03-05 diff --git a/plugins/agent-browser/skills/electron/LICENSE.md b/plugins/agent-browser/skills/electron/LICENSE.md deleted file mode 100644 index 8226d36..0000000 --- a/plugins/agent-browser/skills/electron/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright 2025 Vercel Inc. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/plugins/agent-browser/skills/electron/SYNC.md b/plugins/agent-browser/skills/electron/SYNC.md deleted file mode 100644 index 3b09cfb..0000000 --- a/plugins/agent-browser/skills/electron/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/agent-browser/skills/electron` -- **Git SHA:** `8f6ad817f10b151b647234882f2a0fef6d2b43d1` -- **Synced:** 2026-03-05 diff --git a/plugins/agent-browser/skills/slack/LICENSE.md b/plugins/agent-browser/skills/slack/LICENSE.md deleted file mode 100644 index 8226d36..0000000 --- a/plugins/agent-browser/skills/slack/LICENSE.md +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright 2025 Vercel Inc. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/plugins/agent-browser/skills/slack/SYNC.md b/plugins/agent-browser/skills/slack/SYNC.md deleted file mode 100644 index 6d61013..0000000 --- a/plugins/agent-browser/skills/slack/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/agent-browser/skills/slack` -- **Git SHA:** `8f6ad817f10b151b647234882f2a0fef6d2b43d1` -- **Synced:** 2026-03-05 diff --git a/plugins/ai-sdk/skills/use-ai-sdk/SKILL.md b/plugins/ai-sdk/.agents/skills/ai-sdk/SKILL.md similarity index 100% rename from plugins/ai-sdk/skills/use-ai-sdk/SKILL.md rename to plugins/ai-sdk/.agents/skills/ai-sdk/SKILL.md diff --git a/plugins/ai-sdk/.agents/skills/ai-sdk/ai-sdk b/plugins/ai-sdk/.agents/skills/ai-sdk/ai-sdk new file mode 120000 index 0000000..56952b9 --- /dev/null +++ b/plugins/ai-sdk/.agents/skills/ai-sdk/ai-sdk @@ -0,0 +1 @@ +../.agents/skills/ai-sdk \ No newline at end of file diff --git a/plugins/ai-sdk/skills/use-ai-sdk/references/ai-gateway.md b/plugins/ai-sdk/.agents/skills/ai-sdk/references/ai-gateway.md similarity index 100% rename from plugins/ai-sdk/skills/use-ai-sdk/references/ai-gateway.md rename to plugins/ai-sdk/.agents/skills/ai-sdk/references/ai-gateway.md diff --git a/plugins/ai-sdk/skills/use-ai-sdk/references/common-errors.md b/plugins/ai-sdk/.agents/skills/ai-sdk/references/common-errors.md similarity index 100% rename from plugins/ai-sdk/skills/use-ai-sdk/references/common-errors.md rename to plugins/ai-sdk/.agents/skills/ai-sdk/references/common-errors.md diff --git a/plugins/ai-sdk/skills/use-ai-sdk/references/devtools.md b/plugins/ai-sdk/.agents/skills/ai-sdk/references/devtools.md similarity index 100% rename from plugins/ai-sdk/skills/use-ai-sdk/references/devtools.md rename to plugins/ai-sdk/.agents/skills/ai-sdk/references/devtools.md diff --git a/plugins/ai-sdk/skills/use-ai-sdk/references/type-safe-agents.md b/plugins/ai-sdk/.agents/skills/ai-sdk/references/type-safe-agents.md similarity index 100% rename from plugins/ai-sdk/skills/use-ai-sdk/references/type-safe-agents.md rename to plugins/ai-sdk/.agents/skills/ai-sdk/references/type-safe-agents.md diff --git a/plugins/ai-sdk/.claude-plugin/plugin.json b/plugins/ai-sdk/.claude-plugin/plugin.json index 45650ee..3e7f9ea 100644 --- a/plugins/ai-sdk/.claude-plugin/plugin.json +++ b/plugins/ai-sdk/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "ai", "typescript", "llm" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/ai-sdk/skills-lock.json b/plugins/ai-sdk/skills-lock.json new file mode 100644 index 0000000..0529442 --- /dev/null +++ b/plugins/ai-sdk/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "ai-sdk": { + "source": "vercel/ai", + "sourceType": "github", + "computedHash": "58ce68f628890c3925aea2b5435a649251ac182057541045c68fc19a27aaa0ec" + } + } +} diff --git a/plugins/ai-sdk/skills/use-ai-sdk/LICENSE.md b/plugins/ai-sdk/skills/use-ai-sdk/LICENSE.md deleted file mode 100644 index 6c16c29..0000000 --- a/plugins/ai-sdk/skills/use-ai-sdk/LICENSE.md +++ /dev/null @@ -1,13 +0,0 @@ -Copyright 2023 Vercel, Inc. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. \ No newline at end of file diff --git a/plugins/ai-sdk/skills/use-ai-sdk/SYNC.md b/plugins/ai-sdk/skills/use-ai-sdk/SYNC.md deleted file mode 100644 index ea31064..0000000 --- a/plugins/ai-sdk/skills/use-ai-sdk/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/ai-sdk/skills/use-ai-sdk` -- **Git SHA:** `e0bd970732ac2c5d058985be37f85f86b7b34751` -- **Synced:** 2026-03-05 diff --git a/plugins/antfu/skills/antfu/SKILL.md b/plugins/antfu/.agents/skills/antfu/SKILL.md similarity index 100% rename from plugins/antfu/skills/antfu/SKILL.md rename to plugins/antfu/.agents/skills/antfu/SKILL.md diff --git a/plugins/antfu/skills/antfu/references/antfu-eslint-config.md b/plugins/antfu/.agents/skills/antfu/references/antfu-eslint-config.md similarity index 100% rename from plugins/antfu/skills/antfu/references/antfu-eslint-config.md rename to plugins/antfu/.agents/skills/antfu/references/antfu-eslint-config.md diff --git a/plugins/antfu/skills/antfu/references/app-development.md b/plugins/antfu/.agents/skills/antfu/references/app-development.md similarity index 100% rename from plugins/antfu/skills/antfu/references/app-development.md rename to plugins/antfu/.agents/skills/antfu/references/app-development.md diff --git a/plugins/antfu/skills/antfu/references/library-development.md b/plugins/antfu/.agents/skills/antfu/references/library-development.md similarity index 100% rename from plugins/antfu/skills/antfu/references/library-development.md rename to plugins/antfu/.agents/skills/antfu/references/library-development.md diff --git a/plugins/antfu/skills/antfu/references/monorepo.md b/plugins/antfu/.agents/skills/antfu/references/monorepo.md similarity index 100% rename from plugins/antfu/skills/antfu/references/monorepo.md rename to plugins/antfu/.agents/skills/antfu/references/monorepo.md diff --git a/plugins/antfu/skills/antfu/references/setting-up.md b/plugins/antfu/.agents/skills/antfu/references/setting-up.md similarity index 100% rename from plugins/antfu/skills/antfu/references/setting-up.md rename to plugins/antfu/.agents/skills/antfu/references/setting-up.md diff --git a/plugins/antfu/.claude-plugin/plugin.json b/plugins/antfu/.claude-plugin/plugin.json index 38c99e8..37fce46 100644 --- a/plugins/antfu/.claude-plugin/plugin.json +++ b/plugins/antfu/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "conventions", "eslint", "typescript" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/antfu/skills-lock.json b/plugins/antfu/skills-lock.json new file mode 100644 index 0000000..5b9d07a --- /dev/null +++ b/plugins/antfu/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "antfu": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "6935586ef3ab02e18747a4477d396e692bc96e8f28b0d95b374ffc37fce74cda" + } + } +} diff --git a/plugins/better-auth/skills/best-practices/SKILL.md b/plugins/better-auth/.agents/skills/better-auth-best-practices/SKILL.md similarity index 100% rename from plugins/better-auth/skills/best-practices/SKILL.md rename to plugins/better-auth/.agents/skills/better-auth-best-practices/SKILL.md diff --git a/plugins/better-auth/skills/create-auth/SKILL.md b/plugins/better-auth/.agents/skills/create-auth-skill/SKILL.md similarity index 100% rename from plugins/better-auth/skills/create-auth/SKILL.md rename to plugins/better-auth/.agents/skills/create-auth-skill/SKILL.md diff --git a/plugins/better-auth/skills/emailAndPassword/SKILL.md b/plugins/better-auth/.agents/skills/email-and-password-best-practices/SKILL.md similarity index 100% rename from plugins/better-auth/skills/emailAndPassword/SKILL.md rename to plugins/better-auth/.agents/skills/email-and-password-best-practices/SKILL.md diff --git a/plugins/better-auth/skills/organization/SKILL.md b/plugins/better-auth/.agents/skills/organization-best-practices/SKILL.md similarity index 100% rename from plugins/better-auth/skills/organization/SKILL.md rename to plugins/better-auth/.agents/skills/organization-best-practices/SKILL.md diff --git a/plugins/better-auth/skills/twoFactor/SKILL.md b/plugins/better-auth/.agents/skills/two-factor-authentication-best-practices/SKILL.md similarity index 100% rename from plugins/better-auth/skills/twoFactor/SKILL.md rename to plugins/better-auth/.agents/skills/two-factor-authentication-best-practices/SKILL.md diff --git a/plugins/better-auth/.claude-plugin/plugin.json b/plugins/better-auth/.claude-plugin/plugin.json index 2a61e4b..dcd6c56 100644 --- a/plugins/better-auth/.claude-plugin/plugin.json +++ b/plugins/better-auth/.claude-plugin/plugin.json @@ -13,5 +13,6 @@ "authentication", "auth", "typescript" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/better-auth/skills-lock.json b/plugins/better-auth/skills-lock.json new file mode 100644 index 0000000..38d57f7 --- /dev/null +++ b/plugins/better-auth/skills-lock.json @@ -0,0 +1,30 @@ +{ + "version": 1, + "skills": { + "better-auth-best-practices": { + "source": "better-auth/skills", + "sourceType": "github", + "computedHash": "a4c830509e85557b59339d8d93a4e243e9e59c686e7678854d39230e12c2a6dc" + }, + "create-auth-skill": { + "source": "better-auth/skills", + "sourceType": "github", + "computedHash": "31c027d02dbf1faa37f58191f574b9443143042fb2b684fe32df53ab0270487c" + }, + "email-and-password-best-practices": { + "source": "better-auth/skills", + "sourceType": "github", + "computedHash": "747d7f73bd9e2ec5317b8ef88dc70f97df716d00e3d02de4051feebaa48b062d" + }, + "organization-best-practices": { + "source": "better-auth/skills", + "sourceType": "github", + "computedHash": "79a5a85b43d10e9fe37582b3506b051a33a991817b938f349099baa5ddba21aa" + }, + "two-factor-authentication-best-practices": { + "source": "better-auth/skills", + "sourceType": "github", + "computedHash": "7e297aaf887e11fdc03e52bdbf44974e161e8f7c393170ced7dc66cace4f6d46" + } + } +} diff --git a/plugins/better-auth/skills/best-practices/SYNC.md b/plugins/better-auth/skills/best-practices/SYNC.md deleted file mode 100644 index 2ac4752..0000000 --- a/plugins/better-auth/skills/best-practices/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/better-auth/better-auth/best-practices` -- **Git SHA:** `6a1636950a1d7fc53602639ce7505a4a5d39c797` -- **Synced:** 2026-03-05 diff --git a/plugins/better-auth/skills/create-auth/SYNC.md b/plugins/better-auth/skills/create-auth/SYNC.md deleted file mode 100644 index 47e0d85..0000000 --- a/plugins/better-auth/skills/create-auth/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/better-auth/better-auth/create-auth` -- **Git SHA:** `6a1636950a1d7fc53602639ce7505a4a5d39c797` -- **Synced:** 2026-03-05 diff --git a/plugins/better-auth/skills/emailAndPassword/SYNC.md b/plugins/better-auth/skills/emailAndPassword/SYNC.md deleted file mode 100644 index 2b0b7ff..0000000 --- a/plugins/better-auth/skills/emailAndPassword/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/better-auth/better-auth/emailAndPassword` -- **Git SHA:** `6a1636950a1d7fc53602639ce7505a4a5d39c797` -- **Synced:** 2026-03-05 diff --git a/plugins/better-auth/skills/organization/SYNC.md b/plugins/better-auth/skills/organization/SYNC.md deleted file mode 100644 index b41a737..0000000 --- a/plugins/better-auth/skills/organization/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/better-auth/better-auth/organization` -- **Git SHA:** `6a1636950a1d7fc53602639ce7505a4a5d39c797` -- **Synced:** 2026-03-05 diff --git a/plugins/better-auth/skills/twoFactor/SYNC.md b/plugins/better-auth/skills/twoFactor/SYNC.md deleted file mode 100644 index 8fae30d..0000000 --- a/plugins/better-auth/skills/twoFactor/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/better-auth/better-auth/twoFactor` -- **Git SHA:** `6a1636950a1d7fc53602639ce7505a4a5d39c797` -- **Synced:** 2026-03-05 diff --git a/plugins/mastra/skills/mastra/SKILL.md b/plugins/mastra/.agents/skills/mastra/SKILL.md similarity index 79% rename from plugins/mastra/skills/mastra/SKILL.md rename to plugins/mastra/.agents/skills/mastra/SKILL.md index b537056..786224b 100644 --- a/plugins/mastra/skills/mastra/SKILL.md +++ b/plugins/mastra/.agents/skills/mastra/SKILL.md @@ -29,9 +29,9 @@ ls node_modules/@mastra/ - **If packages exist:** Use embedded docs first (most reliable) - **If no packages:** Install first or use remote docs -## Documentation lookup guide +## Available files -### Quick Reference +### References | User Question | First Check | How To | | ----------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------- | @@ -41,7 +41,11 @@ ls node_modules/@mastra/ | "I'm getting an error..." | [`references/common-errors.md`](references/common-errors.md) | Common errors and solutions | | "Upgrade from v0.x to v1.x" | [`references/migration-guide.md`](references/migration-guide.md) | Version upgrade workflows | -### Priority order for writing code +### Scripts + +- `scripts/provider-registry.mjs`: Look up current providers and models available in the model router. Always run this before using a model to verify provider keys and model names. + +## Priority order for writing code ⚠️ Never write code without checking current docs first. @@ -55,7 +59,7 @@ ls node_modules/@mastra/ - **Why:** Matches your EXACT installed version - **Most reliable source of truth** - - **See:** [`references/embedded-docs.md`](references/embedded-docs.md) + - **More information:** [`references/embedded-docs.md`](references/embedded-docs.md) 2. **Source code second** (if packages installed) @@ -71,7 +75,7 @@ ls node_modules/@mastra/ - **Why:** Ultimate source of truth if docs are missing or unclear - **Use when:** Embedded docs don't cover your question - - **See:** [`references/embedded-docs.md`](references/embedded-docs.md) + - **More information:** [`references/embedded-docs.md`](references/embedded-docs.md) 3. **Remote docs third** (if packages not installed) @@ -83,7 +87,7 @@ ls node_modules/@mastra/ - **Why:** Latest published docs (may be ahead of installed version) - **Use when:** Packages not installed or exploring new features - - **See:** [`references/remote-docs.md`](references/remote-docs.md) + - **More information:** [`references/remote-docs.md`](references/remote-docs.md) ## Core concepts @@ -98,10 +102,22 @@ Use for: Defined processes (pipelines, approvals, ETL) ### Key components - **Tools**: Extend agent capabilities (APIs, databases, external services) -- **Memory**: Maintain context (message history, working memory, semantic recall) +- **Memory**: Maintain context (message history, working memory, semantic recall, observational memory) - **RAG**: Query external knowledge (vector stores, graph relationships) - **Storage**: Persist data (Postgres, LibSQL, MongoDB) +### Mastra Studio + +Studio provides an interactive UI for building, testing, and managing agents, workflows, and tools. It helps with debugging and improving your applications iteratively. + +Inside a Mastra project, run: + +```bash +npm run dev +``` + +Then open `http://localhost:4111` in your browser to access Mastra Studio. + ## Critical requirements ### TypeScript config @@ -120,9 +136,24 @@ Mastra requires **ES2022 modules**. CommonJS will fail. ### Model format -Always use `"provider/model-name"`: +Always use `"provider/model-name"` when defining models using Mastra's model router. + +Use the provider registry script to look up available providers and models: + +```bash +# List all available providers +node scripts/provider-registry.mjs --list + +# List all models for a specific provider (sorted newest first) +node scripts/provider-registry.mjs --provider openai +node scripts/provider-registry.mjs --provider anthropic +``` + +When the user asks to use a model or provider, **always run the script first** to verify the provider key and model name are valid. Do not guess model names from memory as they change frequently. + +Example model strings: -- `"openai/gpt-5.2"` +- `"openai/gpt-5.4"` - `"anthropic/claude-sonnet-4-5"` - `"google/gemini-2.5-pro"` diff --git a/plugins/mastra/skills/mastra/references/common-errors.md b/plugins/mastra/.agents/skills/mastra/references/common-errors.md similarity index 95% rename from plugins/mastra/skills/mastra/references/common-errors.md rename to plugins/mastra/.agents/skills/mastra/references/common-errors.md index fbaa39d..d81dc08 100644 --- a/plugins/mastra/skills/mastra/references/common-errors.md +++ b/plugins/mastra/.agents/skills/mastra/references/common-errors.md @@ -1,7 +1,17 @@ -# Common Errors and Troubleshooting +# Common errors and troubleshooting Comprehensive guide to common Mastra errors and their solutions. +## Quickstart + +In a lot of cases, debugging errors can be greatly simplified by first checking the behavior in Mastra Studio. This allows you to interactively test agents and workflows, inspect logs, and see real-time error messages. + +```bash +npm run dev +``` + +Open `http://localhost:4111` in your browser to access Mastra Studio. + ## Build and configuration errors ### "Cannot find module" or import errors @@ -472,14 +482,14 @@ Error: Invalid model format ```typescript const agent = new Agent({ - model: "openai/gpt-5.2", // ✅ Correct - // NOT: model: 'gpt-5.2' // ❌ Missing provider + model: "openai/gpt-5.4", // ✅ Correct + // NOT: model: 'gpt-5.4' // ❌ Missing provider }); ``` **Common models**: -- OpenAI: `openai/gpt-5.2`, `openai/gpt-5-mini` +- OpenAI: `openai/gpt-5.4`, `openai/gpt-5-mini` - Anthropic: `anthropic/claude-sonnet-4-5`, `anthropic/claude-haiku-4-5`, `anthropic/claude-opus-4-6` - Google: `google/gemini-2.5-pro`, `google/gemini-2.5-flash` @@ -504,14 +514,6 @@ const mastra = new Mastra({ }); ``` -### Test in Studio - -```bash -npm run dev -# Open http://localhost:4111 -# Test agents and workflows interactively -``` - ### Check package versions ```bash diff --git a/plugins/mastra/skills/mastra/references/create-mastra.md b/plugins/mastra/.agents/skills/mastra/references/create-mastra.md similarity index 98% rename from plugins/mastra/skills/mastra/references/create-mastra.md rename to plugins/mastra/.agents/skills/mastra/references/create-mastra.md index 460ad07..a4ee7d9 100644 --- a/plugins/mastra/skills/mastra/references/create-mastra.md +++ b/plugins/mastra/.agents/skills/mastra/references/create-mastra.md @@ -4,7 +4,7 @@ Complete guide for creating new Mastra projects. Includes both quickstart CLI me **Official documentation: [mastra.ai/docs](https://mastra.ai/docs)** -## Getting Started +## Get started Ask: **"How would you like to create your Mastra project?"** @@ -168,7 +168,7 @@ export const weatherAgent = new Agent({ **Note:** Model format is `"provider/model-name"`. Examples: - `"google/gemini-2.5-pro"` -- `"openai/gpt-5.2"` +- `"openai/gpt-5.4"` - `"anthropic/claude-sonnet-4-5"` ### Step 8: Create mastra entry point @@ -184,7 +184,9 @@ export const mastra = new Mastra({ }); ``` -### Step 9: Launch development server +### Step 9: Launch Mastra Studio + +Launch the development server: ```bash npm run dev diff --git a/plugins/mastra/skills/mastra/references/embedded-docs.md b/plugins/mastra/.agents/skills/mastra/references/embedded-docs.md similarity index 95% rename from plugins/mastra/skills/mastra/references/embedded-docs.md rename to plugins/mastra/.agents/skills/mastra/references/embedded-docs.md index c2e515b..64e58dc 100644 --- a/plugins/mastra/skills/mastra/references/embedded-docs.md +++ b/plugins/mastra/.agents/skills/mastra/references/embedded-docs.md @@ -40,6 +40,10 @@ Use `grep` to find relevant docs in `references/`: grep -r "Agent" node_modules/@mastra/core/dist/docs/references ``` +### Naming convention + +Documents are typically formatted as `-.md` where category is one of: `"docs", "reference", "guides", "models"`. + ### Optional: Check source code for type definitions / additional details Look at the `SOURCE_MAP.json` to find the file path for the export: diff --git a/plugins/mastra/skills/mastra/references/migration-guide.md b/plugins/mastra/.agents/skills/mastra/references/migration-guide.md similarity index 100% rename from plugins/mastra/skills/mastra/references/migration-guide.md rename to plugins/mastra/.agents/skills/mastra/references/migration-guide.md diff --git a/plugins/mastra/skills/mastra/references/remote-docs.md b/plugins/mastra/.agents/skills/mastra/references/remote-docs.md similarity index 100% rename from plugins/mastra/skills/mastra/references/remote-docs.md rename to plugins/mastra/.agents/skills/mastra/references/remote-docs.md diff --git a/plugins/mastra/.agents/skills/mastra/scripts/provider-registry.mjs b/plugins/mastra/.agents/skills/mastra/scripts/provider-registry.mjs new file mode 100755 index 0000000..11dee37 --- /dev/null +++ b/plugins/mastra/.agents/skills/mastra/scripts/provider-registry.mjs @@ -0,0 +1,180 @@ +#!/usr/bin/env node + +import { readFileSync } from "node:fs"; +import { join, dirname } from "node:path"; +import { fileURLToPath } from "node:url"; + +const __dirname = dirname(fileURLToPath(import.meta.url)); + +function findRegistryPath() { + const rel = join('node_modules', '@mastra', 'core', 'dist', 'provider-registry.json'); + // Walk up from script location to find project root with node_modules + let dir = __dirname; + for (let i = 0; i < 10; i++) { + try { + const p = join(dir, rel); + readFileSync(p, "utf-8"); + return p; + } catch { + dir = dirname(dir); + } + } + // Fall back to cwd + return join(process.cwd(), rel); +} + +function loadRegistry() { + const path = findRegistryPath(); + try { + return JSON.parse(readFileSync(path, "utf-8")); + } catch (e) { + console.error(`Error: Could not load provider registry at ${path}`); + console.error(e.message); + process.exit(1); + } +} + +/** + * Extract version numbers from a model name for sorting. + * Returns an array of numeric segments, e.g. "gpt-5.4" → [5, 4]. + * Handles dot-separated (3.5), hyphen-separated (3-7), and mixed formats. + * Models without detectable version numbers return null. + */ +function extractVersion(name) { + // Use named capture to grab version-like sequences along with their context. + // We capture digits separated by dots/hyphens, plus any trailing letter for filtering. + const regex = /(\d+(?:[.\-]\d+)*)([a-zA-Z])?/g; + const candidates = []; + let match; + while ((match = regex.exec(name)) !== null) { + const numStr = match[1]; + const suffix = match[2] || ""; + candidates.push({ numStr, suffix, index: match.index }); + } + if (candidates.length === 0) return null; + + // Process candidates: filter and clean up non-version parts + const processed = []; + for (const c of candidates) { + let parts = c.numStr.split(/[.\-]/).map(Number); + // If followed by a size suffix (b/B/k/K/m/M/t/T) — e.g. "8b", "70B", "1t" — + // strip the last numeric part (param count) but keep earlier parts as the version + if (/^[bBkKmMtT]$/.test(c.suffix)) { + parts = parts.slice(0, -1); + if (parts.length === 0) continue; + } + // Strip date-like segments (>= 2020 or YYYYMMDD-style 8-digit numbers) + parts = parts.filter((p) => p < 2020); + if (parts.length === 0) continue; + // Skip very large standalone numbers (parameter counts, IDs) + if (parts.length === 1 && parts[0] >= 100 && candidates.length > 1) continue; + // Skip trailing date-like patterns (MM-DD) in the latter half of the name + if ( + parts.length === 2 && + parts[0] >= 1 && parts[0] <= 12 && + parts[1] >= 1 && parts[1] <= 31 && + c.index > name.length / 2 && + candidates.length > 1 + ) continue; + processed.push(parts); + } + + if (processed.length === 0) return null; + + // Return the first valid version candidate (versions appear early in model names) + return processed[0]; +} + +function compareVersionsDesc(a, b) { + const va = extractVersion(a); + const vb = extractVersion(b); + + // Models without versions go to the end + if (!va && !vb) return a.localeCompare(b); + if (!va) return 1; + if (!vb) return -1; + + // Compare version tuples numerically, descending + const len = Math.max(va.length, vb.length); + for (let i = 0; i < len; i++) { + const ai = va[i] ?? 0; + const bi = vb[i] ?? 0; + if (bi !== ai) return bi - ai; + } + // Same version — secondary sort by full name descending + return b.localeCompare(a); +} + +function printUsage() { + console.log(`Usage: provider-registry.mjs [options] + +Options: + --list List all available model providers + --provider List all models for a provider (sorted newest first) + --help Show this help message + +Examples: + node provider-registry.mjs --list + node provider-registry.mjs --provider openai + node provider-registry.mjs --provider anthropic`); +} + +function listProviders(registry) { + const entries = Object.entries(registry.providers) + .map(([key, val]) => ({ key, name: val.name || key })) + .sort((a, b) => a.key.localeCompare(b.key)); + + const maxKey = Math.max(...entries.map((e) => e.key.length)); + const maxName = Math.max(...entries.map((e) => e.name.length)); + + console.log(`${"PROVIDER".padEnd(maxKey)} ${"NAME".padEnd(maxName)} MODELS`); + console.log(`${"─".repeat(maxKey)} ${"─".repeat(maxName)} ${"─".repeat(6)}`); + for (const entry of entries) { + const modelCount = registry.providers[entry.key].models.length; + console.log(`${entry.key.padEnd(maxKey)} ${entry.name.padEnd(maxName)} ${modelCount}`); + } + console.log(`\n${entries.length} providers`); +} + +function listModels(registry, providerName) { + const provider = registry.providers[providerName]; + if (!provider) { + console.error(`Error: Provider "${providerName}" not found.`); + console.error(`Run with --list to see available providers.`); + process.exit(1); + } + + const models = [...provider.models].sort(compareVersionsDesc); + + console.log(`${provider.name || providerName} — ${models.length} models\n`); + for (const model of models) { + console.log(` ${model}`); + } +} + +const args = process.argv.slice(2); + +if (args.includes("--help") || args.length === 0) { + printUsage(); + process.exit(0); +} + +if (args.includes("--list")) { + listProviders(loadRegistry()); + process.exit(0); +} + +const providerIdx = args.indexOf("--provider"); +if (providerIdx !== -1) { + const name = args[providerIdx + 1]; + if (!name) { + console.error("Error: --provider requires a provider name."); + process.exit(1); + } + listModels(loadRegistry(), name); + process.exit(0); +} + +console.error("Error: Unknown arguments:", args.join(" ")); +printUsage(); +process.exit(1); diff --git a/plugins/mastra/.claude-plugin/plugin.json b/plugins/mastra/.claude-plugin/plugin.json index e7945cb..dec1c6d 100644 --- a/plugins/mastra/.claude-plugin/plugin.json +++ b/plugins/mastra/.claude-plugin/plugin.json @@ -13,5 +13,6 @@ "ai", "framework", "agent" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/mastra/skills-lock.json b/plugins/mastra/skills-lock.json new file mode 100644 index 0000000..d55ab3e --- /dev/null +++ b/plugins/mastra/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "mastra": { + "source": "mastra-ai/skills", + "sourceType": "github", + "computedHash": "b42f583342dfee7deb541f4d094f03e8748898257f1f884fa71de1fdba9f38a2" + } + } +} diff --git a/plugins/mastra/skills/mastra/LICENSE.md b/plugins/mastra/skills/mastra/LICENSE.md deleted file mode 100644 index e6ed527..0000000 --- a/plugins/mastra/skills/mastra/LICENSE.md +++ /dev/null @@ -1,15 +0,0 @@ -# Apache License 2.0 - -Copyright (c) 2026 Kepler Software, Inc. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/plugins/mastra/skills/mastra/SYNC.md b/plugins/mastra/skills/mastra/SYNC.md deleted file mode 100644 index 1b147b9..0000000 --- a/plugins/mastra/skills/mastra/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/mastra/skills/mastra` -- **Git SHA:** `5dee864fad55e0f65446e9a49ad7520b200e6db4` -- **Synced:** 2026-03-05 diff --git a/plugins/nuxt-ui/skills/nuxt-ui/SKILL.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/SKILL.md similarity index 100% rename from plugins/nuxt-ui/skills/nuxt-ui/SKILL.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/SKILL.md diff --git a/plugins/nuxt-ui/skills/nuxt-ui/references/components.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/components.md similarity index 100% rename from plugins/nuxt-ui/skills/nuxt-ui/references/components.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/references/components.md diff --git a/plugins/nuxt-ui/skills/nuxt-ui/references/composables.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/composables.md similarity index 100% rename from plugins/nuxt-ui/skills/nuxt-ui/references/composables.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/references/composables.md diff --git a/plugins/nuxt-ui/skills/nuxt-ui/references/layouts/chat.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/chat.md similarity index 55% rename from plugins/nuxt-ui/skills/nuxt-ui/references/layouts/chat.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/chat.md index aaad2c4..d6cd047 100644 --- a/plugins/nuxt-ui/skills/nuxt-ui/references/layouts/chat.md +++ b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/chat.md @@ -1,6 +1,6 @@ # Chat Layout -Build AI chat interfaces with message streams, prompts, and Vercel AI SDK integration. +Build AI chat interfaces with message streams, reasoning, tool calling, and Vercel AI SDK integration. ## Component tree @@ -13,8 +13,10 @@ UApp └── UDashboardPanel ├── #header → UDashboardNavbar ├── #body → UContainer → UChatMessages + │ ├── #content → UChatReasoning, UChatTool, MDC + │ └── #indicator (loading) └── #footer → UContainer → UChatPrompt - └── UChatPromptSubmit + └── UChatPromptSubmit ``` ## Setup @@ -35,7 +37,7 @@ export default defineEventHandler(async (event) => { const { messages } = await readBody(event) return streamText({ - model: gateway('openai/gpt-4o-mini'), + model: gateway('anthropic/claude-sonnet-4.6'), system: 'You are a helpful assistant.', messages: await convertToModelMessages(messages) }).toUIMessageStreamResponse() @@ -46,7 +48,9 @@ export default defineEventHandler(async (event) => { ```vue [pages/chat/[id].vue] @@ -75,15 +82,30 @@ function onSubmit() { @@ -114,6 +136,47 @@ Scrollable message list with auto-scroll and loading indicator. Slots: `#content` (receives `{ message }`), `#actions` (per-message), `#indicator` (loading) +### ChatMessage + +Individual message bubble with avatar, actions, and slots. + +| Prop | Description | +|---|---| +| `message` | AI SDK UIMessage object | +| `side` | `'left'` (default), `'right'` | + +### ChatReasoning + +Collapsible block for AI reasoning / thinking process. Auto-opens during streaming, auto-closes when done. + +| Prop | Description | +|---|---| +| `text` | Reasoning text (displayed inside collapsible content) | +| `streaming` | Whether reasoning is actively streaming | +| `open` | Controlled open state | + +Use `isReasoningStreaming(message, index, chat)` from `@nuxt/ui/utils/ai` to determine streaming state. + +### ChatTool + +Collapsible block for AI tool invocation status. + +| Prop | Description | +|---|---| +| `text` | Tool status text (displayed in trigger) | +| `icon` | Icon name | +| `loading` | Show loading spinner on icon | +| `streaming` | Whether tool is actively running | +| `suffix` | Secondary text after label | +| `variant` | `'inline'` (default), `'card'` | +| `chevron` | `'trailing'` (default), `'leading'` | + +Use `isToolStreaming(part)` from `@nuxt/ui/utils/ai` to determine if a tool is still running. + +### ChatShimmer + +Text shimmer animation for streaming states. Automatically used by ChatReasoning and ChatTool when streaming. + ### ChatPrompt Enhanced textarea form for prompts. Accepts all Textarea props. @@ -155,23 +218,31 @@ Layout wrapper for chat inside overlays (Modal, Slideover, Drawer). ## With model selector ```vue - - - - - + + + ``` ## Conversation sidebar diff --git a/plugins/nuxt-ui/skills/nuxt-ui/references/layouts/dashboard.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/dashboard.md similarity index 100% rename from plugins/nuxt-ui/skills/nuxt-ui/references/layouts/dashboard.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/dashboard.md diff --git a/plugins/nuxt-ui/skills/nuxt-ui/references/layouts/docs.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/docs.md similarity index 100% rename from plugins/nuxt-ui/skills/nuxt-ui/references/layouts/docs.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/docs.md diff --git a/plugins/nuxt-ui/skills/nuxt-ui/references/layouts/editor.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/editor.md similarity index 87% rename from plugins/nuxt-ui/skills/nuxt-ui/references/layouts/editor.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/editor.md index ce5cebc..aae5d75 100644 --- a/plugins/nuxt-ui/skills/nuxt-ui/references/layouts/editor.md +++ b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/editor.md @@ -48,17 +48,18 @@ const content = ref({ - - - - + + + - + + @@ -155,11 +156,11 @@ const content = ref({ type: 'doc', content: [] }) - - - - - + + + + + diff --git a/plugins/nuxt-ui/skills/nuxt-ui/references/layouts/page.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/page.md similarity index 100% rename from plugins/nuxt-ui/skills/nuxt-ui/references/layouts/page.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/references/layouts/page.md diff --git a/plugins/nuxt-ui/skills/nuxt-ui/references/theming.md b/plugins/nuxt-ui/.agents/skills/nuxt-ui/references/theming.md similarity index 100% rename from plugins/nuxt-ui/skills/nuxt-ui/references/theming.md rename to plugins/nuxt-ui/.agents/skills/nuxt-ui/references/theming.md diff --git a/plugins/nuxt-ui/.claude-plugin/plugin.json b/plugins/nuxt-ui/.claude-plugin/plugin.json index 94eb280..65f6878 100644 --- a/plugins/nuxt-ui/.claude-plugin/plugin.json +++ b/plugins/nuxt-ui/.claude-plugin/plugin.json @@ -15,6 +15,7 @@ "tailwind", "reka-ui" ], + "skills": "./.agents/skills/", "mcpServers": { "nuxt-ui": { "type": "http", diff --git a/plugins/nuxt-ui/skills-lock.json b/plugins/nuxt-ui/skills-lock.json new file mode 100644 index 0000000..bd9035f --- /dev/null +++ b/plugins/nuxt-ui/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "nuxt-ui": { + "source": "nuxt/ui", + "sourceType": "github", + "computedHash": "9b7ff4c14185b7205c04c7ef41969d7b5c01e59c85e6d64083a7f497bf90b8d7" + } + } +} diff --git a/plugins/nuxt-ui/skills/nuxt-ui/LICENSE.md b/plugins/nuxt-ui/skills/nuxt-ui/LICENSE.md deleted file mode 100644 index e4e7604..0000000 --- a/plugins/nuxt-ui/skills/nuxt-ui/LICENSE.md +++ /dev/null @@ -1,9 +0,0 @@ -MIT License - -Copyright (c) 2023 NuxtLabs - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/plugins/nuxt-ui/skills/nuxt-ui/SYNC.md b/plugins/nuxt-ui/skills/nuxt-ui/SYNC.md deleted file mode 100644 index 75e2021..0000000 --- a/plugins/nuxt-ui/skills/nuxt-ui/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/nuxt-ui/skills/nuxt-ui` -- **Git SHA:** `dd3f5c53b3e59e02e3f90eebd97fb58fb41451e3` -- **Synced:** 2026-03-05 diff --git a/plugins/nuxt/skills/nuxt/GENERATION.md b/plugins/nuxt/.agents/skills/nuxt/GENERATION.md similarity index 100% rename from plugins/nuxt/skills/nuxt/GENERATION.md rename to plugins/nuxt/.agents/skills/nuxt/GENERATION.md diff --git a/plugins/nuxt/skills/nuxt/SKILL.md b/plugins/nuxt/.agents/skills/nuxt/SKILL.md similarity index 100% rename from plugins/nuxt/skills/nuxt/SKILL.md rename to plugins/nuxt/.agents/skills/nuxt/SKILL.md diff --git a/plugins/nuxt/skills/nuxt/references/advanced-hooks.md b/plugins/nuxt/.agents/skills/nuxt/references/advanced-hooks.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/advanced-hooks.md rename to plugins/nuxt/.agents/skills/nuxt/references/advanced-hooks.md diff --git a/plugins/nuxt/skills/nuxt/references/advanced-layers.md b/plugins/nuxt/.agents/skills/nuxt/references/advanced-layers.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/advanced-layers.md rename to plugins/nuxt/.agents/skills/nuxt/references/advanced-layers.md diff --git a/plugins/nuxt/skills/nuxt/references/advanced-module-authoring.md b/plugins/nuxt/.agents/skills/nuxt/references/advanced-module-authoring.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/advanced-module-authoring.md rename to plugins/nuxt/.agents/skills/nuxt/references/advanced-module-authoring.md diff --git a/plugins/nuxt/skills/nuxt/references/best-practices-data-fetching.md b/plugins/nuxt/.agents/skills/nuxt/references/best-practices-data-fetching.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/best-practices-data-fetching.md rename to plugins/nuxt/.agents/skills/nuxt/references/best-practices-data-fetching.md diff --git a/plugins/nuxt/skills/nuxt/references/best-practices-ssr.md b/plugins/nuxt/.agents/skills/nuxt/references/best-practices-ssr.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/best-practices-ssr.md rename to plugins/nuxt/.agents/skills/nuxt/references/best-practices-ssr.md diff --git a/plugins/nuxt/skills/nuxt/references/core-cli.md b/plugins/nuxt/.agents/skills/nuxt/references/core-cli.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/core-cli.md rename to plugins/nuxt/.agents/skills/nuxt/references/core-cli.md diff --git a/plugins/nuxt/skills/nuxt/references/core-config.md b/plugins/nuxt/.agents/skills/nuxt/references/core-config.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/core-config.md rename to plugins/nuxt/.agents/skills/nuxt/references/core-config.md diff --git a/plugins/nuxt/skills/nuxt/references/core-data-fetching.md b/plugins/nuxt/.agents/skills/nuxt/references/core-data-fetching.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/core-data-fetching.md rename to plugins/nuxt/.agents/skills/nuxt/references/core-data-fetching.md diff --git a/plugins/nuxt/skills/nuxt/references/core-deployment.md b/plugins/nuxt/.agents/skills/nuxt/references/core-deployment.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/core-deployment.md rename to plugins/nuxt/.agents/skills/nuxt/references/core-deployment.md diff --git a/plugins/nuxt/skills/nuxt/references/core-directory-structure.md b/plugins/nuxt/.agents/skills/nuxt/references/core-directory-structure.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/core-directory-structure.md rename to plugins/nuxt/.agents/skills/nuxt/references/core-directory-structure.md diff --git a/plugins/nuxt/skills/nuxt/references/core-modules.md b/plugins/nuxt/.agents/skills/nuxt/references/core-modules.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/core-modules.md rename to plugins/nuxt/.agents/skills/nuxt/references/core-modules.md diff --git a/plugins/nuxt/skills/nuxt/references/core-routing.md b/plugins/nuxt/.agents/skills/nuxt/references/core-routing.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/core-routing.md rename to plugins/nuxt/.agents/skills/nuxt/references/core-routing.md diff --git a/plugins/nuxt/skills/nuxt/references/features-components-autoimport.md b/plugins/nuxt/.agents/skills/nuxt/references/features-components-autoimport.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/features-components-autoimport.md rename to plugins/nuxt/.agents/skills/nuxt/references/features-components-autoimport.md diff --git a/plugins/nuxt/skills/nuxt/references/features-components.md b/plugins/nuxt/.agents/skills/nuxt/references/features-components.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/features-components.md rename to plugins/nuxt/.agents/skills/nuxt/references/features-components.md diff --git a/plugins/nuxt/skills/nuxt/references/features-composables.md b/plugins/nuxt/.agents/skills/nuxt/references/features-composables.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/features-composables.md rename to plugins/nuxt/.agents/skills/nuxt/references/features-composables.md diff --git a/plugins/nuxt/skills/nuxt/references/features-server.md b/plugins/nuxt/.agents/skills/nuxt/references/features-server.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/features-server.md rename to plugins/nuxt/.agents/skills/nuxt/references/features-server.md diff --git a/plugins/nuxt/skills/nuxt/references/features-state.md b/plugins/nuxt/.agents/skills/nuxt/references/features-state.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/features-state.md rename to plugins/nuxt/.agents/skills/nuxt/references/features-state.md diff --git a/plugins/nuxt/skills/nuxt/references/rendering-modes.md b/plugins/nuxt/.agents/skills/nuxt/references/rendering-modes.md similarity index 100% rename from plugins/nuxt/skills/nuxt/references/rendering-modes.md rename to plugins/nuxt/.agents/skills/nuxt/references/rendering-modes.md diff --git a/plugins/nuxt/.claude-plugin/plugin.json b/plugins/nuxt/.claude-plugin/plugin.json index 6cb8c84..79e435c 100644 --- a/plugins/nuxt/.claude-plugin/plugin.json +++ b/plugins/nuxt/.claude-plugin/plugin.json @@ -15,6 +15,7 @@ "ssr", "antfu" ], + "skills": "./.agents/skills/", "mcpServers": { "nuxt-remote": { "type": "http", diff --git a/plugins/nuxt/skills-lock.json b/plugins/nuxt/skills-lock.json new file mode 100644 index 0000000..c077c8f --- /dev/null +++ b/plugins/nuxt/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "nuxt": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "9e8237ec92083db9a6f4c77d5e5bf4b1d9873d670671235bc75455ee1ca39c74" + } + } +} diff --git a/plugins/pinia/skills/pinia/GENERATION.md b/plugins/pinia/.agents/skills/pinia/GENERATION.md similarity index 100% rename from plugins/pinia/skills/pinia/GENERATION.md rename to plugins/pinia/.agents/skills/pinia/GENERATION.md diff --git a/plugins/pinia/skills/pinia/SKILL.md b/plugins/pinia/.agents/skills/pinia/SKILL.md similarity index 100% rename from plugins/pinia/skills/pinia/SKILL.md rename to plugins/pinia/.agents/skills/pinia/SKILL.md diff --git a/plugins/pinia/skills/pinia/references/advanced-hmr.md b/plugins/pinia/.agents/skills/pinia/references/advanced-hmr.md similarity index 100% rename from plugins/pinia/skills/pinia/references/advanced-hmr.md rename to plugins/pinia/.agents/skills/pinia/references/advanced-hmr.md diff --git a/plugins/pinia/skills/pinia/references/advanced-nuxt.md b/plugins/pinia/.agents/skills/pinia/references/advanced-nuxt.md similarity index 100% rename from plugins/pinia/skills/pinia/references/advanced-nuxt.md rename to plugins/pinia/.agents/skills/pinia/references/advanced-nuxt.md diff --git a/plugins/pinia/skills/pinia/references/advanced-ssr.md b/plugins/pinia/.agents/skills/pinia/references/advanced-ssr.md similarity index 100% rename from plugins/pinia/skills/pinia/references/advanced-ssr.md rename to plugins/pinia/.agents/skills/pinia/references/advanced-ssr.md diff --git a/plugins/pinia/skills/pinia/references/best-practices-outside-component.md b/plugins/pinia/.agents/skills/pinia/references/best-practices-outside-component.md similarity index 100% rename from plugins/pinia/skills/pinia/references/best-practices-outside-component.md rename to plugins/pinia/.agents/skills/pinia/references/best-practices-outside-component.md diff --git a/plugins/pinia/skills/pinia/references/best-practices-testing.md b/plugins/pinia/.agents/skills/pinia/references/best-practices-testing.md similarity index 100% rename from plugins/pinia/skills/pinia/references/best-practices-testing.md rename to plugins/pinia/.agents/skills/pinia/references/best-practices-testing.md diff --git a/plugins/pinia/skills/pinia/references/core-stores.md b/plugins/pinia/.agents/skills/pinia/references/core-stores.md similarity index 100% rename from plugins/pinia/skills/pinia/references/core-stores.md rename to plugins/pinia/.agents/skills/pinia/references/core-stores.md diff --git a/plugins/pinia/skills/pinia/references/features-composables.md b/plugins/pinia/.agents/skills/pinia/references/features-composables.md similarity index 100% rename from plugins/pinia/skills/pinia/references/features-composables.md rename to plugins/pinia/.agents/skills/pinia/references/features-composables.md diff --git a/plugins/pinia/skills/pinia/references/features-composing-stores.md b/plugins/pinia/.agents/skills/pinia/references/features-composing-stores.md similarity index 100% rename from plugins/pinia/skills/pinia/references/features-composing-stores.md rename to plugins/pinia/.agents/skills/pinia/references/features-composing-stores.md diff --git a/plugins/pinia/skills/pinia/references/features-plugins.md b/plugins/pinia/.agents/skills/pinia/references/features-plugins.md similarity index 100% rename from plugins/pinia/skills/pinia/references/features-plugins.md rename to plugins/pinia/.agents/skills/pinia/references/features-plugins.md diff --git a/plugins/pinia/.claude-plugin/plugin.json b/plugins/pinia/.claude-plugin/plugin.json index 5dbe92d..1a12a29 100644 --- a/plugins/pinia/.claude-plugin/plugin.json +++ b/plugins/pinia/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "vue", "state-management", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/pinia/skills-lock.json b/plugins/pinia/skills-lock.json new file mode 100644 index 0000000..9eeeec7 --- /dev/null +++ b/plugins/pinia/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "pinia": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "897b6b0982956f41f5cc85128ca638b625e1b3c8bc619e303cd1e7661c95b7de" + } + } +} diff --git a/plugins/pnpm/skills/pnpm/GENERATION.md b/plugins/pnpm/.agents/skills/pnpm/GENERATION.md similarity index 100% rename from plugins/pnpm/skills/pnpm/GENERATION.md rename to plugins/pnpm/.agents/skills/pnpm/GENERATION.md diff --git a/plugins/pnpm/skills/pnpm/SKILL.md b/plugins/pnpm/.agents/skills/pnpm/SKILL.md similarity index 100% rename from plugins/pnpm/skills/pnpm/SKILL.md rename to plugins/pnpm/.agents/skills/pnpm/SKILL.md diff --git a/plugins/pnpm/skills/pnpm/references/best-practices-ci.md b/plugins/pnpm/.agents/skills/pnpm/references/best-practices-ci.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/best-practices-ci.md rename to plugins/pnpm/.agents/skills/pnpm/references/best-practices-ci.md diff --git a/plugins/pnpm/skills/pnpm/references/best-practices-migration.md b/plugins/pnpm/.agents/skills/pnpm/references/best-practices-migration.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/best-practices-migration.md rename to plugins/pnpm/.agents/skills/pnpm/references/best-practices-migration.md diff --git a/plugins/pnpm/skills/pnpm/references/best-practices-performance.md b/plugins/pnpm/.agents/skills/pnpm/references/best-practices-performance.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/best-practices-performance.md rename to plugins/pnpm/.agents/skills/pnpm/references/best-practices-performance.md diff --git a/plugins/pnpm/skills/pnpm/references/core-cli.md b/plugins/pnpm/.agents/skills/pnpm/references/core-cli.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/core-cli.md rename to plugins/pnpm/.agents/skills/pnpm/references/core-cli.md diff --git a/plugins/pnpm/skills/pnpm/references/core-config.md b/plugins/pnpm/.agents/skills/pnpm/references/core-config.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/core-config.md rename to plugins/pnpm/.agents/skills/pnpm/references/core-config.md diff --git a/plugins/pnpm/skills/pnpm/references/core-store.md b/plugins/pnpm/.agents/skills/pnpm/references/core-store.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/core-store.md rename to plugins/pnpm/.agents/skills/pnpm/references/core-store.md diff --git a/plugins/pnpm/skills/pnpm/references/core-workspaces.md b/plugins/pnpm/.agents/skills/pnpm/references/core-workspaces.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/core-workspaces.md rename to plugins/pnpm/.agents/skills/pnpm/references/core-workspaces.md diff --git a/plugins/pnpm/skills/pnpm/references/features-aliases.md b/plugins/pnpm/.agents/skills/pnpm/references/features-aliases.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/features-aliases.md rename to plugins/pnpm/.agents/skills/pnpm/references/features-aliases.md diff --git a/plugins/pnpm/skills/pnpm/references/features-catalogs.md b/plugins/pnpm/.agents/skills/pnpm/references/features-catalogs.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/features-catalogs.md rename to plugins/pnpm/.agents/skills/pnpm/references/features-catalogs.md diff --git a/plugins/pnpm/skills/pnpm/references/features-hooks.md b/plugins/pnpm/.agents/skills/pnpm/references/features-hooks.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/features-hooks.md rename to plugins/pnpm/.agents/skills/pnpm/references/features-hooks.md diff --git a/plugins/pnpm/skills/pnpm/references/features-overrides.md b/plugins/pnpm/.agents/skills/pnpm/references/features-overrides.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/features-overrides.md rename to plugins/pnpm/.agents/skills/pnpm/references/features-overrides.md diff --git a/plugins/pnpm/skills/pnpm/references/features-patches.md b/plugins/pnpm/.agents/skills/pnpm/references/features-patches.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/features-patches.md rename to plugins/pnpm/.agents/skills/pnpm/references/features-patches.md diff --git a/plugins/pnpm/skills/pnpm/references/features-peer-deps.md b/plugins/pnpm/.agents/skills/pnpm/references/features-peer-deps.md similarity index 100% rename from plugins/pnpm/skills/pnpm/references/features-peer-deps.md rename to plugins/pnpm/.agents/skills/pnpm/references/features-peer-deps.md diff --git a/plugins/pnpm/.claude-plugin/plugin.json b/plugins/pnpm/.claude-plugin/plugin.json index 33a41aa..572abb3 100644 --- a/plugins/pnpm/.claude-plugin/plugin.json +++ b/plugins/pnpm/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "package-manager", "monorepo", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/pnpm/skills-lock.json b/plugins/pnpm/skills-lock.json new file mode 100644 index 0000000..1d7f4cb --- /dev/null +++ b/plugins/pnpm/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "pnpm": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "318f9fca2441a3e06fedc336e195dd18be5dbe901064e4fa71b76b40b096ab3a" + } + } +} diff --git a/plugins/prisma/skills/prisma-cli/SKILL.md b/plugins/prisma/.agents/skills/prisma-cli/SKILL.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/SKILL.md rename to plugins/prisma/.agents/skills/prisma-cli/SKILL.md diff --git a/plugins/prisma/skills/prisma-cli/references/db-execute.md b/plugins/prisma/.agents/skills/prisma-cli/references/db-execute.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/db-execute.md rename to plugins/prisma/.agents/skills/prisma-cli/references/db-execute.md diff --git a/plugins/prisma/skills/prisma-cli/references/db-pull.md b/plugins/prisma/.agents/skills/prisma-cli/references/db-pull.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/db-pull.md rename to plugins/prisma/.agents/skills/prisma-cli/references/db-pull.md diff --git a/plugins/prisma/skills/prisma-cli/references/db-push.md b/plugins/prisma/.agents/skills/prisma-cli/references/db-push.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/db-push.md rename to plugins/prisma/.agents/skills/prisma-cli/references/db-push.md diff --git a/plugins/prisma/skills/prisma-cli/references/db-seed.md b/plugins/prisma/.agents/skills/prisma-cli/references/db-seed.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/db-seed.md rename to plugins/prisma/.agents/skills/prisma-cli/references/db-seed.md diff --git a/plugins/prisma/skills/prisma-cli/references/debug.md b/plugins/prisma/.agents/skills/prisma-cli/references/debug.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/debug.md rename to plugins/prisma/.agents/skills/prisma-cli/references/debug.md diff --git a/plugins/prisma/skills/prisma-cli/references/dev.md b/plugins/prisma/.agents/skills/prisma-cli/references/dev.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/dev.md rename to plugins/prisma/.agents/skills/prisma-cli/references/dev.md diff --git a/plugins/prisma/skills/prisma-cli/references/format.md b/plugins/prisma/.agents/skills/prisma-cli/references/format.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/format.md rename to plugins/prisma/.agents/skills/prisma-cli/references/format.md diff --git a/plugins/prisma/skills/prisma-cli/references/generate.md b/plugins/prisma/.agents/skills/prisma-cli/references/generate.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/generate.md rename to plugins/prisma/.agents/skills/prisma-cli/references/generate.md diff --git a/plugins/prisma/skills/prisma-cli/references/init.md b/plugins/prisma/.agents/skills/prisma-cli/references/init.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/init.md rename to plugins/prisma/.agents/skills/prisma-cli/references/init.md diff --git a/plugins/prisma/skills/prisma-cli/references/migrate-deploy.md b/plugins/prisma/.agents/skills/prisma-cli/references/migrate-deploy.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/migrate-deploy.md rename to plugins/prisma/.agents/skills/prisma-cli/references/migrate-deploy.md diff --git a/plugins/prisma/skills/prisma-cli/references/migrate-dev.md b/plugins/prisma/.agents/skills/prisma-cli/references/migrate-dev.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/migrate-dev.md rename to plugins/prisma/.agents/skills/prisma-cli/references/migrate-dev.md diff --git a/plugins/prisma/skills/prisma-cli/references/migrate-diff.md b/plugins/prisma/.agents/skills/prisma-cli/references/migrate-diff.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/migrate-diff.md rename to plugins/prisma/.agents/skills/prisma-cli/references/migrate-diff.md diff --git a/plugins/prisma/skills/prisma-cli/references/migrate-reset.md b/plugins/prisma/.agents/skills/prisma-cli/references/migrate-reset.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/migrate-reset.md rename to plugins/prisma/.agents/skills/prisma-cli/references/migrate-reset.md diff --git a/plugins/prisma/skills/prisma-cli/references/migrate-resolve.md b/plugins/prisma/.agents/skills/prisma-cli/references/migrate-resolve.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/migrate-resolve.md rename to plugins/prisma/.agents/skills/prisma-cli/references/migrate-resolve.md diff --git a/plugins/prisma/skills/prisma-cli/references/migrate-status.md b/plugins/prisma/.agents/skills/prisma-cli/references/migrate-status.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/migrate-status.md rename to plugins/prisma/.agents/skills/prisma-cli/references/migrate-status.md diff --git a/plugins/prisma/skills/prisma-cli/references/studio.md b/plugins/prisma/.agents/skills/prisma-cli/references/studio.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/studio.md rename to plugins/prisma/.agents/skills/prisma-cli/references/studio.md diff --git a/plugins/prisma/skills/prisma-cli/references/validate.md b/plugins/prisma/.agents/skills/prisma-cli/references/validate.md similarity index 100% rename from plugins/prisma/skills/prisma-cli/references/validate.md rename to plugins/prisma/.agents/skills/prisma-cli/references/validate.md diff --git a/plugins/prisma/skills/prisma-client-api/SKILL.md b/plugins/prisma/.agents/skills/prisma-client-api/SKILL.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/SKILL.md rename to plugins/prisma/.agents/skills/prisma-client-api/SKILL.md diff --git a/plugins/prisma/skills/prisma-client-api/references/client-methods.md b/plugins/prisma/.agents/skills/prisma-client-api/references/client-methods.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/references/client-methods.md rename to plugins/prisma/.agents/skills/prisma-client-api/references/client-methods.md diff --git a/plugins/prisma/skills/prisma-client-api/references/constructor.md b/plugins/prisma/.agents/skills/prisma-client-api/references/constructor.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/references/constructor.md rename to plugins/prisma/.agents/skills/prisma-client-api/references/constructor.md diff --git a/plugins/prisma/skills/prisma-client-api/references/filters.md b/plugins/prisma/.agents/skills/prisma-client-api/references/filters.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/references/filters.md rename to plugins/prisma/.agents/skills/prisma-client-api/references/filters.md diff --git a/plugins/prisma/skills/prisma-client-api/references/model-queries.md b/plugins/prisma/.agents/skills/prisma-client-api/references/model-queries.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/references/model-queries.md rename to plugins/prisma/.agents/skills/prisma-client-api/references/model-queries.md diff --git a/plugins/prisma/skills/prisma-client-api/references/query-options.md b/plugins/prisma/.agents/skills/prisma-client-api/references/query-options.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/references/query-options.md rename to plugins/prisma/.agents/skills/prisma-client-api/references/query-options.md diff --git a/plugins/prisma/skills/prisma-client-api/references/raw-queries.md b/plugins/prisma/.agents/skills/prisma-client-api/references/raw-queries.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/references/raw-queries.md rename to plugins/prisma/.agents/skills/prisma-client-api/references/raw-queries.md diff --git a/plugins/prisma/skills/prisma-client-api/references/relations.md b/plugins/prisma/.agents/skills/prisma-client-api/references/relations.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/references/relations.md rename to plugins/prisma/.agents/skills/prisma-client-api/references/relations.md diff --git a/plugins/prisma/skills/prisma-client-api/references/transactions.md b/plugins/prisma/.agents/skills/prisma-client-api/references/transactions.md similarity index 100% rename from plugins/prisma/skills/prisma-client-api/references/transactions.md rename to plugins/prisma/.agents/skills/prisma-client-api/references/transactions.md diff --git a/plugins/prisma/skills/prisma-database-setup/SKILL.md b/plugins/prisma/.agents/skills/prisma-database-setup/SKILL.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/SKILL.md rename to plugins/prisma/.agents/skills/prisma-database-setup/SKILL.md diff --git a/plugins/prisma/skills/prisma-database-setup/references/cockroachdb.md b/plugins/prisma/.agents/skills/prisma-database-setup/references/cockroachdb.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/references/cockroachdb.md rename to plugins/prisma/.agents/skills/prisma-database-setup/references/cockroachdb.md diff --git a/plugins/prisma/skills/prisma-database-setup/references/mongodb.md b/plugins/prisma/.agents/skills/prisma-database-setup/references/mongodb.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/references/mongodb.md rename to plugins/prisma/.agents/skills/prisma-database-setup/references/mongodb.md diff --git a/plugins/prisma/skills/prisma-database-setup/references/mysql.md b/plugins/prisma/.agents/skills/prisma-database-setup/references/mysql.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/references/mysql.md rename to plugins/prisma/.agents/skills/prisma-database-setup/references/mysql.md diff --git a/plugins/prisma/skills/prisma-database-setup/references/postgresql.md b/plugins/prisma/.agents/skills/prisma-database-setup/references/postgresql.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/references/postgresql.md rename to plugins/prisma/.agents/skills/prisma-database-setup/references/postgresql.md diff --git a/plugins/prisma/skills/prisma-database-setup/references/prisma-client-setup.md b/plugins/prisma/.agents/skills/prisma-database-setup/references/prisma-client-setup.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/references/prisma-client-setup.md rename to plugins/prisma/.agents/skills/prisma-database-setup/references/prisma-client-setup.md diff --git a/plugins/prisma/skills/prisma-database-setup/references/prisma-postgres.md b/plugins/prisma/.agents/skills/prisma-database-setup/references/prisma-postgres.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/references/prisma-postgres.md rename to plugins/prisma/.agents/skills/prisma-database-setup/references/prisma-postgres.md diff --git a/plugins/prisma/skills/prisma-database-setup/references/sqlite.md b/plugins/prisma/.agents/skills/prisma-database-setup/references/sqlite.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/references/sqlite.md rename to plugins/prisma/.agents/skills/prisma-database-setup/references/sqlite.md diff --git a/plugins/prisma/skills/prisma-database-setup/references/sqlserver.md b/plugins/prisma/.agents/skills/prisma-database-setup/references/sqlserver.md similarity index 100% rename from plugins/prisma/skills/prisma-database-setup/references/sqlserver.md rename to plugins/prisma/.agents/skills/prisma-database-setup/references/sqlserver.md diff --git a/plugins/prisma/skills/prisma-driver-adapter-implementation/SKILL.md b/plugins/prisma/.agents/skills/prisma-driver-adapter-implementation/SKILL.md similarity index 100% rename from plugins/prisma/skills/prisma-driver-adapter-implementation/SKILL.md rename to plugins/prisma/.agents/skills/prisma-driver-adapter-implementation/SKILL.md diff --git a/plugins/prisma/skills/prisma-postgres/SKILL.md b/plugins/prisma/.agents/skills/prisma-postgres/SKILL.md similarity index 100% rename from plugins/prisma/skills/prisma-postgres/SKILL.md rename to plugins/prisma/.agents/skills/prisma-postgres/SKILL.md diff --git a/plugins/prisma/skills/prisma-postgres/references/console-and-connections.md b/plugins/prisma/.agents/skills/prisma-postgres/references/console-and-connections.md similarity index 100% rename from plugins/prisma/skills/prisma-postgres/references/console-and-connections.md rename to plugins/prisma/.agents/skills/prisma-postgres/references/console-and-connections.md diff --git a/plugins/prisma/skills/prisma-postgres/references/create-db-cli.md b/plugins/prisma/.agents/skills/prisma-postgres/references/create-db-cli.md similarity index 100% rename from plugins/prisma/skills/prisma-postgres/references/create-db-cli.md rename to plugins/prisma/.agents/skills/prisma-postgres/references/create-db-cli.md diff --git a/plugins/prisma/skills/prisma-postgres/references/management-api-sdk.md b/plugins/prisma/.agents/skills/prisma-postgres/references/management-api-sdk.md similarity index 100% rename from plugins/prisma/skills/prisma-postgres/references/management-api-sdk.md rename to plugins/prisma/.agents/skills/prisma-postgres/references/management-api-sdk.md diff --git a/plugins/prisma/skills/prisma-postgres/references/management-api.md b/plugins/prisma/.agents/skills/prisma-postgres/references/management-api.md similarity index 100% rename from plugins/prisma/skills/prisma-postgres/references/management-api.md rename to plugins/prisma/.agents/skills/prisma-postgres/references/management-api.md diff --git a/plugins/prisma/skills/prisma-upgrade-v7/SKILL.md b/plugins/prisma/.agents/skills/prisma-upgrade-v7/SKILL.md similarity index 100% rename from plugins/prisma/skills/prisma-upgrade-v7/SKILL.md rename to plugins/prisma/.agents/skills/prisma-upgrade-v7/SKILL.md diff --git a/plugins/prisma/skills/prisma-upgrade-v7/references/accelerate-users.md b/plugins/prisma/.agents/skills/prisma-upgrade-v7/references/accelerate-users.md similarity index 100% rename from plugins/prisma/skills/prisma-upgrade-v7/references/accelerate-users.md rename to plugins/prisma/.agents/skills/prisma-upgrade-v7/references/accelerate-users.md diff --git a/plugins/prisma/skills/prisma-upgrade-v7/references/driver-adapters.md b/plugins/prisma/.agents/skills/prisma-upgrade-v7/references/driver-adapters.md similarity index 100% rename from plugins/prisma/skills/prisma-upgrade-v7/references/driver-adapters.md rename to plugins/prisma/.agents/skills/prisma-upgrade-v7/references/driver-adapters.md diff --git a/plugins/prisma/skills/prisma-upgrade-v7/references/env-variables.md b/plugins/prisma/.agents/skills/prisma-upgrade-v7/references/env-variables.md similarity index 100% rename from plugins/prisma/skills/prisma-upgrade-v7/references/env-variables.md rename to plugins/prisma/.agents/skills/prisma-upgrade-v7/references/env-variables.md diff --git a/plugins/prisma/skills/prisma-upgrade-v7/references/esm-support.md b/plugins/prisma/.agents/skills/prisma-upgrade-v7/references/esm-support.md similarity index 100% rename from plugins/prisma/skills/prisma-upgrade-v7/references/esm-support.md rename to plugins/prisma/.agents/skills/prisma-upgrade-v7/references/esm-support.md diff --git a/plugins/prisma/skills/prisma-upgrade-v7/references/prisma-config.md b/plugins/prisma/.agents/skills/prisma-upgrade-v7/references/prisma-config.md similarity index 100% rename from plugins/prisma/skills/prisma-upgrade-v7/references/prisma-config.md rename to plugins/prisma/.agents/skills/prisma-upgrade-v7/references/prisma-config.md diff --git a/plugins/prisma/skills/prisma-upgrade-v7/references/removed-features.md b/plugins/prisma/.agents/skills/prisma-upgrade-v7/references/removed-features.md similarity index 100% rename from plugins/prisma/skills/prisma-upgrade-v7/references/removed-features.md rename to plugins/prisma/.agents/skills/prisma-upgrade-v7/references/removed-features.md diff --git a/plugins/prisma/skills/prisma-upgrade-v7/references/schema-changes.md b/plugins/prisma/.agents/skills/prisma-upgrade-v7/references/schema-changes.md similarity index 100% rename from plugins/prisma/skills/prisma-upgrade-v7/references/schema-changes.md rename to plugins/prisma/.agents/skills/prisma-upgrade-v7/references/schema-changes.md diff --git a/plugins/prisma/.claude-plugin/plugin.json b/plugins/prisma/.claude-plugin/plugin.json index d249e2f..fc81f23 100644 --- a/plugins/prisma/.claude-plugin/plugin.json +++ b/plugins/prisma/.claude-plugin/plugin.json @@ -15,6 +15,7 @@ "typescript", "migrations" ], + "skills": "./.agents/skills/", "mcpServers": { "prisma": { "command": "npx", diff --git a/plugins/prisma/skills-lock.json b/plugins/prisma/skills-lock.json new file mode 100644 index 0000000..1b5eb26 --- /dev/null +++ b/plugins/prisma/skills-lock.json @@ -0,0 +1,35 @@ +{ + "version": 1, + "skills": { + "prisma-cli": { + "source": "prisma/skills", + "sourceType": "github", + "computedHash": "500f80cfb0bebbaf7ef60645b43eb126e6489d6a1a2a592983c37a3ef8a789b5" + }, + "prisma-client-api": { + "source": "prisma/skills", + "sourceType": "github", + "computedHash": "ea94a5efcd3240e45c389bcdadd4613643245d226ffe1318c396e3b3edeb72ee" + }, + "prisma-database-setup": { + "source": "prisma/skills", + "sourceType": "github", + "computedHash": "b05e88d284c4a754d3624697c2f749e21f7da3fc1f4319b6658df318e84b0dd9" + }, + "prisma-driver-adapter-implementation": { + "source": "prisma/skills", + "sourceType": "github", + "computedHash": "866755316f6d86e743dd4ea08411fd3a9be52d34e9cf58db174d97eca56f4e8e" + }, + "prisma-postgres": { + "source": "prisma/skills", + "sourceType": "github", + "computedHash": "7cf11f4b74c616f1e154c6f00735411b4edbe46e9e968d7c420177b8fa5b1518" + }, + "prisma-upgrade-v7": { + "source": "prisma/skills", + "sourceType": "github", + "computedHash": "a3944954fcaabe06285ad866ca7ba19de0a8ab73ff988cbccd795a7694ecdcd6" + } + } +} diff --git a/plugins/prisma/skills/prisma-cli/LICENSE.md b/plugins/prisma/skills/prisma-cli/LICENSE.md deleted file mode 100644 index cff9f2c..0000000 --- a/plugins/prisma/skills/prisma-cli/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 Prisma - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/prisma/skills/prisma-cli/SYNC.md b/plugins/prisma/skills/prisma-cli/SYNC.md deleted file mode 100644 index 4cc4c8a..0000000 --- a/plugins/prisma/skills/prisma-cli/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/prisma/prisma-cli` -- **Git SHA:** `e47383cb0e1bd6feb696502cccfc39837f44f4f4` -- **Synced:** 2026-03-05 diff --git a/plugins/prisma/skills/prisma-client-api/LICENSE.md b/plugins/prisma/skills/prisma-client-api/LICENSE.md deleted file mode 100644 index cff9f2c..0000000 --- a/plugins/prisma/skills/prisma-client-api/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 Prisma - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/prisma/skills/prisma-client-api/SYNC.md b/plugins/prisma/skills/prisma-client-api/SYNC.md deleted file mode 100644 index 73590f8..0000000 --- a/plugins/prisma/skills/prisma-client-api/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/prisma/prisma-client-api` -- **Git SHA:** `e47383cb0e1bd6feb696502cccfc39837f44f4f4` -- **Synced:** 2026-03-05 diff --git a/plugins/prisma/skills/prisma-database-setup/LICENSE.md b/plugins/prisma/skills/prisma-database-setup/LICENSE.md deleted file mode 100644 index cff9f2c..0000000 --- a/plugins/prisma/skills/prisma-database-setup/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 Prisma - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/prisma/skills/prisma-database-setup/SYNC.md b/plugins/prisma/skills/prisma-database-setup/SYNC.md deleted file mode 100644 index c8ee862..0000000 --- a/plugins/prisma/skills/prisma-database-setup/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/prisma/prisma-database-setup` -- **Git SHA:** `e47383cb0e1bd6feb696502cccfc39837f44f4f4` -- **Synced:** 2026-03-05 diff --git a/plugins/prisma/skills/prisma-driver-adapter-implementation/LICENSE.md b/plugins/prisma/skills/prisma-driver-adapter-implementation/LICENSE.md deleted file mode 100644 index cff9f2c..0000000 --- a/plugins/prisma/skills/prisma-driver-adapter-implementation/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 Prisma - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/prisma/skills/prisma-driver-adapter-implementation/SYNC.md b/plugins/prisma/skills/prisma-driver-adapter-implementation/SYNC.md deleted file mode 100644 index 819d374..0000000 --- a/plugins/prisma/skills/prisma-driver-adapter-implementation/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/prisma/prisma-driver-adapter-implementation` -- **Git SHA:** `e47383cb0e1bd6feb696502cccfc39837f44f4f4` -- **Synced:** 2026-03-05 diff --git a/plugins/prisma/skills/prisma-postgres/LICENSE.md b/plugins/prisma/skills/prisma-postgres/LICENSE.md deleted file mode 100644 index cff9f2c..0000000 --- a/plugins/prisma/skills/prisma-postgres/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 Prisma - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/prisma/skills/prisma-postgres/SYNC.md b/plugins/prisma/skills/prisma-postgres/SYNC.md deleted file mode 100644 index 47fe6ad..0000000 --- a/plugins/prisma/skills/prisma-postgres/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/prisma/prisma-postgres` -- **Git SHA:** `e47383cb0e1bd6feb696502cccfc39837f44f4f4` -- **Synced:** 2026-03-05 diff --git a/plugins/prisma/skills/prisma-upgrade-v7/LICENSE.md b/plugins/prisma/skills/prisma-upgrade-v7/LICENSE.md deleted file mode 100644 index cff9f2c..0000000 --- a/plugins/prisma/skills/prisma-upgrade-v7/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 Prisma - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/prisma/skills/prisma-upgrade-v7/SYNC.md b/plugins/prisma/skills/prisma-upgrade-v7/SYNC.md deleted file mode 100644 index f395706..0000000 --- a/plugins/prisma/skills/prisma-upgrade-v7/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/prisma/prisma-upgrade-v7` -- **Git SHA:** `e47383cb0e1bd6feb696502cccfc39837f44f4f4` -- **Synced:** 2026-03-05 diff --git a/plugins/slidev/skills/slidev/README.md b/plugins/slidev/.agents/skills/slidev/README.md similarity index 100% rename from plugins/slidev/skills/slidev/README.md rename to plugins/slidev/.agents/skills/slidev/README.md diff --git a/plugins/slidev/skills/slidev/SKILL.md b/plugins/slidev/.agents/skills/slidev/SKILL.md similarity index 89% rename from plugins/slidev/skills/slidev/SKILL.md rename to plugins/slidev/.agents/skills/slidev/SKILL.md index 427b8db..35c3484 100644 --- a/plugins/slidev/skills/slidev/SKILL.md +++ b/plugins/slidev/.agents/skills/slidev/SKILL.md @@ -1,6 +1,6 @@ --- name: slidev -description: Create and present web-based slides for developers using Markdown, Vue components, code highlighting, animations, and interactive features. Use when building technical presentations, conference talks, or teaching materials. +description: Create and present web-based slidedecks for developers using Slidev with Markdown, Vue components, code highlighting, animations, and interactive features. Use when building technical presentations, conference talks, code walkthroughs, teaching materials, or developer decks. --- # Slidev - Presentation Slides for Developers @@ -9,21 +9,25 @@ Web-based slides maker built on Vite, Vue, and Markdown. ## When to Use -- Technical presentations with live code examples +- Technical presentations or slidedecks with live code examples - Syntax-highlighted code snippets with animations - Interactive demos (Monaco editor, runnable code) - Mathematical equations (LaTeX) or diagrams (Mermaid, PlantUML) - Record presentations with presenter notes - Export to PDF, PPTX, or host as SPA +- Code walkthroughs for developer talks or workshops ## Quick Start ```bash pnpm create slidev # Create project -pnpm run dev # Start dev server -pnpm run export # Export to PDF +pnpm run dev # Start dev server (opens http://localhost:3030) +pnpm run build # Build static SPA +pnpm run export # Export to PDF (requires playwright-chromium) ``` +**Verify**: After `pnpm run dev`, confirm slides load at `http://localhost:3030`. After `pnpm run export`, check the output PDF exists in the project root. + ## Basic Syntax ```md @@ -144,6 +148,8 @@ Presenter notes go here | OG image | `seoMeta.ogImage` or `og-image.png` | [build-og-image](references/build-og-image.md) | | SEO tags | `seoMeta:` | [build-seo-meta](references/build-seo-meta.md) | +**Export prerequisite**: `pnpm add -D playwright-chromium` is required for PDF/PPTX/PNG export. If export fails with a browser error, install this dependency first. + ### Editor & Tools | Feature | Usage | Reference | diff --git a/plugins/slidev/skills/slidev/references/animation-click-marker.md b/plugins/slidev/.agents/skills/slidev/references/animation-click-marker.md similarity index 100% rename from plugins/slidev/skills/slidev/references/animation-click-marker.md rename to plugins/slidev/.agents/skills/slidev/references/animation-click-marker.md diff --git a/plugins/slidev/skills/slidev/references/animation-drawing.md b/plugins/slidev/.agents/skills/slidev/references/animation-drawing.md similarity index 100% rename from plugins/slidev/skills/slidev/references/animation-drawing.md rename to plugins/slidev/.agents/skills/slidev/references/animation-drawing.md diff --git a/plugins/slidev/skills/slidev/references/animation-rough-marker.md b/plugins/slidev/.agents/skills/slidev/references/animation-rough-marker.md similarity index 100% rename from plugins/slidev/skills/slidev/references/animation-rough-marker.md rename to plugins/slidev/.agents/skills/slidev/references/animation-rough-marker.md diff --git a/plugins/slidev/skills/slidev/references/api-slide-hooks.md b/plugins/slidev/.agents/skills/slidev/references/api-slide-hooks.md similarity index 100% rename from plugins/slidev/skills/slidev/references/api-slide-hooks.md rename to plugins/slidev/.agents/skills/slidev/references/api-slide-hooks.md diff --git a/plugins/slidev/skills/slidev/references/build-og-image.md b/plugins/slidev/.agents/skills/slidev/references/build-og-image.md similarity index 100% rename from plugins/slidev/skills/slidev/references/build-og-image.md rename to plugins/slidev/.agents/skills/slidev/references/build-og-image.md diff --git a/plugins/slidev/skills/slidev/references/build-pdf.md b/plugins/slidev/.agents/skills/slidev/references/build-pdf.md similarity index 100% rename from plugins/slidev/skills/slidev/references/build-pdf.md rename to plugins/slidev/.agents/skills/slidev/references/build-pdf.md diff --git a/plugins/slidev/skills/slidev/references/build-remote-assets.md b/plugins/slidev/.agents/skills/slidev/references/build-remote-assets.md similarity index 100% rename from plugins/slidev/skills/slidev/references/build-remote-assets.md rename to plugins/slidev/.agents/skills/slidev/references/build-remote-assets.md diff --git a/plugins/slidev/skills/slidev/references/build-seo-meta.md b/plugins/slidev/.agents/skills/slidev/references/build-seo-meta.md similarity index 100% rename from plugins/slidev/skills/slidev/references/build-seo-meta.md rename to plugins/slidev/.agents/skills/slidev/references/build-seo-meta.md diff --git a/plugins/slidev/skills/slidev/references/code-groups.md b/plugins/slidev/.agents/skills/slidev/references/code-groups.md similarity index 100% rename from plugins/slidev/skills/slidev/references/code-groups.md rename to plugins/slidev/.agents/skills/slidev/references/code-groups.md diff --git a/plugins/slidev/skills/slidev/references/code-import-snippet.md b/plugins/slidev/.agents/skills/slidev/references/code-import-snippet.md similarity index 100% rename from plugins/slidev/skills/slidev/references/code-import-snippet.md rename to plugins/slidev/.agents/skills/slidev/references/code-import-snippet.md diff --git a/plugins/slidev/skills/slidev/references/code-line-highlighting.md b/plugins/slidev/.agents/skills/slidev/references/code-line-highlighting.md similarity index 100% rename from plugins/slidev/skills/slidev/references/code-line-highlighting.md rename to plugins/slidev/.agents/skills/slidev/references/code-line-highlighting.md diff --git a/plugins/slidev/skills/slidev/references/code-line-numbers.md b/plugins/slidev/.agents/skills/slidev/references/code-line-numbers.md similarity index 100% rename from plugins/slidev/skills/slidev/references/code-line-numbers.md rename to plugins/slidev/.agents/skills/slidev/references/code-line-numbers.md diff --git a/plugins/slidev/skills/slidev/references/code-magic-move.md b/plugins/slidev/.agents/skills/slidev/references/code-magic-move.md similarity index 100% rename from plugins/slidev/skills/slidev/references/code-magic-move.md rename to plugins/slidev/.agents/skills/slidev/references/code-magic-move.md diff --git a/plugins/slidev/skills/slidev/references/code-max-height.md b/plugins/slidev/.agents/skills/slidev/references/code-max-height.md similarity index 100% rename from plugins/slidev/skills/slidev/references/code-max-height.md rename to plugins/slidev/.agents/skills/slidev/references/code-max-height.md diff --git a/plugins/slidev/skills/slidev/references/code-twoslash.md b/plugins/slidev/.agents/skills/slidev/references/code-twoslash.md similarity index 100% rename from plugins/slidev/skills/slidev/references/code-twoslash.md rename to plugins/slidev/.agents/skills/slidev/references/code-twoslash.md diff --git a/plugins/slidev/skills/slidev/references/core-animations.md b/plugins/slidev/.agents/skills/slidev/references/core-animations.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-animations.md rename to plugins/slidev/.agents/skills/slidev/references/core-animations.md diff --git a/plugins/slidev/skills/slidev/references/core-cli.md b/plugins/slidev/.agents/skills/slidev/references/core-cli.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-cli.md rename to plugins/slidev/.agents/skills/slidev/references/core-cli.md diff --git a/plugins/slidev/skills/slidev/references/core-components.md b/plugins/slidev/.agents/skills/slidev/references/core-components.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-components.md rename to plugins/slidev/.agents/skills/slidev/references/core-components.md diff --git a/plugins/slidev/skills/slidev/references/core-exporting.md b/plugins/slidev/.agents/skills/slidev/references/core-exporting.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-exporting.md rename to plugins/slidev/.agents/skills/slidev/references/core-exporting.md diff --git a/plugins/slidev/skills/slidev/references/core-frontmatter.md b/plugins/slidev/.agents/skills/slidev/references/core-frontmatter.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-frontmatter.md rename to plugins/slidev/.agents/skills/slidev/references/core-frontmatter.md diff --git a/plugins/slidev/skills/slidev/references/core-global-context.md b/plugins/slidev/.agents/skills/slidev/references/core-global-context.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-global-context.md rename to plugins/slidev/.agents/skills/slidev/references/core-global-context.md diff --git a/plugins/slidev/skills/slidev/references/core-headmatter.md b/plugins/slidev/.agents/skills/slidev/references/core-headmatter.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-headmatter.md rename to plugins/slidev/.agents/skills/slidev/references/core-headmatter.md diff --git a/plugins/slidev/skills/slidev/references/core-hosting.md b/plugins/slidev/.agents/skills/slidev/references/core-hosting.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-hosting.md rename to plugins/slidev/.agents/skills/slidev/references/core-hosting.md diff --git a/plugins/slidev/skills/slidev/references/core-layouts.md b/plugins/slidev/.agents/skills/slidev/references/core-layouts.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-layouts.md rename to plugins/slidev/.agents/skills/slidev/references/core-layouts.md diff --git a/plugins/slidev/skills/slidev/references/core-syntax.md b/plugins/slidev/.agents/skills/slidev/references/core-syntax.md similarity index 100% rename from plugins/slidev/skills/slidev/references/core-syntax.md rename to plugins/slidev/.agents/skills/slidev/references/core-syntax.md diff --git a/plugins/slidev/skills/slidev/references/diagram-latex.md b/plugins/slidev/.agents/skills/slidev/references/diagram-latex.md similarity index 100% rename from plugins/slidev/skills/slidev/references/diagram-latex.md rename to plugins/slidev/.agents/skills/slidev/references/diagram-latex.md diff --git a/plugins/slidev/skills/slidev/references/diagram-mermaid.md b/plugins/slidev/.agents/skills/slidev/references/diagram-mermaid.md similarity index 100% rename from plugins/slidev/skills/slidev/references/diagram-mermaid.md rename to plugins/slidev/.agents/skills/slidev/references/diagram-mermaid.md diff --git a/plugins/slidev/skills/slidev/references/diagram-plantuml.md b/plugins/slidev/.agents/skills/slidev/references/diagram-plantuml.md similarity index 100% rename from plugins/slidev/skills/slidev/references/diagram-plantuml.md rename to plugins/slidev/.agents/skills/slidev/references/diagram-plantuml.md diff --git a/plugins/slidev/skills/slidev/references/editor-monaco-run.md b/plugins/slidev/.agents/skills/slidev/references/editor-monaco-run.md similarity index 100% rename from plugins/slidev/skills/slidev/references/editor-monaco-run.md rename to plugins/slidev/.agents/skills/slidev/references/editor-monaco-run.md diff --git a/plugins/slidev/skills/slidev/references/editor-monaco-write.md b/plugins/slidev/.agents/skills/slidev/references/editor-monaco-write.md similarity index 100% rename from plugins/slidev/skills/slidev/references/editor-monaco-write.md rename to plugins/slidev/.agents/skills/slidev/references/editor-monaco-write.md diff --git a/plugins/slidev/skills/slidev/references/editor-monaco.md b/plugins/slidev/.agents/skills/slidev/references/editor-monaco.md similarity index 100% rename from plugins/slidev/skills/slidev/references/editor-monaco.md rename to plugins/slidev/.agents/skills/slidev/references/editor-monaco.md diff --git a/plugins/slidev/skills/slidev/references/editor-prettier.md b/plugins/slidev/.agents/skills/slidev/references/editor-prettier.md similarity index 100% rename from plugins/slidev/skills/slidev/references/editor-prettier.md rename to plugins/slidev/.agents/skills/slidev/references/editor-prettier.md diff --git a/plugins/slidev/skills/slidev/references/editor-side.md b/plugins/slidev/.agents/skills/slidev/references/editor-side.md similarity index 100% rename from plugins/slidev/skills/slidev/references/editor-side.md rename to plugins/slidev/.agents/skills/slidev/references/editor-side.md diff --git a/plugins/slidev/skills/slidev/references/editor-vscode.md b/plugins/slidev/.agents/skills/slidev/references/editor-vscode.md similarity index 100% rename from plugins/slidev/skills/slidev/references/editor-vscode.md rename to plugins/slidev/.agents/skills/slidev/references/editor-vscode.md diff --git a/plugins/slidev/skills/slidev/references/layout-canvas-size.md b/plugins/slidev/.agents/skills/slidev/references/layout-canvas-size.md similarity index 100% rename from plugins/slidev/skills/slidev/references/layout-canvas-size.md rename to plugins/slidev/.agents/skills/slidev/references/layout-canvas-size.md diff --git a/plugins/slidev/skills/slidev/references/layout-draggable.md b/plugins/slidev/.agents/skills/slidev/references/layout-draggable.md similarity index 100% rename from plugins/slidev/skills/slidev/references/layout-draggable.md rename to plugins/slidev/.agents/skills/slidev/references/layout-draggable.md diff --git a/plugins/slidev/skills/slidev/references/layout-global-layers.md b/plugins/slidev/.agents/skills/slidev/references/layout-global-layers.md similarity index 100% rename from plugins/slidev/skills/slidev/references/layout-global-layers.md rename to plugins/slidev/.agents/skills/slidev/references/layout-global-layers.md diff --git a/plugins/slidev/skills/slidev/references/layout-slots.md b/plugins/slidev/.agents/skills/slidev/references/layout-slots.md similarity index 100% rename from plugins/slidev/skills/slidev/references/layout-slots.md rename to plugins/slidev/.agents/skills/slidev/references/layout-slots.md diff --git a/plugins/slidev/skills/slidev/references/layout-transform.md b/plugins/slidev/.agents/skills/slidev/references/layout-transform.md similarity index 100% rename from plugins/slidev/skills/slidev/references/layout-transform.md rename to plugins/slidev/.agents/skills/slidev/references/layout-transform.md diff --git a/plugins/slidev/skills/slidev/references/layout-zoom.md b/plugins/slidev/.agents/skills/slidev/references/layout-zoom.md similarity index 100% rename from plugins/slidev/skills/slidev/references/layout-zoom.md rename to plugins/slidev/.agents/skills/slidev/references/layout-zoom.md diff --git a/plugins/slidev/skills/slidev/references/presenter-notes-ruby.md b/plugins/slidev/.agents/skills/slidev/references/presenter-notes-ruby.md similarity index 100% rename from plugins/slidev/skills/slidev/references/presenter-notes-ruby.md rename to plugins/slidev/.agents/skills/slidev/references/presenter-notes-ruby.md diff --git a/plugins/slidev/skills/slidev/references/presenter-recording.md b/plugins/slidev/.agents/skills/slidev/references/presenter-recording.md similarity index 100% rename from plugins/slidev/skills/slidev/references/presenter-recording.md rename to plugins/slidev/.agents/skills/slidev/references/presenter-recording.md diff --git a/plugins/slidev/skills/slidev/references/presenter-remote.md b/plugins/slidev/.agents/skills/slidev/references/presenter-remote.md similarity index 100% rename from plugins/slidev/skills/slidev/references/presenter-remote.md rename to plugins/slidev/.agents/skills/slidev/references/presenter-remote.md diff --git a/plugins/slidev/skills/slidev/references/presenter-timer.md b/plugins/slidev/.agents/skills/slidev/references/presenter-timer.md similarity index 100% rename from plugins/slidev/skills/slidev/references/presenter-timer.md rename to plugins/slidev/.agents/skills/slidev/references/presenter-timer.md diff --git a/plugins/slidev/skills/slidev/references/style-direction.md b/plugins/slidev/.agents/skills/slidev/references/style-direction.md similarity index 100% rename from plugins/slidev/skills/slidev/references/style-direction.md rename to plugins/slidev/.agents/skills/slidev/references/style-direction.md diff --git a/plugins/slidev/skills/slidev/references/style-icons.md b/plugins/slidev/.agents/skills/slidev/references/style-icons.md similarity index 100% rename from plugins/slidev/skills/slidev/references/style-icons.md rename to plugins/slidev/.agents/skills/slidev/references/style-icons.md diff --git a/plugins/slidev/skills/slidev/references/style-scoped.md b/plugins/slidev/.agents/skills/slidev/references/style-scoped.md similarity index 100% rename from plugins/slidev/skills/slidev/references/style-scoped.md rename to plugins/slidev/.agents/skills/slidev/references/style-scoped.md diff --git a/plugins/slidev/skills/slidev/references/syntax-block-frontmatter.md b/plugins/slidev/.agents/skills/slidev/references/syntax-block-frontmatter.md similarity index 100% rename from plugins/slidev/skills/slidev/references/syntax-block-frontmatter.md rename to plugins/slidev/.agents/skills/slidev/references/syntax-block-frontmatter.md diff --git a/plugins/slidev/skills/slidev/references/syntax-frontmatter-merging.md b/plugins/slidev/.agents/skills/slidev/references/syntax-frontmatter-merging.md similarity index 100% rename from plugins/slidev/skills/slidev/references/syntax-frontmatter-merging.md rename to plugins/slidev/.agents/skills/slidev/references/syntax-frontmatter-merging.md diff --git a/plugins/slidev/skills/slidev/references/syntax-importing-slides.md b/plugins/slidev/.agents/skills/slidev/references/syntax-importing-slides.md similarity index 100% rename from plugins/slidev/skills/slidev/references/syntax-importing-slides.md rename to plugins/slidev/.agents/skills/slidev/references/syntax-importing-slides.md diff --git a/plugins/slidev/skills/slidev/references/syntax-mdc.md b/plugins/slidev/.agents/skills/slidev/references/syntax-mdc.md similarity index 100% rename from plugins/slidev/skills/slidev/references/syntax-mdc.md rename to plugins/slidev/.agents/skills/slidev/references/syntax-mdc.md diff --git a/plugins/slidev/skills/slidev/references/tool-eject-theme.md b/plugins/slidev/.agents/skills/slidev/references/tool-eject-theme.md similarity index 100% rename from plugins/slidev/skills/slidev/references/tool-eject-theme.md rename to plugins/slidev/.agents/skills/slidev/references/tool-eject-theme.md diff --git a/plugins/slidev/.claude-plugin/plugin.json b/plugins/slidev/.claude-plugin/plugin.json index 58fba4c..6266c15 100644 --- a/plugins/slidev/.claude-plugin/plugin.json +++ b/plugins/slidev/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "slides", "presentation", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/slidev/skills-lock.json b/plugins/slidev/skills-lock.json new file mode 100644 index 0000000..d4a6f81 --- /dev/null +++ b/plugins/slidev/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "slidev": { + "source": "slidevjs/slidev", + "sourceType": "github", + "computedHash": "22e7c5994aaafc9966a1786bdbfcf4dbfa558a3f1705ff1303c9c9df3225ed85" + } + } +} diff --git a/plugins/slidev/skills/slidev/LICENSE.md b/plugins/slidev/skills/slidev/LICENSE.md deleted file mode 100644 index 670b1b3..0000000 --- a/plugins/slidev/skills/slidev/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2020-PRESENT Anthony Fu - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/slidev/skills/slidev/SYNC.md b/plugins/slidev/skills/slidev/SYNC.md deleted file mode 100644 index 756f449..0000000 --- a/plugins/slidev/skills/slidev/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/slidev/skills/slidev` -- **Git SHA:** `c8a7b7d639ff0a26cf3de036505668263ef5a3b0` -- **Synced:** 2026-03-05 diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/AGENTS.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/AGENTS.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/AGENTS.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/AGENTS.md diff --git a/plugins/supabase/.agents/skills/supabase-postgres-best-practices/CLAUDE.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/CLAUDE.md new file mode 100644 index 0000000..a7baf44 --- /dev/null +++ b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/CLAUDE.md @@ -0,0 +1,68 @@ +# Supabase Postgres Best Practices + +## Structure + +``` +supabase-postgres-best-practices/ + SKILL.md # Main skill file - read this first + AGENTS.md # This navigation guide + CLAUDE.md # Symlink to AGENTS.md + references/ # Detailed reference files +``` + +## Usage + +1. Read `SKILL.md` for the main skill instructions +2. Browse `references/` for detailed documentation on specific topics +3. Reference files are loaded on-demand - read only what you need + +Comprehensive performance optimization guide for Postgres, maintained by Supabase. Contains rules across 8 categories, prioritized by impact to guide automated query optimization and schema design. + +## When to Apply + +Reference these guidelines when: +- Writing SQL queries or designing schemas +- Implementing indexes or query optimization +- Reviewing database performance issues +- Configuring connection pooling or scaling +- Optimizing for Postgres-specific features +- Working with Row-Level Security (RLS) + +## Rule Categories by Priority + +| Priority | Category | Impact | Prefix | +|----------|----------|--------|--------| +| 1 | Query Performance | CRITICAL | `query-` | +| 2 | Connection Management | CRITICAL | `conn-` | +| 3 | Security & RLS | CRITICAL | `security-` | +| 4 | Schema Design | HIGH | `schema-` | +| 5 | Concurrency & Locking | MEDIUM-HIGH | `lock-` | +| 6 | Data Access Patterns | MEDIUM | `data-` | +| 7 | Monitoring & Diagnostics | LOW-MEDIUM | `monitor-` | +| 8 | Advanced Features | LOW | `advanced-` | + +## How to Use + +Read individual rule files for detailed explanations and SQL examples: + +``` +references/query-missing-indexes.md +references/schema-partial-indexes.md +references/_sections.md +``` + +Each rule file contains: +- Brief explanation of why it matters +- Incorrect SQL example with explanation +- Correct SQL example with explanation +- Optional EXPLAIN output or metrics +- Additional context and references +- Supabase-specific notes (when applicable) + +## References + +- https://www.postgresql.org/docs/current/ +- https://supabase.com/docs +- https://wiki.postgresql.org/wiki/Performance_Optimization +- https://supabase.com/docs/guides/database/overview +- https://supabase.com/docs/guides/auth/row-level-security diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/README.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/README.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/README.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/README.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/SKILL.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/SKILL.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/SKILL.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/SKILL.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/_contributing.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/_contributing.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/_contributing.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/_contributing.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/_sections.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/_sections.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/_sections.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/_sections.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/_template.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/_template.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/_template.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/_template.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/conn-limits.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/conn-limits.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/conn-limits.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/conn-limits.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/conn-pooling.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/conn-pooling.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/conn-pooling.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/conn-pooling.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/data-batch-inserts.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/data-batch-inserts.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/data-batch-inserts.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/data-batch-inserts.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/data-n-plus-one.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/data-n-plus-one.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/data-n-plus-one.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/data-n-plus-one.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/data-pagination.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/data-pagination.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/data-pagination.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/data-pagination.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/data-upsert.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/data-upsert.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/data-upsert.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/data-upsert.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/lock-advisory.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/lock-advisory.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/lock-advisory.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/lock-advisory.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/lock-short-transactions.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/lock-short-transactions.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/lock-short-transactions.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/lock-short-transactions.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/lock-skip-locked.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/lock-skip-locked.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/lock-skip-locked.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/lock-skip-locked.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/query-composite-indexes.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-composite-indexes.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/query-composite-indexes.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-composite-indexes.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/query-covering-indexes.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-covering-indexes.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/query-covering-indexes.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-covering-indexes.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/query-index-types.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-index-types.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/query-index-types.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-index-types.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/query-missing-indexes.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-missing-indexes.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/query-missing-indexes.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-missing-indexes.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/query-partial-indexes.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-partial-indexes.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/query-partial-indexes.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/query-partial-indexes.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/schema-constraints.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-constraints.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/schema-constraints.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-constraints.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/schema-data-types.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-data-types.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/schema-data-types.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-data-types.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/schema-partitioning.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-partitioning.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/schema-partitioning.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-partitioning.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/schema-primary-keys.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-primary-keys.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/schema-primary-keys.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/schema-primary-keys.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/security-privileges.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/security-privileges.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/security-privileges.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/security-privileges.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/security-rls-basics.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/security-rls-basics.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/security-rls-basics.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/security-rls-basics.md diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/references/security-rls-performance.md b/plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/security-rls-performance.md similarity index 100% rename from plugins/supabase/skills/supabase-postgres-best-practices/references/security-rls-performance.md rename to plugins/supabase/.agents/skills/supabase-postgres-best-practices/references/security-rls-performance.md diff --git a/plugins/supabase/.claude-plugin/plugin.json b/plugins/supabase/.claude-plugin/plugin.json index 9a783f4..5611cfb 100644 --- a/plugins/supabase/.claude-plugin/plugin.json +++ b/plugins/supabase/.claude-plugin/plugin.json @@ -14,6 +14,7 @@ "database", "backend" ], + "skills": "./.agents/skills/", "mcpServers": { "supabase": { "type": "http", diff --git a/plugins/supabase/skills-lock.json b/plugins/supabase/skills-lock.json new file mode 100644 index 0000000..eae98e1 --- /dev/null +++ b/plugins/supabase/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "supabase-postgres-best-practices": { + "source": "supabase/agent-skills", + "sourceType": "github", + "computedHash": "9c87c315aed143ee3b34bec8117100f5035e0df09e6b23e1ecc772cff434c9ad" + } + } +} diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/CLAUDE.md b/plugins/supabase/skills/supabase-postgres-best-practices/CLAUDE.md deleted file mode 120000 index aa4ba9f..0000000 --- a/plugins/supabase/skills/supabase-postgres-best-practices/CLAUDE.md +++ /dev/null @@ -1 +0,0 @@ -/home/coder/IdeaProjects/claude-code-plugins/vendor/supabase/skills/supabase-postgres-best-practices/CLAUDE.md \ No newline at end of file diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/LICENSE.md b/plugins/supabase/skills/supabase-postgres-best-practices/LICENSE.md deleted file mode 100644 index d3c9e94..0000000 --- a/plugins/supabase/skills/supabase-postgres-best-practices/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2026 Supabase - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/supabase/skills/supabase-postgres-best-practices/SYNC.md b/plugins/supabase/skills/supabase-postgres-best-practices/SYNC.md deleted file mode 100644 index d98f19c..0000000 --- a/plugins/supabase/skills/supabase-postgres-best-practices/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/supabase/skills/supabase-postgres-best-practices` -- **Git SHA:** `760460c221d30d0db904ff28e8fa52af85672255` -- **Synced:** 2026-03-05 diff --git a/plugins/unocss/skills/unocss/GENERATION.md b/plugins/unocss/.agents/skills/unocss/GENERATION.md similarity index 100% rename from plugins/unocss/skills/unocss/GENERATION.md rename to plugins/unocss/.agents/skills/unocss/GENERATION.md diff --git a/plugins/unocss/skills/unocss/SKILL.md b/plugins/unocss/.agents/skills/unocss/SKILL.md similarity index 100% rename from plugins/unocss/skills/unocss/SKILL.md rename to plugins/unocss/.agents/skills/unocss/SKILL.md diff --git a/plugins/unocss/skills/unocss/references/core-config.md b/plugins/unocss/.agents/skills/unocss/references/core-config.md similarity index 100% rename from plugins/unocss/skills/unocss/references/core-config.md rename to plugins/unocss/.agents/skills/unocss/references/core-config.md diff --git a/plugins/unocss/skills/unocss/references/core-extracting.md b/plugins/unocss/.agents/skills/unocss/references/core-extracting.md similarity index 100% rename from plugins/unocss/skills/unocss/references/core-extracting.md rename to plugins/unocss/.agents/skills/unocss/references/core-extracting.md diff --git a/plugins/unocss/skills/unocss/references/core-layers.md b/plugins/unocss/.agents/skills/unocss/references/core-layers.md similarity index 100% rename from plugins/unocss/skills/unocss/references/core-layers.md rename to plugins/unocss/.agents/skills/unocss/references/core-layers.md diff --git a/plugins/unocss/skills/unocss/references/core-rules.md b/plugins/unocss/.agents/skills/unocss/references/core-rules.md similarity index 100% rename from plugins/unocss/skills/unocss/references/core-rules.md rename to plugins/unocss/.agents/skills/unocss/references/core-rules.md diff --git a/plugins/unocss/skills/unocss/references/core-safelist.md b/plugins/unocss/.agents/skills/unocss/references/core-safelist.md similarity index 100% rename from plugins/unocss/skills/unocss/references/core-safelist.md rename to plugins/unocss/.agents/skills/unocss/references/core-safelist.md diff --git a/plugins/unocss/skills/unocss/references/core-shortcuts.md b/plugins/unocss/.agents/skills/unocss/references/core-shortcuts.md similarity index 100% rename from plugins/unocss/skills/unocss/references/core-shortcuts.md rename to plugins/unocss/.agents/skills/unocss/references/core-shortcuts.md diff --git a/plugins/unocss/skills/unocss/references/core-theme.md b/plugins/unocss/.agents/skills/unocss/references/core-theme.md similarity index 100% rename from plugins/unocss/skills/unocss/references/core-theme.md rename to plugins/unocss/.agents/skills/unocss/references/core-theme.md diff --git a/plugins/unocss/skills/unocss/references/core-variants.md b/plugins/unocss/.agents/skills/unocss/references/core-variants.md similarity index 100% rename from plugins/unocss/skills/unocss/references/core-variants.md rename to plugins/unocss/.agents/skills/unocss/references/core-variants.md diff --git a/plugins/unocss/skills/unocss/references/integrations-nuxt.md b/plugins/unocss/.agents/skills/unocss/references/integrations-nuxt.md similarity index 100% rename from plugins/unocss/skills/unocss/references/integrations-nuxt.md rename to plugins/unocss/.agents/skills/unocss/references/integrations-nuxt.md diff --git a/plugins/unocss/skills/unocss/references/integrations-vite.md b/plugins/unocss/.agents/skills/unocss/references/integrations-vite.md similarity index 100% rename from plugins/unocss/skills/unocss/references/integrations-vite.md rename to plugins/unocss/.agents/skills/unocss/references/integrations-vite.md diff --git a/plugins/unocss/skills/unocss/references/preset-attributify.md b/plugins/unocss/.agents/skills/unocss/references/preset-attributify.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-attributify.md rename to plugins/unocss/.agents/skills/unocss/references/preset-attributify.md diff --git a/plugins/unocss/skills/unocss/references/preset-icons.md b/plugins/unocss/.agents/skills/unocss/references/preset-icons.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-icons.md rename to plugins/unocss/.agents/skills/unocss/references/preset-icons.md diff --git a/plugins/unocss/skills/unocss/references/preset-mini.md b/plugins/unocss/.agents/skills/unocss/references/preset-mini.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-mini.md rename to plugins/unocss/.agents/skills/unocss/references/preset-mini.md diff --git a/plugins/unocss/skills/unocss/references/preset-rem-to-px.md b/plugins/unocss/.agents/skills/unocss/references/preset-rem-to-px.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-rem-to-px.md rename to plugins/unocss/.agents/skills/unocss/references/preset-rem-to-px.md diff --git a/plugins/unocss/skills/unocss/references/preset-tagify.md b/plugins/unocss/.agents/skills/unocss/references/preset-tagify.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-tagify.md rename to plugins/unocss/.agents/skills/unocss/references/preset-tagify.md diff --git a/plugins/unocss/skills/unocss/references/preset-typography.md b/plugins/unocss/.agents/skills/unocss/references/preset-typography.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-typography.md rename to plugins/unocss/.agents/skills/unocss/references/preset-typography.md diff --git a/plugins/unocss/skills/unocss/references/preset-web-fonts.md b/plugins/unocss/.agents/skills/unocss/references/preset-web-fonts.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-web-fonts.md rename to plugins/unocss/.agents/skills/unocss/references/preset-web-fonts.md diff --git a/plugins/unocss/skills/unocss/references/preset-wind3.md b/plugins/unocss/.agents/skills/unocss/references/preset-wind3.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-wind3.md rename to plugins/unocss/.agents/skills/unocss/references/preset-wind3.md diff --git a/plugins/unocss/skills/unocss/references/preset-wind4.md b/plugins/unocss/.agents/skills/unocss/references/preset-wind4.md similarity index 100% rename from plugins/unocss/skills/unocss/references/preset-wind4.md rename to plugins/unocss/.agents/skills/unocss/references/preset-wind4.md diff --git a/plugins/unocss/skills/unocss/references/transformer-attributify-jsx.md b/plugins/unocss/.agents/skills/unocss/references/transformer-attributify-jsx.md similarity index 100% rename from plugins/unocss/skills/unocss/references/transformer-attributify-jsx.md rename to plugins/unocss/.agents/skills/unocss/references/transformer-attributify-jsx.md diff --git a/plugins/unocss/skills/unocss/references/transformer-compile-class.md b/plugins/unocss/.agents/skills/unocss/references/transformer-compile-class.md similarity index 100% rename from plugins/unocss/skills/unocss/references/transformer-compile-class.md rename to plugins/unocss/.agents/skills/unocss/references/transformer-compile-class.md diff --git a/plugins/unocss/skills/unocss/references/transformer-directives.md b/plugins/unocss/.agents/skills/unocss/references/transformer-directives.md similarity index 100% rename from plugins/unocss/skills/unocss/references/transformer-directives.md rename to plugins/unocss/.agents/skills/unocss/references/transformer-directives.md diff --git a/plugins/unocss/skills/unocss/references/transformer-variant-group.md b/plugins/unocss/.agents/skills/unocss/references/transformer-variant-group.md similarity index 100% rename from plugins/unocss/skills/unocss/references/transformer-variant-group.md rename to plugins/unocss/.agents/skills/unocss/references/transformer-variant-group.md diff --git a/plugins/unocss/.claude-plugin/plugin.json b/plugins/unocss/.claude-plugin/plugin.json index e24198c..ee2c861 100644 --- a/plugins/unocss/.claude-plugin/plugin.json +++ b/plugins/unocss/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "css", "atomic-css", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/unocss/skills-lock.json b/plugins/unocss/skills-lock.json new file mode 100644 index 0000000..50b36d7 --- /dev/null +++ b/plugins/unocss/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "unocss": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "4b7a9f7b89994d5aef70b9d55cb7f65d6e80cea437d5786cd33bb5cf7231c7c4" + } + } +} diff --git a/plugins/vite/skills/vite/GENERATION.md b/plugins/vite/.agents/skills/vite/GENERATION.md similarity index 100% rename from plugins/vite/skills/vite/GENERATION.md rename to plugins/vite/.agents/skills/vite/GENERATION.md diff --git a/plugins/vite/skills/vite/SKILL.md b/plugins/vite/.agents/skills/vite/SKILL.md similarity index 100% rename from plugins/vite/skills/vite/SKILL.md rename to plugins/vite/.agents/skills/vite/SKILL.md diff --git a/plugins/vite/skills/vite/references/build-and-ssr.md b/plugins/vite/.agents/skills/vite/references/build-and-ssr.md similarity index 57% rename from plugins/vite/skills/vite/references/build-and-ssr.md rename to plugins/vite/.agents/skills/vite/references/build-and-ssr.md index 757a2c7..ac46a9a 100644 --- a/plugins/vite/skills/vite/references/build-and-ssr.md +++ b/plugins/vite/.agents/skills/vite/references/build-and-ssr.md @@ -1,6 +1,6 @@ --- name: vite-build-ssr -description: Vite library mode and SSR configuration +description: Vite library mode, multi-page apps, JavaScript API, and SSR guidance --- # Build and SSR @@ -89,90 +89,16 @@ export default defineConfig({ ## SSR Development -### Middleware Mode +**Note:** Vite's SSR support is **low-level** and designed mostly for meta-framework authors, not application developers. If you need SSR for your app, use a Vite-based meta-framework instead: -Use Vite as middleware in a custom server: +- **Nuxt** (Vue) - https://nuxt.com +- **SvelteKit** (Svelte) - https://svelte.dev/docs/kit +- **SolidStart** (Solid) - https://start.solidjs.com +- **TanStack Start** (React) - https://tanstack.com/start -```ts -import express from 'express' -import { createServer as createViteServer } from 'vite' - -const app = express() - -const vite = await createViteServer({ - server: { middlewareMode: true }, - appType: 'custom', -}) - -app.use(vite.middlewares) - -app.use('*all', async (req, res, next) => { - const url = req.originalUrl - - // 1. Read and transform index.html - let template = await fs.readFile('index.html', 'utf-8') - template = await vite.transformIndexHtml(url, template) - - // 2. Load server entry - const { render } = await vite.ssrLoadModule('/src/entry-server.ts') - - // 3. Render app - const appHtml = await render(url) - - // 4. Inject into template - const html = template.replace('', appHtml) +These frameworks build on top of Vite's SSR primitives so you don't have to wire them up yourself. - res.status(200).set({ 'Content-Type': 'text/html' }).end(html) -}) - -app.listen(5173) -``` - -### SSR Build - -```json -{ - "scripts": { - "build:client": "vite build --outDir dist/client", - "build:server": "vite build --outDir dist/server --ssr src/entry-server.ts" - } -} -``` - -The `--ssr` flag: -- Externalizes dependencies by default -- Outputs for Node.js consumption - -### SSR Manifest - -Generate asset mapping for preload hints: - -```bash -vite build --outDir dist/client --ssrManifest -``` - -Creates `dist/client/.vite/ssr-manifest.json` mapping module IDs to chunks. - -### SSR Externals - -Control which deps get bundled vs externalized: - -```ts -export default defineConfig({ - ssr: { - noExternal: ['some-package'], // Bundle this dep - external: ['another-package'], // Externalize this dep - }, -}) -``` - -### Conditional Logic - -```ts -if (import.meta.env.SSR) { - // Server-only code (tree-shaken from client) -} -``` +**Need a server?** Consider [Nitro](https://nitro.build) -- think of it as "Vite for servers." Nitro provides a portable, framework-agnostic server layer with file-based API routing, auto-imports, and deployment presets for dozens of platforms (Node.js, Deno, Bun, Cloudflare Workers, Vercel, Netlify, etc.). It integrates naturally with Vite and is what powers Nuxt's server engine. See the [Nitro docs](https://nitro.build) for more details. ## JavaScript API @@ -233,6 +159,6 @@ const env = loadEnv('development', process.cwd(), '') diff --git a/plugins/vite/skills/vite/references/core-config.md b/plugins/vite/.agents/skills/vite/references/core-config.md similarity index 100% rename from plugins/vite/skills/vite/references/core-config.md rename to plugins/vite/.agents/skills/vite/references/core-config.md diff --git a/plugins/vite/skills/vite/references/core-features.md b/plugins/vite/.agents/skills/vite/references/core-features.md similarity index 100% rename from plugins/vite/skills/vite/references/core-features.md rename to plugins/vite/.agents/skills/vite/references/core-features.md diff --git a/plugins/vite/skills/vite/references/core-plugin-api.md b/plugins/vite/.agents/skills/vite/references/core-plugin-api.md similarity index 100% rename from plugins/vite/skills/vite/references/core-plugin-api.md rename to plugins/vite/.agents/skills/vite/references/core-plugin-api.md diff --git a/plugins/vite/skills/vite/references/environment-api.md b/plugins/vite/.agents/skills/vite/references/environment-api.md similarity index 100% rename from plugins/vite/skills/vite/references/environment-api.md rename to plugins/vite/.agents/skills/vite/references/environment-api.md diff --git a/plugins/vite/skills/vite/references/rolldown-migration.md b/plugins/vite/.agents/skills/vite/references/rolldown-migration.md similarity index 100% rename from plugins/vite/skills/vite/references/rolldown-migration.md rename to plugins/vite/.agents/skills/vite/references/rolldown-migration.md diff --git a/plugins/vite/.claude-plugin/plugin.json b/plugins/vite/.claude-plugin/plugin.json index c6a357c..a8eb3ce 100644 --- a/plugins/vite/.claude-plugin/plugin.json +++ b/plugins/vite/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "build-tool", "bundler", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/vite/skills-lock.json b/plugins/vite/skills-lock.json new file mode 100644 index 0000000..ce3366c --- /dev/null +++ b/plugins/vite/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "vite": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "867ff66238f3152e9c494339ad08dc432dd0df5bcf5cc7a00b61a72b580eb908" + } + } +} diff --git a/plugins/vitepress/skills/vitepress/GENERATION.md b/plugins/vitepress/.agents/skills/vitepress/GENERATION.md similarity index 100% rename from plugins/vitepress/skills/vitepress/GENERATION.md rename to plugins/vitepress/.agents/skills/vitepress/GENERATION.md diff --git a/plugins/vitepress/skills/vitepress/SKILL.md b/plugins/vitepress/.agents/skills/vitepress/SKILL.md similarity index 100% rename from plugins/vitepress/skills/vitepress/SKILL.md rename to plugins/vitepress/.agents/skills/vitepress/SKILL.md diff --git a/plugins/vitepress/skills/vitepress/references/advanced-i18n.md b/plugins/vitepress/.agents/skills/vitepress/references/advanced-i18n.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/advanced-i18n.md rename to plugins/vitepress/.agents/skills/vitepress/references/advanced-i18n.md diff --git a/plugins/vitepress/skills/vitepress/references/advanced-ssr.md b/plugins/vitepress/.agents/skills/vitepress/references/advanced-ssr.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/advanced-ssr.md rename to plugins/vitepress/.agents/skills/vitepress/references/advanced-ssr.md diff --git a/plugins/vitepress/skills/vitepress/references/core-cli.md b/plugins/vitepress/.agents/skills/vitepress/references/core-cli.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/core-cli.md rename to plugins/vitepress/.agents/skills/vitepress/references/core-cli.md diff --git a/plugins/vitepress/skills/vitepress/references/core-config.md b/plugins/vitepress/.agents/skills/vitepress/references/core-config.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/core-config.md rename to plugins/vitepress/.agents/skills/vitepress/references/core-config.md diff --git a/plugins/vitepress/skills/vitepress/references/core-markdown.md b/plugins/vitepress/.agents/skills/vitepress/references/core-markdown.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/core-markdown.md rename to plugins/vitepress/.agents/skills/vitepress/references/core-markdown.md diff --git a/plugins/vitepress/skills/vitepress/references/core-routing.md b/plugins/vitepress/.agents/skills/vitepress/references/core-routing.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/core-routing.md rename to plugins/vitepress/.agents/skills/vitepress/references/core-routing.md diff --git a/plugins/vitepress/skills/vitepress/references/features-code-blocks.md b/plugins/vitepress/.agents/skills/vitepress/references/features-code-blocks.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/features-code-blocks.md rename to plugins/vitepress/.agents/skills/vitepress/references/features-code-blocks.md diff --git a/plugins/vitepress/skills/vitepress/references/features-data-loading.md b/plugins/vitepress/.agents/skills/vitepress/references/features-data-loading.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/features-data-loading.md rename to plugins/vitepress/.agents/skills/vitepress/references/features-data-loading.md diff --git a/plugins/vitepress/skills/vitepress/references/features-dynamic-routes.md b/plugins/vitepress/.agents/skills/vitepress/references/features-dynamic-routes.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/features-dynamic-routes.md rename to plugins/vitepress/.agents/skills/vitepress/references/features-dynamic-routes.md diff --git a/plugins/vitepress/skills/vitepress/references/features-vue.md b/plugins/vitepress/.agents/skills/vitepress/references/features-vue.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/features-vue.md rename to plugins/vitepress/.agents/skills/vitepress/references/features-vue.md diff --git a/plugins/vitepress/skills/vitepress/references/recipes-deploy.md b/plugins/vitepress/.agents/skills/vitepress/references/recipes-deploy.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/recipes-deploy.md rename to plugins/vitepress/.agents/skills/vitepress/references/recipes-deploy.md diff --git a/plugins/vitepress/skills/vitepress/references/theme-config.md b/plugins/vitepress/.agents/skills/vitepress/references/theme-config.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/theme-config.md rename to plugins/vitepress/.agents/skills/vitepress/references/theme-config.md diff --git a/plugins/vitepress/skills/vitepress/references/theme-custom.md b/plugins/vitepress/.agents/skills/vitepress/references/theme-custom.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/theme-custom.md rename to plugins/vitepress/.agents/skills/vitepress/references/theme-custom.md diff --git a/plugins/vitepress/skills/vitepress/references/theme-customization.md b/plugins/vitepress/.agents/skills/vitepress/references/theme-customization.md similarity index 100% rename from plugins/vitepress/skills/vitepress/references/theme-customization.md rename to plugins/vitepress/.agents/skills/vitepress/references/theme-customization.md diff --git a/plugins/vitepress/.claude-plugin/plugin.json b/plugins/vitepress/.claude-plugin/plugin.json index 24a7f18..5883262 100644 --- a/plugins/vitepress/.claude-plugin/plugin.json +++ b/plugins/vitepress/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "documentation", "static-site", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/vitepress/skills-lock.json b/plugins/vitepress/skills-lock.json new file mode 100644 index 0000000..429ed50 --- /dev/null +++ b/plugins/vitepress/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "vitepress": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "629d8ec4bcbf7cac86c15c3ca5f173933f01729bcb6396c0d74733755a896a41" + } + } +} diff --git a/plugins/vitest/skills/vitest/GENERATION.md b/plugins/vitest/.agents/skills/vitest/GENERATION.md similarity index 100% rename from plugins/vitest/skills/vitest/GENERATION.md rename to plugins/vitest/.agents/skills/vitest/GENERATION.md diff --git a/plugins/vitest/skills/vitest/SKILL.md b/plugins/vitest/.agents/skills/vitest/SKILL.md similarity index 100% rename from plugins/vitest/skills/vitest/SKILL.md rename to plugins/vitest/.agents/skills/vitest/SKILL.md diff --git a/plugins/vitest/skills/vitest/references/advanced-environments.md b/plugins/vitest/.agents/skills/vitest/references/advanced-environments.md similarity index 100% rename from plugins/vitest/skills/vitest/references/advanced-environments.md rename to plugins/vitest/.agents/skills/vitest/references/advanced-environments.md diff --git a/plugins/vitest/skills/vitest/references/advanced-projects.md b/plugins/vitest/.agents/skills/vitest/references/advanced-projects.md similarity index 100% rename from plugins/vitest/skills/vitest/references/advanced-projects.md rename to plugins/vitest/.agents/skills/vitest/references/advanced-projects.md diff --git a/plugins/vitest/skills/vitest/references/advanced-type-testing.md b/plugins/vitest/.agents/skills/vitest/references/advanced-type-testing.md similarity index 100% rename from plugins/vitest/skills/vitest/references/advanced-type-testing.md rename to plugins/vitest/.agents/skills/vitest/references/advanced-type-testing.md diff --git a/plugins/vitest/skills/vitest/references/advanced-vi.md b/plugins/vitest/.agents/skills/vitest/references/advanced-vi.md similarity index 100% rename from plugins/vitest/skills/vitest/references/advanced-vi.md rename to plugins/vitest/.agents/skills/vitest/references/advanced-vi.md diff --git a/plugins/vitest/skills/vitest/references/core-cli.md b/plugins/vitest/.agents/skills/vitest/references/core-cli.md similarity index 100% rename from plugins/vitest/skills/vitest/references/core-cli.md rename to plugins/vitest/.agents/skills/vitest/references/core-cli.md diff --git a/plugins/vitest/skills/vitest/references/core-config.md b/plugins/vitest/.agents/skills/vitest/references/core-config.md similarity index 100% rename from plugins/vitest/skills/vitest/references/core-config.md rename to plugins/vitest/.agents/skills/vitest/references/core-config.md diff --git a/plugins/vitest/skills/vitest/references/core-describe.md b/plugins/vitest/.agents/skills/vitest/references/core-describe.md similarity index 100% rename from plugins/vitest/skills/vitest/references/core-describe.md rename to plugins/vitest/.agents/skills/vitest/references/core-describe.md diff --git a/plugins/vitest/skills/vitest/references/core-expect.md b/plugins/vitest/.agents/skills/vitest/references/core-expect.md similarity index 100% rename from plugins/vitest/skills/vitest/references/core-expect.md rename to plugins/vitest/.agents/skills/vitest/references/core-expect.md diff --git a/plugins/vitest/skills/vitest/references/core-hooks.md b/plugins/vitest/.agents/skills/vitest/references/core-hooks.md similarity index 100% rename from plugins/vitest/skills/vitest/references/core-hooks.md rename to plugins/vitest/.agents/skills/vitest/references/core-hooks.md diff --git a/plugins/vitest/skills/vitest/references/core-test-api.md b/plugins/vitest/.agents/skills/vitest/references/core-test-api.md similarity index 100% rename from plugins/vitest/skills/vitest/references/core-test-api.md rename to plugins/vitest/.agents/skills/vitest/references/core-test-api.md diff --git a/plugins/vitest/skills/vitest/references/features-concurrency.md b/plugins/vitest/.agents/skills/vitest/references/features-concurrency.md similarity index 100% rename from plugins/vitest/skills/vitest/references/features-concurrency.md rename to plugins/vitest/.agents/skills/vitest/references/features-concurrency.md diff --git a/plugins/vitest/skills/vitest/references/features-context.md b/plugins/vitest/.agents/skills/vitest/references/features-context.md similarity index 100% rename from plugins/vitest/skills/vitest/references/features-context.md rename to plugins/vitest/.agents/skills/vitest/references/features-context.md diff --git a/plugins/vitest/skills/vitest/references/features-coverage.md b/plugins/vitest/.agents/skills/vitest/references/features-coverage.md similarity index 100% rename from plugins/vitest/skills/vitest/references/features-coverage.md rename to plugins/vitest/.agents/skills/vitest/references/features-coverage.md diff --git a/plugins/vitest/skills/vitest/references/features-filtering.md b/plugins/vitest/.agents/skills/vitest/references/features-filtering.md similarity index 100% rename from plugins/vitest/skills/vitest/references/features-filtering.md rename to plugins/vitest/.agents/skills/vitest/references/features-filtering.md diff --git a/plugins/vitest/skills/vitest/references/features-mocking.md b/plugins/vitest/.agents/skills/vitest/references/features-mocking.md similarity index 100% rename from plugins/vitest/skills/vitest/references/features-mocking.md rename to plugins/vitest/.agents/skills/vitest/references/features-mocking.md diff --git a/plugins/vitest/skills/vitest/references/features-snapshots.md b/plugins/vitest/.agents/skills/vitest/references/features-snapshots.md similarity index 100% rename from plugins/vitest/skills/vitest/references/features-snapshots.md rename to plugins/vitest/.agents/skills/vitest/references/features-snapshots.md diff --git a/plugins/vitest/.claude-plugin/plugin.json b/plugins/vitest/.claude-plugin/plugin.json index 2d3aa9e..eaae0a4 100644 --- a/plugins/vitest/.claude-plugin/plugin.json +++ b/plugins/vitest/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "testing", "unit-test", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/vitest/skills-lock.json b/plugins/vitest/skills-lock.json new file mode 100644 index 0000000..358fa22 --- /dev/null +++ b/plugins/vitest/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "vitest": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "669c7275f7e1379b06b2bcfa593603aead4c983b951c7e8edbc09640aa38d0a1" + } + } +} diff --git a/plugins/vue/skills/vue-best-practices/SKILL.md b/plugins/vue/.agents/skills/vue-best-practices/SKILL.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/SKILL.md rename to plugins/vue/.agents/skills/vue-best-practices/SKILL.md diff --git a/plugins/vue/skills/vue-best-practices/references/animation-class-based-technique.md b/plugins/vue/.agents/skills/vue-best-practices/references/animation-class-based-technique.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/animation-class-based-technique.md rename to plugins/vue/.agents/skills/vue-best-practices/references/animation-class-based-technique.md diff --git a/plugins/vue/skills/vue-best-practices/references/animation-state-driven-technique.md b/plugins/vue/.agents/skills/vue-best-practices/references/animation-state-driven-technique.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/animation-state-driven-technique.md rename to plugins/vue/.agents/skills/vue-best-practices/references/animation-state-driven-technique.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-async.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-async.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-async.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-async.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-data-flow.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-data-flow.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-data-flow.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-data-flow.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-fallthrough-attrs.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-fallthrough-attrs.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-fallthrough-attrs.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-fallthrough-attrs.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-keep-alive.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-keep-alive.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-keep-alive.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-keep-alive.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-slots.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-slots.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-slots.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-slots.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-suspense.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-suspense.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-suspense.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-suspense.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-teleport.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-teleport.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-teleport.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-teleport.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-transition-group.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-transition-group.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-transition-group.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-transition-group.md diff --git a/plugins/vue/skills/vue-best-practices/references/component-transition.md b/plugins/vue/.agents/skills/vue-best-practices/references/component-transition.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/component-transition.md rename to plugins/vue/.agents/skills/vue-best-practices/references/component-transition.md diff --git a/plugins/vue/skills/vue-best-practices/references/composables.md b/plugins/vue/.agents/skills/vue-best-practices/references/composables.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/composables.md rename to plugins/vue/.agents/skills/vue-best-practices/references/composables.md diff --git a/plugins/vue/skills/vue-best-practices/references/directives.md b/plugins/vue/.agents/skills/vue-best-practices/references/directives.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/directives.md rename to plugins/vue/.agents/skills/vue-best-practices/references/directives.md diff --git a/plugins/vue/skills/vue-best-practices/references/perf-avoid-component-abstraction-in-lists.md b/plugins/vue/.agents/skills/vue-best-practices/references/perf-avoid-component-abstraction-in-lists.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/perf-avoid-component-abstraction-in-lists.md rename to plugins/vue/.agents/skills/vue-best-practices/references/perf-avoid-component-abstraction-in-lists.md diff --git a/plugins/vue/skills/vue-best-practices/references/perf-v-once-v-memo-directives.md b/plugins/vue/.agents/skills/vue-best-practices/references/perf-v-once-v-memo-directives.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/perf-v-once-v-memo-directives.md rename to plugins/vue/.agents/skills/vue-best-practices/references/perf-v-once-v-memo-directives.md diff --git a/plugins/vue/skills/vue-best-practices/references/perf-virtualize-large-lists.md b/plugins/vue/.agents/skills/vue-best-practices/references/perf-virtualize-large-lists.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/perf-virtualize-large-lists.md rename to plugins/vue/.agents/skills/vue-best-practices/references/perf-virtualize-large-lists.md diff --git a/plugins/vue/skills/vue-best-practices/references/plugins.md b/plugins/vue/.agents/skills/vue-best-practices/references/plugins.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/plugins.md rename to plugins/vue/.agents/skills/vue-best-practices/references/plugins.md diff --git a/plugins/vue/skills/vue-best-practices/references/reactivity.md b/plugins/vue/.agents/skills/vue-best-practices/references/reactivity.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/reactivity.md rename to plugins/vue/.agents/skills/vue-best-practices/references/reactivity.md diff --git a/plugins/vue/skills/vue-best-practices/references/render-functions.md b/plugins/vue/.agents/skills/vue-best-practices/references/render-functions.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/render-functions.md rename to plugins/vue/.agents/skills/vue-best-practices/references/render-functions.md diff --git a/plugins/vue/skills/vue-best-practices/references/sfc.md b/plugins/vue/.agents/skills/vue-best-practices/references/sfc.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/sfc.md rename to plugins/vue/.agents/skills/vue-best-practices/references/sfc.md diff --git a/plugins/vue/skills/vue-best-practices/references/state-management.md b/plugins/vue/.agents/skills/vue-best-practices/references/state-management.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/state-management.md rename to plugins/vue/.agents/skills/vue-best-practices/references/state-management.md diff --git a/plugins/vue/skills/vue-best-practices/references/updated-hook-performance.md b/plugins/vue/.agents/skills/vue-best-practices/references/updated-hook-performance.md similarity index 100% rename from plugins/vue/skills/vue-best-practices/references/updated-hook-performance.md rename to plugins/vue/.agents/skills/vue-best-practices/references/updated-hook-performance.md diff --git a/plugins/vue/skills/vue-router-best-practices/SKILL.md b/plugins/vue/.agents/skills/vue-router-best-practices/SKILL.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/SKILL.md rename to plugins/vue/.agents/skills/vue-router-best-practices/SKILL.md diff --git a/plugins/vue/skills/vue-router-best-practices/reference/router-beforeenter-no-param-trigger.md b/plugins/vue/.agents/skills/vue-router-best-practices/reference/router-beforeenter-no-param-trigger.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/reference/router-beforeenter-no-param-trigger.md rename to plugins/vue/.agents/skills/vue-router-best-practices/reference/router-beforeenter-no-param-trigger.md diff --git a/plugins/vue/skills/vue-router-best-practices/reference/router-beforerouteenter-no-this.md b/plugins/vue/.agents/skills/vue-router-best-practices/reference/router-beforerouteenter-no-this.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/reference/router-beforerouteenter-no-this.md rename to plugins/vue/.agents/skills/vue-router-best-practices/reference/router-beforerouteenter-no-this.md diff --git a/plugins/vue/skills/vue-router-best-practices/reference/router-guard-async-await-pattern.md b/plugins/vue/.agents/skills/vue-router-best-practices/reference/router-guard-async-await-pattern.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/reference/router-guard-async-await-pattern.md rename to plugins/vue/.agents/skills/vue-router-best-practices/reference/router-guard-async-await-pattern.md diff --git a/plugins/vue/skills/vue-router-best-practices/reference/router-navigation-guard-infinite-loop.md b/plugins/vue/.agents/skills/vue-router-best-practices/reference/router-navigation-guard-infinite-loop.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/reference/router-navigation-guard-infinite-loop.md rename to plugins/vue/.agents/skills/vue-router-best-practices/reference/router-navigation-guard-infinite-loop.md diff --git a/plugins/vue/skills/vue-router-best-practices/reference/router-navigation-guard-next-deprecated.md b/plugins/vue/.agents/skills/vue-router-best-practices/reference/router-navigation-guard-next-deprecated.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/reference/router-navigation-guard-next-deprecated.md rename to plugins/vue/.agents/skills/vue-router-best-practices/reference/router-navigation-guard-next-deprecated.md diff --git a/plugins/vue/skills/vue-router-best-practices/reference/router-param-change-no-lifecycle.md b/plugins/vue/.agents/skills/vue-router-best-practices/reference/router-param-change-no-lifecycle.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/reference/router-param-change-no-lifecycle.md rename to plugins/vue/.agents/skills/vue-router-best-practices/reference/router-param-change-no-lifecycle.md diff --git a/plugins/vue/skills/vue-router-best-practices/reference/router-simple-routing-cleanup.md b/plugins/vue/.agents/skills/vue-router-best-practices/reference/router-simple-routing-cleanup.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/reference/router-simple-routing-cleanup.md rename to plugins/vue/.agents/skills/vue-router-best-practices/reference/router-simple-routing-cleanup.md diff --git a/plugins/vue/skills/vue-router-best-practices/reference/router-use-vue-router-for-production.md b/plugins/vue/.agents/skills/vue-router-best-practices/reference/router-use-vue-router-for-production.md similarity index 100% rename from plugins/vue/skills/vue-router-best-practices/reference/router-use-vue-router-for-production.md rename to plugins/vue/.agents/skills/vue-router-best-practices/reference/router-use-vue-router-for-production.md diff --git a/plugins/vue/skills/vue-testing-best-practices/SKILL.md b/plugins/vue/.agents/skills/vue-testing-best-practices/SKILL.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/SKILL.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/SKILL.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/async-component-testing.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/async-component-testing.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/async-component-testing.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/async-component-testing.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/teleport-testing-complexity.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/teleport-testing-complexity.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/teleport-testing-complexity.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/teleport-testing-complexity.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-async-await-flushpromises.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-async-await-flushpromises.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-async-await-flushpromises.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-async-await-flushpromises.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-browser-vs-node-runners.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-browser-vs-node-runners.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-browser-vs-node-runners.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-browser-vs-node-runners.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-component-blackbox-approach.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-component-blackbox-approach.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-component-blackbox-approach.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-component-blackbox-approach.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-composables-helper-wrapper.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-composables-helper-wrapper.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-composables-helper-wrapper.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-composables-helper-wrapper.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-e2e-playwright-recommended.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-e2e-playwright-recommended.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-e2e-playwright-recommended.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-e2e-playwright-recommended.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-no-snapshot-only.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-no-snapshot-only.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-no-snapshot-only.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-no-snapshot-only.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-pinia-store-setup.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-pinia-store-setup.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-pinia-store-setup.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-pinia-store-setup.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-suspense-async-components.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-suspense-async-components.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-suspense-async-components.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-suspense-async-components.md diff --git a/plugins/vue/skills/vue-testing-best-practices/reference/testing-vitest-recommended-for-vue.md b/plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-vitest-recommended-for-vue.md similarity index 100% rename from plugins/vue/skills/vue-testing-best-practices/reference/testing-vitest-recommended-for-vue.md rename to plugins/vue/.agents/skills/vue-testing-best-practices/reference/testing-vitest-recommended-for-vue.md diff --git a/plugins/vue/skills/vue/GENERATION.md b/plugins/vue/.agents/skills/vue/GENERATION.md similarity index 100% rename from plugins/vue/skills/vue/GENERATION.md rename to plugins/vue/.agents/skills/vue/GENERATION.md diff --git a/plugins/vue/skills/vue/SKILL.md b/plugins/vue/.agents/skills/vue/SKILL.md similarity index 100% rename from plugins/vue/skills/vue/SKILL.md rename to plugins/vue/.agents/skills/vue/SKILL.md diff --git a/plugins/vue/skills/vue/references/advanced-patterns.md b/plugins/vue/.agents/skills/vue/references/advanced-patterns.md similarity index 100% rename from plugins/vue/skills/vue/references/advanced-patterns.md rename to plugins/vue/.agents/skills/vue/references/advanced-patterns.md diff --git a/plugins/vue/skills/vue/references/core-new-apis.md b/plugins/vue/.agents/skills/vue/references/core-new-apis.md similarity index 100% rename from plugins/vue/skills/vue/references/core-new-apis.md rename to plugins/vue/.agents/skills/vue/references/core-new-apis.md diff --git a/plugins/vue/skills/vue/references/script-setup-macros.md b/plugins/vue/.agents/skills/vue/references/script-setup-macros.md similarity index 100% rename from plugins/vue/skills/vue/references/script-setup-macros.md rename to plugins/vue/.agents/skills/vue/references/script-setup-macros.md diff --git a/plugins/vue/.claude-plugin/plugin.json b/plugins/vue/.claude-plugin/plugin.json index 09ad830..556a349 100644 --- a/plugins/vue/.claude-plugin/plugin.json +++ b/plugins/vue/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "vue3", "composition-api", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/vue/skills-lock.json b/plugins/vue/skills-lock.json new file mode 100644 index 0000000..3e45ff7 --- /dev/null +++ b/plugins/vue/skills-lock.json @@ -0,0 +1,25 @@ +{ + "version": 1, + "skills": { + "vue": { + "source": "antfu/skills", + "sourceType": "github", + "computedHash": "9c241141e07e836e4f0537c63e8f929fba3767c2997250be38e699f19b75e3f2" + }, + "vue-best-practices": { + "source": "vuejs-ai/skills", + "sourceType": "github", + "computedHash": "3df585ad31aec78fe55c56c1411262737e6b231677a3153dec512a882fde80cd" + }, + "vue-router-best-practices": { + "source": "vuejs-ai/skills", + "sourceType": "github", + "computedHash": "f0745ed318c113e592ab4a9ded57ceadd0db2edab00cdb46b216c83f5ce0799e" + }, + "vue-testing-best-practices": { + "source": "vuejs-ai/skills", + "sourceType": "github", + "computedHash": "58d365899f54be9e5fa2c2e455093f9567620600578ae92aaa2f31d9b19a59ad" + } + } +} diff --git a/plugins/vue/skills/vue-best-practices/LICENSE.md b/plugins/vue/skills/vue-best-practices/LICENSE.md deleted file mode 100644 index 3f08a54..0000000 --- a/plugins/vue/skills/vue-best-practices/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 hyf0, SerKo - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/vue/skills/vue-best-practices/SYNC.md b/plugins/vue/skills/vue-best-practices/SYNC.md deleted file mode 100644 index 5155970..0000000 --- a/plugins/vue/skills/vue-best-practices/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/vuejs-ai/skills/vue-best-practices` -- **Git SHA:** `f3dd1bf4d3ac78331bdc903e4519d561c538ca6a` -- **Synced:** 2026-03-05 diff --git a/plugins/vue/skills/vue-router-best-practices/LICENSE.md b/plugins/vue/skills/vue-router-best-practices/LICENSE.md deleted file mode 100644 index 3f08a54..0000000 --- a/plugins/vue/skills/vue-router-best-practices/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 hyf0, SerKo - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/vue/skills/vue-router-best-practices/SYNC.md b/plugins/vue/skills/vue-router-best-practices/SYNC.md deleted file mode 100644 index bafd163..0000000 --- a/plugins/vue/skills/vue-router-best-practices/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/vuejs-ai/skills/vue-router-best-practices` -- **Git SHA:** `f3dd1bf4d3ac78331bdc903e4519d561c538ca6a` -- **Synced:** 2026-03-05 diff --git a/plugins/vue/skills/vue-testing-best-practices/LICENSE.md b/plugins/vue/skills/vue-testing-best-practices/LICENSE.md deleted file mode 100644 index 3f08a54..0000000 --- a/plugins/vue/skills/vue-testing-best-practices/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 hyf0, SerKo - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/vue/skills/vue-testing-best-practices/SYNC.md b/plugins/vue/skills/vue-testing-best-practices/SYNC.md deleted file mode 100644 index 84673b5..0000000 --- a/plugins/vue/skills/vue-testing-best-practices/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/vuejs-ai/skills/vue-testing-best-practices` -- **Git SHA:** `f3dd1bf4d3ac78331bdc903e4519d561c538ca6a` -- **Synced:** 2026-03-05 diff --git a/plugins/vueuse/skills/vueuse-functions/SKILL.md b/plugins/vueuse/.agents/skills/vueuse-functions/SKILL.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/SKILL.md rename to plugins/vueuse/.agents/skills/vueuse-functions/SKILL.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/computedAsync.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/computedAsync.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/computedAsync.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/computedAsync.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/computedEager.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/computedEager.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/computedEager.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/computedEager.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/computedInject.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/computedInject.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/computedInject.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/computedInject.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/computedWithControl.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/computedWithControl.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/computedWithControl.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/computedWithControl.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createEventHook.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createEventHook.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createEventHook.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createEventHook.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createGenericProjection.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createGenericProjection.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createGenericProjection.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createGenericProjection.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createGlobalState.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createGlobalState.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createGlobalState.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createGlobalState.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createInjectionState.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createInjectionState.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createInjectionState.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createInjectionState.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createProjection.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createProjection.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createProjection.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createProjection.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createRef.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createRef.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createRef.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createRef.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createReusableTemplate.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createReusableTemplate.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createReusableTemplate.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createReusableTemplate.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createSharedComposable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createSharedComposable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createSharedComposable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createSharedComposable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createTemplatePromise.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createTemplatePromise.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createTemplatePromise.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createTemplatePromise.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/createUnrefFn.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/createUnrefFn.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/createUnrefFn.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/createUnrefFn.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/extendRef.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/extendRef.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/extendRef.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/extendRef.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/from.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/from.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/from.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/from.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/get.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/get.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/get.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/get.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/injectLocal.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/injectLocal.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/injectLocal.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/injectLocal.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/isDefined.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/isDefined.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/isDefined.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/isDefined.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/logicAnd.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/logicAnd.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/logicAnd.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/logicAnd.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/logicNot.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/logicNot.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/logicNot.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/logicNot.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/logicOr.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/logicOr.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/logicOr.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/logicOr.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/makeDestructurable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/makeDestructurable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/makeDestructurable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/makeDestructurable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/onClickOutside.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/onClickOutside.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/onClickOutside.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/onClickOutside.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/onElementRemoval.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/onElementRemoval.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/onElementRemoval.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/onElementRemoval.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/onKeyStroke.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/onKeyStroke.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/onKeyStroke.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/onKeyStroke.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/onLongPress.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/onLongPress.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/onLongPress.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/onLongPress.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/onStartTyping.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/onStartTyping.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/onStartTyping.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/onStartTyping.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/provideLocal.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/provideLocal.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/provideLocal.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/provideLocal.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/reactify.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/reactify.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/reactify.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/reactify.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/reactifyObject.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/reactifyObject.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/reactifyObject.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/reactifyObject.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/reactiveComputed.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/reactiveComputed.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/reactiveComputed.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/reactiveComputed.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/reactiveOmit.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/reactiveOmit.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/reactiveOmit.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/reactiveOmit.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/reactivePick.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/reactivePick.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/reactivePick.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/reactivePick.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/refAutoReset.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/refAutoReset.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/refAutoReset.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/refAutoReset.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/refDebounced.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/refDebounced.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/refDebounced.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/refDebounced.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/refDefault.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/refDefault.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/refDefault.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/refDefault.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/refManualReset.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/refManualReset.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/refManualReset.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/refManualReset.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/refThrottled.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/refThrottled.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/refThrottled.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/refThrottled.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/refWithControl.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/refWithControl.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/refWithControl.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/refWithControl.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/set.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/set.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/set.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/set.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/syncRef.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/syncRef.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/syncRef.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/syncRef.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/syncRefs.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/syncRefs.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/syncRefs.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/syncRefs.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/templateRef.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/templateRef.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/templateRef.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/templateRef.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/toObserver.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/toObserver.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/toObserver.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/toObserver.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/toReactive.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/toReactive.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/toReactive.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/toReactive.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/toRef.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/toRef.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/toRef.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/toRef.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/toRefs.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/toRefs.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/toRefs.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/toRefs.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/tryOnBeforeMount.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnBeforeMount.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/tryOnBeforeMount.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnBeforeMount.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/tryOnBeforeUnmount.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnBeforeUnmount.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/tryOnBeforeUnmount.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnBeforeUnmount.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/tryOnMounted.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnMounted.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/tryOnMounted.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnMounted.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/tryOnScopeDispose.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnScopeDispose.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/tryOnScopeDispose.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnScopeDispose.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/tryOnUnmounted.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnUnmounted.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/tryOnUnmounted.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/tryOnUnmounted.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/unrefElement.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/unrefElement.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/unrefElement.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/unrefElement.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/until.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/until.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/until.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/until.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useAbs.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useAbs.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useAbs.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useAbs.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useActiveElement.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useActiveElement.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useActiveElement.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useActiveElement.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useAnimate.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useAnimate.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useAnimate.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useAnimate.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayDifference.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayDifference.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayDifference.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayDifference.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayEvery.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayEvery.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayEvery.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayEvery.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayFilter.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayFilter.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayFilter.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayFilter.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayFind.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayFind.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayFind.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayFind.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayFindIndex.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayFindIndex.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayFindIndex.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayFindIndex.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayFindLast.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayFindLast.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayFindLast.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayFindLast.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayIncludes.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayIncludes.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayIncludes.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayIncludes.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayJoin.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayJoin.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayJoin.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayJoin.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayMap.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayMap.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayMap.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayMap.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayReduce.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayReduce.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayReduce.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayReduce.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArraySome.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArraySome.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArraySome.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArraySome.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useArrayUnique.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayUnique.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useArrayUnique.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useArrayUnique.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useAsyncQueue.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useAsyncQueue.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useAsyncQueue.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useAsyncQueue.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useAsyncState.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useAsyncState.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useAsyncState.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useAsyncState.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useAsyncValidator.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useAsyncValidator.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useAsyncValidator.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useAsyncValidator.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useAuth.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useAuth.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useAuth.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useAuth.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useAverage.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useAverage.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useAverage.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useAverage.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useAxios.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useAxios.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useAxios.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useAxios.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useBase64.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useBase64.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useBase64.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useBase64.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useBattery.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useBattery.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useBattery.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useBattery.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useBluetooth.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useBluetooth.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useBluetooth.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useBluetooth.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useBreakpoints.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useBreakpoints.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useBreakpoints.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useBreakpoints.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useBroadcastChannel.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useBroadcastChannel.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useBroadcastChannel.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useBroadcastChannel.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useBrowserLocation.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useBrowserLocation.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useBrowserLocation.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useBrowserLocation.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCached.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCached.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCached.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCached.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCeil.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCeil.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCeil.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCeil.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useChangeCase.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useChangeCase.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useChangeCase.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useChangeCase.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useClamp.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useClamp.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useClamp.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useClamp.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useClipboard.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useClipboard.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useClipboard.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useClipboard.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useClipboardItems.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useClipboardItems.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useClipboardItems.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useClipboardItems.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCloned.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCloned.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCloned.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCloned.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useColorMode.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useColorMode.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useColorMode.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useColorMode.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useConfirmDialog.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useConfirmDialog.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useConfirmDialog.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useConfirmDialog.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCookies.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCookies.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCookies.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCookies.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCountdown.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCountdown.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCountdown.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCountdown.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCounter.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCounter.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCounter.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCounter.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCssSupports.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCssSupports.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCssSupports.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCssSupports.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCssVar.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCssVar.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCssVar.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCssVar.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCurrentElement.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCurrentElement.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCurrentElement.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCurrentElement.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useCycleList.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useCycleList.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useCycleList.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useCycleList.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDark.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDark.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDark.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDark.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDateFormat.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDateFormat.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDateFormat.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDateFormat.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDebounceFn.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDebounceFn.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDebounceFn.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDebounceFn.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDebouncedRefHistory.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDebouncedRefHistory.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDebouncedRefHistory.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDebouncedRefHistory.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDeviceMotion.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDeviceMotion.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDeviceMotion.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDeviceMotion.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDeviceOrientation.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDeviceOrientation.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDeviceOrientation.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDeviceOrientation.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDevicePixelRatio.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDevicePixelRatio.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDevicePixelRatio.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDevicePixelRatio.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDevicesList.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDevicesList.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDevicesList.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDevicesList.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDisplayMedia.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDisplayMedia.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDisplayMedia.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDisplayMedia.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDocumentVisibility.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDocumentVisibility.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDocumentVisibility.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDocumentVisibility.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDraggable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDraggable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDraggable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDraggable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDrauu.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDrauu.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDrauu.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDrauu.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useDropZone.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useDropZone.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useDropZone.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useDropZone.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useElementBounding.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useElementBounding.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useElementBounding.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useElementBounding.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useElementByPoint.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useElementByPoint.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useElementByPoint.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useElementByPoint.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useElementHover.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useElementHover.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useElementHover.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useElementHover.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useElementSize.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useElementSize.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useElementSize.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useElementSize.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useElementVisibility.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useElementVisibility.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useElementVisibility.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useElementVisibility.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useEventBus.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useEventBus.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useEventBus.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useEventBus.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useEventListener.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useEventListener.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useEventListener.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useEventListener.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useEventSource.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useEventSource.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useEventSource.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useEventSource.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useExtractedObservable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useExtractedObservable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useExtractedObservable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useExtractedObservable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useEyeDropper.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useEyeDropper.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useEyeDropper.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useEyeDropper.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFavicon.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFavicon.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFavicon.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFavicon.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFetch.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFetch.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFetch.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFetch.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFileDialog.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFileDialog.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFileDialog.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFileDialog.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFileSystemAccess.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFileSystemAccess.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFileSystemAccess.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFileSystemAccess.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFirestore.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFirestore.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFirestore.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFirestore.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFloor.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFloor.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFloor.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFloor.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFocus.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFocus.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFocus.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFocus.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFocusTrap.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFocusTrap.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFocusTrap.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFocusTrap.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFocusWithin.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFocusWithin.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFocusWithin.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFocusWithin.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFps.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFps.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFps.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFps.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFullscreen.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFullscreen.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFullscreen.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFullscreen.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useFuse.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useFuse.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useFuse.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useFuse.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useGamepad.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useGamepad.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useGamepad.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useGamepad.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useGeolocation.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useGeolocation.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useGeolocation.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useGeolocation.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useIDBKeyval.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useIDBKeyval.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useIDBKeyval.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useIDBKeyval.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useIdle.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useIdle.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useIdle.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useIdle.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useImage.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useImage.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useImage.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useImage.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useInfiniteScroll.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useInfiniteScroll.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useInfiniteScroll.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useInfiniteScroll.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useIntersectionObserver.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useIntersectionObserver.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useIntersectionObserver.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useIntersectionObserver.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useInterval.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useInterval.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useInterval.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useInterval.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useIntervalFn.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useIntervalFn.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useIntervalFn.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useIntervalFn.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useIpcRenderer.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useIpcRenderer.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useIpcRenderer.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useIpcRenderer.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useIpcRendererInvoke.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useIpcRendererInvoke.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useIpcRendererInvoke.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useIpcRendererInvoke.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useIpcRendererOn.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useIpcRendererOn.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useIpcRendererOn.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useIpcRendererOn.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useJwt.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useJwt.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useJwt.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useJwt.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useKeyModifier.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useKeyModifier.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useKeyModifier.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useKeyModifier.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useLastChanged.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useLastChanged.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useLastChanged.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useLastChanged.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useLocalStorage.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useLocalStorage.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useLocalStorage.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useLocalStorage.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMagicKeys.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMagicKeys.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMagicKeys.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMagicKeys.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useManualRefHistory.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useManualRefHistory.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useManualRefHistory.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useManualRefHistory.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMath.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMath.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMath.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMath.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMax.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMax.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMax.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMax.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMediaControls.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMediaControls.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMediaControls.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMediaControls.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMediaQuery.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMediaQuery.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMediaQuery.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMediaQuery.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMemoize.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMemoize.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMemoize.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMemoize.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMemory.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMemory.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMemory.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMemory.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMin.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMin.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMin.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMin.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMounted.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMounted.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMounted.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMounted.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMouse.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMouse.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMouse.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMouse.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMouseInElement.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMouseInElement.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMouseInElement.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMouseInElement.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMousePressed.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMousePressed.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMousePressed.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMousePressed.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useMutationObserver.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useMutationObserver.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useMutationObserver.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useMutationObserver.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useNProgress.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useNProgress.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useNProgress.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useNProgress.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useNavigatorLanguage.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useNavigatorLanguage.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useNavigatorLanguage.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useNavigatorLanguage.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useNetwork.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useNetwork.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useNetwork.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useNetwork.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useNow.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useNow.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useNow.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useNow.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useObjectUrl.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useObjectUrl.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useObjectUrl.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useObjectUrl.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useObservable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useObservable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useObservable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useObservable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useOffsetPagination.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useOffsetPagination.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useOffsetPagination.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useOffsetPagination.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useOnline.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useOnline.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useOnline.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useOnline.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePageLeave.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePageLeave.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePageLeave.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePageLeave.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useParallax.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useParallax.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useParallax.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useParallax.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useParentElement.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useParentElement.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useParentElement.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useParentElement.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePerformanceObserver.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePerformanceObserver.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePerformanceObserver.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePerformanceObserver.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePermission.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePermission.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePermission.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePermission.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePointer.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePointer.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePointer.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePointer.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePointerLock.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePointerLock.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePointerLock.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePointerLock.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePointerSwipe.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePointerSwipe.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePointerSwipe.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePointerSwipe.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePrecision.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePrecision.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePrecision.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePrecision.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePreferredColorScheme.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredColorScheme.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePreferredColorScheme.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredColorScheme.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePreferredContrast.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredContrast.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePreferredContrast.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredContrast.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePreferredDark.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredDark.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePreferredDark.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredDark.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePreferredLanguages.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredLanguages.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePreferredLanguages.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredLanguages.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePreferredReducedMotion.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredReducedMotion.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePreferredReducedMotion.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredReducedMotion.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePreferredReducedTransparency.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredReducedTransparency.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePreferredReducedTransparency.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePreferredReducedTransparency.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/usePrevious.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/usePrevious.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/usePrevious.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/usePrevious.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useProjection.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useProjection.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useProjection.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useProjection.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useQRCode.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useQRCode.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useQRCode.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useQRCode.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useRTDB.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useRTDB.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useRTDB.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useRTDB.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useRafFn.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useRafFn.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useRafFn.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useRafFn.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useRefHistory.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useRefHistory.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useRefHistory.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useRefHistory.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useResizeObserver.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useResizeObserver.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useResizeObserver.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useResizeObserver.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useRound.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useRound.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useRound.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useRound.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useRouteHash.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useRouteHash.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useRouteHash.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useRouteHash.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useRouteParams.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useRouteParams.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useRouteParams.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useRouteParams.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useRouteQuery.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useRouteQuery.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useRouteQuery.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useRouteQuery.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSSRWidth.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSSRWidth.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSSRWidth.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSSRWidth.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useScreenOrientation.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useScreenOrientation.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useScreenOrientation.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useScreenOrientation.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useScreenSafeArea.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useScreenSafeArea.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useScreenSafeArea.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useScreenSafeArea.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useScriptTag.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useScriptTag.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useScriptTag.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useScriptTag.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useScroll.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useScroll.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useScroll.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useScroll.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useScrollLock.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useScrollLock.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useScrollLock.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useScrollLock.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSessionStorage.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSessionStorage.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSessionStorage.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSessionStorage.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useShare.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useShare.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useShare.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useShare.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSortable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSortable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSortable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSortable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSorted.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSorted.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSorted.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSorted.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSpeechRecognition.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSpeechRecognition.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSpeechRecognition.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSpeechRecognition.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSpeechSynthesis.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSpeechSynthesis.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSpeechSynthesis.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSpeechSynthesis.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useStepper.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useStepper.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useStepper.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useStepper.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useStorage.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useStorage.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useStorage.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useStorage.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useStorageAsync.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useStorageAsync.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useStorageAsync.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useStorageAsync.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useStyleTag.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useStyleTag.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useStyleTag.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useStyleTag.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSubject.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSubject.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSubject.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSubject.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSubscription.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSubscription.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSubscription.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSubscription.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSum.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSum.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSum.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSum.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSupported.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSupported.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSupported.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSupported.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useSwipe.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useSwipe.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useSwipe.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useSwipe.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTemplateRefsList.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTemplateRefsList.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTemplateRefsList.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTemplateRefsList.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTextDirection.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTextDirection.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTextDirection.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTextDirection.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTextSelection.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTextSelection.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTextSelection.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTextSelection.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTextareaAutosize.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTextareaAutosize.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTextareaAutosize.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTextareaAutosize.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useThrottleFn.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useThrottleFn.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useThrottleFn.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useThrottleFn.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useThrottledRefHistory.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useThrottledRefHistory.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useThrottledRefHistory.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useThrottledRefHistory.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTimeAgo.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeAgo.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTimeAgo.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeAgo.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTimeAgoIntl.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeAgoIntl.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTimeAgoIntl.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeAgoIntl.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTimeout.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeout.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTimeout.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeout.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTimeoutFn.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeoutFn.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTimeoutFn.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeoutFn.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTimeoutPoll.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeoutPoll.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTimeoutPoll.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTimeoutPoll.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTimestamp.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTimestamp.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTimestamp.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTimestamp.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTitle.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTitle.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTitle.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTitle.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useToNumber.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useToNumber.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useToNumber.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useToNumber.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useToString.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useToString.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useToString.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useToString.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useToggle.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useToggle.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useToggle.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useToggle.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTransition.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTransition.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTransition.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTransition.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useTrunc.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useTrunc.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useTrunc.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useTrunc.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useUrlSearchParams.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useUrlSearchParams.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useUrlSearchParams.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useUrlSearchParams.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useUserMedia.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useUserMedia.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useUserMedia.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useUserMedia.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useVModel.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useVModel.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useVModel.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useVModel.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useVModels.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useVModels.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useVModels.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useVModels.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useVibrate.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useVibrate.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useVibrate.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useVibrate.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useVirtualList.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useVirtualList.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useVirtualList.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useVirtualList.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useWakeLock.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useWakeLock.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useWakeLock.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useWakeLock.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useWebNotification.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useWebNotification.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useWebNotification.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useWebNotification.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useWebSocket.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useWebSocket.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useWebSocket.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useWebSocket.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useWebWorker.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useWebWorker.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useWebWorker.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useWebWorker.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useWebWorkerFn.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useWebWorkerFn.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useWebWorkerFn.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useWebWorkerFn.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useWindowFocus.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useWindowFocus.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useWindowFocus.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useWindowFocus.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useWindowScroll.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useWindowScroll.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useWindowScroll.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useWindowScroll.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useWindowSize.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useWindowSize.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useWindowSize.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useWindowSize.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useZoomFactor.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useZoomFactor.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useZoomFactor.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useZoomFactor.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/useZoomLevel.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/useZoomLevel.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/useZoomLevel.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/useZoomLevel.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchArray.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchArray.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchArray.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchArray.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchAtMost.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchAtMost.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchAtMost.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchAtMost.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchDebounced.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchDebounced.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchDebounced.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchDebounced.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchDeep.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchDeep.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchDeep.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchDeep.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchExtractedObservable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchExtractedObservable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchExtractedObservable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchExtractedObservable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchIgnorable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchIgnorable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchIgnorable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchIgnorable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchImmediate.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchImmediate.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchImmediate.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchImmediate.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchOnce.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchOnce.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchOnce.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchOnce.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchPausable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchPausable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchPausable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchPausable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchThrottled.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchThrottled.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchThrottled.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchThrottled.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchTriggerable.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchTriggerable.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchTriggerable.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchTriggerable.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/watchWithFilter.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/watchWithFilter.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/watchWithFilter.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/watchWithFilter.md diff --git a/plugins/vueuse/skills/vueuse-functions/references/whenever.md b/plugins/vueuse/.agents/skills/vueuse-functions/references/whenever.md similarity index 100% rename from plugins/vueuse/skills/vueuse-functions/references/whenever.md rename to plugins/vueuse/.agents/skills/vueuse-functions/references/whenever.md diff --git a/plugins/vueuse/.claude-plugin/plugin.json b/plugins/vueuse/.claude-plugin/plugin.json index 2e36c36..e5256ad 100644 --- a/plugins/vueuse/.claude-plugin/plugin.json +++ b/plugins/vueuse/.claude-plugin/plugin.json @@ -14,5 +14,6 @@ "vue", "composables", "antfu" - ] + ], + "skills": "./.agents/skills/" } diff --git a/plugins/vueuse/skills-lock.json b/plugins/vueuse/skills-lock.json new file mode 100644 index 0000000..6315343 --- /dev/null +++ b/plugins/vueuse/skills-lock.json @@ -0,0 +1,10 @@ +{ + "version": 1, + "skills": { + "vueuse-functions": { + "source": "vueuse/skills", + "sourceType": "github", + "computedHash": "51467c2364e36ee5f40d1e83c94a6f53be3c12431bd8dcc81a650b8e195ae591" + } + } +} diff --git a/plugins/vueuse/skills/vueuse-functions/LICENSE.md b/plugins/vueuse/skills/vueuse-functions/LICENSE.md deleted file mode 100644 index 8a1060d..0000000 --- a/plugins/vueuse/skills/vueuse-functions/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2026 SerKo - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/plugins/vueuse/skills/vueuse-functions/SYNC.md b/plugins/vueuse/skills/vueuse-functions/SYNC.md deleted file mode 100644 index 2dab5a7..0000000 --- a/plugins/vueuse/skills/vueuse-functions/SYNC.md +++ /dev/null @@ -1,5 +0,0 @@ -# Sync Info - -- **Source:** `vendor/vueuse/skills/vueuse-functions` -- **Git SHA:** `075b0d6d558cc5ca7d5ffe72a56b5fd92bbef2d1` -- **Synced:** 2026-03-05 diff --git a/scripts/cli.ts b/scripts/cli.ts index 2c162a6..49f9531 100644 --- a/scripts/cli.ts +++ b/scripts/cli.ts @@ -1,7 +1,7 @@ #!/usr/bin/env bun /** * Manage vendor skill submodules and sync skills into plugins/. - * Mirrors the structure of vendor/antfu-skills/scripts/cli.ts. + * Manages vendor skill submodules, extensions, and skills.sh plugins. * * Commands: * bun scripts/cli.ts init # add vendor submodules to this repo @@ -12,53 +12,19 @@ import { execFileSync, execSync } from "node:child_process" import { cpSync, existsSync, mkdirSync, readdirSync, readFileSync, rmSync, writeFileSync } from "node:fs" import { dirname, join, resolve } from "node:path" +import type { SubmoduleMeta } from "./meta.ts" import { extensions, submodules, vendors } from "./meta.ts" import { convertMcpServerPaths, parseToml } from "./extension-helpers.ts" const ROOT = resolve(import.meta.dirname!, "..") -const ANTFU_MANUAL_DIR = join(ROOT, "vendor/antfu-skills/skills") // read-only: Type 3 manual skills const PLUGINS_DIR = join(ROOT, "plugins") // --------------------------------------------------------------------------- // skill dir name → plugin dir name // --------------------------------------------------------------------------- export const SKILL_TO_PLUGIN: Record = { - // Type 1: generated directly into plugins/{plugin}/skills/{skill}/ via /generate-skill - antfu: "antfu", - nuxt: "nuxt", - pinia: "pinia", - pnpm: "pnpm", - unocss: "unocss", - vite: "vite", - vitepress: "vitepress", - vitest: "vitest", - vue: "vue", // Type 2: vendor submodules - "vue-best-practices": "vue", - "vue-router-best-practices": "vue", - "vue-testing-best-practices": "vue", - slidev: "slidev", - "vueuse-functions": "vueuse", "web-design-guidelines": "web-design", - mastra: "mastra", - "nuxt-ui": "nuxt-ui", - "supabase-postgres-best-practices": "supabase", - "prisma-cli": "prisma", - "prisma-client-api": "prisma", - "prisma-database-setup": "prisma", - "prisma-driver-adapter-implementation": "prisma", - "prisma-postgres": "prisma", - "prisma-upgrade-v7": "prisma", - "best-practices": "better-auth", - "create-auth": "better-auth", - emailAndPassword: "better-auth", - organization: "better-auth", - twoFactor: "better-auth", - "agent-browser": "agent-browser", - dogfood: "agent-browser", - electron: "agent-browser", - slack: "agent-browser", - "use-ai-sdk": "ai-sdk", } // --------------------------------------------------------------------------- @@ -113,19 +79,31 @@ export function ensurePlugin(plugin: string) { mkdirSync(join(pluginDir, "skills"), { recursive: true }) } +// --------------------------------------------------------------------------- +// helpers: resolve source/depth from string | SubmoduleMeta +// --------------------------------------------------------------------------- +function resolveSubmodule(entry: string | SubmoduleMeta): { source: string; depth?: number } { + if (typeof entry === "string") return { source: entry } + return { source: entry.source, depth: entry.depth } +} + +function depthArgs(depth?: number): string[] { + return depth ? ["--depth", String(depth)] : [] +} + // --------------------------------------------------------------------------- // init // --------------------------------------------------------------------------- -function initSubmoduleGroup(label: string, prefix: string, entries: Array<[string, string]>) { +function initSubmoduleGroup(label: string, prefix: string, entries: Array<[string, { source: string; depth?: number }]>) { console.log(`\nInitializing ${label}...\n`) - for (const [name, source] of entries) { + for (const [name, { source, depth }] of entries) { const submodulePath = `${prefix}/${name}` const fullPath = join(ROOT, submodulePath) if (isSubmoduleRegistered(submodulePath)) { if (!existsSync(join(fullPath, ".git"))) { process.stdout.write(` init: ${submodulePath} ... `) - execFileSafe("git", ["submodule", "update", "--init", submodulePath]) + execFileSafe("git", ["submodule", "update", "--init", ...depthArgs(depth), submodulePath]) console.log("done") } else { console.log(` already initialized: ${submodulePath}`) @@ -136,7 +114,10 @@ function initSubmoduleGroup(label: string, prefix: string, entries: Array<[strin process.stdout.write(` adding: ${name} (${source}) ... `) try { mkdirSync(dirname(fullPath), { recursive: true }) - execFile("git", ["submodule", "add", source, submodulePath]) + execFile("git", ["submodule", "add", ...depthArgs(depth), source, submodulePath]) + if (depth) { + execFile("git", ["config", "-f", ".gitmodules", `submodule.${submodulePath}.shallow`, "true"]) + } console.log("done") } catch (e) { console.error(`failed\n ${e}`) @@ -145,9 +126,9 @@ function initSubmoduleGroup(label: string, prefix: string, entries: Array<[strin } export async function initSubmodules() { - initSubmoduleGroup("source submodules", "sources", Object.entries(submodules)) - initSubmoduleGroup("vendor submodules", "vendor", Object.entries(vendors).map(([n, c]) => [n, c.source])) - initSubmoduleGroup("extension submodules", "external-plugins", Object.entries(extensions).map(([n, c]) => [n, c.source])) + initSubmoduleGroup("source submodules", "sources", Object.entries(submodules).map(([n, v]) => [n, resolveSubmodule(v)])) + initSubmoduleGroup("vendor submodules", "vendor", Object.entries(vendors).map(([n, c]) => [n, { source: c.source, depth: c.depth }])) + initSubmoduleGroup("extension submodules", "external-plugins", Object.entries(extensions).map(([n, c]) => [n, { source: c.source, depth: c.depth }])) console.log("\nDone.") } @@ -184,7 +165,7 @@ export async function syncSubmodules() { // Update submodule to latest process.stdout.write(`[${name}] updating submodule... `) - const updated = execFileSafe("git", ["submodule", "update", "--remote", "--merge", submodulePath]) + const updated = execFileSafe("git", ["submodule", "update", "--remote", "--merge", ...depthArgs(config.depth), submodulePath]) if (updated === null) { console.log("FAILED") console.warn(` ! Skipping ${name} to avoid committing stale content.`) @@ -233,7 +214,7 @@ export async function syncSubmodules() { try { rmSync(dest, { recursive: true, force: true }) mkdirSync(dest, { recursive: true }) - cpSync(src, dest, { recursive: true }) + cpSync(src, dest, { recursive: true, verbatimSymlinks: true }) } catch (e) { const msg = e instanceof Error ? e.message : String(e) console.error(`FAILED\n ! could not copy ${srcSkill}: ${msg}`) @@ -274,40 +255,7 @@ export async function syncSubmodules() { } } - // 2. Copy Type 3 manual skills from vendor/antfu-skills/skills/ → plugins/{plugin}/skills/ - console.log("Syncing manual skills to plugins...") - const manualPaths: string[] = [] - for (const skill of ["antfu"]) { - const plugin = SKILL_TO_PLUGIN[skill] - if (!plugin) continue - - const src = join(ANTFU_MANUAL_DIR, skill) - if (!existsSync(src)) { - console.warn(` ! manual skill not found: ${skill}`) - continue - } - - ensurePlugin(plugin) - const dest = join(PLUGINS_DIR, plugin, "skills", skill) - - process.stdout.write(` ${skill} → plugins/${plugin}/skills/${skill} ... `) - rmSync(dest, { recursive: true, force: true }) - cpSync(src, dest, { recursive: true, verbatimSymlinks: true }) - manualPaths.push(`plugins/${plugin}/skills/${skill}`) - console.log("done") - } - - if (manualPaths.length > 0 && hasGitChanges(manualPaths)) { - const sha = getGitSha(join(ROOT, "vendor/antfu-skills")) - const shortSha = sha?.slice(0, 7) ?? "unknown" - commitChanges(manualPaths, `chore(sync): sync antfu manual skills to ${shortSha}`) - committed.push("antfu-skills") - console.log(` → committed: chore(sync): sync antfu manual skills to ${shortSha}`) - } else { - console.log(" → no changes") - } - - // 3. Update skills.sh managed plugins + // 2. Update skills.sh managed plugins console.log("\nUpdating skills.sh plugins...\n") if (!existsSync(PLUGINS_DIR)) { console.log(" no plugins directory found, skipping skills.sh plugin check") @@ -364,7 +312,7 @@ export async function syncSubmodules() { // Update submodule to latest process.stdout.write(`[${name}] updating submodule... `) - const updated = execFileSafe("git", ["submodule", "update", "--remote", "--merge", submodulePath]) + const updated = execFileSafe("git", ["submodule", "update", "--remote", "--merge", ...depthArgs(config.depth), submodulePath]) if (updated === null) { console.log("FAILED") console.warn(` ! Skipping ${name} to avoid committing stale content.`) @@ -689,12 +637,11 @@ export async function cleanup() { ...Object.keys(submodules).map(n => `sources/${n}`), ...Object.keys(vendors).map(n => `vendor/${n}`), ...Object.keys(extensions).map(n => `external-plugins/${n}`), - "vendor/antfu-skills", ]) const registered = getRegisteredSubmodulePaths().filter( p => p.startsWith("sources/") || - (p.startsWith("vendor/") && p !== "vendor/antfu-skills") || + p.startsWith("vendor/") || p.startsWith("external-plugins/"), ) const extraSubmodules = registered.filter(p => !expectedPaths.has(p)) diff --git a/scripts/meta.ts b/scripts/meta.ts index 170c300..3c9793e 100644 --- a/scripts/meta.ts +++ b/scripts/meta.ts @@ -16,9 +16,18 @@ * 4. Run: bun scripts/cli.ts sync */ +export interface SubmoduleMeta { + /** Git repository URL */ + source: string + /** Shallow clone depth (e.g. 1). Omit for full clone. */ + depth?: number +} + export interface VendorMeta { /** Git repository URL */ source: string + /** Shallow clone depth (e.g. 1). Omit for full clone. */ + depth?: number /** Path within the vendor repo where skills live. Defaults to "skills". Use "." for repos where skills are at root. */ skillsDir?: string /** sourceSkillName → outputSkillName mapping */ @@ -30,16 +39,7 @@ export interface VendorMeta { * Submodules are added at sources/{name}/ in this repo. * Skills are generated manually using /generate-skill . */ -export const submodules: Record = { - vue: "https://github.com/vuejs/docs", - nuxt: "https://github.com/nuxt/nuxt", - vite: "https://github.com/vitejs/vite", - unocss: "https://github.com/unocss/unocss", - pnpm: "https://github.com/pnpm/pnpm.io", - pinia: "https://github.com/vuejs/pinia", - vitest: "https://github.com/vitest-dev/vitest", - vitepress: "https://github.com/vuejs/vitepress", -} +export const submodules: Record = {} /** * Type 2: Projects that already maintain their own skills/ directory. @@ -47,99 +47,25 @@ export const submodules: Record = { * Skills are synced automatically via `bun scripts/cli.ts sync`. */ export const vendors: Record = { - slidev: { - source: "https://github.com/slidevjs/slidev", - skills: { - slidev: "slidev", - }, - }, - vueuse: { - source: "https://github.com/vueuse/skills", - skills: { - "vueuse-functions": "vueuse-functions", - }, - }, -"vuejs-ai": { - source: "https://github.com/vuejs-ai/skills", - skills: { - "vue-best-practices": "vue-best-practices", - "vue-router-best-practices": "vue-router-best-practices", - "vue-testing-best-practices": "vue-testing-best-practices", - }, - }, "web-design-guidelines": { source: "https://github.com/vercel-labs/agent-skills", skills: { "web-design-guidelines": "web-design-guidelines", }, }, - mastra: { - source: "https://github.com/mastra-ai/skills", - skills: { - mastra: "mastra", - }, - }, - "nuxt-ui": { - source: "https://github.com/nuxt/ui", - skills: { - "nuxt-ui": "nuxt-ui", - }, - }, - supabase: { - source: "https://github.com/supabase/agent-skills", - skills: { - "supabase-postgres-best-practices": "supabase-postgres-best-practices", - }, - }, - prisma: { - source: "https://github.com/prisma/skills", - skillsDir: ".", - skills: { - "prisma-cli": "prisma-cli", - "prisma-client-api": "prisma-client-api", - "prisma-database-setup": "prisma-database-setup", - "prisma-driver-adapter-implementation": "prisma-driver-adapter-implementation", - "prisma-postgres": "prisma-postgres", - "prisma-upgrade-v7": "prisma-upgrade-v7", - }, - }, - "better-auth": { - source: "https://github.com/better-auth/skills", - skillsDir: "better-auth", - skills: { - "best-practices": "best-practices", - "create-auth": "create-auth", - emailAndPassword: "emailAndPassword", - organization: "organization", - twoFactor: "twoFactor", - }, - }, - "agent-browser": { - source: "https://github.com/vercel-labs/agent-browser", - skills: { - "agent-browser": "agent-browser", - dogfood: "dogfood", - electron: "electron", - slack: "slack", - }, - }, - "ai-sdk": { - source: "https://github.com/vercel/ai", - skills: { - "use-ai-sdk": "use-ai-sdk", - }, - }, } /** * Type 3: Hand-written skills by Anthony Fu. - * These live in vendor/antfu-skills/skills/ and are copied directly to plugins/{plugin}/skills/ by the sync script. + * Migrated to skills.sh — no longer synced from vendor/antfu-skills. */ -export const manual: string[] = ["antfu"] +export const manual: string[] = [] export interface ExtensionMeta { /** Git repository URL */ source: string + /** Shallow clone depth (e.g. 1). Omit for full clone. */ + depth?: number /** Override plugin name (defaults to extension key name) */ pluginName?: string /** Skip TOML command conversion */ diff --git a/sources/nuxt b/sources/nuxt deleted file mode 160000 index 8a2219d..0000000 --- a/sources/nuxt +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 8a2219d1ea66748de6b8f754e6781cb19631382e diff --git a/sources/pinia b/sources/pinia deleted file mode 160000 index 655950a..0000000 --- a/sources/pinia +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 655950a82a499362a33107bd1fec0a78b7997dc4 diff --git a/sources/pnpm b/sources/pnpm deleted file mode 160000 index 825d256..0000000 --- a/sources/pnpm +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 825d256c036b9bff340a4e54d42f6323797a89c1 diff --git a/sources/unocss b/sources/unocss deleted file mode 160000 index ba777e1..0000000 --- a/sources/unocss +++ /dev/null @@ -1 +0,0 @@ -Subproject commit ba777e16eb27925d3595bd0eba0336f23e93ec82 diff --git a/sources/vite b/sources/vite deleted file mode 160000 index 1fa736e..0000000 --- a/sources/vite +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 1fa736e802c3f0fa0eacdda1d5d1c976794459bd diff --git a/sources/vitepress b/sources/vitepress deleted file mode 160000 index f2d826c..0000000 --- a/sources/vitepress +++ /dev/null @@ -1 +0,0 @@ -Subproject commit f2d826caa8ada547c314fe49f486747b367cebe5 diff --git a/sources/vitest b/sources/vitest deleted file mode 160000 index d0ee546..0000000 --- a/sources/vitest +++ /dev/null @@ -1 +0,0 @@ -Subproject commit d0ee546fe7013f5ec93b393730cbf4a956bc37f2 diff --git a/sources/vue b/sources/vue deleted file mode 160000 index 2951ff0..0000000 --- a/sources/vue +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 2951ff0ad155374d60455236c1e069c9ddbbb0c0 diff --git a/vendor/agent-browser b/vendor/agent-browser deleted file mode 160000 index 8f6ad81..0000000 --- a/vendor/agent-browser +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 8f6ad817f10b151b647234882f2a0fef6d2b43d1 diff --git a/vendor/ai-sdk b/vendor/ai-sdk deleted file mode 160000 index e0bd970..0000000 --- a/vendor/ai-sdk +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e0bd970732ac2c5d058985be37f85f86b7b34751 diff --git a/vendor/antfu-skills b/vendor/antfu-skills deleted file mode 160000 index 3fb90f0..0000000 --- a/vendor/antfu-skills +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 3fb90f01f5298b00de0a2500aab1ddd1357e6eb2 diff --git a/vendor/better-auth b/vendor/better-auth deleted file mode 160000 index 6a16369..0000000 --- a/vendor/better-auth +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 6a1636950a1d7fc53602639ce7505a4a5d39c797 diff --git a/vendor/mastra b/vendor/mastra deleted file mode 160000 index 5dee864..0000000 --- a/vendor/mastra +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 5dee864fad55e0f65446e9a49ad7520b200e6db4 diff --git a/vendor/nuxt-ui b/vendor/nuxt-ui deleted file mode 160000 index dd3f5c5..0000000 --- a/vendor/nuxt-ui +++ /dev/null @@ -1 +0,0 @@ -Subproject commit dd3f5c53b3e59e02e3f90eebd97fb58fb41451e3 diff --git a/vendor/prisma b/vendor/prisma deleted file mode 160000 index e47383c..0000000 --- a/vendor/prisma +++ /dev/null @@ -1 +0,0 @@ -Subproject commit e47383cb0e1bd6feb696502cccfc39837f44f4f4 diff --git a/vendor/slidev b/vendor/slidev deleted file mode 160000 index c8a7b7d..0000000 --- a/vendor/slidev +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c8a7b7d639ff0a26cf3de036505668263ef5a3b0 diff --git a/vendor/supabase b/vendor/supabase deleted file mode 160000 index 760460c..0000000 --- a/vendor/supabase +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 760460c221d30d0db904ff28e8fa52af85672255 diff --git a/vendor/vuejs-ai b/vendor/vuejs-ai deleted file mode 160000 index f3dd1bf..0000000 --- a/vendor/vuejs-ai +++ /dev/null @@ -1 +0,0 @@ -Subproject commit f3dd1bf4d3ac78331bdc903e4519d561c538ca6a diff --git a/vendor/vueuse b/vendor/vueuse deleted file mode 160000 index 075b0d6..0000000 --- a/vendor/vueuse +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 075b0d6d558cc5ca7d5ffe72a56b5fd92bbef2d1