Hello, I'm Maneshwar. I'm building git-lrc, an AI code reviewer that runs on every commit. It is free, unlimited, and source-available on Github. Star Us to help devs discover the project. Do give it a try and share your feedback for improving the product.
Hello, I'm working on FreeDevTools online currently building **one place for all dev tools, cheat codes, and TLDRs — a free, open-source hub where developers can quickly find and use tools without any hassle of searching all over the internet.
Garble, by burrowers, isan open-source tool
that wraps the Go compiler to produce obfuscated Go binaries. Its key features include:
- Renaming identifiers, package paths, and removing metadata ⚙️
- Optional string literal obfuscation with
-literals - Support for tiny binaries via
-tiny(removes filenames, line numbers, panic info) - Deterministic builds with reproducible obfuscation (via
-seed) - Stack trace reverse mapping using
garble reversewhen seeds are known (go.libhunt.com, github.com)
Installation
go install mvdan.cc/garble@latest
# or: go install github.com/burrowers/garble@latest
Obfuscating a Simple Program
Consider this manager app:
// main.go
package main
import "fmt"
func main() {
secret := "Hello, Obfuscation!"
fmt.Println(process(secret))
}
func process(s string) string {
return s + " 🚀"
}
Build normally:
go build -o normal_app main.go
strings normal_app | grep process
# >> process
Now obfuscate with Garble:
garble build -o garbled_app main.go
strings garbled_app | grep process
# >> no "process" found
Adding Literal Obfuscation
Encrypt every string literal:
garble build -literals -o garbled_lit main.go
strings garbled_lit | grep Hello
# >> (nothing – strings scrambled at runtime)
Under the hood, Garble’s compiler rewrite wraps string literals in a runtime decryptor (cloud.google.com, go.libhunt.com).
Deterministic Builds & Reverse
To maintain reproducible builds and enable stacktrace deobfuscation:
garble build -seed=42 -o deterministic_app main.go
If your app panics, you can reverse it to map obfuscated symbols back with:
garble reverse -seed=42 deterministic_app
⚠ Limitations
- Exported symbols (used in reflection/interfaces) are preserved (go.libhunt.com)
-
Plugins unsupported; control-flow obfuscation experimental via
GARBLE_EXPERIMENTAL_CONTROLFLOW=1(github.com) - Source paths and metadata are cleared, but the Go runtime still leaves some traces (go.libhunt.com)
Why Use Garble?
- Raises the bar for reverse-engineers by removing public-type info, strings, file names
- Maintains full Go compatibility with module support, caches, stack-unwindable builds (github.com, go.libhunt.com)
- Fast—about 2× slower than
go build, thanks to caching (github.com)
Next Steps
- Integrate in CI pipelines (build both plain and garbled variants)
- Use
-tinymode for smaller executables - Combine with linker flags (
-ldflags="-s -w") and-trimpathfor tighter security (go.libhunt.com, xnacly.me) - Consider additional control-flow obfuscation if you’re in adversary-resistant scenarios
Final Thoughts
Garble significantly complicates metadata and symbol recovery, but obfuscation is not bulletproof. Tools like GoStringUngarbler can reverse literal obfuscation (github.com, cloud.google.com), and determined attackers with runtime analysis can still break logic. Use Garble as part of a broader protection strategy, not your only defense.
With , you can generate interactive API docs that allow users to search andexecute endpoints directly from the browser.
A collection of UI/UX-focused tools crafted to simplify workflows, save time, and reduce friction in searching tools/materials.
Any feedback or contributors are welcome!
It’s online, open-source, and ready for anyone to use.
👉 Check it out:
⭐ Star it on GitHub:
Let’s make it even better together.
*AI agents write code fast. They also silently remove logic, change behavior, and introduce bugs -- without telling you. You often find out in production.
git-lrc fixes this. It hooks into git commit and reviews every diff before it lands. 60-second setup. Completely free.*
Any feedback or contributors are welcome! It's online, source-available, and ready for anyone to use.
⭐ Star it on GitHub:
HexmosTech
/
git-lrc
Free, Unlimited AI Code Reviews That Run on Commit
AI agents write code fast. They also silently remove logic, change behavior, and introduce bugs -- without telling you. You often find out in production.
git-lrc fixes this. It hooks into git commit and reviews every diff before it lands. 60-second setup. Completely free.
See It In Action
See git-lrc catch serious security issues such as leaked credentials, expensive cloud operations, and sensitive material in log statements
git-lrc-intro-60s.mp4
Why
- 🤖 AI agents silently break things. Code removed. Logic changed. Edge cases gone. You won't notice until production.
- 🔍 Catch it before it ships. AI-powered inline comments show you exactly what changed and what looks wrong.
- 🔁 Build a habit, ship better code. Regular review → fewer bugs → more robust code → better results in your team.
- 🔗 Why git? Git is universal. Every editor, every IDE, every AI…
Top comments (0)