[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71PYV927N41BJJ1XYQXD2CT":3,"skill-same:01M71PYV927N41BJJ1XYQXD2CT":64},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":14,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":49,"install":50,"resources":63},"01M71PYV927N41BJJ1XYQXD2CT","create-rule",null,"Create Cursor rules for persistent AI guidance. Use when you want to create a rule, add coding standards, set up project conventions, configure file-specific patterns, create RULE.md files, or asks about .cursor\u002Frules\u002F or AGENTS.md.","wesley642\u002Falfasoft-laravel-project","wesley642","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F71295745?v=4","01M71PWXVFCFK6GWHQN4X9W1MY","Wesley Alves","01M71PWXWP4XWGWYTK6SVSB8Y6",0,"MIT","https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project\u002Fblob\u002Fmain\u002F.cursor\u002Fskills-cursor\u002Fcreate-rule\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"create rule","rule","create","coding standards","guidance","about","cursor","project conventions","file","you","configure","when","Rules","use","files","up","project","for","SET","standards","2026-11-10 13:02:02",false,"---\nname: create-rule\ndescription: >-\n  Create Cursor rules for persistent AI guidance. Use when you want to create a\n  rule, add coding standards, set up project conventions, configure\n  file-specific patterns, create RULE.md files, or asks about .cursor\u002Frules\u002F or\n  AGENTS.md.\n---\n# Creating Cursor Rules\n\nCreate project rules in `.cursor\u002Frules\u002F` to provide persistent context for the AI agent.\n\n## Gather Requirements\n\nBefore creating a rule, determine:\n\n1. **Purpose**: What should this rule enforce or teach?\n2. **Scope**: Should it always apply, or only for specific files?\n3. **File patterns**: If file-specific, which glob patterns?\n\n### Inferring from Context\n\nIf you have previous conversation context, infer rules from what was discussed. You can create multiple rules if the conversation covers distinct topics or patterns. Don't ask redundant questions if the context already provides the answers.\n\n### Required Questions\n\nIf the user hasn't specified scope, ask:\n- \"Should this rule always apply, or only when working with specific files?\"\n\nIf they mentioned specific files and haven't provided concrete patterns, ask:\n- \"Which file patterns should this rule apply to?\" (e.g., `**\u002F*.ts`, `backend\u002F**\u002F*.py`)\n\nIt's very important that we get clarity on the file patterns.\n\nUse the AskQuestion tool when available to gather this efficiently.\n\n---\n\n## Rule File Format\n\nRules are `.mdc` files in `.cursor\u002Frules\u002F` with YAML frontmatter:\n\n```\n.cursor\u002Frules\u002F\n  typescript-standards.mdc\n  react-patterns.mdc\n  api-conventions.mdc\n```\n\n### File Structure\n\n```markdown\n---\ndescription: Brief description of what this rule does\nglobs: **\u002F*.ts  # File pattern for file-specific rules\nalwaysApply: false  # Set to true if rule should always apply\n---\n\n# Rule Title\n\nYour rule content here...\n```\n\n### Frontmatter Fields\n\n| Field | Type | Description |\n|-------|------|-------------|\n| `description` | string | What the rule does (shown in rule picker) |\n| `globs` | string | File pattern - rule applies when matching files are open |\n| `alwaysApply` | boolean | If true, applies to every session |\n\n---\n\n## Rule Configurations\n\n### Always Apply\n\nFor universal standards that should apply to every conversation:\n\n```yaml\n---\ndescription: Core coding standards for the project\nalwaysApply: true\n---\n```\n\n### Apply to Specific Files\n\nFor rules that apply when working with certain file types:\n\n```yaml\n---\ndescription: TypeScript conventions for this project\nglobs: **\u002F*.ts\nalwaysApply: false\n---\n```\n\n---\n\n## Best Practices\n\n### Keep Rules Concise\n\n- **Under 50 lines**: Rules should be concise and to the point\n- **One concern per rule**: Split large rules into focused pieces\n- **Actionable**: Write like clear internal docs\n- **Concrete examples**: Ideally provide concrete examples of how to fix issues\n\n---\n\n## Example Rules\n\n### TypeScript Standards\n\n```markdown\n---\ndescription: TypeScript coding standards\nglobs: **\u002F*.ts\nalwaysApply: false\n---\n\n# Error Handling\n\n\\`\\`\\`typescript\n\u002F\u002F ❌ BAD\ntry {\n  await fetchData();\n} catch (e) {}\n\n\u002F\u002F ✅ GOOD\ntry {\n  await fetchData();\n} catch (e) {\n  logger.error('Failed to fetch', { error: e });\n  throw new DataFetchError('Unable to retrieve data', { cause: e });\n}\n\\`\\`\\`\n```\n\n### React Patterns\n\n```markdown\n---\ndescription: React component patterns\nglobs: **\u002F*.tsx\nalwaysApply: false\n---\n\n# React Patterns\n\n- Use functional components\n- Extract custom hooks for reusable logic\n- Colocate styles with components\n```\n\n---\n\n## Checklist\n\n- [ ] File is `.mdc` format in `.cursor\u002Frules\u002F`\n- [ ] Frontmatter configured correctly\n- [ ] Content under 500 lines\n- [ ] Includes concrete examples\n","# Creating Cursor Rules\n\nCreate project rules in `.cursor\u002Frules\u002F` to provide persistent context for the AI agent.\n\n## Gather Requirements\n\nBefore creating a rule, determine:\n\n1. **Purpose**: What should this rule enforce or teach?\n2. **Scope**: Should it always apply, or only for specific files?\n3. **File patterns**: If file-specific, which glob patterns?\n\n### Inferring from Context\n\nIf you have previous conversation context, infer rules from what was discussed. You can create multiple rules if the conversation covers distinct topics or patterns. Don't ask redundant questions if the context already provides the answers.\n\n### Required Questions\n\nIf the user hasn't specified scope, ask:\n- \"Should this rule always apply, or only when working with specific files?\"\n\nIf they mentioned specific files and haven't provided concrete patterns, ask:\n- \"Which file patterns should this rule apply to?\" (e.g., `**\u002F*.ts`, `backend\u002F**\u002F*.py`)\n\nIt's very important that we get clarity on the file patterns.\n\nUse the AskQuestion tool when available to gather this efficiently.\n\n---\n\n## Rule File Format\n\nRules are `.mdc` files in `.cursor\u002Frules\u002F` with YAML frontmatter:\n\n```\n.cursor\u002Frules\u002F\n  typescript-standards.mdc\n  react-patterns.mdc\n  api-conventions.mdc\n```\n\n### File Structure\n\n```markdown\n---\ndescription: Brief description of what this rule does\nglobs: **\u002F*.ts  # File pattern for file-specific rules\nalwaysApply: false  # Set to true if rule should always apply\n---\n\n# Rule Title\n\nYour rule content here...\n```\n\n### Frontmatter Fields\n\n| Field | Type | Description |\n|-------|------|-------------|\n| `description` | string | What the rule does (shown in rule picker) |\n| `globs` | string | File pattern - rule applies when matching files are open |\n| `alwaysApply` | boolean | If true, applies to every session |\n\n---\n\n## Rule Configurations\n\n### Always Apply\n\nFor universal standards that should apply to every conversation:\n\n```yaml\n---\ndescription: Core coding standards for the project\nalwaysApply: true\n---\n```\n\n### Apply to Specific Files\n\nFor rules that apply when working with certain file types:\n\n```yaml\n---\ndescription: TypeScript conventions for this project\nglobs: **\u002F*.ts\nalwaysApply: false\n---\n```\n\n---\n\n## Best Practices\n\n### Keep Rules Concise\n\n- **Under 50 lines**: Rules should be concise and to the point\n- **One concern per rule**: Split large rules into focused pieces\n- **Actionable**: Write like clear internal docs\n- **Concrete examples**: Ideally provide concrete examples of how to fix issues\n\n---\n\n## Example Rules\n\n### TypeScript Standards\n\n```markdown\n---\ndescription: TypeScript coding standards\nglobs: **\u002F*.ts\nalwaysApply: false\n---\n\n# Error Handling\n\n\\`\\`\\`typescript\n\u002F\u002F ❌ BAD\ntry {\n  await fetchData();\n} catch (e) {}\n\n\u002F\u002F ✅ GOOD\ntry {\n  await fetchData();\n} catch (e) {\n  logger.error('Failed to fetch', { error: e });\n  throw new DataFetchError('Unable to retrieve data', { cause: e });\n}\n\\`\\`\\`\n```\n\n### React Patterns\n\n```markdown\n---\ndescription: React component patterns\nglobs: **\u002F*.tsx\nalwaysApply: false\n---\n\n# React Patterns\n\n- Use functional components\n- Extract custom hooks for reusable logic\n- Colocate styles with components\n```\n\n---\n\n## Checklist\n\n- [ ] File is `.mdc` format in `.cursor\u002Frules\u002F`\n- [ ] Frontmatter configured correctly\n- [ ] Content under 500 lines\n- [ ] Includes concrete examples\n",{"name":5,"description":7},"main","f5f59d33ce4a06096dc1dfc82006092f26105d58",".cursor\u002Fskills-cursor\u002Fcreate-rule","https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project","https:\u002F\u002Fgithub.com\u002Fwesley642","2026-04-29 10:53:16",{"source":8,"skillName":5,"commands":51,"prompt":61,"zipAvailable":62},[52,55,58],{"tool":53,"command":54},"npx","npx skills add wesley642\u002Falfasoft-laravel-project --skill create-rule",{"tool":56,"command":57},"bunx","bunx skills add wesley642\u002Falfasoft-laravel-project --skill create-rule",{"tool":59,"command":60},"pnpm","pnpm dlx skills add wesley642\u002Falfasoft-laravel-project --skill create-rule","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project\u002Fblob\u002Fmain\u002F.cursor\u002Fskills-cursor\u002Fcreate-rule\u002FSKILL.md",true,[],[65,88,107,125,140,157],{"skillNo":66,"name":67,"nameZh":6,"description":68,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":69,"categories":70,"keywords":71,"publishedAt":39},"01M71PZJ1F0F16RAZKR1TV6RDR","update-cursor-settings","Modify Cursor\u002FVSCode user settings in settings.json. Use when you want to change editor settings, preferences, configuration, themes, font size, tab size, format on save, auto save, keybindings, or any settings.json values.","https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project\u002Fblob\u002Fmain\u002F.cursor\u002Fskills-cursor\u002Fupdate-cursor-settings\u002FSKILL.md",[],[72,25,73,74,75,76,77,78,79,80,81,82,83,28,30,32,84,85,86,87],"update cursor settings","update","settings","configuration","preferences","format","json","editor","values","size","change","vscode","auto","themes","settings.json","modify",{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":39},"01M71PZF72MMYJ8P3JTYT1BT5S","update-cli-config","View and modify Cursor CLI configuration settings in ~\u002F.cursor\u002Fcli-config.json. Use when the user wants to change CLI settings, configure permissions, switch approval mode, enable vim mode, toggle display options, configure sandbox, or manage any CLI preferences.","https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project\u002Fblob\u002Fmain\u002F.cursor\u002Fskills-cursor\u002Fupdate-cli-config\u002FSKILL.md",[],[95,96,73,97,87,30,32,76,98,99,100,101,102,103,29,25,104,82,105,106],"config","cli","update cli config","sandbox","mode","vim","manage","switch","view","options","permissions","display",{"skillNo":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":113,"publishedAt":39},"01M71PZCHV520K4S5SRRS4YMNG","statusline","Configure a custom status line in the CLI. Use when the user mentions status line, statusline, statusLine, CLI status bar, prompt footer customization, or wants to add session context above the prompt.","https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project\u002Fblob\u002Fmain\u002F.cursor\u002Fskills-cursor\u002Fstatusline\u002FSKILL.md",[],[109,114,115,116,117,118,119,96,29,30,120,32,121,122,123,124],"bar","add","user","context","status","line","prompt","custom","session context","session","customization",{"skillNo":126,"name":127,"nameZh":6,"description":128,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":129,"categories":130,"keywords":131,"publishedAt":39},"01M71PZANGE28K36HJ7VJTE5NT","split-to-prs","Split current work into small reviewable PRs. Use when the user asks to split a chat, set of changes, branch, or PR.","https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project\u002Fblob\u002Fmain\u002F.cursor\u002Fskills-cursor\u002Fsplit-to-prs\u002FSKILL.md",[],[132,133,134,30,116,32,135,136,137,138,37,139],"prs","split to prs","split","pr","changes","work","branch","chat",{"skillNo":141,"name":142,"nameZh":6,"description":143,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":144,"categories":145,"keywords":146,"publishedAt":39},"01M71PZ8ZMR9G4PJF4EH6MX3EV","shell","Runs the rest of a \u002Fshell request as a literal shell command. Use only when the user explicitly invokes \u002Fshell and wants the following text executed directly in the terminal.","https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project\u002Fblob\u002Fmain\u002F.cursor\u002Fskills-cursor\u002Fshell\u002FSKILL.md",[],[142,147,148,149,150,151,152,153,154,155,32,156,116,30],"only","true","Literal","request","terminal","command","REST","as","text","shell command",{"skillNo":158,"name":159,"nameZh":6,"description":160,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":161,"categories":162,"keywords":168,"publishedAt":39},"01M71PZ5T4MXC8XAPBFE5N4YDC","migrate-to-skills","Convert 'Applied intelligently' Cursor rules (.cursor\u002Frules\u002F*.mdc) and slash commands (.cursor\u002Fcommands\u002F*.md) to Agent Skills format (.cursor\u002Fskills\u002F). Use when you want to migrate rules or commands to skills, convert .mdc rules to SKILL.md format, or consolidate commands into the skills directory.","https:\u002F\u002Fgithub.com\u002Fwesley642\u002Falfasoft-laravel-project\u002Fblob\u002Fmain\u002F.cursor\u002Fskills-cursor\u002Fmigrate-to-skills\u002FSKILL.md",[163],{"categoryNo":164,"categoryName":165,"taxonomyType":166,"taxonomyTypeDesc":167},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[169,170,28,171,172,30,31,32,173,148,174,175,77,176,25],"migrate","migrate to skills","consolidate","convert","cursor rules","slash commands","commands","directory"]