create-technical-spike
Helps your agent create a technical research plan. It documents important development decisions before starting to code.
What it does
This agent creates 'technical spike' documents to investigate and resolve important questions before starting to code. It helps define what needs to be discovered, how to research it, and the deadline for it.
When to use it
- ✓When there's a critical technical decision to be made.
- ✓Before starting a complex new feature.
- ✓To understand the risks of a new technology.
Example of what to ask your AI
“Create a technical spike on how to integrate payment system X with our current system, with a 3-day deadline.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
You tell me what technical question needs an answer and how much time we have. I'll create a document with a research plan, tasks, and a space to record findings and the final decision.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add github/awesome-copilot --skill create-technical-spikeOr download just the file:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/create-technical-spike/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
Create Technical Spike Document
Create time-boxed technical spike documents for researching critical questions that must be answered before development can proceed. Each spike focuses on a specific technical decision with clear deliverables and timelines.
Document Structure
Create individual files in ${input:FolderPath|docs/spikes} directory. Name each file using the pattern: [category]-[short-description]-spike.md (e.g., api-copilot-integration-spike.md, performance-realtime-audio-spike.md).
---
title: "${input:SpikeTitle}"
category: "${input:Category|Technical}"
status: "🔴 Not Started"
priority: "${input:Priority|High}"
timebox: "${input:Timebox|1 week}"
created: [YYYY-MM-DD]
updated: [YYYY-MM-DD]
owner: "${input:Owner}"
tags: ["technical-spike", "${input:Category|technical}", "research"]
---
# ${input:SpikeTitle}
## Summary
**Spike Objective:** [Clear, specific question or decision that needs resolution]
**Why This Matters:** [Impact on development/architecture decisions]
**Timebox:** [How much time allocated to this spike]
**Decision Deadline:** [When this must be resolved to avoid blocking development]
## Research Question(s)
**Primary Question:** [Main technical question that needs answering]
**Secondary Questions:**
- [Related question 1]
- [Related question 2]
- [Related question 3]
## Investigation Plan
### Research Tasks
- [ ] [Specific research task 1]
- [ ] [Specific research task 2]
- [ ] [Specific research task 3]
- [ ] [Create proof of concept/prototype]
- [ ] [Document findings and recommendations]
### Success Criteria
**This spike is complete when:**
- [ ] [Specific criteria 1]
- [ ] [Specific criteria 2]
- [ ] [Clear recommendation documented]
- [ ] [Proof of concept completed (if applicable)]
## Technical Context
**Related Components:** [List system components affected by this decision]
**Dependencies:** [What other spikes or decisions depend on resolving this]
**Constraints:** [Known limitations or requirements that affect the solution]
## Research Findings
### Investigation Results
[Document research findings, test results, and evidence gathered]
### Prototype/Testing Notes
[Results from any prototypes, spikes, or technical experiments]
### External Resources
- [Link to relevant documentation]
- [Link to API references]
- [Link to community discussions]
- [Link to examples/tutorials]
## Decision
### Recommendation
[Clear recommendation based on research findings]
### Rationale
[Why this approach was chosen over alternatives]
### Implementation Notes
[Key considerations for implementation]
### Follow-up Actions
- [ ] [Action item 1]
- [ ] [Action item 2]
- [ ] [Update architecture documents]
- [ ] [Create implementation tasks]
## Status History
| Date | Status | Notes |
| ------ | -------------- | -------------------------- |
| [Date] | 🔴 Not Started | Spike created and scoped |
| [Date] | 🟡 In Progress | Research commenced |
| [Date] | 🟢 Complete | [Resolution summary] |
---
_Last updated: [Date] by [Name]_
Categories for Technical Spikes
API Integration
- Third-party API capabilities and limitations
- Integration patterns and authentication
- Rate limits and performance characteristics
Architecture & Design
- System architecture decisions
- Design pattern applicability
- Component interaction models
Performance & Scalability
- Performance requirements and constraints
- Scalability bottlenecks and solutions
- Resource utilization patterns
Platform & Infrastructure
- Platform capabilities and limitations
- Infrastructure requirements
- Deployment and hosting considerations
Security & Compliance
- Security requirements and implementations
- Compliance constraints
- Authentication and authorization approaches
User Experience
- User interaction patterns
- Accessibility requirements
- Interface design decisions
File Naming Conventions
Use descriptive, kebab-case names that indicate the category and specific unknown:
API/Integration Examples:
api-copilot-chat-integration-spike.mdapi-azure-speech-realtime-spike.mdapi-vscode-extension-capabilities-spike.md
Performance Examples:
performance-audio-processing-latency-spike.mdperformance-extension-host-limitations-spike.mdperformance-webrtc-reliability-spike.md
Architecture Examples:
architecture-voice-pipeline-design-spike.md
…
FAQ
What is a 'technical spike'?
It's a short, defined period of time dedicated to researching and answering a specific technical question before starting development.
Why use this?
It helps prevent future problems, ensures technical decisions are well-thought-out, and avoids wasting time on development based on wrong assumptions.
What happens after the research?
The document concludes with a clear recommendation and notes for the implementer, ensuring the team knows the way forward.
Details
Original description by the author
Create time-boxed technical spike documents for researching and resolving critical development decisions before implementation.
repo: github/awesome-copilot
Popularity
- GitHub stars
- 40k
- Ranking position
- #5089
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
acquire-codebase-knowledge
Helps your agent understand and document an existing code project. It's useful for onboarding new people or getting an overview of the architecture.
github/awesome-copilot
acreadiness-assess
Enables your agent to assess a project's readiness for AI and generate a report. It's useful for understanding how well a project is prepared to use AI tools.
github/awesome-copilot
acreadiness-generate-instructions
Helps your agent create instructions for AI tools based on an assessment. It's useful for improving how AI interacts with code and closing identified gaps.
github/awesome-copilot
acreadiness-policy
Enables your agent to help define or apply policies for AI project assessment. It's useful for standardizing how projects are evaluated and ensuring compliance.
github/awesome-copilot
Similar skills
intent-driven-development
Helps your agent turn ideas into clear, testable plans. Defines criteria to ensure changes are made correctly and safely.
affaan-m/ECC
product-capability
Guides your agent in turning product ideas into clear plans. It defines what needs to be done, the limits, and decisions before development.
affaan-m/ECC
article-writing
Writes long-form content like articles, guides, and blog posts with a unique style. It's useful when you need well-written texts with a consistent voice and credibility.
affaan-m/ECC