classify Command
Determine the category for one or more files without moving them.
Basic Usage
# Single file
uv run para-files classify document.pdf
# Multiple files
uv run para-files classify file1.pdf file2.docx file3.txt
# All PDFs in Downloads
uv run para-files classify ~/Downloads/*.pdf
Output
File: document.pdf
Category: 4_Archives/factures/2024/utilities
Confidence: 90% (Domain KB)
Shows:
- File: Input filename
- Category: Suggested PARA path
- Confidence: How sure (90%) and which signal matched (Domain KB)
Options
-v, --verbose
Show detailed matching information:
uv run para-files classify document.pdf -v
# Shows: which signals were tried, why they matched/didn't match, etc.
--json
Output as JSON (useful for scripts):
uv run para-files classify document.pdf --json
# Output:
# {
# "file": "document.pdf",
# "category": "4_Archives/factures/2024/utilities",
# "confidence": {
# "value": 0.90,
# "source": "Domain KB"
# }
# }
-r, --reference-tree PATH
Use a custom YAML reference tree:
uv run para-files classify document.pdf -r /path/to/custom_tree.yaml
Examples
Classify Multiple Files
# All PDFs
uv run para-files classify ~/Downloads/*.pdf
# All documents
uv run para-files classify ~/Downloads/*.{pdf,docx,xlsx}
# Show results as JSON
uv run para-files classify *.pdf --json > results.json
Verbose Output
# See why each signal did or didn't match
uv run para-files classify confusing_file.pdf -v
Batch Processing
# Process many files and capture output
for file in ~/Downloads/*.pdf; do
uv run para-files classify "$file" --json >> classifications.json
done
Confidence Levels
| Level | Source | Description |
|---|---|---|
| 100% | Validated DB | Previously approved by you |
| 95% | Rules Engine | Matches filename/path pattern |
| 92% | Book Detector | Identified as a technical book |
| 90% | Domain KB | Matches known issuer (bank, company) |
| 85% | Semantic Router | ML embedding match |
| Variable | LLM Fallback | AI classification (if enabled) |
Higher confidence = more certain.
What Classify Does
- Analyzes the file (name, type, content)
- Runs 6 signals in priority order
- Returns the first confident match
- Does NOT move the file
Next Steps
- move - Actually move files to PARA folders
- scan - Preview classifications for directory
- Troubleshooting - Wrong categories