con un clic
spectra-skills
Spectra Agent Skill Set
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Spectra Agent Skill Set
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
Serena MCP Tools — Semantic code analysis and editing with clangd for C++20 and Python
Use for any question about a codebase, its architecture, file relationships, or project content — especially when graphify-out/ exists, where the question should be treated as a graphify query first. Turns any input (code, docs, papers, images, videos) into a persistent knowledge graph with god nodes, community detection, and query/path/explain tools.
Drives a live Spectra instance via the embedded MCP automation server (default http://127.0.0.1:8765/mcp). Use for smoke tests, screenshots, UI commands, figure/series setup, and visual debugging after builds — whenever validating rendering without writing a harness.
Plan, design, and implement Spectra C++/GLSL/Python changes. Use when breaking down a feature, making architecture decisions before coding, or writing/fixing source in src/, include/spectra/, shaders, tests, or python/.
Spectra git and release workflows: conventional commits, branches, PRs, version bumps, release tags, merge conflicts, changelog. Use for commit, branch, PR, release, version.txt, squash merge, cherry-pick, or git status/diff questions.
Fix or edit Spectra GitHub Actions (.github/workflows). Use for CI failures, new matrix jobs, golden/sanitizer jobs, release.yml, lavapipe/xvfb setup, or masking vs root-cause CI fixes.
| name | spectra-skills |
| description | Spectra Agent Skill Set |
Invoke these skills when working on Spectra to apply domain-specific expertise for Vulkan rendering, animation, multi-window management, and performance optimization.
High-leverage skills (eliminate 80% of instability): Skills 1, 3, 4, and 5.
Purpose: Detect frame hitches, stalls, and synchronization issues.
Capabilities:
VK_EXT_debug_utils)Output: Stage timing breakdown, p95/p99 frame time, hitch frequency report, root cause hypothesis.
Purpose: Prevent GPU hangs and deadlocks.
Capabilities:
Output: Sync graph explanation, required corrections, risk analysis.
Purpose: Fix resize smoothness and eliminate VK_ERROR_OUT_OF_DATE_KHR thrash.
Capabilities:
vkDeviceWaitIdle in frame loopOutput: Before/after recreate count, smoothness metrics, validation error confirmation.
Purpose: Eliminate animation drift and frame skips.
Capabilities:
Output: Frame pacing graph, corrected scheduler logic, stability verification steps.
Purpose: Correct multi-window + tear-off behavior.
Capabilities:
Output: Clean state machine diagram, correct tear-off behavior, no regression in splits.
Purpose: Design robust backend ↔ agent communication.
Capabilities:
seqOutput: Protocol schema, failure mode handling plan, state consistency guarantees.
Purpose: Make Spectra faster than other plotting engines.
Capabilities:
Output: Throughput benchmarks, memory usage report, FPS comparison before/after.
Purpose: Prevent periodic stutters and leaks.
Capabilities:
Output: Allocation heatmap, removed hot-path allocations, stability confirmation.
Purpose: Make Spectra robust under adverse conditions.
Capabilities:
Output: Failure scenario report, recovery validation.
Purpose: Prevent chaos as complexity increases.
Capabilities:
WindowId, FigureId)Output: Architecture diff report, refactor recommendation with minimal blast radius.
Purpose: Catch rendering regressions.
Capabilities:
Purpose: Control a live Spectra instance from agents without writing C++ test harnesses.
Always kill existing instances first, then launch Spectra — the MCP server starts automatically.
pkill -f spectra || true
sleep 0.5
./build/app/spectra &
# Optional: SPECTRA_MCP_PORT=9000 ./build/app/spectra &
http://127.0.0.1:8765/mcp (default)
Health check: GET http://127.0.0.1:8765/ → {"name":"spectra-automation","status":"ok","endpoint":"..."}
| Tool | Purpose |
|---|---|
ping | Verify connection is alive |
get_state | Get current application state |
list_commands | List all registered UI commands |
execute_command | Execute a command by ID (e.g. "view.toggle_grid") |
mouse_move | Move cursor to {x, y} |
mouse_click | Click at {x, y, button, modifiers} |
mouse_drag | Drag from {x1,y1} to {x2,y2} |
double_click | Double-click at {x, y} |
scroll | Scroll at {x, y, dx, dy} |
key_press | Press a key {key, modifiers} |
text_input | Type text into focused widget {text} |
create_figure | Create a new figure {width, height} |
switch_figure | Switch to figure {figure_id} |
add_series | Add a series {figure_id, series_type, n_points, label} |
get_figure_info | Deep figure introspection {figure_id} |
pump_frames | Advance N frames {count} |
wait_frames | Block until N frames rendered {count} |
capture_screenshot | Save figure PNG to {path} |
capture_window | Save full-window PNG to {path} |
get_screenshot_base64 | Return screenshot as inline base64 PNG |
resize_window | Resize window {width, height} |
get_window_size | Get current window dimensions |
Standard MCP over HTTP (JSON-RPC 2.0). POST to /mcp with Content-Type: application/json.
# Health check
curl http://127.0.0.1:8765/
# List tools
curl -s -X POST http://127.0.0.1:8765/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
# Example: execute command
curl -s -X POST http://127.0.0.1:8765/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"execute_command","arguments":{"command_id":"view.toggle_grid"}}}'
# Example: capture screenshot
curl -s -X POST http://127.0.0.1:8765/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"capture_window","arguments":{"path":"/tmp/spectra_snap.png"}}}'
| Variable | Default | Description |
|---|---|---|
SPECTRA_MCP_PORT | 8765 | HTTP port for the MCP server |
SPECTRA_MCP_BIND | 127.0.0.1 | Bind address |