yaklang-toolchain

Validates Yaklang hot-patch and codec plugins using the yak CLI's real gRPC execution paths.

10|1|Updated Jun 16, 2026
One-click install
npx skills add https://github.com/yaklang/yak-skills --skill yaklang-toolchain-yaklang
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: yaklang-toolchain
Source: https://github.com/yaklang/yak-skills/tree/main/skills/yaklang-toolchain
Command: npx skills add https://github.com/yaklang/yak-skills --skill yaklang-toolchain-yaklang

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? After writing a Yaklang hot-patch or codec plugin, developers struggle to confirm it actually works before loading it into Yakit. This Skill provides a verification workflow using the yaklang source engine and four yak CLI commands that exercise the same gRPC hook execution paths as the Yakit UI. ## Core Features & Use Cases - Source Engine Workflow: Run any .yak script via go run common/yak/cmd/yak.go or a prebuilt binary to test against the latest engine capabilities. - Four Validation Commands: yak hotpatch-mitm, hotpatch-global, hotpatch-webfuzzer, and codec-plugin feed real request/response files through the actual MixPluginCaller and MutateHookCaller chains, printing rewrite evidence to stdout. - Source-Level MITM Debugging: Grep recipes for locating hook signatures, test cases, and forward/drop semantics inside the yaklang repository when hook behavior diverges from expectations. - Use Case: You wrote a Web Fuzzer encryption hot-patch and want proof it decrypts responses correctly—run yak hotpatch-webfuzzer --script x.yak --request req.txt --response rsp.txt and inspect the printed evidence before pasting the script into Yakit. ## Quick Start Ask the AI to validate your hot-patch script by running the appropriate yak hotpatch command against a sample request file and checking the stdout evidence.

Frequently Asked Questions about yaklang-toolchain

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I verify a Yaklang hot-patch plugin before loading it into Yakit?▼

Run the matching yak validation command, such as yak hotpatch-mitm or hotpatch-webfuzzer, with your script and a sample request file. These commands use the same gRPC hook execution path as the Yakit UI, so passing output means the plugin works in Yakit.

How to test a Yakit right-click codec plugin from the command line?▼

Use yak codec-plugin --script your-script.yak --input "text" to execute the script and call its handle function. The command prints the transformed output, and it also supports reading input from a file with --input-file.

What is the difference between hotpatch-mitm and hotpatch-global commands?▼

Both accept the same request and response arguments, but hotpatch-global additionally drives the beforeRequest and afterRequest hooks in the global pipeline order. Use hotpatch-global for site-wide transparent encryption or signing scripts.

Why does my MITM hook behave differently than expected?▼

Check the hook signatures in the yaklang source, especially common/yak/hook_mixed_plugin_caller.go, and confirm forward and drop semantics. Reproduce the issue by saving the request to a file and running yak hotpatch-mitm to inspect rewrite evidence step by step.

Do I need the yaklang source repository to run these validation commands?▼

Yes, the workflow assumes an engine built from the yaklang repository, either via go run common/yak/cmd/yak.go or a binary built with go build. The command implementations live in common/yak/cmd/yakcmds/hotpatch.go.