spike

Build throwaway prototype experiments to validate technical feasibility before committing to a build.

Updated May 3, 2026
One-click install
npx skills add https://github.com/80portisfound/vibe-learning --skill spike-80portisfound
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: spike
Source: https://github.com/80portisfound/vibe-learning/tree/main/packages/hermes/skills/software-development/spike
Command: npx skills add https://github.com/80portisfound/vibe-learning --skill spike-80portisfound

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? It answers feasibility questions that research alone cannot resolve by building small, disposable experiments, so you avoid committing to an approach that turns out to be unworkable. ## Core Features & Use Cases - Decompose and Prioritize: Break an idea into 2-5 independent feasibility questions framed as Given/When/Then, ordered by risk so the idea-killing question runs first. - Research Then Build: Compare competing libraries or approaches in a pros/cons table, pick one, then build a runnable CLI, HTML page, or small server the user can interact with. - Verdicts and Comparisons: Close each spike with a VALIDATED, PARTIAL, or INVALIDATED verdict, plus head-to-head tables for comparison spikes (e.g., pdfjs vs camelot). - Use Case: Before building a streaming chat feature, spike whether websocket token streaming delivers chunks under 100ms, then throw the code away and start the real build with evidence. ## Quick Start Ask the agent to spike whether your chosen library can handle your core use case before you commit to the full implementation.

Frequently Asked Questions about spike

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I validate a technical idea before building it?▼

Run a spike: decompose the idea into 2-5 independent feasibility questions framed as Given/When/Then, order them by risk, then build a small throwaway prototype for each. Close every spike with a VALIDATED, PARTIAL, or INVALIDATED verdict.

How do I compare two libraries for the same task?▼

Build comparison spikes with a shared number and letter suffixes, such as 002a and 002b, testing each approach against the same question. Finish with a head-to-head table covering extraction quality, setup complexity, and performance, then declare a winner for your use case.

When should I not use a spike?▼

Skip spiking when the answer is knowable from documentation or reading existing code, when the work is on the production path and needs real planning, or when the idea is already validated. Spikes exist only for questions research cannot answer.

What makes a good spike question?▼

A good spike question targets a specific feasibility concern with observable output, such as whether websocket streaming delivers chunks under 100ms. Bad questions are too broad, produce nothing observable, or amount to just reading documentation.

What should a spike prototype include?▼

Each spike lives in its own directory with a README and minimal code, biased toward something interactive like a runnable CLI, a small HTML page, or a single-endpoint server. Hardcode configuration, avoid build tooling, and test edge cases before declaring a verdict.