create-technical-spike
Create time-boxed technical spike documents for researching and resolving critical development decisions before implementation.
What this skill does
# 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`).
```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.md`
- `api-azure-speech-realtime-spike.md`
- `api-vscode-extension-capabilities-spike.md`
**Performance Examples:**
- `performance-audio-processing-latency-spike.md`
- `performance-extension-host-limitations-spike.md`
- `performance-webrtc-reliability-spike.md`
**Architecture Examples:**
- `architecture-voice-pipeline-design-spike.md`
- `architecture-state-management-spike.md`
- `architecture-error-handling-strategy-spike.md`
## Best Practices for AI Agents
1. **One Question Per Spike:** Each document focuses on a single technical decision or research question
2. **Time-Boxed Research:** Define specific time limits and deliverables for each spike
3. **Evidence-Based Decisions:** Require concrete evidence (tests, prototypes, documentation) before marking as complete
4. **Clear Recommendations:** Document specific recommendations and rationale for implementation
5. **Dependency Tracking:** Identify how spikes relate to each other and impact project decisions
6. **Outcome-Focused:** Every spike must result in an actionable decision or recommendation
## Research Strategy
### Phase 1: Information Gathering
1. **Search existing documentation** using search/fetch tools
2. **Analyze codebase** for existing patterns and constraints
3. **Research external resources** (APIs, libraries, examples)
### Phase 2: Validation & Testing
1. **Create focused prototypes** to test specific hypotheses
2. **Run targeted experiments** to validate assumptions
3. **Document test results** with supporting evidence
### Phase 3: Decision & Documentation
1. **Synthesize findings** into clear recommendations
2. **Document implementation guidance** for development team
3. **Create follow-up tasks** for implementation
## Tools Usage
- **search/searchResults:** Research existing solutions and documentation
- **fetch/githubRepo:** Analyze external APIs, libraries, and examples
- **codebase:** Understand existing system constraints and patterns
- **runTasks:** Execute prototypes and validation tests
- **editFiles:** Update research progress and findings
- **vscodeAPI:** Test VS Code extension capabilities and limitations
Focus on time-boxed research that resolves critical technical decisions and unblocks development progress.
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.