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/jonathanung/strike/write-go-testsnpx skills add jonathanung/strike --skill write-go-testsgit clone --depth 1 https://github.com/jonathanung/strikeWhat 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.00984 |
| Opus 5 | $0.00027 | $0.00492 |
| Sonnet 5 | $0.00011 | $0.00197 |
| Haiku 4.5 | $0.00005 | $0.00098 |
Grade A, and why
write-go-tests 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 2d 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 — 95 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Write Go tests (strike-cli)
Tests only. Never modify production code; if code is untestable or buggy, report it.
Conventions
- Framework: stdlib
testingonly. - Placement:
package footests beside source asfoo_test.go(same package is fine and preferred for unexported helpers). - Style: table-driven where multiple inputs matter; plain functions for stateful sequences.
- Isolation:
t.TempDir(),t.Setenv, never touch real~/.strikeor network withouthttptest. - Assert observable behavior (return values, files written, events emitted, errors), not private call graphs.
- Bug fixes: add at least one regression test that fails before the fix when feasible.
Helpers by domain
Tools (harness/tool)
func allowAll(dir string) *Context {
return &Context{
WorkDir: dir, // usually t.TempDir()
Ask: func(ctx context.Context, req AskRequest) error { return nil },
}
}
Cover where relevant: happy path, invalid JSON args, permission rejection via Ask error,
path relative/absolute, workspace sandbox escape attempts, filestate stale read after
external change, truncation/output caps, deferred/toolsearch registration.
Tool surface is large (read/glob/grep/edit/write/apply_patch/bash + sandbox, task*, webfetch, todo*, memory_, issue_, notebook_edit, sleep, skill, question, plan_mode, phase_done, toolsearch, …). Prefer tests next to the module you touch; do not assume a fixed “six tools” list.
Permissions (harness/permission)
Evaluatelast-match-wins across layered rulesets.Service.Ask+Reply: once, always (session grant + sibling resolve), reject cascade, ctx cancel.
Protocol / session
- Round-trip event types through
protocol.Wrap→Envelope.Decodewhen adding kinds. - Session:
Open→Append→Close→Replay; malformed line errors.
Providers
- Prefer
httptest.NewServeragainstharness/providers/baseand concrete adapters. - Engine integration:
harness/provider/echo(prompts starting withrunemit bash tool calls).
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.
- 2d ago First seen · 95 lines · 54 tokens per session scan A 33ea3accf20c
write-go-tests is a skill published in the GitHub repository jonathanung/strike (5 stars, last pushed 5d ago), licensed Apache-2.0. It adds 54 tokens to every session and 984 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
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…
agent-host-chat-contributions
Build and review cross-cutting agent-host chat behavior through lifecycle contributions. Use when adding turn lifecycle side effects, prompt or context injection, restored-history transformation, protocol-action observation, or when reviewing changes that add code to AgentSideEffects or AgentService.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.