Initial: pi-skill — 68 skills, 43 extensions, 11 themes for Pi

This commit is contained in:
Kunthawat Greethong
2026-05-25 16:38:02 +07:00
commit 69f7d8bdda
1689 changed files with 342427 additions and 0 deletions

View File

@@ -0,0 +1,244 @@
---
description: "Clean up stale terminal sessions - check health, remove zombies, and self-cleanup when done"
argument-hint: "[status|cleanup|terminate <session_id>|cleanup-self]"
allowed-tools: ["mcp__commander__commander_session_cleanup", "mcp__commander__commander_terminal_sessions"]
---
# Commander Session Cleanup - Terminal Session Lifecycle Management
This command manages terminal session lifecycle and cleanup. Use it to:
- Check session health (stale/zombie counts)
- Clean up old sessions (>24 hours)
- Terminate specific sessions
- Clean up your own session when done
## IMPORTANT: Agent Self-Cleanup Protocol
**Every agent should follow this cleanup protocol:**
1. **At start of major work:** Check session health with `status` operation
2. **If >10 REALLY stale sessions:** Clean them up proactively with `cleanup`
3. **When work is DONE:** Call `terminate_self` to clean up your own session
```
MANDATORY: Sessions older than 24 hours are REALLY stale.
Sessions older than 48 hours are ZOMBIES and MUST be cleaned.
```
---
## Input
Operation: **$ARGUMENTS**
### Available Operations
| Operation | Example | Description |
|-----------|---------|-------------|
| `status` | `/session-cleanup status` | Check stale session counts |
| `cleanup` | `/session-cleanup cleanup` | Remove sessions >24h old |
| `cleanup 6` | `/session-cleanup cleanup 6` | Remove sessions >6h old |
| `terminate <id>` | `/session-cleanup terminate abc-123` | Terminate specific session |
| `cleanup-self` | `/session-cleanup cleanup-self` | Terminate your own session |
---
## Workflow
### 1. Check Session Health (status)
```
mcp__commander__commander_session_cleanup(
operation="status"
)
```
**Returns:**
```
Session Health:
- Total: 45
- Active: 12
- Stale (>6h): 8
- REALLY Stale (>24h): 15
- Zombie (>48h): 10
Recommendation: Run cleanup_stale immediately! (15 REALLY stale sessions)
```
### 2. Clean Up Stale Sessions (cleanup_stale)
```
mcp__commander__commander_session_cleanup(
operation="cleanup_stale",
min_age_hours=24, // Default: 24 hours
include_browser_mode=true, // Default: true
dry_run=false // Set true to preview
)
```
**Returns:**
```
Cleaned up 25 stale sessions:
- 15 sessions >24 hours old terminated
- 10 zombie sessions (>48h) terminated
Sessions cleaned:
- abc-123: claude, health-dashboard, 36h old
- def-456: cursor, commander, 48h old
...
```
### 3. Terminate Specific Session (terminate)
```
mcp__commander__commander_session_cleanup(
operation="terminate",
session_id="abc-123-def-456"
)
```
### 4. Clean Up Your Own Session (terminate_self)
**Call this when your work is complete:**
```
mcp__commander__commander_session_cleanup(
operation="terminate_self"
)
```
---
## Staleness Thresholds
| Threshold | Time | Status | Action |
|-----------|------|--------|--------|
| Active | <6h | Healthy | None |
| Stale | 6-24h | Warning | Monitor |
| REALLY Stale | 24-48h | Cleanup candidate | Should clean |
| Zombie | >48h | Critical | MUST clean |
---
## Dry Run Mode
To preview what would be cleaned without actually cleaning:
```
mcp__commander__commander_session_cleanup(
operation="cleanup_stale",
dry_run=true
)
```
**Returns:**
```
DRY RUN - Would clean up 25 sessions:
- 15 sessions >24 hours old
- 10 zombie sessions (>48h)
No sessions were actually terminated. Run without dry_run=true to clean.
```
---
## MCP Tool Reference
```typescript
{
name: 'commander_session_cleanup',
description: 'Manage terminal session lifecycle and cleanup stale sessions.',
inputSchema: {
operation: 'status' | 'cleanup_stale' | 'terminate' | 'terminate_self',
session_id?: string, // Required for 'terminate'
min_age_hours?: number, // Default: 24
dry_run?: boolean, // Default: false
include_browser_mode?: boolean // Default: true
}
}
```
---
## Best Practices for Agents
### On Session Startup
```typescript
// Check if cleanup is needed
const status = await mcp__commander__commander_session_cleanup({
operation: "status"
});
if (status.really_stale_24h > 10) {
// Clean up before starting work
await mcp__commander__commander_session_cleanup({
operation: "cleanup_stale",
min_age_hours: 24
});
}
```
### On Session Completion
```typescript
// Always clean up your own session when done
await mcp__commander__commander_session_cleanup({
operation: "terminate_self"
});
```
### Periodic Health Check
```typescript
// If session count seems high, check and clean
const sessions = await mcp__commander__commander_terminal_sessions({
operation: "list"
});
if (sessions.length > 20) {
// Too many sessions - clean up zombies
await mcp__commander__commander_session_cleanup({
operation: "cleanup_stale",
min_age_hours: 48 // Only clean zombies
});
}
```
---
## Usage Examples
```bash
# Check current session health
/session-cleanup status
# Clean up all sessions older than 24 hours
/session-cleanup cleanup
# Clean up all sessions older than 6 hours
/session-cleanup cleanup 6
# Preview what would be cleaned (dry run)
/session-cleanup cleanup --dry-run
# Terminate a specific session
/session-cleanup terminate abc-123-def-456
# Clean up your own session when done
/session-cleanup cleanup-self
```
---
## Why This Matters
**Problem:** Terminal sessions persist indefinitely in Commander. Without cleanup:
- Memory usage grows continuously
- 64+ stale sessions can accumulate
- Dashboard becomes cluttered
- System performance degrades
**Solution:** Responsible agents clean up after themselves:
1. Check session health at start
2. Proactively clean stale sessions
3. Terminate their own session when done
**Goal:** Keep active sessions < 20 at any time