andrew-kane-gem-writer SKILL.md skillA
andrew-kane-gem-writer from jikig-ai/soleur is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add jikig-ai/soleur/andrew-kane-gem-writer@git:20260924.a44cf8fPins git:20260924.a44cf8f in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- jikig-ai/soleur
- Path
plugins/soleur/skills/andrew-kane-gem-writer/SKILL.md- Versions recorded
- 4
- Latest version
- git:20260924.a44cf8f, committed Sep 24, 2026
- First version recorded
- Feb 2, 2026
- Size
- 5,421 bytes
- Repository stars
- 21
- License
- a license file GitHub does not identify
This skill should be used when writing Ruby gems following Andrew Kane's patterns. It applies when creating new gems, refactoring existing gems, or designing gem APIs with clean, minimal, production-ready code.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
<!-- grok-harness-invoke:start --> **Grok Build (`plugins/soleur/lib/harness.ts` `invokeSkill()`):** Read this SKILL.md in this process and run it to completion. A one-segment `soleur:<name>` in this document names a SKILL — on Grok Build, Read `plugins/soleur/skills/<name>/SKILL.md` in this process; it is not a nested tool_use. A multi-segment id such as `soleur:<domain>:<name>` names an AGENT: spawn it, never Read it, and on Grok Build spawn_subagent takes the id with its colons replaced by hyphens (`agentIdToGrokSubagentType`). **Claude Code:** Skill tool for a skill (`soleur:<name>`), Task tool with `subagent_type` for an agent. Forbidden is executing a subset, not the Read. <!-- grok-harness-invoke:end --> # Andrew Kane Gem Writer Write Ruby gems following Andrew Kane's battle-tested patterns from 100+ gems with 374M+ downloads (Searchkick, PgHero, Chartkick, Strong Migrations, Lockbox, Ahoy, Blazer, Groupdate, Neighbor, Blind Index). ## Core Philosophy **Simplicity over cleverness.** Zero or minimal dependencies. Explicit code over metaprogramming. Rails integration without Rails coupling. Every pattern serves production use cases. ## Entry Point Structure …
Read the whole file at its exact version.
How to install
mdr add jikig-ai/soleur/andrew-kane-gem-writer@sha256:159c9a2fe2607dcbThe line at the top of this page pins the label git:20260924.a44cf8f, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_3sru3lh4hft2zpaa)
4 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 4 versions of this file, between Feb 2, 2026 and Sep 24, 2026, about one every 78 days.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20260924.a44cf8f latest | 2026-09-24 | a44cf8f | 5,421 B | A | view · diff |
| git:20260909.ae44051 | 2026-09-09 | ae44051 | 4,697 B | A | view · diff |
| git:20260314.e2b1c0f | 2026-03-14 | e2b1c0f | 4,696 B | A | view · diff |
| git:20260202.5dd298d | 2026-02-02 | 5dd298d | 4,867 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (5421 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
jikig-ai/soleur · 21 stars · license a license file GitHub does not identify · pushed 2026-11-08 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_3sru3lh4hft2zpaa GET https://markdownregistry.com/api/v1/resolve?ref=jikig-ai/soleur/andrew-kane-gem-writer GET https://markdownregistry.com/api/v1/blob/159c9a2fe2607dcb96edf8f67c7ccbc4fbbc2169278810b6101e7a753b2368eb
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.