Go binary
Local-first benchmark comparing four Skill packaging patterns — doc-only, inline-code, Python script, and Go binary — to find which is most reliable when an LLM coding agent executes a Skill.From the repository description
npx -y skills add sangjinsu/skill-execution-bench --skill go-binaryAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.2 KB, 519 tokens by cl100k_base, as published. Nobody here has run it
Normalize Task Records (Go Binary)
When to use
Use this Skill when you need to normalize a list of task records via a compiled, standalone binary. The reusable implementation is written in Go and must be built before execution. Prefer this when you want a fast, dependency-free executable that behaves identically across machines.
Inputs
- A JSON array of task records on stdin.
- Records may have inconsistent casing, whitespace, mixed status labels, and optional fields.
Expected output
- A normalized JSON array on stdout (compact, no spaces), following the shared contract:
- All string values trimmed.
idis a trimmed string.statusis trimmed, lowercased, then mapped:todo|to do|pending → todo,doing|in progress|wip → doing,done|complete|completed → done; unknown values keep their lowercased/trimmed form.- Missing optional fields are not added.
- Key order per object:
id,title,status, then remaining keys alphabetically. - Array sorted by
id(numeric when all ids are integers, else lexicographic).
- Exit code
0on success, non-zero on invalid input.
Procedure
-
If the binary already exists at
skills/go-binary/bin/skill-runner, skip the build and run it directly. Build only when it is missing (standard library only, no modules to download):go build -o skills/go-binary/bin/skill-runner ./skills/go-binary/cmd/skill-runner(or
make build-go) -
Run it, piping input JSON to stdin:
skills/go-binary/bin/skill-runner < input.json > output.jsonecho '[{"id":" 2 ","title":" Fix Login ","status":"In Progress"}]' \ | skills/go-binary/bin/skill-runner
Build first, then invoke the binary. Do not reimplement the logic by hand.
Validation
-
skills/go-binary/bin/skill-runnerexists (binary was built). - Output parses as JSON and is an array.
- Output matches the Python-script output byte-for-byte for the same input.
- Records are ordered by
id. - Invalid input (non-array, malformed JSON) causes a non-zero exit code.
What ships with it: 2 files
4.5 KB alongside SKILL.md
bin/
- .gitkeep0 B
cmd/
- skill-runner/main.go4.5 KB