v1.0.0  ·  MIT License  ·  Go 1.21+

Your terminal,
but actually
productive

A modular Go CLI that automates API fetching, JSON formatting, and file organization — all from your terminal with colored output, smart flags, and real-world error handling.

go install github.com/GhanshyamJha05/devtool-cli@latest ✔ copied!
4
Commands
0
Extra Deps
10s
HTTP Timeout
MIT
License

Everything you need,
nothing you don't

Four focused commands. Each does one thing extremely well — with rich output, smart flags, and battle-tested error handling.

devtool get

Fetch any HTTP/HTTPS URL and see the response with status code, timing, and debug headers. Save to a file with --save.

devtool get <url> --save --verbose

devtool format

Validate and pretty-print any JSON file. Catches malformed JSON with clear, human-readable error messages — no squinting at raw output.

devtool format <file.json> --save

devtool clean

Scan a messy directory and auto-sort files into categorized subfolders — Images, Documents, Code, Videos, Archives — with a full summary.

devtool clean <folder> --verbose

devtool version

Print version, commit hash, and build date — injected at build time via -ldflags. Always know exactly what's running in production.

devtool version

Up and running
in 3 steps

From zero to productive in under a minute. No config files, no environment setup — just build and run.

Install

Clone the repo and run
go build -o devtool .
or use go install.

Run a Command

Pick a command — get, format, or clean — and pass your target as an argument.

Add --verbose

Append --verbose to any command to see headers, file paths, and debug logs in real time.

See every command
in action

Click a tab to watch the command run. Real flags, real output.

devtool get https://jsonplaceholder.typicode.com/posts/1 --save post.json
Fetching data from https://jsonplaceholder.typicode.com/posts/1...
Status: 200 OK  |  Time: 287ms
Response saved to post.json (292 bytes)
 
# Try verbose mode to see headers:
devtool get https://httpbin.org/get --verbose
[DEBUG] Target URL: https://httpbin.org/get
[DEBUG] Content-Type: application/json
devtool format data.json
Formatting data.json...
 
{
  "id": 1,
  "title": "sunt aut facere repellat...",
  "body": "quia et suscipit suscipit...",
  "userId": 1
}
 
JSON is valid and formatted
devtool clean ./downloads
Scanning folder: ./downloads...
 
Images       → 5 file(s)
Documents    → 3 file(s)
Code         → 8 file(s)
Archives     → 2 file(s)
Skipped 1 file(s) with no extension
 
Done! Organized 18 file(s) into 4 categories
devtool version
devtool-cli v1.0.0
  commit : abc1234
  built  : 2026-05-01
 
# Build with version info injected:
go build -ldflags "-X main.version=1.0.0 -X main.commit=$(git rev-parse --short HEAD)" -o devtool .

Global Flags

--save, -s

Available on get and format. Save output to a file instead of printing to the terminal.

--verbose, -v

Available on all commands. Enable debug logging — response headers, content-type, file paths, and internal state.

Built for the
real world

devtool-cli handles every edge case gracefully — no mysterious stack traces, just clear and actionable messages. Click any card to see the exact output.