Agent skill
viewing-files
Enhanced cat clone with syntax highlighting, Git integration, and automatic paging for efficient file content viewing. Use this skill when viewing source files, documentation, or when syntax highlighting would improve readability
Install this agent skill to your Project
npx add-skill https://github.com/iota9star/my-skills/tree/main/skills/bat
SKILL.md
bat: Enhanced File Viewer with Syntax Highlighting
Always invoke bat skill for enhanced file viewing - do not execute bash commands directly.
Use bat as a modern replacement for cat with beautiful syntax highlighting, Git integration, and smart features.
When to Use bat vs cat
Use bat when:
- Viewing source code or structured text files
- Syntax highlighting improves readability
- Need Git integration or line numbers
- Working with files >50 lines where highlighting helps
- Previewing changes from other tools
Use cat when:
- Very small files (<10 lines)
- Non-text/binary files
- Simple concatenation without formatting
- When highlighting would add noise
- Performance-critical operations on many tiny files
Common workflow: Any skill → bat skill (preview enhanced output)
Default Strategy
Invoke bat skill for enhanced file viewing with syntax highlighting. Use when viewing source files, documentation, or when syntax highlighting improves readability.
Common workflow: Any discovery skill → bat skill (preview enhanced output).
Key Options
Display Control
-n/--numberline numbers only-p/--plainplain output (no decorations)-A/--show-allshow non-printable characters--line-range START:ENDview specific lines--wrap neverdisable line wrapping--tabs Nset tab width to N spaces
Language & Themes
-l/--language LANGforce language detection--list-languagesshow supported languages--list-themesshow available themes--theme NAMEset color theme (default: Monokai Extended)--theme-dark/--theme-lightauto-switch themes based on terminalBAT_THEMEenvironment variable for default theme
Output Styling
--style COMPONENTScontrol output (numbers,changes,header,grid,snip)--decorations auto|never|alwayscontrol decorations--color always|never|autocontrol coloring
Paging
--paging auto|never|alwayscontrol paging behavior--pager COMMANDset custom pagerBAT_PAGERenvironment variable
When to Use
- Code Review: View source files with syntax highlighting and line numbers
- Git Workflow: Check file modifications and view historical versions
- Documentation: Colorize help pages and documentation
- File Concatenation: Replace cat with enhanced features
- Integration: Use as previewer for fzf or other tools
Core Principles
- Enhanced cat: Drop-in replacement with intelligent improvements
- Smart Defaults: Automatic paging when appropriate, Git integration when in repo
- Syntax Highlighting: Supports 200+ languages with accurate detection
- Performance Optimized: Fast loading, efficient rendering, handles large files well
Detailed Reference
For comprehensive usage patterns, integration examples, advanced features, and troubleshooting, load bat guide when needing:
- Git integration workflows
- Output styling and customization details
- Theme configuration and options
- Performance optimization tips
- Shell integration examples
The guide includes:
- Core usage patterns and language control
- Git integration workflows
- Output styling and customization
- Integration with other tools (fzf, git, ripgrep)
- Advanced features and configuration
- Performance tips and troubleshooting
Skill Combinations
For Discovery Phase
- fd → fzf → bat: Find files, select interactively, view with syntax highlighting
- ripgrep → fzf → bat: Search content, select matches, view with highlighting
- jq/yq → fzf → bat: Extract data, select entries, view formatted output
For Analysis Phase
- analyzing-code-structure → bat: Preview structural changes with syntax highlighting
- sd → bat: Preview find-and-replace results before committing
- extracting-code-structure → bat: View extracted code structure with formatting
For Output Preview
- tokei → bat: View code statistics with formatted output
- ripgrep → bat: Preview matched files with context highlighting
- jq/yq → bat: View extracted structured data with syntax formatting
Integration Examples
# Interactive file viewer
fd --type file | fzf --preview="bat --color=always --style=numbers {}" --bind="enter:execute(bat {})"
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
analyzing-code
Analyzes code statistics by language for project insight, CI/CD metrics, or before refactoring. Use this skill when understanding project composition, measuring change impact, or generating CI/CD metrics
querying-json
Extracts specific fields from JSON files efficiently using jq instead of reading entire files, saving 80-95% context. Use this skill when querying JSON files, filtering/transforming data, or getting specific field(s) from large JSON files
extracting-code-structure
Extracts file structure (functions, classes, exports) efficiently without reading entire files, using ast-grep, Dart/Flutter analyzer, ctags, or other language-specific tools to get outlines and signatures. Use this skill when listing all methods, functions, or classes in a file, exploring unfamiliar code, getting API overviews, or deciding what to read selectively
querying-yaml
Extracts specific fields from YAML files efficiently using yq instead of reading entire files, saving 80-95% context. Use this skill when querying YAML files, filtering/transforming configuration data, or getting specific field(s) from large YAML files like docker-compose.yml or GitHub Actions workflows
replacing-text
Provides intuitive find & replace CLI with JavaScript regex and string-literal mode. Use this skill when performing text replacements, batch transformations, or need JavaScript-style regex syntax
analyzing-code-structure
Performs structural code search and refactoring by matching code structure instead of exact text. Use when editing code structure with text matching ambiguity, handling "old_string not unique" problems, or performing formatting-independent pattern matching across function signatures, method calls, and class structures
Didn't find tool you were looking for?