Using Agent Skills
addyosmani/agent-skills
Meta-skill for choosing which workflow skill fits the task at hand, plus always-on habits: surface assumptions, stop on confusion, push back, keep it simple and stay in scope.
A skill your agent uses when found gap or repetative issue, that produced by you or implemenataion agent.
$ npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install NeoLabHQ/context-engineering-kit create-rule --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/NeoLabHQ/context-engineering-kit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/create-rule .claude/skills/create-rule && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "create-rule" agent skill from https://github.com/NeoLabHQ/context-engineering-kit/tree/master/skills/create-rule into .claude/skills/create-rule/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-rule", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/NeoLabHQ/context-engineering-kit/tree/master/skills/create-ruleType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install NeoLabHQ/context-engineering-kit create-rule --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NeoLabHQ/context-engineering-kit.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/create-rule .agents/skills/create-rule && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "create-rule" agent skill from https://github.com/NeoLabHQ/context-engineering-kit/tree/master/skills/create-rule into .agents/skills/create-rule/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-rule", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install NeoLabHQ/context-engineering-kit create-rule --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NeoLabHQ/context-engineering-kit.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/create-rule .cursor/skills/create-rule && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "create-rule" agent skill from https://github.com/NeoLabHQ/context-engineering-kit/tree/master/skills/create-rule into .cursor/skills/create-rule/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-rule", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/NeoLabHQ/context-engineering-kit.git --path skills/create-rule--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install NeoLabHQ/context-engineering-kit create-rule --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NeoLabHQ/context-engineering-kit.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/create-rule .gemini/skills/create-rule && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "create-rule" agent skill from https://github.com/NeoLabHQ/context-engineering-kit/tree/master/skills/create-rule into .gemini/skills/create-rule/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-rule", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install NeoLabHQ/context-engineering-kit create-ruleInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/NeoLabHQ/context-engineering-kit.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/create-rule .github/skills/create-rule && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "create-rule" agent skill from https://github.com/NeoLabHQ/context-engineering-kit/tree/master/skills/create-rule into .github/skills/create-rule/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-rule", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install NeoLabHQ/context-engineering-kit create-rule --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/NeoLabHQ/context-engineering-kit.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/create-rule .opencode/skills/create-rule && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "create-rule" agent skill from https://github.com/NeoLabHQ/context-engineering-kit/tree/master/skills/create-rule into .opencode/skills/create-rule/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create-rule", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
create-ruleA skill your agent uses when found gap or repetative issue, that produced by you or implemenataion agent.
Create Rule is an agent skill from NeoLabHQ/context-engineering-kit. Use when found gap or repetative issue, that produced by you or implemenataion agent. Esentially use it each time when you say "You absolutly right, I should have done it differently." - need create rule for this issue so it not appears again.
Its SKILL.md is about 5.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows, covering Agent instruction files. The repository describes itself as: Hand-crafted Claude Code Skills focused on improving agent results quality. Compatible with OpenCode, Cursor, Antigravity, Gemini CLI, and others. Includes CodeRabbit open-source… The licence is GPL-3.0.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 23e2428. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown and bash).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
blog.codinghorror.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Create Rule loads about 5.4k tokens when it runs. Until then it costs about 64 tokens; SKILL.md has 2,068 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from NeoLabHQ/context-engineering-kit at commit 23e2428, republished under its GPL-3.0 licence (© NeoLabHQ). 2,068 words, ~5,448 tokens.
.claude/skills/create-rule/SKILL.md (or your agent's skills folder).Guide for creating effective .claude/rules files with contrastive examples that improve agent accuracy.
Core principle: Effective rules use contrastive examples (Incorrect vs Correct) to eliminate ambiguity.
REQUIRED BACKGROUND: Rules are behavioral guardrails, that load into every session and shapes how agents behave across all tasks. Skills load on-demand. If guidance is task-specific, create a skill instead.
Rules are modular, always-loaded instructions placed in .claude/rules/ that enforce consistent behavior. They act as "standing orders" — every agent session inherits them automatically.
| Aspect | Rules (.claude/rules/) | Skills (skills/) | CLAUDE.md |
|---|---|---|---|
| Loading | Every session (or path-scoped) | On-demand when triggered | Every session |
| Purpose | Behavioral constraints | Procedural knowledge | Project overview |
| Scope | Narrow, focused topics | Complete workflows | Broad project context |
| Size | Small (50-200 words each) | Medium (200-2000 words) | Medium (project summary) |
| Format | Contrastive examples | Step-by-step guides | Key-value / bullet points |
Create when:
Do NOT create for:
paths frontmatter)Load every session. Use for universal constraints.
# Error Handling
All error handlers must log the error before rethrowing.
Never silently swallow exceptions.paths frontmatter)Load only when agent works with matching files. Use for file-type-specific guidance.
---
paths:
- "src/api/**/*.ts"
---
# API Development Rules
All API endpoints must include input validation.
Use the standard error response format.Explicit high-level rules that set evaluation priorities.
# Evaluation Priorities
Prioritize correctness over style.
Do not reward hallucinated detail.
Penalize confident wrong answers more than uncertain correct ones.Every rule MUST follow the Description-Incorrect-Correct template. This structure eliminates ambiguity by showing both what NOT to do and what TO do.
---
title: Short Rule Name
paths: # Optional but preferable: when it is possible to define, use it!
- "src/**/*.ts"
---
# Rule Name
[1-2 sentence description of what the rule enforces and WHY it matters.]
## Incorrect
[Description of what is wrong with this pattern.]
\`\`\`language
// Anti-pattern code or behavior example
\`\`\`
## Correct
[Description of why this pattern is better.]
\`\`\`language
// Recommended code or behavior example
\`\`\`
## Reference
[Optional: links to documentation, papers, or related rules.]Researches shows that rules with both positive and negative examples are significantly more discriminative than rules with only positive guidance. The Incorrect/Correct pairing:
Explicit, high-level guidance:
| Principle | Example |
|---|---|
| Prioritize correctness over style | "A functionally correct but ugly solution is better than an elegant but broken one" |
| Do not reward hallucinated detail | "Extra information not grounded in the codebase should be penalized, not rewarded" |
| Penalize confident errors | "A confidently stated wrong answer is worse than an uncertain correct one" |
| Be specific, not vague | "Functions must not exceed 50 lines" not "Keep functions short" |
| State the WHY | "Use early returns to reduce nesting — deeply nested code increases cognitive load" |
The Incorrect section must show a pattern the agent would plausibly produce. Abstract or contrived bad examples provide no value.
Effective Incorrect examples:
Ineffective Incorrect examples:
The Correct section must show the minimal change needed to fix the Incorrect pattern. Large rewrites obscure the actual lesson.
Effective Correct examples:
Ineffective Correct examples:
Rules load every session. Every token counts.
.claude/
├── CLAUDE.md # Project overview (broad)
└── rules/
├── code-style.md # Global: code formatting rules
├── error-handling.md # Global: error handling patterns
├── testing.md # Global: testing conventions
├── security.md # Global: security requirements
├── evaluation-priorities.md # Global: judge/evaluator priorities
├── frontend/
│ ├── components.md # Path-scoped: React component rules
│ └── state-management.md # Path-scoped: state management rules
└── backend/
├── api-design.md # Path-scoped: API patterns
└── database.md # Path-scoped: database conventionsNaming conventions:
error-handling.md, not ErrorHandling.mderror-handling.md, not try-catch-patterns.mdFollow these steps in order, skipping only when a step is clearly not applicable.
Before writing any rule, identify the specific agent behavior that needs correction. This understanding can come from:
Document the gap as a concrete statement: "The agent does X, but should do Y."
Conclude this step when there is a clear, specific behavior to correct.
Decide whether this rule should be:
paths frontmatter) — applies to all work in the projectpaths frontmatter with glob patterns) — applies only when working with matching files~/.claude/rules/) — applies across all projects for personal preferencesDecision guide:
Is this project-specific?
No → User-level rule (~/.claude/rules/)
Yes → Is it relevant to ALL files?
Yes → Global rule (.claude/rules/rule-name.md)
No → Path-scoped rule (.claude/rules/rule-name.md with paths: frontmatter)This is the most critical step. Write the Incorrect and Correct examples BEFORE writing the description.
Quality check for contrastive examples:
| Check | Pass Criteria |
|---|---|
| Plausibility | Would an agent actually produce the Incorrect pattern? |
| Minimality | Does the Correct pattern change only what is necessary? |
| Clarity | Can a reader identify the difference in under 5 seconds? |
| Specificity | Does each example demonstrate exactly one concept? |
| Groundedness | Are the examples drawn from real codebase patterns? |
Now write the 1-2 sentence description that connects the contrastive examples. The description must:
Create the rule file following the structure template:
title, impact, tags, and optionally pathsPlace the file in .claude/rules/ with a descriptive filename.
Before finishing, verify:
.claude/rules/<rule-name>.mdtitle and impactpaths is set, glob patterns match intended filesAfter a rule is written, apply a Decompose → Filter → Reweight refinement cycle before finalizing:
Consider splitting complex rules into multiple focused rules.
For rules that your written, ask yourself: "Is this rule trying to cover more than one concept?"
For rules that your written, ask yourself: "Could this rule penalize acceptable variations or reward behaviors the prompt does not ask for?"
Check all existing .claude/rules/ files for overlap:
ls -R .claude/rules/ and grep -r "relevant-keyword" to find potential overlapsAssign or reassign the impact frontmatter field based on:
After the refinement cycle, ask the user for feedback on the rule.
You should continue to iterate until the rule is good.
---
title: Use Early Returns to Reduce Nesting
paths:
- "**/*.ts"
---
# Use Early Returns to Reduce Nesting
Handle error conditions and edge cases at the top of functions using early returns. Deeply nested code increases cognitive load and makes logic harder to follow.
## Incorrect
Guard clauses are buried inside nested conditionals, making the happy path hard to find.
\`\`\`typescript
function processOrder(order: Order) {
if (order) {
if (order.items.length > 0) {
if (order.status === 'pending') {
// actual logic buried 3 levels deep
const total = calculateTotal(order.items)
return submitOrder(order, total)
} else {
throw new Error('Order not pending')
}
} else {
throw new Error('No items')
}
} else {
throw new Error('No order')
}
}
\`\`\`
## Correct
Error conditions are handled first with early returns, keeping the happy path at the top level.
\`\`\`typescript
function processOrder(order: Order) {
if (!order)
throw new Error('No order')
if (order.items.length === 0)
throw new Error('No items')
if (order.status !== 'pending')
throw new Error('Order not pending')
const total = calculateTotal(order.items)
return submitOrder(order, total)
}
\`\`\`
## Reference
- [Flattening Arrow Code](https://blog.codinghorror.com/flattening-arrow-code/)---
title: API Endpoints Must Validate Input
paths:
- "src/api/**/*.ts"
- "src/routes/**/*.ts"
---
# API Endpoints Must Validate Input
Every API endpoint must validate request input before processing. Unvalidated input leads to runtime errors, security vulnerabilities, and data corruption.
## Incorrect
The handler trusts the request body without validation, allowing malformed data through.
\`\`\`typescript
export async function POST(req: Request) {
const body = await req.json()
const user = await db.users.create({
email: body.email,
name: body.name,
})
return Response.json(user)
}
\`\`\`
## Correct
Input is validated with a schema before use. Invalid requests receive a 400 response.
\`\`\`typescript
import { z } from 'zod'
const CreateUserSchema = z.object({
email: z.string().email(),
name: z.string().min(1).max(100),
})
export async function POST(req: Request) {
const parsed = CreateUserSchema.safeParse(await req.json())
if (!parsed.success) {
return Response.json({ error: parsed.error.flatten() }, { status: 400 })
}
const user = await db.users.create(parsed.data)
return Response.json(user)
}
\`\`\`# Bad: No contrastive examples, too vague
Keep functions short and readable.
Use meaningful variable names.Why bad: No concrete boundary. "Short" means different things to different agents. No Incorrect/Correct to calibrate behavior.
# Bad: Multi-step procedure in a rule
When deploying to production:
1. Run all tests
2. Check coverage thresholds
3. Build the project
4. Run integration tests
5. Deploy to staging first
...Why bad: Rules should be constraints, not workflows. This belongs in a skill.
# Bad: Same guidance in two places
# .claude/rules/formatting.md says "use 2-space indent"
# CLAUDE.md also says "use 2-space indent"Why bad: When guidance conflicts, the agent cannot determine which takes precedence. Keep each piece of guidance in exactly one location.
---
paths:
- "**/*"
---Why bad: Equivalent to a global rule but with the overhead of path matching. Remove the paths field entirely for global rules.
title and impact.claude/rules/ with descriptive hyphenated nameEffective rules show, they do not just tell. The Incorrect/Correct contrastive pattern eliminates ambiguity that prose descriptions leave open. When an agent can see both what to avoid and what to produce, compliance improves dramatically.
Every rule should answer three questions:
For larger projects, you can organize instructions into multiple files using the .claude/rules/ directory. This keeps instructions modular and easier for teams to maintain. Rules can also be scoped to specific file paths, so they only load into context when Claude works with matching files, reducing noise and saving context space.
<Note>
Rules load into context every session or when matching files are opened. For task-specific instructions that don't need to be in context all the time, use [skills](/en/skills) instead, which only load when you invoke them or when Claude determines they're relevant to your prompt.
</Note>
Place markdown files in your project's .claude/rules/ directory. Each file should cover one topic, with a descriptive filename like testing.md or api-design.md. All .md files are discovered recursively, so you can organize rules into subdirectories like frontend/ or backend/:
your-project/
├── .claude/
│ ├── CLAUDE.md # Main project instructions
│ └── rules/
│ ├── code-style.md # Code style guidelines
│ ├── testing.md # Testing conventions
│ └── security.md # Security requirementsRules without paths frontmatter are loaded at launch with the same priority as .claude/CLAUDE.md.
Rules can be scoped to specific files using YAML frontmatter with the paths field. These conditional rules only apply when Claude is working with files matching the specified patterns.
---
paths:
- "src/api/**/*.ts"
---
# API Development Rules
- All API endpoints must include input validation
- Use the standard error response format
- Include OpenAPI documentation commentsRules without a paths field are loaded unconditionally and apply to all files. Path-scoped rules trigger when Claude reads files matching the pattern, not on every tool use.
Use glob patterns in the paths field to match files by extension, directory, or any combination:
| Pattern | Matches |
|---|---|
**/*.ts | All TypeScript files in any directory |
src/**/* | All files under src/ directory |
*.md | Markdown files in the project root |
src/components/*.tsx | React components in a specific directory |
You can specify multiple patterns and use brace expansion to match multiple extensions in one pattern:
---
paths:
- "src/**/*.{ts,tsx}"
- "lib/**/*.ts"
- "tests/**/*.test.ts"
---The .claude/rules/ directory supports symlinks, so you can maintain a shared set of rules and link them into multiple projects. Symlinks are resolved and loaded normally, and circular symlinks are detected and handled gracefully.
This example links both a shared directory and an individual file:
ln -s ~/shared-claude-rules .claude/rules/shared
ln -s ~/company-standards/security.md .claude/rules/security.mdPersonal rules in ~/.claude/rules/ apply to every project on your machine. Use them for preferences that aren't project-specific:
~/.claude/rules/
├── preferences.md # Your personal coding preferences
└── workflows.md # Your preferred workflowsUser-level rules are loaded before project rules, giving project rules higher priority.
© NeoLabHQ, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/create-rule of NeoLabHQ/context-engineering-kit.
Open the folder on GitHubat commit 23e2428
Create Rule next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Create Rule this skillNeoLabHQ/context-engineering-kit | 1.7k | — | ~5.4k | Automated safety check: Pass | GPL-3.0 | |
| Using Agent Skillsaddyosmani/agent-skills | 103k | 4 repos | ~2.4k | Automated safety check: Pass | MIT | |
| Claude ReflectBayramAnnakov/claude-reflect | 1.7k | 2 repos | ~627 | Automated safety check: Pass | MIT | |
| Neat-Freak Knowledge CloseoutKKKKhazix/khazix-skills | 21k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Writing For Agentsbestofjs/bestofjs | 3.1k | 18 repos | ~2.7k | Automated safety check: Pass | MIT | |
| Task Observerrebelytics/one-skill-to-rule-them-all | 3.2k | 1 repos | ~12k | Automated safety check: Pass | CC-BY-4.0 |
addyosmani/agent-skills
Meta-skill for choosing which workflow skill fits the task at hand, plus always-on habits: surface assumptions, stop on confusion, push back, keep it simple and stay in scope.
BayramAnnakov/claude-reflect
Self-learning system that captures corrections during sessions and reminds users to run /reflect to update CLAUDE.md.
KKKKhazix/khazix-skills
Brings project docs, agent rule files, authorized memory and leftover workspace files back in line with what the code and runtime actually do at the end of a work session.
bestofjs/bestofjs
Writing documents for agents. An agent skill from bestofjs/bestofjs.
rebelytics/one-skill-to-rule-them-all
Monitors task execution for skill improvement opportunities.
microsoft/SkillOpt
Runs an on-demand or nightly sleep cycle that reviews past Claude Code sessions and proposes validated updates to CLAUDE.md and skills.
NeoLabHQ/context-engineering-kit
A skill your agent uses when adding metadata to commits without changing history, tracking review status, test results, code quality annotations, or supplementing commit messages post-hoc - provides…
NeoLabHQ/context-engineering-kit
A skill your agent uses to load open/unresolved PR review comments then aggregate them as tasks in .specs/comments/.md for parallel agents to fix.
NeoLabHQ/context-engineering-kit
A skill your agent uses when you writing commands, hooks, skills for Agent, or prompts for sub agents or any other LLM interaction, including optimizing prompts, improving LLM outputs, or designing…
NeoLabHQ/context-engineering-kit
Design multi-agent architectures for complex tasks. An agent skill from NeoLabHQ/context-engineering-kit.
NeoLabHQ/context-engineering-kit
Review an existing GitHub pull request and post inline review comments on its diff.
NeoLabHQ/context-engineering-kit
A skill your agent uses when executing implementation plans with independent tasks in the current session or facing 3+ independent issues that can be investigated without shared state or…
Categories
A skill your agent uses when found gap or repetative issue, that produced by you or implemenataion agent. Create Rule is an agent skill from NeoLabHQ/context-engineering-kit. Use when found gap or repetative issue, that produced by you or implemenataion agent.
Create Rule fits situations like: repetative issue; that produced by you; implemenataion agent.
Run `npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a claude-code`. Or copy the skill folder (skills/create-rule in NeoLabHQ/context-engineering-kit) into .claude/skills/create-rule in your project. Claude Code loads it when a task matches its description.
Run `npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a codex`. Or copy the skill folder (skills/create-rule in NeoLabHQ/context-engineering-kit) into .agents/skills/create-rule in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add NeoLabHQ/context-engineering-kit --skill create-rule -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-rule, .gemini/skills/create-rule, .github/skills/create-rule and .opencode/skills/create-rule in your project.
SKILL.md names no scripts, command-line tools or credentials: Create Rule is instructions for the agent only.
SKILL.md names 1 domain. In commands or code: blog.codinghorror.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Create Rule is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.4k tokens (SKILL.md is roughly 22k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Create Rule: Using Agent Skills (addyosmani/agent-skills, 103k stars), Claude Reflect (BayramAnnakov/claude-reflect, 1.7k stars), Neat-Freak Knowledge Closeout (KKKKhazix/khazix-skills, 21k stars) and Writing For Agents (bestofjs/bestofjs, 3.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
NeoLabHQ (a GitHub organization) maintains it in NeoLabHQ/context-engineering-kit, which has 1,749 GitHub stars. The repository holds 57 skills in this directory. The repository was last updated on August 26, 2026.
Source: NeoLabHQ/context-engineering-kit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.