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/richardcarls/solid-js-best-practices/solid-js-best-practicesnpx skills add richardcarls/solid-js-best-practices --skill solid-js-best-practicesgit clone --depth 1 https://github.com/richardcarls/solid-js-best-practicesWrote 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/richardcarls/solid-js-best-practices/solid-js-best-practices)<a href="https://agentmods.dev/skills/richardcarls/solid-js-best-practices/solid-js-best-practices"><img src="https://agentmods.dev/badge/skills/richardcarls/solid-js-best-practices/solid-js-best-practices.svg" alt="Measured on agentmods" 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 | $0.00104 | $0.07611 |
| Opus 5 | $0.00052 | $0.03805 |
| Sonnet 5 | $0.00021 | $0.01522 |
| Haiku 4.5 | $0.00010 | $0.00761 |
Grade A, and why
solid-js-best-practices 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 5d 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 — 428 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Solid.js Best Practices
Comprehensive best practices for building Solid.js applications and components, optimized for AI-assisted code generation, review, and refactoring.
Quick Reference
Essential Imports
import {
createSignal,
createEffect,
createMemo,
createResource,
onMount,
onCleanup,
Show,
For,
Switch,
Match,
Index,
Suspense,
ErrorBoundary,
lazy,
batch,
untrack,
mergeProps,
splitProps,
children,
} from "solid-js";
import { createStore, produce, reconcile } from "solid-js/store";
Component Skeleton
import { Component, JSX, mergeProps, splitProps } from "solid-js";
interface MyComponentProps {
title: string;
count?: number;
onAction?: () => void;
children?: JSX.Element;
}
const MyComponent: Component<MyComponentProps> = (props) => {
// Merge default props
const merged = mergeProps({ count: 0 }, props);
// Split component props from passed-through props
const [local, others] = splitProps(merged, ["title", "count", "onAction"]);
// Local reactive state
const [value, setValue] = createSignal("");
// Derived/computed values
const doubled = createMemo(() => local.count * 2);
// Side effects
createEffect(() => {
console.log("Count changed:", local.count);
});
// Lifecycle
onMount(() => {
console.log("Component mounted");
});
onCleanup(() => {
console.log("Component cleanup");
});
return (
<div {...others}>
<h1>{local.title}</h1>
<p>Count: {local.count}, Doubled: {doubled()}</p>
<input
value={value()}
onInput={(e) => setValue(e.currentTarget.value)}
/>
<button onClick={local.onAction}>Action</button>
{props.children}
</div>
);
};
export default MyComponent;
Rules by Category
1. Reactivity (7 rules)
| # | Rule | Priority | Description |
|---|---|---|---|
| 1-1 | Use Signals Correctly | CRITICAL | Always call signals as functions count() not count |
| 1-2 | Use Memo for Derived Values | HIGH | Use createMemo for computed values, not createEffect |
| 1-3 | Effects for Side Effects Only | HIGH | Use createEffect only for side effects, not derivations |
| 1-7 | No Primitives in Reactive Contexts | HIGH | Don't call hooks or create reactive primitives inside effects or memos |
| 1-4 | Avoid Setting Signals in Effects | MEDIUM | Setting signals in effects can cause infinite loops |
| 1-5 | Use Untrack When Needed | MEDIUM | Use untrack() to prevent unwanted reactive subscriptions |
| 1-6 | Batch Signal Updates | LOW | Use batch() for multiple synchronous signal updates |
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.
- 5d ago First seen · 428 lines · 104 tokens per session scan A 95c1c965e68e
solid-js-best-practices is a skill published in the GitHub repository richardcarls/solid-js-best-practices (2 stars, last pushed 1mo ago), licensed MIT. It adds 104 tokens to every session and 7,611 once invoked, about $0.0005 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
understand-dashboard
Launch the interactive web dashboard to visualize a codebase's knowledge graph.
understand-onboard
Use when you need to generate an onboarding guide for new team members joining a project.
baoyu-youtube-transcript
Downloads YouTube video transcripts/subtitles and cover images by URL or video ID. Supports multiple languages, translation, chapters, and speaker identification. Caches raw data for fast re-formatting. Use when user asks to "get YouTube transcript", "download subtitles", "get captions", "YouTube字幕", "YouTube封面"…
baoyu-comic
Knowledge comic creator supporting multiple art styles and tones. Creates original educational comics with detailed panel layouts and batch-capable image generation. Use when user asks to create "知识漫画", "教育漫画", "biography comic", "tutorial comic", or "Logicomix-style comic".
baoyu-diagram
Create professional, dark-themed SVG diagrams of any type — architecture diagrams, flowcharts, sequence diagrams, structural diagrams, mind maps, timelines, illustrative/conceptual diagrams, and more. Use this skill whenever the user asks for any kind of technical or conceptual diagram, visualization of a system…
baoyu-danger-gemini-web
Generates images and text via reverse-engineered Gemini Web API. Supports text generation, image generation from prompts, reference images for vision input, and multi-turn conversations. Use when other skills need image generation backend, or when user requests "generate image with Gemini", "Gemini text generation"…