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 skills add Lonsdale201/wp-agent-skills --skill wp-admin-codemirrorgit clone --depth 1 https://github.com/Lonsdale201/wp-agent-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/lonsdale201/wp-agent-skills/wp-admin-codemirror)<a href="https://agentmods.dev/skills/lonsdale201/wp-agent-skills/wp-admin-codemirror"><img src="https://agentmods.dev/badge/skills/lonsdale201/wp-agent-skills/wp-admin-codemirror/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/lonsdale201/wp-agent-skills/wp-admin-codemirror"><img src="https://agentmods.dev/badge/skills/lonsdale201/wp-agent-skills/wp-admin-codemirror.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What 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.1 | $0.00159 | $0.03443 |
| Opus 5.5 | $0.00064 | $0.01377 |
| Sonnet 5.5 | $0.00032 | $0.00689 |
| Haiku 4.5 | $0.00016 | $0.00344 |
Grade A, and why
wp-admin-codemirror 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 1mo 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 — 300 lines — stays where its author put it; the contents beside it link to each section on GitHub.
WordPress Admin CodeMirror (wp.codeEditor)
WP bundles CodeMirror 5 plus its linter add-ons. Plugins almost never use it because the entry point is one underused function (wp_enqueue_code_editor) and the JS init is split between two files. This skill is the bootstrap recipe.
When to use this skill
Trigger when ANY of the following is true:
- The user is adding a
<textarea>to admin for CSS / JSON / JS / HTML / PHP / SQL / regex / Markdown / YAML content and wants syntax highlighting (NOT the block editor). - Code references
wp_enqueue_code_editor,wp_get_code_editor_settings,wp.codeEditor,wp.CodeMirror,wp_code_editor_settings,code-editorscript handle. - The user is building a "custom CSS field", "snippet editor", "JSON config editor", "webhook payload field", "regex builder", "shortcode preview", "rules engine".
- The user mentions CodeMirror, Monaco, Ace, Prism specifically in a WP-admin context — and the answer is "use the bundled CodeMirror".
The five-step bootstrap
add_action( 'admin_enqueue_scripts', static function ( string $hook_suffix ): void {
// 1. Only on your screen.
if ( 'settings_page_myplugin' !== $hook_suffix ) {
return;
}
// 2. Ask WP to enqueue CodeMirror and bundle a settings snapshot for this MIME type.
// Use 'type' (MIME) or 'file' (extension sniff).
$settings = wp_enqueue_code_editor( array( 'type' => 'text/css' ) );
// 3. CRITICAL: $settings is false when the user has disabled syntax highlighting
// in their profile. Stop here; the textarea stays as a plain textarea.
if ( false === $settings ) {
return;
}
// 4. Enqueue YOUR admin script that calls wp.codeEditor.initialize().
wp_enqueue_script(
'myplugin-css-editor',
plugins_url( 'assets/css-editor.js', MYPLUGIN_FILE ),
array( 'code-editor', 'wp-i18n' ),
MYPLUGIN_VERSION,
array( 'in_footer' => true )
);
// 5. Pass the textarea ID and per-instance settings to your script.
wp_add_inline_script(
'myplugin-css-editor',
'window.MyPluginCssEditor = ' . wp_json_encode( array(
'id' => 'myplugin_custom_css',
'settings' => $settings,
) ) . ';',
'before'
);
} );
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.
- 1mo ago First seen · 300 lines · 159 tokens per session scan A b3ec86609ef8
wp-admin-codemirror is a skill published in the GitHub repository Lonsdale201/wp-agent-skills (25 stars, last pushed 7d ago), licensed MIT. It adds 159 tokens to every session and 3,443 once invoked, about $0.0006 per session on Opus 5.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-09-11.
Other skills, from other repositories
static-seo
Audits and improves SEO for static HTML sites. Use when the user asks to audit, set up, or improve SEO on a static site (Hugo, Jekyll, 11ty, Gatsby, Next.js static export, hand-rolled HTML, or wp-static-clone output), or mentions head metadata, structured data, JSON-LD, sitemaps, IndexNow, Open Graph images, schema…
fluentui-blazor
Guide for using the Microsoft Fluent UI Blazor component library (Microsoft.FluentUI.AspNetCore.Components NuGet package) in Blazor applications. Use this when the user is building a Blazor app with Fluent UI components, setting up the library, using FluentUI components like FluentButton, FluentDataGrid, FluentDialog…
stack
Validates Biome 2.3+, Bun workspace, Next.js 16 and Tailwind v4 config and flags deprecated patterns. Use before stack work or when AI-generated config may be outdated.
cardputer-buddy
Iterate on the Cardputer-Adv MicroPython app bundle (Claude Buddy, Snake, Hello) after the device is already provisioned via m5-onboard. Use when the user wants to add a new app, push a single changed .py without re-flashing, watch device serial logs, or run a one-shot REPL command. Trigger on "add an app", "push to…
migrate-to-rust
Clones, analyzes, plans, and migrates legacy codebases (C++, Fortran, Java, Python, C, Shell) from a GitHub URL or local directory to a modern, high-performance, deterministic, 100% Safe Rust architecture, tracking live telemetry across every task bucket, test failure/fix cycle, and Profile-Guided Optimization (PGO)…
frontend-design
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.