Issue Creation Skill
This skill provides capabilities for creating, triaging, and formatting issues in the Corrupt Video File Inspector project.
When to Use
Use this skill when:
- Creating a new issue for the project
- Triaging an unstructured issue submission
- Reformatting an existing issue to match project templates
- Analyzing issue content to determine appropriate labels and categories
Available Issue Types
Bug Report ([FIX]: prefix)
For reporting bugs or issues with the application.
Required sections:
- Stakeholder Type
- Component/Domain
- I want to (expected behavior)
- But (actual problem)
- This helps by (impact of fix)
- Unlike (contrast with expected)
- Steps to Reproduce
- Environment Information
- Error Logs/Output
Feature Request ([FEAT]: prefix)
For proposing new features or enhancements.
Required sections:
- Stakeholder Type
- Component/Domain
- I want to (desired feature)
- But (current limitation)
- This helps by (benefit)
- Unlike (alternatives)
- Additional Context
Chore/Maintenance ([CHORE]: prefix)
For maintenance tasks, dependency updates, or project improvements.
Required sections:
- Stakeholder Type
- Component/Domain
- I want to (task description)
- But (current issue)
- This helps by (benefit)
- Unlike (current state)
- Maintenance Task Type
- Specific Tasks
Documentation ([DOCS]: prefix)
For documentation updates or improvements.
Required sections:
- Stakeholder Type
- Component/Domain (Documentation)
- I want to (documentation change)
- But (current state)
- This helps by (improvement)
- Unlike (current documentation)
Quick Capture ([QUICK]: prefix)
For unstructured input that will be automatically triaged.
Required sections:
- Summary
- Additional Details (optional)
Component/Domain Options
- CLI
- Scanner
- Trakt Integration
- Config
- Reporter
- Output
- Docker
- CI/CD
- GitHub Actions
- Tests
- Documentation
- Other
Stakeholder Types
- Project Maintainer
- Contributor
- End User
Classification Keywords
When analyzing issue content, use these keywords to determine the appropriate category:
Bug Indicators
bug, error, crash, fail, broken, issue, problem, not working, exception, traceback
Feature Indicators
feature, enhancement, request, add, improve, want, would be nice, suggestion, propose
Documentation Indicators
documentation, docs, readme, typo, clarify, explain
Performance Indicators
performance, slow, fast, optimize, speed, memory
Automated Triage Process
- User submits issue via Quick Capture template
- Issue receives
triage:agent-pending label
- Issue Triage Agent workflow triggers
- Original content is preserved as a comment
- Issue is classified based on keywords
- Component and stakeholder are detected based on content analysis
- Issue title is cleaned (tags like [QUICK], [FEAT], etc. are removed)
- Issue body is reformatted to match appropriate template (without Component/Domain and Stakeholder Type sections)
- Metadata comment is posted with:
- Classification type
- Confidence percentage
- Detected component
- Detected stakeholder
- Gap analysis (missing information)
- Labels are automatically applied:
triage:agent-pending removed
triage:agent-processed added
- Type-specific label added (bug, feature, chore, documentation, performance)
- Component label added (component:cli, component:scanner, component:github-actions, component:unknown, etc.)
- Stakeholder label added (stakeholder:maintainer, stakeholder:contributor, stakeholder:user)
- Issue is automatically assigned to @Copilot
Component Detection
The agent uses enhanced keyword detection to identify the correct component:
- GitHub Actions: agent, agent file, .github/agents, .github/workflows, github actions, action, workflow file, yml workflow, yaml workflow
- CI/CD: ci, cd, pipeline, continuous integration, continuous deployment, build pipeline, automation workflow
- Trakt Integration: trakt, sync, watchlist, collection
- Docker: docker, container, dockerfile, compose
- CLI: cli, command line, command-line, terminal, console, argv
- Scanner: scanner, scanning, scan, detect, detection, analyze, analysis
- Config: config file, configuration file, config settings, config options, config.yaml, config.yml, app config, user config, yaml config
- Reporter: reporter, report, summary, results
- Output: output, export, csv, json, format
- Tests: test, testing, pytest, unittest, coverage, mock
- Documentation: documentation, docs, readme, guide, tutorial
- Unknown: fallback when no component keywords match
File Format Selection Guidelines
When working with issue creation, triage, and formatting, choose the appropriate file format based on access patterns and optimization goals:
JSON Lines (.jsonl)
Primary Goal: Speed of access and scalability for massive data
- Access Frequency: High (frequent "lookups")
- Speed: Fastest for large files - use
grep, sed, or tail to grab specific lines without loading entire file into memory
- Token Use: Moderate
- Information Density: Low - structure is repeated on every line, which wastes tokens if reading the whole file
- Skill Advantage: When searching through issue processing history (e.g., "Find all issues triaged in last week"), use shell tools to return just the relevant lines. This keeps the context window clean and tool execution instant.
When to Use:
- Issue processing logs and history
- Triage operation tracking
- Bulk issue import/export
- When you need to append without parsing entire file
Example Use Cases:
- Issue triage agent operation logs
- Historical issue classification records
- Automated label application history
YAML (.yaml)
Primary Goal: Token efficiency and visual hierarchy for the LLM
- Access Frequency: Low (usually read once at the start of a task)
- Speed: Slower to parse for machines (Python's YAML libraries are slower than JSON)
- Token Use: Most Efficient - removing brackets, quotes, and commas can reduce token counts by 20-40% compared to JSON
- Information Density: High - indentation provides spatial cues that help LLMs understand nested relationships
- Skill Advantage: Best for issue template definitions where you need to see the entire structure. Leaves more room in the context window for actual triage logic.
When to Use:
- Issue template definitions
- Label configuration
- Workflow automation rules
- When human readability is important
Example Use Cases:
- Issue templates (.github/ISSUE_TEMPLATE/*.yml)
- GitHub Actions workflow files
- Issue labeling rules configuration
Markdown (.md)
Primary Goal: Information density and semantic understanding
- Access Frequency: High (issue bodies, comments)
- Speed: Fast to parse - plain text with minimal structure
- Token Use: Efficient - natural language with semantic structure
- Information Density: Highest - combines prose with structure, allows LLMs to understand context and relationships naturally
- Skill Advantage: Best for issue descriptions, comments, and triage explanations. Headers, lists, and formatting provide semantic cues for understanding issue context and classification reasoning.
When to Use:
- Issue descriptions and bodies
- Comments and triage explanations
- Agent instructions and skill documentation
- When context and explanation are critical
Example Use Cases:
- Issue bodies (all issue content is Markdown)
- Triage metadata comments
- Classification explanations
- Agent instruction files
Format Selection Decision Tree
- Need to track issue operations over time? → Use JSONL
- Need to define issue template structure? → Use YAML
- Need to write issue content or explanations? → Use Markdown
- Need to search through historical triage data? → Use JSONL
- Need to configure labeling rules? → Use YAML
- Need to provide classification reasoning? → Use Markdown
Optimization Trade-offs
| Format |
Parse Speed |
Token Efficiency |
Information Density |
Random Access |
| JSONL |
★★★★★ |
★★★ |
★★ |
★★★★★ |
| YAML |
★★ |
★★★★★ |
★★★★ |
★★ |
| Markdown |
★★★★ |
★★★★ |
★★★★★ |
★★★ |
Example Usage
Creating a Bug Report
### Stakeholder Type
End User
### Component/Domain
CLI
### I want to
Scan a directory of video files and get a report of corrupted files.
### But
The application crashes when encountering a specific video codec.
### This helps by
Allowing users to reliably scan all video formats.
### Unlike
The current behavior which causes the scan to fail completely.
### Steps to Reproduce
1. Create a directory with MKV files using VP9 codec
2. Run `corrupt-video-inspector scan /path/to/videos`
3. Application crashes with segmentation fault
### Environment Information
- OS: Ubuntu 22.04
- Python version: 3.13.0
- Application version: 2.0.0
### Error Logs/Output
Segmentation fault (core dumped)
Creating a Feature Request
### Stakeholder Type
Contributor
### Component/Domain
Scanner
### I want to
Add support for parallel video scanning to improve performance.
### But
Currently, videos are scanned sequentially which is slow for large libraries.
### This helps by
Reducing scan time by utilizing multiple CPU cores.
### Unlike
The current sequential scanning approach.
### Additional Context
Consider using Python's multiprocessing module with a configurable worker pool.
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: issue-creation-23description: Skill for creating and triaging issues in the Corrupt Video File Inspector project Use when this capability is needed.4---56# Issue Creation Skill78This skill provides capabilities for creating, triaging, and formatting issues in the Corrupt Video File Inspector project.910## When to Use1112Use this skill when:13- Creating a new issue for the project14- Triaging an unstructured issue submission15- Reformatting an existing issue to match project templates16- Analyzing issue content to determine appropriate labels and categories1718## Available Issue Types1920### Bug Report (`[FIX]:` prefix)21For reporting bugs or issues with the application.2223**Required sections:**24- Stakeholder Type25- Component/Domain26- I want to (expected behavior)27- But (actual problem)28- This helps by (impact of fix)29- Unlike (contrast with expected)30- Steps to Reproduce31- Environment Information32- Error Logs/Output3334### Feature Request (`[FEAT]:` prefix)35For proposing new features or enhancements.3637**Required sections:**38- Stakeholder Type39- Component/Domain40- I want to (desired feature)41- But (current limitation)42- This helps by (benefit)43- Unlike (alternatives)44- Additional Context4546### Chore/Maintenance (`[CHORE]:` prefix)47For maintenance tasks, dependency updates, or project improvements.4849**Required sections:**50- Stakeholder Type51- Component/Domain52- I want to (task description)53- But (current issue)54- This helps by (benefit)55- Unlike (current state)56- Maintenance Task Type57- Specific Tasks5859### Documentation (`[DOCS]:` prefix)60For documentation updates or improvements.6162**Required sections:**63- Stakeholder Type64- Component/Domain (Documentation)65- I want to (documentation change)66- But (current state)67- This helps by (improvement)68- Unlike (current documentation)6970### Quick Capture (`[QUICK]:` prefix)71For unstructured input that will be automatically triaged.7273**Required sections:**74- Summary75- Additional Details (optional)7677## Component/Domain Options7879- CLI80- Scanner81- Trakt Integration82- Config83- Reporter84- Output85- Docker86- CI/CD87- GitHub Actions88- Tests89- Documentation90- Other9192## Stakeholder Types9394- Project Maintainer95- Contributor96- End User9798## Classification Keywords99100When analyzing issue content, use these keywords to determine the appropriate category:101102### Bug Indicators103`bug`, `error`, `crash`, `fail`, `broken`, `issue`, `problem`, `not working`, `exception`, `traceback`104105### Feature Indicators106`feature`, `enhancement`, `request`, `add`, `improve`, `want`, `would be nice`, `suggestion`, `propose`107108### Documentation Indicators109`documentation`, `docs`, `readme`, `typo`, `clarify`, `explain`110111### Performance Indicators112`performance`, `slow`, `fast`, `optimize`, `speed`, `memory`113114## Automated Triage Process1151161. User submits issue via Quick Capture template1172. Issue receives `triage:agent-pending` label1183. Issue Triage Agent workflow triggers1194. Original content is preserved as a comment1205. Issue is classified based on keywords1216. Component and stakeholder are detected based on content analysis1227. Issue title is cleaned (tags like [QUICK], [FEAT], etc. are removed)1238. Issue body is reformatted to match appropriate template (without Component/Domain and Stakeholder Type sections)1249. Metadata comment is posted with:125 - Classification type126 - Confidence percentage127 - Detected component128 - Detected stakeholder129 - Gap analysis (missing information)13010. Labels are automatically applied:131 - `triage:agent-pending` removed132 - `triage:agent-processed` added133 - Type-specific label added (bug, feature, chore, documentation, performance)134 - Component label added (component:cli, component:scanner, component:github-actions, component:unknown, etc.)135 - Stakeholder label added (stakeholder:maintainer, stakeholder:contributor, stakeholder:user)13611. Issue is automatically assigned to @Copilot137138## Component Detection139140The agent uses enhanced keyword detection to identify the correct component:141142- **GitHub Actions**: agent, agent file, .github/agents, .github/workflows, github actions, action, workflow file, yml workflow, yaml workflow143- **CI/CD**: ci, cd, pipeline, continuous integration, continuous deployment, build pipeline, automation workflow144- **Trakt Integration**: trakt, sync, watchlist, collection145- **Docker**: docker, container, dockerfile, compose146- **CLI**: cli, command line, command-line, terminal, console, argv147- **Scanner**: scanner, scanning, scan, detect, detection, analyze, analysis148- **Config**: config file, configuration file, config settings, config options, config.yaml, config.yml, app config, user config, yaml config149- **Reporter**: reporter, report, summary, results150- **Output**: output, export, csv, json, format151- **Tests**: test, testing, pytest, unittest, coverage, mock152- **Documentation**: documentation, docs, readme, guide, tutorial153- **Unknown**: fallback when no component keywords match154155## File Format Selection Guidelines156157When working with issue creation, triage, and formatting, choose the appropriate file format based on access patterns and optimization goals:158159### JSON Lines (.jsonl)160161**Primary Goal**: Speed of access and scalability for massive data162163- **Access Frequency**: High (frequent "lookups")164- **Speed**: **Fastest** for large files - use `grep`, `sed`, or `tail` to grab specific lines without loading entire file into memory165- **Token Use**: Moderate166- **Information Density**: Low - structure is repeated on every line, which wastes tokens if reading the whole file167- **Skill Advantage**: When searching through issue processing history (e.g., "Find all issues triaged in last week"), use shell tools to return just the relevant lines. This keeps the context window clean and tool execution instant.168169**When to Use**:170- Issue processing logs and history171- Triage operation tracking172- Bulk issue import/export173- When you need to append without parsing entire file174175**Example Use Cases**:176- Issue triage agent operation logs177- Historical issue classification records178- Automated label application history179180### YAML (.yaml)181182**Primary Goal**: Token efficiency and visual hierarchy for the LLM183184- **Access Frequency**: Low (usually read once at the start of a task)185- **Speed**: Slower to parse for machines (Python's YAML libraries are slower than JSON)186- **Token Use**: **Most Efficient** - removing brackets, quotes, and commas can reduce token counts by 20-40% compared to JSON187- **Information Density**: High - indentation provides spatial cues that help LLMs understand nested relationships188- **Skill Advantage**: Best for issue template definitions where you need to see the entire structure. Leaves more room in the context window for actual triage logic.189190**When to Use**:191- Issue template definitions192- Label configuration193- Workflow automation rules194- When human readability is important195196**Example Use Cases**:197- Issue templates (.github/ISSUE_TEMPLATE/*.yml)198- GitHub Actions workflow files199- Issue labeling rules configuration200201### Markdown (.md)202203**Primary Goal**: Information density and semantic understanding204205- **Access Frequency**: High (issue bodies, comments)206- **Speed**: Fast to parse - plain text with minimal structure207- **Token Use**: Efficient - natural language with semantic structure208- **Information Density**: **Highest** - combines prose with structure, allows LLMs to understand context and relationships naturally209- **Skill Advantage**: Best for issue descriptions, comments, and triage explanations. Headers, lists, and formatting provide semantic cues for understanding issue context and classification reasoning.210211**When to Use**:212- Issue descriptions and bodies213- Comments and triage explanations214- Agent instructions and skill documentation215- When context and explanation are critical216217**Example Use Cases**:218- Issue bodies (all issue content is Markdown)219- Triage metadata comments220- Classification explanations221- Agent instruction files222223### Format Selection Decision Tree2242251. **Need to track issue operations over time?** → Use JSONL2262. **Need to define issue template structure?** → Use YAML2273. **Need to write issue content or explanations?** → Use Markdown2284. **Need to search through historical triage data?** → Use JSONL2295. **Need to configure labeling rules?** → Use YAML2306. **Need to provide classification reasoning?** → Use Markdown231232### Optimization Trade-offs233234| Format | Parse Speed | Token Efficiency | Information Density | Random Access |235|----------|-------------|------------------|---------------------|---------------|236| JSONL | ★★★★★ | ★★★ | ★★ | ★★★★★ |237| YAML | ★★ | ★★★★★ | ★★★★ | ★★ |238| Markdown | ★★★★ | ★★★★ | ★★★★★ | ★★★ |239240## Example Usage241242### Creating a Bug Report243244```markdown245### Stakeholder Type246247End User248249### Component/Domain250251CLI252253### I want to254255Scan a directory of video files and get a report of corrupted files.256257### But258259The application crashes when encountering a specific video codec.260261### This helps by262263Allowing users to reliably scan all video formats.264265### Unlike266267The current behavior which causes the scan to fail completely.268269### Steps to Reproduce2702711. Create a directory with MKV files using VP9 codec2722. Run `corrupt-video-inspector scan /path/to/videos`2733. Application crashes with segmentation fault274275### Environment Information276277- OS: Ubuntu 22.04278- Python version: 3.13.0279- Application version: 2.0.0280281### Error Logs/Output282283```284Segmentation fault (core dumped)285```286```287288### Creating a Feature Request289290```markdown291### Stakeholder Type292293Contributor294295### Component/Domain296297Scanner298299### I want to300301Add support for parallel video scanning to improve performance.302303### But304305Currently, videos are scanned sequentially which is slow for large libraries.306307### This helps by308309Reducing scan time by utilizing multiple CPU cores.310311### Unlike312313The current sequential scanning approach.314315### Additional Context316317Consider using Python's multiprocessing module with a configurable worker pool.318```319320---321> Converted and distributed by [TomeVault](https://tomevault.io/claim/tdorsey) — claim your Tome and manage your conversions.322<!-- tomevault:4.0:skill_md:2026-04-15 -->