This skill should be used when implementing commands with visual feedback. All commands should use TaskCreate/TaskUpdate to show spinners during operations, hiding verbose output until completion. <example> Context: Command needs a loading spinner user: "Add a spinner while indexing" </example> <example> Context: Command output needs formatting user: "Show a clean summary after the operation" </example>
From psnnpx claudepluginhub aladac/claude-pluginsThis skill uses the workspace's default tool permissions.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Deploys Linkerd service mesh on Kubernetes with patterns for installation, proxy injection, mTLS, service profiles (retries/metrics), traffic splits (canary), and authorization policies.
All psn commands should provide clean visual feedback using Claude Code's native Task system.
TaskCreate(
subject: "Brief action description",
description: "Detailed context for task tracking",
activeForm: "Doing the thing..." // Shown with spinner
)
Run the actual operations. Output is captured, not streamed.
TaskUpdate(taskId: "...", status: "completed")
After completing, display a concise summary:
The activeForm text appears next to a spinner. Keep it:
| Operation | activeForm |
|---|---|
| Store memory | "Storing memory..." |
| Recall memories | "Searching memories..." |
| Index code | "Indexing 247 files..." |
| Save session | "Saving session state..." |
| TTS speak | "Synthesizing speech..." |
---
name: action:name
description: Brief description
allowed-tools:
- TaskCreate
- TaskUpdate
- relevant_tool
argument-hint: "[args]"
---
# Action Name
Brief description.
## Execution Flow
1. **Create task with spinner**:
- TaskCreate with descriptive activeForm
2. **Execute operation**:
- Call relevant tools
- Capture results
3. **Complete task**:
- TaskUpdate to mark completed
4. **Show summary**:
- Clean output with key info
- Errors/warnings if any
## Example
User: `/action:name arg`
Claude creates task: "Doing action..." (spinner)
Claude executes operation
Claude completes task
Claude shows:
Done: processed 42 items
Details:
On error:
Error: Could not connect to database
- Check network connectivity: `ping <host>`
- Verify the service is running
For commands with multiple steps, update the activeForm:
TaskCreate(subject: "Full operation", activeForm: "Step 1 of 3...")
// do step 1
TaskUpdate(taskId: "...", activeForm: "Step 2 of 3...")
// do step 2
TaskUpdate(taskId: "...", activeForm: "Step 3 of 3...")
// do step 3
TaskUpdate(taskId: "...", status: "completed")
| Tool | Purpose |
|---|---|
TaskCreate | Create task with spinner |
TaskUpdate | Update progress or complete |
TaskList | Check existing tasks |
TaskGet | Get task details |