packx
Original:🇺🇸 English
Translated
Bundle code context for AI. ALWAYS use --limit 49k unless user explicitly requests otherwise. Use for creating shareable code bundles and preparing context for LLMs.
3installs
Sourcejohnlindquist/claude
Added on
NPX Install
npx skill4agent add johnlindquist/claude packxTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →PACKX - AI Context Bundler
Bundle and filter code files for AI context.
CRITICAL: Always Use --limit 49k
--limit 49kMANDATORY: Every packx command MUST include unless the user explicitly requests a different limit. This is non-negotiable. Using 49k instead of 50k provides a safety buffer.
--limit 49kbash
# CORRECT - always include --limit 49k
packx --limit 49k -c src/
packx --limit 49k -s "pattern" -i "*.ts" -c
# WRONG - never omit the limit
packx -c src/ # NO! Missing --limit
packx -s "pattern" -i "*.ts" -c # NO! Missing --limitPrerequisites
bash
packx --version # Verify installed
npm install -g packx # If not installedStandard Command Pattern
bash
packx --limit 49k [filters] [output] [paths]Always start with , then add filters and output options.
--limit 49kCLI Reference
Token Budget (Required)
bash
# Standard (default for all commands)
packx --limit 49k -c src/
# Only use different limits if user explicitly requests
packx --limit 32k -c src/ # User said "32k"
packx --limit 128k -c src/ # User said "large context"
# Split into chunks if content exceeds limit (requires -o for numbered files)
packx -M 49k -o context src/ # Creates context-1.xml, context-2.xmlLimit formats: =8,000 | =32,768 | =50,000
8k32K50000Search & Filter
bash
# Find files containing text
packx --limit 49k -s "TODO" -c
packx --limit 49k -s "useState" -i "*.tsx" -c
packx --limit 49k -s "error" -s "warning" -c
# Exclude content
packx --limit 49k -S "test" -S "mock" -c
# Filter by glob patterns
packx --limit 49k -i "*.ts" -c
packx --limit 49k -i "src/**/*.tsx" -c
packx --limit 49k -x "*.test.ts" -x "*.spec.ts" -c
# Regex patterns
packx --limit 49k -R -s "function\s+\w+" -c
# Case-sensitive
packx --limit 49k -C -s "Error" -cGit Integration
bash
packx --limit 49k --staged -c # Staged files
packx --limit 49k --diff -c # Changed from main
packx --limit 49k --dirty -c # Modified/untrackedProcessing Options
bash
# Strip comments (reduces tokens)
packx --limit 49k --strip-comments -c src/
# Minify (remove empty lines)
packx --limit 49k --minify -c src/
# Both (maximum token efficiency)
packx --limit 49k --strip-comments --minify -c src/
# Context lines around matches
packx --limit 49k -s "TODO" -l 5 -c
# Follow imports
packx --limit 49k --follow-imports src/index.ts -c
# Related files (tests, stories)
packx --limit 49k -r src/utils.ts -cOutput Options
bash
# Copy to clipboard (most common)
packx --limit 49k -c src/
# Save to file (use --stdout > to avoid WriteFile hook limits)
packx --limit 49k --stdout src/ > context.md
# Output formats
packx --limit 49k -f xml -c src/ # XML (default)
packx --limit 49k -f markdown -c src/ # Markdown
packx --limit 49k -f plain -c src/ # Plain text
packx --limit 49k -f jsonl -c src/ # JSONLIMPORTANT: Always use instead of to avoid triggering WriteFile hook size limits on large bundles.
--stdout > <file>--output <file>Preview (Check Before Packing)
bash
# Preview matching files without packing
packx --limit 49k --preview src/
packx --limit 49k -s "pattern" --previewInteractive Mode
bash
packx --limit 49k -I src/ # Interactive selection
packx --limit 49k --no-interactive src/ # Scripting modeControls: Tab=preview focus | PgUp/PgDn=scroll | Enter=confirm
Bundles (Saved Configs)
bash
packx -b api # Load .pack/bundles/apiCommon Workflows
Default: Feature Context
bash
# Most common - search for feature, copy to clipboard
packx --limit 49k -s "auth" -i "*.ts" -cPR Review Context
bash
packx --limit 49k --diff -c
packx --limit 49k --staged -f markdown --stdout > pr.mdDebug Context
bash
packx --limit 49k --follow-imports src/problem.ts -c
packx --limit 49k -r src/problem.ts -c # Include testsMinimal Context (Max Efficiency)
bash
packx --limit 49k --strip-comments --minify -i "*.ts" -c src/Specific Files
bash
# List specific files directly
packx --limit 49k src/auth.ts src/user.ts src/api.ts -cBest Practices
- ALWAYS use - No exceptions unless user specifies
--limit 49k - Use for clipboard - Most common output method
-c - Preview first - to check file selection
--preview - Strip noise - when token-tight
--strip-comments --minify - Be specific - Use search and
-sglobs to narrow scope-i - Check git state - and
--difffor PR context--staged
Troubleshooting
| Problem | Solution |
|---|---|
| Too many tokens | Add |
| Missing files | Check globs, use |
| Over 49k needed | Split with |
| WriteFile hook error | Use |