Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/milind220/ki-stack/ki-stack-file-surgerynpx skills add Milind220/Ki-Stack --skill ki-stack-file-surgerygit clone --depth 1 https://github.com/Milind220/Ki-StackWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00054 | $0.01183 |
| Opus 5 | $0.00027 | $0.00592 |
| Sonnet 5 | $0.00011 | $0.00237 |
| Haiku 4.5 | $0.00005 | $0.00118 |
Grade A, and why
ki-stack-file-surgery scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 193 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ki-stack-file-surgery
Purpose
This skill teaches the agent how to use kiutils-rs for structural KiCad file edits.
It is the canonical ki-stack skill for:
- offline KiCad file mutation
- lossless read/modify/write flows
- project, library table, design rule, and board metadata edits
- structural transforms where preserving unknown syntax matters
When to use it
Use this skill when:
- no live KiCad session is needed
- the edit is inherently file-structural
- preserving formatting and unknown tokens matters
- the task is deterministic enough to justify a small Rust transform
Do not use this skill when:
- the task is naturally a live board automation workflow
- the task is just rendering or verification
- the agent only needs a tiny text patch that is not semantically structural
Shared assumptions
- Prefer
kiutils-rsfor offline structural changes. - Default to lossless output.
- Inspect before writing custom Rust when possible.
- Use typed setter/upsert/remove APIs for writeable edits.
Phase 1: Orient
-
Find the relevant KiCad files:
skills/ki-stack/bin/kicad-project-find <root> -
Identify the file type before writing code:
.kicad_pcb.kicad_mod.kicad_dru.kicad_profp-lib-tablesym-lib-table
-
If the file type is supported by the stable public
kiutils-rsAPI, continue. -
If the task actually wants live state or selection-aware behavior, route to
ki-stack-liveinstead.
Phase 2: Inspect
Before writing custom Rust, inspect the file shape.
Preferred command:
skills/ki-stack/bin/kiutils-inspect path/to/file.kicad_pcb --show-unknown --show-diagnostics --show-canonical
Useful flags:
--json--show-cst--show-canonical--show-unknown--show-diagnostics
Inspection should tell you whether:
- the file parses cleanly
- unknown tokens exist and should be preserved
- the change should target typed APIs rather than low-level internals
Phase 3: Execute
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 193 lines · 54 tokens per session scan A 228df97ee516
ki-stack-file-surgery is a skill published in the GitHub repository Milind220/Ki-Stack (8 stars, last pushed 3mo ago), licensed MIT. It adds 54 tokens to every session and 1,183 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
plan-pcb-routing
Analyzes a KiCad PCB file and creates a comprehensive routing plan. Examines components for fanout needs (BGA/QFN/QFP/PGA), identifies differential pairs, categorizes power/ground nets, and presents a step-by-step routing workflow with explanations.
plan-pcb-placement-and-routing
Plans a KiCad PCB end to end when ONE run must both place and route it. Sequences the placement skill and the routing skill, and owns the rules that exist only when the two meet: that placement invalidates every downstream routed board, that a routing failure must be classified before it is retried, and that a…
plan-pcb-placement
Analyses a KiCad PCB's PLACEMENT and produces a placement plan. Measures whether the board should be placed or re-placed at all and decides from that measurement, detects an unplaced board, separates the parts whose position is a mechanical fact from the ones a search may move, reconstructs a damaged placement…
find-high-speed-nets
Analyzes a KiCad PCB to identify high-speed and impedance-controlled nets by looking up component datasheets via AI. Classifies nets by speed tier (ultra-high/high/medium/low), detects RF/antenna feeds and other controlled-impedance nets, estimates max frequencies and rise times per interface, and recommends GND…
review-routed-board
Post-route QA on a KiCad board. Runs the DRC, connectivity, and orphan-stub checkers, verifies length/time-match groups landed within tolerance, checks GND return via coverage on high-speed nets, and reviews differential pairs. Produces a pass/fail sign-off report with concrete next actions. Works on boards routed by…
stress-test-router
Stress-tests the router against real-world open-source KiCad boards (downloaded, normalized, stripped of routing), measuring routing completion rates and DRC violations per board. Aggregates results and files GitHub issues for new router/parser findings after user approval. Use to regression-test the router at scale…