Cursor rule
.cursor/rules/prompt-engineering.mdcWhen we are creating prompts that will be used by an LLM for agents
Cursor rules
Quality
57/100
Scores the file, not the repository.Length
3,143 words
30 headings · 27 code blocksRepository
24
— · pushed 41 days agoLast changed
3 days ago
First indexed 3 days ago.1234567# Prompt Engineering Best Practices for LLM-to-LLM Communication89When creating prompts that will be read and executed by other LLMs (commands, workflows,10agent prompts), follow these practices. These guidelines are for prompts that LLMs write11for other LLMs to consume - not for human-to-LLM interaction.1213## Why This Document Minimizes Formatting1415This document is designed to be read by LLMs, not humans. Therefore:1617- Minimal markdown formatting: No excessive bold, italics, or decorative symbols. These18 waste tokens and add no semantic value for LLM comprehension.19- Minimal "bad" examples: LLMs encode patterns from what they see, regardless of labels20 like "wrong" or "don't do this." Showing anti-patterns teaches the LLM to reproduce21 them.22- Simple structure: Headings for organization, code blocks for actual patterns, plain23 text for instructions.24- Clear over clever: Direct language that LLMs can parse literally, not stylistic25 variations.2627When you read "avoid X" or see a counterexample in this document, understand that we're28violating our own principle for teaching purposes - but minimize this pattern in prompts29you create for LLM consumption.3031## Key Principles for LLM-Readable Prompts3233- Assume the executing model is smarter: The model executing your prompt is likely more34 capable than the model that created it. Trust its abilities rather than35 over-prescribing implementation details.36- Front-load critical information: LLMs give more weight to early content37- Be explicit: LLMs can't infer context the way humans do38- Maintain consistency: Use the same terminology throughout39- Structure matters: Clear boundaries (especially XML tags) help LLMs parse complex40 prompts41- Examples teach patterns: What you show is what the LLM will do42- Clarity over brevity: Never sacrifice unambiguous interpretation for token savings43- Explain motivation: Tell the LLM _why_ a constraint exists - it generalizes from44 reasoning better than from bare rules45- Descriptive over directive: "Use this tool when modifying files" works better than46 "CRITICAL: You MUST use this tool" - aggressive language can cause over-triggering47- Positive framing: "Write in flowing prose" is clearer than "Don't use markdown" -48 positive instructions are unambiguous, negative ones require constructing then49 negating5051## Pattern Reinforcement Through Examples5253When creating prompts for other LLMs to execute, pattern teaching becomes critical. LLMs54learn from what you show them, not from what you tell them to avoid.5556### How LLMs Process Examples in Prompts5758When an LLM reads a prompt file with examples, it encodes those patterns for59reproduction:60611. Pattern Matching Over Labels: LLMs reproduce structural patterns. Code structure62 creates strong activation. Text labels like "wrong" or "don't do this" are weak63 signals that don't override pattern encoding.64652. Direct Teaching Through Examples: When writing command workflows or agent prompts,66 you're teaching the executing LLM. Every example shown is a lesson it will follow.67683. Consistency is Critical: In LLM-to-LLM communication, inconsistent examples cause69 unpredictable behavior. The executing LLM can't resolve ambiguity the way humans do.70714. Attention Weighting: All tokens in the prompt receive attention. Structural patterns72 activate high attention regardless of surrounding text saying "avoid this."7374### Writing Effective Instructions for LLM Execution7576For command workflows and agent prompts:77781. Flood with correct patterns: Show 5+ examples of the standard approach792. Never show anti-patterns: Don't include "wrong" examples - the LLM will reproduce80 them813. Describe exceptions in prose: If there are edge cases, describe them in words, not82 code834. Maintain pattern consistency: All examples should follow the same structure8485Example of good pattern teaching in a prompt file:8687```xml88<task>89Update all API endpoints to use consistent error handling90</task>9192<examples>93// Pattern to follow:94async function getUser(id) {95 try {96 const user = await db.users.findById(id);97 if (!user) {98 throw new NotFoundError('User not found');99 }100 return user;101 } catch (error) {102 logger.error('Failed to get user', { id, error });103 throw error;104 }105}106107async function updateUser(id, data) {108 try {109 const user = await db.users.update(id, data);110 if (!user) {111 throw new NotFoundError('User not found');112 }113 return user;114 } catch (error) {115 logger.error('Failed to update user', { id, error });116 throw error;117 }118}119120async function deleteUser(id) {121 try {122 const result = await db.users.delete(id);123 if (!result) {124 throw new NotFoundError('User not found');125 }126 return result;127 } catch (error) {128 logger.error('Failed to delete user', { id, error });129 throw error;130 }131}132</examples>133134<instructions>135Apply this exact error handling pattern to all endpoints. If an endpoint doesn't interact with the database, omit the NotFoundError check but keep the try-catch structure and logging.136</instructions>137```138139### The Mechanism in LLM-to-LLM Communication140141When one LLM writes a prompt for another to execute:142143- The executing LLM encodes ALL patterns shown, regardless of labels144- "Don't do X" requires the LLM to first construct X, then negate it145- Direct positive examples create stronger, more reliable execution146- Pattern consistency across examples ensures predictable behavior147148Key principle: In LLM-to-LLM communication, show exactly what you want done. Never show149what you don't want, even as a counterexample.150151## Goals Over Process in LLM-Readable Prompts152153When writing prompts for LLM execution (commands, workflows, agents), focus on clear154outcomes rather than micro-managing steps. LLMs can figure out implementation details.155156Remember: The model executing your prompt is likely more advanced than the model that157created it. A prompt written by GPT-4 might be executed by Claude 3.5 Sonnet or GPT-4o.158Even prompts written by older versions of the same model will be executed by newer,159smarter versions. Trust the executing model's superior capabilities.160161### The Over-Prescription Problem in LLM-to-LLM Communication162163Overly prescriptive prompts create problems when LLMs execute them:164165- Waste tokens on process details the executing LLM can determine166- Prevent the executing model from using its superior capabilities167- Create brittle workflows that break with slight context changes168- Force unnecessary decision trees that add complexity169- Reduce the LLM's ability to handle edge cases intelligently170171### Writing Goal-Focused Prompts for LLMs172173For command workflows and agent prompts:174175Over-prescriptive command:176177```xml178<task>179Step 1: Open each TypeScript file180Step 2: Search for interfaces181Step 3: For each interface:182 a. Check if it has a name starting with 'I'183 b. If yes:184 i. Create a new name without 'I'185 ii. Search for all usages186 iii. Replace each usage187 c. If no:188 i. Skip to next interface189Step 4: Save the file190Step 5: Run type checking191</task>192```193194Goal-focused command:195196```xml197<task>198Remove the 'I' prefix from all TypeScript interface names throughout the codebase, updating all references. Ensure type checking still passes.199</task>200```201202For agent prompts:203204Over-prescriptive agent prompt:205206```xml207<instructions>2081. First, read the package.json file2092. Then, look at each dependency2103. For each dependency, check if there's a newer version2114. If there is, update it2125. Then run npm install2136. Then run the tests2147. If tests fail, revert the change215</instructions>216```217218Goal-focused agent prompt:219220```xml221<objective>222Update all dependencies to their latest compatible versions while ensuring all tests continue to pass.223</objective>224225<constraints>226- Don't update major versions that would break compatibility227- Keep the application functional throughout the process228</constraints>229```230231### Principles for LLM-Executable Prompts232233Describe outcomes clearly: State what success looks like, not how to achieve it.234235Set boundaries, not algorithms: Define constraints and requirements, let the LLM236determine the approach.237238Use natural language: Write prompts as you would explain a task to a competent239colleague.240241Trust the LLM's capabilities: Modern LLMs can handle file operations, code analysis, and242complex refactoring without step-by-step instructions.243244### When Detailed Steps ARE Needed245246Include specific steps only when:247248- The order is critical and non-obvious249- Domain-specific requirements must be followed exactly250- You're establishing a specific pattern to be replicated251- The process itself is the goal (e.g., "Follow our team's PR review checklist")252253Example where steps matter:254255```xml256<task>257Implement our team's database migration protocol258</task>259260<required-steps>2611. Create migration with timestamp prefix2622. Write both up() and down() methods2633. Test rollback before committing2644. Document breaking changes in MIGRATIONS.md265</required-steps>266267<reason>268These steps are required by our deployment pipeline and cannot be skipped or reordered.269</reason>270```271272Key principle: In LLM-to-LLM communication, clarity about the goal is more valuable than273detailed process instructions.274275## Structural Delimiters for LLM Consumption276277Modern LLMs are trained to recognize XML-style tags, making them highly effective for278LLM-to-LLM communication. Use them to create unambiguous boundaries that LLMs can279reliably parse.280281Now that you understand pattern reinforcement and goal-focused prompting, you need to282know how to structure prompts so LLMs can parse them reliably.283284When to use XML tags:285286- Multiple distinct sections that need clear separation287- When you need to reference specific parts later in the prompt288- Complex prompts with different types of content (context, task, examples, constraints)289- Creating reusable command workflows or agent prompts290291```xml292<context>293Current database has 50M records across 12 tables294</context>295296<task>297Optimize the query to run in under 2 seconds298</task>299300<constraints>301Cannot modify indexes or table structure302</constraints>303```304305When to skip XML tags:306307- Single, straightforward instructions308- Simple one-paragraph prompts309- When the prompt has natural flow without needing boundaries310311```312# Good without XML - simple and clear:313Update all TypeScript interfaces to use the 'readonly' modifier for properties that shouldn't be mutated.314315# Better with XML - multiple components:316<objective>317Refactor the authentication system318</objective>319320<requirements>321- Maintain backward compatibility322- Use the new OAuth2 library323- Update all affected tests324</requirements>325326<examples>327// Old pattern328const auth = new BasicAuth(username, password);329330// New pattern331const auth = new OAuth2Client(clientId, clientSecret);332</examples>333```334335Guidelines for XML structure:336337- **Use semantic names, not numbers**: `<task-preparation>` not `<phase-1>`,338 `<create-pr>` not `<step-6>`339 - Numbered tags are brittle: reordering requires renumbering all tags and references340 - Semantic tags are self-documenting: `<validation-and-review>` tells you what it does341 - Example: A workflow with `<task-preparation>`, `<execution>`, `<review>` stays clear342 even when phases are added or reordered343- Be consistent with tag names throughout your codebase (always use `<task>` not344 sometimes `<objective>`)345- Use semantically meaningful tag names that describe the content346- Tags should enhance clarity, not add complexity for its own sake347- LLMs parse these more literally than humans would348349## Writing Prompts for LLM Consumption350351When creating prompts that other LLMs will read and execute (command files, agent352prompts, workflows), remember that LLMs parse more literally than humans. Ambiguity that353humans resolve through context will confuse LLMs.354355### Key Differences from Human-Readable Prompts356357LLMs need explicit context: Humans infer relationships and context. LLMs need everything358spelled out.359360Good example:361362```363"Update the webpack.config.js to enable source maps in development mode by setting devtool: 'source-map'"364```365366Avoid vague references like "update the config like we discussed"367368Consistent terminology matters: Use the same terms throughout. Don't vary vocabulary for369style.370371Good example:372373```374"Update the component... update the component... update the component..."375```376377Avoid varying terms like "modify the component... update the element... change the378widget"379380Unambiguous references: Be specific about what you're referring to.381382Good example:383384```385"After updating the UserProfile component, test the user authentication functionality"386```387388Avoid ambiguous pronouns like "After updating it, test the functionality"389390### Structure for LLM Parsing391392Use clear section markers: Help the LLM understand the prompt structure.393394```xml395<context>396Working in a Next.js 14 application with TypeScript and Tailwind CSS397</context>398399<objective>400Create a reusable modal component401</objective>402403<requirements>404- Use Radix UI primitives for accessibility405- Include enter/exit animations406- Support both controlled and uncontrolled modes407</requirements>408409<output>410A single Modal.tsx file with the complete implementation411</output>412```413414Order matters for context building: Put foundational information first.415416Good order:4174181. Environment/context4192. Overall objective4203. Specific requirements4214. Constraints4225. Examples4236. Output format424425This allows the LLM to build understanding progressively.426427### Common Patterns for Reliability428429For refactoring tasks: Be explicit about preservation.430431```xml432<task>433Refactor all class components to functional components with hooks434</task>435436<preserve>437- All existing functionality438- Component prop interfaces439- Test coverage440</preserve>441```442443For code generation: Specify integration points.444445```xml446<task>447Add user authentication to the application448</task>449450<integration>451- Use existing Router from src/router/index.ts452- Store auth state in existing Redux store453- Follow existing API client patterns in src/api/454</integration>455```456457For analysis tasks: Define evaluation criteria.458459```xml460<task>461Review the codebase for performance issues462</task>463464<focus-areas>465- Unnecessary re-renders in React components466- N+1 query problems in API endpoints467- Large bundle sizes from imports468- Missing memoization opportunities469</focus-areas>470```471472### Testing LLM-Readable Prompts473474When you write a prompt file, consider:475476- Can another LLM execute this without your implicit knowledge?477- Are all terms defined or demonstrated through examples?478- Is the success criteria clear and measurable?479- Would a different LLM interpret this the same way?480481## Few-Shot Example Guidelines for LLM Authors482483When an LLM creates prompts with examples for another LLM to execute, pattern484consistency is critical. Examples are the primary teaching mechanism. This builds on the485"Pattern Reinforcement Through Examples" section above.486487How many examples for LLM execution?488489- 0 examples: Only for standard operations the LLM knows well (e.g., "format as JSON")490- 1-2 examples: When you need specific format but pattern is simple491- 3-5 examples: Optimal for teaching new patterns - enough variety without overwhelming492- 5+ examples: When establishing complex patterns or handling many edge cases493494Critical rule for LLM-generated examples: All examples must follow identical structure.495496Good - Consistent pattern for LLM to follow:497498```xml499<examples>500// Convert async/await to promises:501// Before:502async function getData() {503 const result = await fetch('/api/data');504 return await result.json();505}506507// After:508function getData() {509 return fetch('/api/data')510 .then(result => result.json());511}512513// Before:514async function saveUser(data) {515 const user = await createUser(data);516 await sendEmail(user.email);517 return user;518}519520// After:521function saveUser(data) {522 return createUser(data)523 .then(user => {524 return sendEmail(user.email).then(() => user);525 });526}527</examples>528529Inconsistent structure confuses LLMs. Avoid examples where:530- First example shows just the result summary531- Second example shows before/after code532- Third example shows only a text rule533534This inconsistency prevents the LLM from learning a reliable pattern.535536Ordering examples for LLM consumption:5375381. Most common case first - This anchors the pattern5392. Variations next - Show how pattern adapts5403. Edge cases last - Only if necessary5414. Never include counter-examples - LLMs will reproduce them542543Example placement in prompt files:544545```xml546<task>547Convert all arrow functions to regular functions548</task>549550<rules>551Preserve all functionality and bindings552</rules>553554<examples>555// Pattern demonstrations go here556// Each showing the exact transformation557</examples>558559<apply-to>560All files in src/components/561</apply-to>562```563564## Token Efficiency for LLM Clarity565566When writing prompts for LLM consumption, prioritize unambiguous interpretation over567brevity. Clear communication between LLMs is more important than token count. Remember568the principle from earlier: clarity over brevity.569570Clarity-focused optimizations:571572Remove redundancy, keep precision:573574Good example:575576```577"Update the webpack.config.js file"578```579580Avoid unnecessarily verbose phrasing like "In order to accomplish the task of updating581the configuration file" or overly compressed ambiguous phrases like "update config"582583Use consistent terminology:584585Good example:586587```588"Update the component, then update the module, then update the element"589```590591Avoid varying terms for style like "Modify the component, then alter the module, then592change the element"593594Combine related instructions when logical:595596Good example:597598```599"Validate input: ensure it's a non-null string"600```601602Avoid over-separated instructions like "First, validate the input. Second, check it's603not null. Third, verify it's a string."604605When compression hurts LLM comprehension:606607Avoid these "optimizations" that confuse LLMs:608609- Ambiguous pronouns ("it", "that", "this") without clear antecedents610- Omitting articles that clarify meaning ("the UserService" vs "UserService")611- Context-dependent abbreviations not defined in the prompt612- Removing qualifiers that specify scope ("all", "only", "except")613614Example of good balance:615616Good example:617618```xml619<task>620Fix the authentication bug in the login component where users remain logged in after session expiry621</task>622```623624Avoid over-compressed descriptions like "fix auth bug in login"625626Key principle: In LLM-to-LLM prompts, every word that adds clarity is worth including.627Compression should never introduce ambiguity.628629## Prompt Composability630631When building command workflows and agent systems, design prompts that can be combined632and reused across different contexts.633634### Modular Prompt Design635636Create prompts that work as building blocks:637638```xml639<!-- Base refactoring prompt -->640<prompt id="refactor-base">641 <context>642 Working in a TypeScript codebase with strict mode enabled643 </context>644 <preserve>645 All existing functionality and type contracts646 </preserve>647</prompt>648649<!-- Specific refactoring that builds on base -->650<prompt extends="refactor-base">651 <task>652 Convert Promise chains to async/await syntax653 </task>654 <constraints>655 Maintain error handling semantics656 </constraints>657</prompt>658```659660### Referencing Other Prompts661662Design prompts that can reference and build upon each other:663664```xml665<workflow>666 <step name="analyze">667 <description>668 Identify all components using deprecated lifecycle methods669 </description>670 <output>List of components needing updates</output>671 </step>672673 <step name="refactor" depends-on="analyze">674 <description>675 Update each identified component to use modern hooks676 </description>677 <input>List from analyze step</input>678 </step>679680 <step name="verify" depends-on="refactor">681 <description>682 Run tests and ensure no regressions683 </description>684 </step>685</workflow>686```687688### Context Inheritance689690Allow prompts to inherit and override context:691692```xml693<!-- Parent context -->694<base-context>695 <environment>Next.js 14, TypeScript 5.2</environment>696 <style-guide>Airbnb JavaScript Style Guide</style-guide>697</base-context>698699<!-- Child prompt inherits and extends -->700<command inherits="base-context">701 <task>Create new API endpoint</task>702 <additional-context>703 <database>PostgreSQL with Prisma ORM</database>704 </additional-context>705</command>706```707708### Parameterized Prompts709710Create reusable templates with parameters:711712```xml713<template name="add-feature">714 <parameters>715 <param name="feature-name" required="true"/>716 <param name="integration-points" required="true"/>717 <param name="test-requirements" default="unit and integration tests"/>718 </parameters>719720 <task>721 Add {{feature-name}} to the application722 </task>723724 <requirements>725 - Integrate with {{integration-points}}726 - Include {{test-requirements}}727 - Follow existing patterns in the codebase728 </requirements>729</template>730731<!-- Usage -->732<execute template="add-feature">733 <feature-name>user notifications</feature-name>734 <integration-points>Redux store and WebSocket service</integration-points>735</execute>736```737738### Composition Patterns739740Sequential composition: Tasks that must run in order741742```xml743<sequence>744 <do>Analyze current implementation</do>745 <then>Identify optimization opportunities</then>746 <then>Apply optimizations</then>747 <finally>Measure performance improvements</finally>748</sequence>749```750751Parallel composition: Tasks that can run simultaneously752753```xml754<parallel>755 <task>Update component styles</task>756 <task>Update component tests</task>757 <task>Update component documentation</task>758</parallel>759```760761Conditional composition: Tasks based on conditions762763```xml764<conditional>765 <if condition="uses TypeScript">766 <task>Update type definitions</task>767 </if>768 <else>769 <task>Add JSDoc comments</task>770 </else>771</conditional>772```773774### Best Practices for Composable Prompts7757761. Clear interfaces: Define what each prompt expects and produces7772. Minimize dependencies: Keep prompts loosely coupled7783. Consistent naming: Use predictable names for reusable components7794. Documentation: Include descriptions of when and how to use each prompt7805. Version compatibility: Note which versions of tools/frameworks prompts work with781782Key principle: Design prompts like you would design functions - focused, reusable, and783composable.784785## Common Pitfalls in LLM-to-LLM Prompts786787- Ambiguous instructions: "Update the code" vs "Update all React components to use hooks788 instead of class syntax"789- Inconsistent terminology: Switching between "component", "element", "widget" for the790 same thing791- Showing anti-patterns: Including "wrong" examples that the LLM will reproduce792- Over-prescriptive steps: Micro-managing instead of stating clear goals793- Unclear references: Using "it", "that", "this" without clear antecedents794- Missing context: Assuming the LLM knows project-specific conventions795- Inconsistent examples: Examples that don't follow the same pattern structure796
Also in TechNickAI/ai-coding-config
Diff this repo’s formatsOne repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| TechNickAI/ai-coding-config.cursor/rules/git-commit-message.mdc · 24 | Cursor rules | archgitdeployment | 58/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/git-interaction.mdc · 24 | Cursor rules | testlint-formatstylearch+4 | 88/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/heart-centered-ai-philosophy.mdc · 24 | Cursor rules | no sections | 30/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/ruff-linting.mdc · 24 | Cursor rules | lint-format | 43/100 | 3 days ago | |
| TechNickAI/ai-coding-configAGENTS.md · 24 | AGENTS.md | stylearchgitdo-not+1 | 78/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/external-apis.mdc · 24 | Cursor rules | testtesting-strategyapi | 54/100 | 3 days ago | |
| TechNickAI/ai-coding-config.claude-plugin/CLAUDE.md · 24 | CLAUDE.md | deployment | 25/100 | 3 days ago | |
| TechNickAI/ai-coding-config.claude/AGENTS.md · 24 | AGENTS.md | archagent-behaviour | 54/100 | 3 days ago | |
| TechNickAI/ai-coding-config.claude/CLAUDE.md · 24 | CLAUDE.md | lint-formatstyletypestesting-strategy+1 | 62/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/AGENTS.md · 24 | AGENTS.md | archdo-notagent-behaviour | 56/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/autonomous-development-workflow.mdc · 24 | Cursor rules | testlint-formatgitagent-behaviour | 77/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/code-review-standards.mdc · 24 | Cursor rules | testtypestesting-strategygit+2 | 59/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/code-style-and-zen-of-python.mdc · 24 | Cursor rules | lint-formatstyledocs | 62/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/fixing-github-actions-builds.mdc · 24 | Cursor rules | setupbuilddo-notagent-behaviour | 81/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/git-worktree-task.mdc · 24 | Cursor rules | lint-formatgitagent-behaviour | 38/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/naming-stuff.mdc · 24 | Cursor rules | style | 48/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/trust-and-decision-making.mdc · 24 | Cursor rules | no sections | 48/100 | 3 days ago | |
| TechNickAI/ai-coding-config.cursor/rules/user-facing-language.mdc · 24 | Cursor rules | lint-formatstylearch | 66/100 | 3 days ago | |
| TechNickAI/ai-coding-configplugins/core/agents/CLAUDE.md · 24 | CLAUDE.md | testlint-formatarchgit+1 | 66/100 | 3 days ago | |
| TechNickAI/ai-coding-configplugins/core/skills/CLAUDE.md · 24 | CLAUDE.md | lint-formatagent-behaviour | 58/100 | 3 days ago |
Diff against .cursor/rules/git-commit-message.mdc Diff against .cursor/rules/git-interaction.mdc Diff against .cursor/rules/heart-centered-ai-philosophy.mdc Diff against .cursor/rules/ruff-linting.mdc Diff against AGENTS.md Diff against .cursor/rules/external-apis.mdc Diff against .claude-plugin/CLAUDE.md Diff against .claude/AGENTS.md Diff against .claude/CLAUDE.md Diff against .cursor/AGENTS.md Diff against .cursor/rules/autonomous-development-workflow.mdc Diff against .cursor/rules/code-review-standards.mdc Diff against .cursor/rules/code-style-and-zen-of-python.mdc Diff against .cursor/rules/fixing-github-actions-builds.mdc Diff against .cursor/rules/git-worktree-task.mdc Diff against .cursor/rules/naming-stuff.mdc Diff against .cursor/rules/trust-and-decision-making.mdc Diff against .cursor/rules/user-facing-language.mdc Diff against plugins/core/agents/CLAUDE.md Diff against plugins/core/skills/CLAUDE.md
Similar configs
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 45 | Cursor rules | testlint-formatstylearch+5 | 100/100 | 3 days ago | |
| hiromaily/go-crypto-wallet.cursor/rules/typescript.mdc · 126 | Cursor rules | setupbuildtestlint-format+6 | 100/100 | 3 days ago | |
| langflow-ai/langflow.cursor/rules/docs_development.mdc · 153k | Cursor rules | setupbuildtestlint-format+7 | 97/100 | 3 days ago | |
| TechSquidTV/Hermes.cursor/rules/20-hermes-api-tests.mdc · 45 | Cursor rules | teststyletesting-strategysecurity+3 | 97/100 | 3 days ago | |
| skillrecordings/egghead-next.cursor/rules/project-update-user-rules.mdc · 1.4k | Cursor rules | buildtestlint-formatstyle+7 | 96/100 | 3 days ago | |
| skillrecordings/egghead-next.cursor/rules/project-update-rules.mdc · 1.4k | Cursor rules | buildtestlint-formatstyle+7 | 96/100 | 3 days ago | |
| nerds-odd-e/doughnut.cursor/rules/cli.mdc · 49 | Cursor rules | setupbuildteststyle+4 | 96/100 | 3 days ago | |
| hiromaily/go-crypto-wallet.cursor/rules/proto.mdc · 126 | Cursor rules | buildlint-formatstylearch+3 | 96/100 | 3 days ago |
