hash-tools
SKILL.md
Hash Tools Skill
Calculate cryptographic hashes for files and strings. Support for multiple algorithms and hash comparison.
When to Use
✅ USE this skill when:
- "Calculate MD5/SHA hash of a file"
- "Hash this string"
- "Verify file integrity"
- "Compare two files"
- "Generate checksum"
- "Find duplicate files"
When NOT to Use
❌ DON'T use this skill when:
- Encrypt/decrypt data → use encryption tools
- Password hashing → use bcrypt/argon2
- Digital signatures → use gpg/signing tools
Commands
File Hash
{baseDir}/hash.sh <algorithm> <file>
{baseDir}/hash.sh md5 /path/to/file
{baseDir}/hash.sh sha256 /path/to/file
{baseDir}/hash.sh sha512 /path/to/file
{baseDir}/hash.sh blake2b /path/to/file
String Hash
{baseDir}/hash.sh <algorithm> --string "text to hash"
{baseDir}/hash.sh sha256 --string "hello world"
Hash All Files in Directory
{baseDir}/hash-dir.sh <algorithm> <directory>
{baseDir}/hash-dir.sh sha256 ./my-files --output hashes.txt
Compare Files by Hash
{baseDir}/hash-compare.sh <file1> <file2>
{baseDir}/hash-compare.sh file1.txt file2.txt --algorithm sha256
Verify Against Checksum
{baseDir}/hash-verify.sh <algorithm> <file> <expected-hash>
{baseDir}/hash-verify.sh sha256 file.txt "abc123..."
Find Duplicate Files
{baseDir}/hash-dupes.sh <directory>
{baseDir}/hash-dupes.sh ./my-files --algorithm md5
{baseDir}/hash-dupes.sh ./my-files --delete
Supported Algorithms
| Algorithm | Command | Notes |
|---|---|---|
| MD5 | md5 |
Fast, not collision-safe |
| SHA-1 | sha1 |
Deprecated for security |
| SHA-256 | sha256 |
Recommended default |
| SHA-512 | sha512 |
Longer hash |
| BLAKE2b | blake2b |
Fast, secure alternative |
| BLAKE2s | blake2s |
256-bit variant |
Output Formats
{baseDir}/hash.sh sha256 file.txt # Just the hash
{baseDir}/hash.sh sha256 file.txt --format long # "SHA256 (file.txt) = abc123..."
{baseDir}/hash.sh sha256 file.txt --json # JSON output
{baseDir}/hash.sh sha256 file.txt --base64 # Base64 encoded
Examples
Hash a file:
{baseDir}/hash.sh sha256 document.pdf
# Output: a1b2c3d4e5f6...
Hash a string:
{baseDir}/hash.sh sha256 --string "hello world"
# Output: b94d27b9934d3e08...
Verify a download:
{baseDir}/hash-verify.sh sha256 download.tar.gz "expected-hash-value"
# Output: ✅ Hash matches!
Find duplicates in directory:
{baseDir}/hash-dupes.sh ./photos --algorithm sha256
# Output: Duplicates found:
# sha256:abc123... -> file1.jpg, file2.jpg
Generate checksums file:
{baseDir}/hash-dir.sh sha256 ./dist > CHECKSUMS.sha256
Notes
- Uses system utilities (md5sum, sha256sum, b2sum) when available
- Falls back to OpenSSL for algorithms not in coreutils
- All hash operations are deterministic
- No network access required
Weekly Installs
3
Repository
winsorllc/upgra…carnivalFirst Seen
13 days ago
Security Audits
Installed on
amp3
cline3
opencode3
cursor3
kimi-cli3
codex3