man
Use when unsure about command syntax, options, or behavior, or when the user asks to "check the man page", "look up the manual", or "what does [command] do". Consult system man pages for accurate, version-specific documentation.
What this skill does
# Unix Man Pages (Non-Interactive)
Consult system manual pages for accurate command documentation. Prefer man pages over training data when precision matters.
**CRITICAL: Never run bare `man <command>` - it opens an interactive pager that hangs.**
## How to Use Efficiently
Follow these rules to avoid flooding your context window:
1. **Search first** - If unsure of the command name, use `mancat -k <keyword>`
2. **Target sections** - Don't fetch the full man page immediately:
- Read **SYNOPSIS** first to understand the structure
- Read **DESCRIPTION** for a high-level overview
- Fetch **OPTIONS** only when you need specific flags
3. **Sanitization is automatic** - The `mancat` tool strips formatting codes; raw control characters are handled
## Usage Workflows
### A. Discovery (Instead of Web Search)
When you don't know which command to use:
```bash
# CLAUDE_PLUGIN_ROOT is set automatically by Claude Code plugins
MANCAT="${CLAUDE_PLUGIN_ROOT}/skills/man/mancat.sh"
"$MANCAT" -k compress # Returns: gzip, bzip2, tar, zip with descriptions
"$MANCAT" -k "file system"
```
### B. Syntax Verification
When you know the command but need exact argument order:
```bash
"$MANCAT" -s SYNOPSIS tar
# Output: tar [-] A --catenate --concatenate | c --create | d --diff ...
```
### C. Flag Investigation
When you need to understand a specific option:
```bash
"$MANCAT" -s OPTIONS tar
# Or for a specific flag:
"$MANCAT" tar | grep -A5 -- '-z'
```
## Quick Start
```bash
# Use the mancat helper (recommended)
"${CLAUDE_PLUGIN_ROOT}/skills/man/mancat.sh" ls
# Or pipe through col -b
man ls | col -b
```
## The mancat Helper
Use the included `mancat.sh` for convenient non-interactive access:
```bash
MANCAT="${CLAUDE_PLUGIN_ROOT}/skills/man/mancat.sh"
"$MANCAT" ls # Full man page, clean output
"$MANCAT" passwd 5 # Section 5 (file formats)
"$MANCAT" -s OPTIONS tar # Extract just OPTIONS section
"$MANCAT" -k compress # Search descriptions (apropos)
```
## Manual Non-Interactive Patterns
Use these raw patterns when `mancat.sh` is unavailable or when piping to tools like `grep`/`sed`:
```bash
man <command> | col -b
```
The `col -b` filter strips backspace formatting codes, producing clean plain text.
**Alternatives:**
```bash
PAGER=cat man <command> # Force no pager (may include escape codes)
man <command> | cat # Simple but less clean on some systems
```
## Efficient Lookups (Raw Patterns)
Full man pages waste context. Use targeted extraction with `grep`/`sed`:
### Get Specific Option
```bash
man tar | col -b | grep -A5 -- '-z'
man curl | col -b | grep -A8 -- '--data'
```
### Extract Section
```bash
# SYNOPSIS section
man ls | col -b | sed -n '/^SYNOPSIS/,/^[A-Z]/p' | head -20
# OPTIONS section (first 50 lines)
man curl | col -b | sed -n '/^OPTIONS/,/^[A-Z]/p' | head -50
# EXAMPLES section
man rsync | col -b | sed -n '/^EXAMPLES/,/^[A-Z]/p'
```
### Limit Output Length
Always limit long pages:
```bash
man bash | col -b | head -100
man git-rebase | col -b | head -150
```
## Quick Reference Commands
### Search for Commands
```bash
man -k <keyword> # Search names and descriptions
man -k compress | head -10 # Find compression tools
man -k "file system" # Search phrase
```
### One-Line Description
```bash
man -f tar
# tar (1) - manipulate tape archives
```
### Check Man Page Exists
```bash
man -w grep >/dev/null 2>&1 && echo "has man page"
```
### Get Man Page Path
```bash
man -w ls
# /usr/share/man/man1/ls.1
```
## Man Page Sections
| Section | Content |
|---------|---------|
| 1 | User commands |
| 2 | System calls |
| 3 | Library functions |
| 4 | Special files (/dev) |
| 5 | File formats (/etc/passwd) |
| 6 | Games |
| 7 | Miscellaneous (protocols, conventions) |
| 8 | System administration commands |
Specify section when a name exists in multiple:
```bash
man 1 printf | col -b # Shell command
man 3 printf | col -b # C library function
man 5 crontab | col -b # File format
man 8 cron | col -b # Daemon
```
## Reading Man Output
**SYNOPSIS** - Command syntax. `[]` = optional, `...` = repeatable.
**OPTIONS** - Flag descriptions with exact syntax.
**EXAMPLES** - Working command examples (not all pages have these).
**SEE ALSO** - Related commands worth checking.
## When to Use Man Pages
- **System commands** (`ls`, `find`, `tar`) - Options vary by OS
- **Config files** (`man 5 sudoers`) - Syntax documentation
- **Git subcommands** (`man git-rebase`) - Full option reference
- **Network tools** (`man curl`, `man ssh`) - Protocol-specific flags
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.