make any repo vibe-codeable, agent-ready, and cursor-compatible in minutes
SaferSkills independently audited cursor-best-practices (Agent Skill) and scored it 45/100 (orange). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 3 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 3 flagged
A base64 string of 128+ characters appears in a documentation file. Encoded prompt injection hides the hostile instruction in base64 — invisible to keyword filters — and relies on the agent's ability to decode it at runtime. There is no normal authoring reason to embed a multi-hundred-byte base64 blob in skill docs.
*.sig, SIGNATURES) outside the documentation.The text {match} is the classic direct prompt-injection phrasing. Placed in a skill body that the agent reads as trusted instructions, it tries to make the agent abandon its prior rules and follow whatever comes next — a full system-prompt override.
ignore/disregard/forget … previous instructions sentence.Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A structured repository for creating and maintaining Cursor Best Practices optimized for agents and LLMs. This skill provides references/ (on-demand docs) and assets/templates/ (rule, command, and subagent templates) covering rules, commands, skills, subagents, ignore files, Agent security, workflows, and community resources.
Apply this skill when users:
.cursor folder, or ask "setup my .cursor folder".cursor/rules, AGENTS.md, or rule frontmatter.cursorignore or .cursorindexingignoreLocations: Project .cursor/rules/ (.md/.mdc), user Cursor Settings → Rules, Team dashboard. Precedence: Team → Project → User.
Types and when to use:
| Type | When to use |
|---|---|
| Always Apply | Must affect every request (e.g. "No any in TS", "Run tests before done"). Use sparingly. |
| Apply Intelligently | General guidance when relevant (e.g. "Prefer functional components"). |
| Apply to Specific Files | Use globs (e.g. **/*.test.ts, **/api/**). Rule loads only when those files are in context. |
| Apply Manually | User invokes with @rule-name when needed (e.g. release process, legacy quirks). |
Frontmatter: description (keyword-rich, helps relevance), globs (file-specific), alwaysApply (use rarely). Keep each rule <500 lines; split by concern, link to references/. AGENTS.md = project-root plain markdown alternative; no frontmatter.
Best practices: Composable rules, concrete examples. Reference—don't copy—long runbooks. Start simple; add rules when the agent keeps making the same mistake. Migrate legacy .cursorrules to Project Rules or AGENTS.md.
See: Rules. assets/templates/rules/_sections.md | references/templates-index.md | references/rules-and-commands.md.
Locations: Project .cursor/commands/, user ~/.cursor/commands/, Team dashboard. Format: Plain Markdown .md; filename = command name. Trigger with / in chat. Parameters: Text after the command is passed as context (e.g. /fix-issue 123 → "123").
Available templates (copy into .cursor/commands/):
| Command | Purpose |
|---|---|
/code-review | Review for correctness, security, quality, tests. Output: Critical / Suggestion / Nice to have. |
/pr | Summarize changes, propose PR title/description, suggest review checklist. |
/run-tests-and-fix | Run tests, fix failures, re-run until green; summarize changes. |
/security-audit | Security-focused review (injection, auth, secrets, deps). |
/setup-new-feature | Propose plan (files, modules, patterns), suggest implementation steps. |
/fix-issue | Fix bug or feature from issue # or description. |
/update-deps | Update deps, run tests, report breaking changes. |
/docs | Generate or update docs for @-mentioned code or current feature. |
/make-cursor-compatible | Make codebase Cursor compatible: add .cursor folder, .cursorignore, AGENTS.md, rules, commands, indexes. |
/lint-and-fix | Run linter, auto-fix issues, report remaining issues. |
/format | Format code according to project standards. |
/check-coverage | Check test coverage, identify gaps, suggest improvements. |
/analyze-deps | Analyze dependency tree, identify unused/duplicate deps, suggest optimizations. |
/generate-types | Generate TypeScript/types from schemas, APIs, or JSON. |
See: Commands. assets/templates/commands/.
Skills: Loaded from .agents/skills/, .cursor/skills/, or ~/.cursor/skills/ (and .claude/skills/, .codex/skills/ for compatibility). Each skill is a folder with SKILL.md; optional scripts/, references/, assets/. Frontmatter: name, description (required); optional license, compatibility, metadata, disable-model-invocation (when true, skill only applies when invoked via /skill-name). Agent applies when relevant or via /skill-name. Use /migrate-to-skills (Cursor 2.4+) to convert eligible rules and commands to skills. Subagents: .cursor/agents/ or ~/.cursor/agents/; markdown + YAML name, description, optional model, readonly, background. Foreground vs background; built-ins (Explore, Bash, Browser).
When to use: Subagents — context isolation, parallel work, multi-step specialized tasks (e.g. verifier that only runs tests/lint). Skills — single-purpose, repeatable tasks (changelog, format, domain-specific workflows).
Templates: Copy subagent templates from assets/templates/agents/ → .cursor/agents/. Available subagents:
Read-only (review/analysis):
verifier.md — Runs tests and lint, reports onlyreviewer.md — Code review for correctness, security, quality, testssecurity-auditor.md — Security-focused reviewlinter.md — Linting and code style reviewarchitect.md — Architectural pattern and design reviewEditable (can modify code):
documenter.md — Generate/update documentationtester.md — Write and update testsrefactorer.md — Refactor code while maintaining functionalitydebugger.md — Investigate and identify bugsperformance-analyzer.md — Analyze performance issues and bottlenecksaccessibility-checker.md — Review code for a11y compliancemigrator.md — Handle code migrations systematicallydependency-manager.md — Review and manage dependenciesformatter.md — Format code according to standardstype-generator.md — Generate types from schemas/APIsSkill recommendations: assets/recommended-skills.md and skills.sh only; suggest npx skills add <owner/repo>.
`.cursorignore`: Project root; same syntax as .gitignore. Excluded paths are not used for semantic search, Tab, Agent, Inline Edit, @mentions. Not terminal/MCP. Why: Security (secrets, keys, credentials), performance (large repos). `.cursorindexingignore`: Indexing only; files still usable if @-mentioned.
Must exclude: .env, .env.*, *.key, *.pem, credentials.json, **/secrets/**. Add project-specific paths. Use ! carefully; parent exclusions limit re-includes.
See: Ignore files. assets/templates/rules/ignore-cursorignore-secrets.md.
Agent: Rules + tools (search, read, edit, terminal, MCP) + your messages. Summarization (/summarize), checkpoints. Queue (Enter) vs Ctrl+Enter (send immediately).
Security: File edits allowed (except protected config); use VCS. Terminal: approval by default; avoid "Run everything". MCP: approve connection + each tool call. Network: GitHub, link fetch, search only. Put secrets in `.cursorignore`.
See: Agent overview, Agent security. references/agent-and-security.md.
| Mode | Purpose | Tools |
|---|---|---|
| Agent | Implement, refactor, multi-file work. | Full (search, read, edit, terminal, MCP). |
| Ask | Learning, Q&A, exploration. | Search + read only; no edits. |
| Plan | Research → clarify → plan → you review → "Build". | Search + read. Plans in .cursor/plans/; Shift+Tab to switch. |
| Debug | Reproducible bugs; hypotheses → instrument → reproduce → fix → verify. | Full. |
Switch: Mode picker in chat; Ctrl+. to cycle. Best practice: Plan with Ask/Plan, implement with Agent. If Agent builds wrong thing, revert → refine plan → re-run.
See: Plan Mode, Debug Mode. assets/templates/rules/modes-plan-then-agent.md. references/modes-context-tools.md.
TDD: Write tests → run (expect fail) → commit tests → implement → run until pass → commit impl. Run tests before done: assets/templates/rules/workflows-run-tests-before-done.md.
Git-style commands: /pr, /fix-issue, /review, /update-deps, /docs in .cursor/commands/. Codebase understanding: "How does X work?", "How do I add Y?"; broad → narrow. Diagrams: Ask for Mermaid architecture/data-flow. Hooks: .cursor/hooks.json for long-running loops. Design → code: Paste mockups; use Browser for preview.
Large codebases: Domain rules in .cursor/rules with globs; Plan with Ask, implement with Agent. Tab = quick edits; Inline Edit (Ctrl+K) = single-file; Chat/Agent = multi-file. Use @files, @folder, @Code; scope down; new chats when context is noisy.
See: Agent workflows, Large codebases. references/workflows-and-codebases.md.
Semantic search: Meaning-based; natural-language questions. Indexing on workspace open; usable ~80% completion. Use both grep (exact) and semantic (conceptual): assets/templates/rules/context-use-grep-and-semantic.md.
@Files & Folders: Reference by path; drag from sidebar. @Code: Specific snippets (most precise). @Docs: Bundled or Add new doc (URL). /summarize — compress context. Best practice: assets/templates/rules/context-use-at-mentions.md.
Tab: Inline autocomplete; Tab accept, Esc reject, Ctrl+Right partial. Use for speed; Inline Edit or Chat for larger changes.
See: Semantic search, @ Mentions, Tab.
Bugbot: PR review (bugs, security, quality). .cursor/BUGBOT.md at project root (always included) and nested per directory (included when reviewing files under that path); Team rules from dashboard apply to all repos. Trigger: comment cursor review or bugbot run; use verbose=true for request ID. Autofix spawns a Cloud Agent to fix reported issues (commit to branch or new branch). MCP: External tools; approve connection + tool calls. cursor.directory for community rules & MCPs. Skills: skills.sh only.
Shortcuts: Ctrl+I Agent | Ctrl+K Inline Edit | Ctrl+. cycle modes | Enter queue, Ctrl+Enter send | Tab accept completion, Esc reject.
Plugins: Bundle rules, skills, agents, commands, MCP servers, and hooks in distributable packages. .cursor-plugin/plugin.json manifest; install from Cursor Marketplace or team marketplaces (Teams/Enterprise). See: Plugins.
Hooks: .cursor/hooks.json (project) or ~/.cursor/hooks.json (user). Observe or gate agent loop stages (e.g. beforeShellExecution, afterFileEdit, sessionStart). Command-based (script) or prompt-based (LLM). See: Hooks.
Cloud Agent: Agents run in the cloud; access via API, Linear, GitHub, Slack, Desktop (Cloud in dropdown), or cursor.com/agents (Web/PWA). MCP support; spend limit; "Apply" to bring worktree changes to your branch. See: Cloud Agent.
CLI: agent command for interactive or non-interactive use. Modes: Agent, Plan, Ask. Cloud handoff: & in chat or agent -c "prompt". Sessions: agent ls, agent resume. See: CLI.
Worktrees: Parallel agents run in separate Git worktrees. .cursor/worktrees.json for setup (e.g. setup-worktree, OS-specific). Best-of-N: run same prompt on multiple models; Apply to merge result. See: Worktrees.
Deeplinks: Share prompts, commands, or rules via cursor://anysphere.cursor-deeplink/ or https://cursor.com/link/. Max 8,000 characters. See: Deeplinks.
Folders: rules/, commands/, skills/, agents/. Optional: hooks.json, worktrees.json. AGENTS.md = simple alternative to rules.
When the user asks to set up, initialize, or create the .cursor folder:
.cursor/rules/, .cursor/commands/, .cursor/skills/, .cursor/agents/.node_modules/, .env, *.log, dist/). Use .gitignore syntax; adjust for stack..cursor/commands/ (e.g. code-review.md, lint-and-fix.md, format.md, etc.)..cursor/agents/ (e.g. verifier.md, reviewer.md, linter.md, formatter.md, etc.)./code-review in chat," "Add rules to .cursor/rules/").See: assets/templates/rules/context-setup-cursor-folder.md. references/templates-index.md.
Rules not applying? Check type (Always / Intelligent / Globs / Manual), description (keywords), and globs (paths match). Request ID: "Get request ID" or cursor review verbose=true when reporting. See: Common issues, Troubleshooting guide. references/modes-context-tools.md.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.