Agent skill
funurl
Parse, modify, encode, decode, and deduplicate URLs from the command line. Use when the user needs to extract URL components, manipulate URLs, encode/decode URL strings, or deduplicate URL lists for security testing or web automation.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/funurl
SKILL.md
funURL - A Functional URL Swiss Army Knife
funURL is a CLI tool for parsing, validating, modifying, encoding/decoding, and deduplicating URLs.
Installation
.NET Tool
dotnet tool install --global funurl
Binary Download
Download from Releases for Linux, macOS, or Windows (x64 and ARM64).
Commands
URL Parsing
Extract specific components from a URL:
# Parse all URL components
funurl parse https://subdomain.example.com/path?query=value#fragment
# Extract specific components
funurl parse -c https://example.com # protocol/scheme
funurl parse -s https://sub.example.com # subdomain
funurl parse -t https://example.com # top-level domain
funurl parse -n https://example.com # hostname
funurl parse -p https://example.com/path # path
funurl parse -q https://example.com/?k=v # query parameters
funurl parse -f https://example.com/#section # fragment
URL Modification
# Change protocol
funurl modify -c https http://example.com
# Update path
funurl modify -p /new/path https://example.com/old/path
# Change query string
funurl modify -q "key1=val1&key2=val2" https://example.com?old=param
# Update fragment
funurl modify -f "new-section" https://example.com#old-section
URL Encoding
# Path-encode
funurl encode "hello world"
# Query component encoding
funurl encode -c "param=value with spaces"
URL Decoding
# Path-decode
funurl decode "hello%20world"
# Query component decoding
funurl decode -c "param%3Dvalue%20with%20spaces"
URL Deduplication
# Deduplicate from arguments
funurl dedupe https://google.com https://google.com/home?qs=value https://google.com/home?qs=secondValue
# Deduplicate from stdin
cat urls.txt | funurl dedupe
Input Methods
- Via command-line argument:
funurl parse https://example.com - Via stdin (pipe):
echo "https://example.com" | funurl parse - Via interactive input:
funurl parsethen type URL and press Enter
References
- Repository: https://github.com/HappyHackingSpace/funURL
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?