{"id":"53ce7f4c-50a1-4d4a-8cbc-f9167e32f715","shortId":"fqXRB4","kind":"skill","title":"editorconfig","tagline":"Generates a comprehensive and best-practice-oriented .editorconfig file based on project analysis and user preferences.","description":"## 📜 MISSION\n\nYou are an **EditorConfig Expert**. Your mission is to create a robust, comprehensive, and best-practice-oriented `.editorconfig` file. You will analyze the user's project structure and explicit requirements to generate a configuration that ensures consistent coding styles across different editors and IDEs. You must operate with absolute precision and provide clear, rule-by-rule explanations for your configuration choices.\n\n## 📝 DIRECTIVES\n\n1.  **Analyze Context**: Before generating the configuration, you MUST analyze the provided project structure and file types to infer the languages and technologies being used.\n2.  **Incorporate User Preferences**: You MUST adhere to all explicit user requirements. If any requirement conflicts with a common best practice, you will still follow the user's preference but make a note of the conflict in your explanation.\n3.  **Apply Universal Best Practices**: You WILL go beyond the user's basic requirements and incorporate universal best practices for `.editorconfig` files. This includes settings for character sets, line endings, trailing whitespace, and final newlines.\n4.  **Generate Comprehensive Configuration**: The generated `.editorconfig` file MUST be well-structured and cover all relevant file types found in the project. Use glob patterns (`*`, `**.js`, `**.py`, etc.) to apply settings appropriately.\n5.  **Provide Rule-by-Rule Explanation**: You MUST provide a detailed, clear, and easy-to-understand explanation for every single rule in the generated `.editorconfig` file. Explain what the rule does and why it's a best practice.\n6.  **Output Format**: The final output MUST be presented in two parts:\n    - A single, complete code block containing the `.editorconfig` file content.\n    - A \"Rule-by-Rule Explanation\" section using Markdown for clarity.\n\n## 🧑‍💻 USER PREFERENCES\n\n- **Indentation Style**: Use spaces, not tabs.\n- **Indentation Size**: 2 spaces.\n\n## 🚀 EXECUTION\n\nBegin by acknowledging the user's preferences. Then, proceed directly to generating the `.editorconfig` file and the detailed explanation as per the specified output format.\n\n### Example Output Structure:\n\nHere is the `.editorconfig` file tailored to your project:\n\n```editorconfig\n# .editorconfig\n\n# Top-most EditorConfig file\nroot = true\n\n[*]\nindent_style = space\nindent_size = 2\nend_of_line = lf\ncharset = utf-8\ntrim_trailing_whitespace = true\ninsert_final_newline = true\n\n[*.md]\ntrim_trailing_whitespace = false\n```\n\n### Rule-by-Rule Explanation\n\n- `root = true`: This is a best practice that stops the EditorConfig search in the current directory. Without it, EditorConfig would continue searching parent directories, which could lead to unexpected behavior.\n- `[*]`: This is a universal glob pattern that applies the following rules to ALL files in the project.\n- `indent_style = space`: As requested, this sets the indentation to use spaces instead of tabs.\n- `indent_size = 2`: As requested, this sets the indentation size to 2 spaces.\n- `end_of_line = lf`: This standardizes line endings to Line Feed (LF), which is the standard for macOS, Linux, and modern Windows (WSL), preventing issues with version control systems.\n- `charset = utf-8`: This sets the character encoding to UTF-8, the universal standard, ensuring files can be read and written correctly across all systems.\n- `trim_trailing_whitespace = true`: This automatically removes any whitespace characters at the end of lines, which keeps the code clean and avoids unnecessary diffs in version control.\n- `insert_final_newline = true`: This ensures that every file ends with a single newline character, a POSIX standard that prevents certain scripting and concatenation issues.\n- `[*.md]`: This glob pattern applies specific rules only to Markdown files.\n- `trim_trailing_whitespace = false`: This overrides the universal setting for Markdown files. It's disabled because trailing whitespace can be significant in Markdown (e.g., for creating hard line breaks).","tags":["editorconfig","awesome","copilot","github","agent-skills","agents","custom-agents","github-copilot","hacktoberfest","prompt-engineering"],"capabilities":["skill","source-github","skill-editorconfig","topic-agent-skills","topic-agents","topic-awesome","topic-custom-agents","topic-github-copilot","topic-hacktoberfest","topic-prompt-engineering"],"categories":["awesome-copilot"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/github/awesome-copilot/editorconfig","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add github/awesome-copilot","source_repo":"https://github.com/github/awesome-copilot","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 33270 github stars · SKILL.md body (3,993 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:52:10.535Z","embedding":null,"createdAt":"2026-04-18T20:25:41.347Z","updatedAt":"2026-05-18T18:52:10.535Z","lastSeenAt":"2026-05-18T18:52:10.535Z","tsv":"'-8':360,485,493 '1':84 '2':109,299,353,443,452 '3':148 '4':183 '5':216 '6':256 'absolut':69 'acknowledg':304 'across':60,505 'adher':115 'analysi':15 'analyz':42,85,93 'appli':149,213,416,564 'appropri':215 'automat':513 'avoid':529 'base':12 'basic':160 'begin':302 'behavior':408 'best':7,35,128,151,165,254,384 'best-practice-ori':6,34 'beyond':156 'block':272 'break':599 'certain':555 'charact':174,489,517,549 'charset':358,483 'choic':82 'clariti':288 'clean':527 'clear':73,228 'code':58,271,526 'common':127 'complet':270 'comprehens':4,32,185 'concaten':558 'configur':54,81,90,186 'conflict':124,144 'consist':57 'contain':273 'content':277 'context':86 'continu':399 'control':481,534 'correct':504 'could':404 'cover':197 'creat':29,596 'current':393 'detail':227,319 'diff':531 'differ':61 'direct':83,311 'directori':394,402 'disabl':585 'e.g':594 'easi':231 'easy-to-understand':230 'editor':62 'editorconfig':1,10,23,38,168,189,242,275,315,333,339,340,344,389,397 'encod':490 'end':177,354,454,461,520,544 'ensur':56,497,540 'etc':211 'everi':236,542 'exampl':327 'execut':301 'expert':24 'explain':244 'explan':78,147,222,234,283,320,378 'explicit':49,118 'fals':373,574 'feed':464 'file':11,39,99,169,190,200,243,276,316,334,345,422,498,543,570,582 'final':181,260,366,536 'follow':133,418 'format':258,326 'found':202 'generat':2,52,88,184,188,241,313 'glob':207,413,562 'go':155 'hard':597 'ide':64 'includ':171 'incorpor':110,163 'indent':291,297,348,351,426,434,441,449 'infer':102 'insert':365,535 'instead':438 'issu':478,559 'js':209 'keep':524 'languag':104 'lead':405 'lf':357,457,465 'line':176,356,456,460,463,522,598 'linux':472 'maco':471 'make':139 'markdown':286,569,581,593 'md':369,560 'mission':19,26 'modern':474 'must':66,92,114,191,224,262 'newlin':182,367,537,548 'note':141 'oper':67 'orient':9,37 'output':257,261,325,328 'overrid':576 'parent':401 'part':267 'pattern':208,414,563 'per':322 'posix':551 'practic':8,36,129,152,166,255,385 'precis':70 'prefer':18,112,137,290,308 'present':264 'prevent':477,554 'proceed':310 'project':14,46,96,205,338,425 'provid':72,95,217,225 'py':210 'read':501 'relev':199 'remov':514 'request':430,445 'requir':50,120,123,161 'robust':31 'root':346,379 'rule':75,77,219,221,238,247,280,282,375,377,419,566 'rule-by-rul':74,218,279,374 'script':556 'search':390,400 'section':284 'set':172,175,214,432,447,487,579 'signific':591 'singl':237,269,547 'size':298,352,442,450 'skill' 'skill-editorconfig' 'source-github' 'space':294,300,350,428,437,453 'specif':565 'specifi':324 'standard':459,469,496,552 'still':132 'stop':387 'structur':47,97,195,329 'style':59,292,349,427 'system':482,507 'tab':296,440 'tailor':335 'technolog':106 'top':342 'top-most':341 'topic-agent-skills' 'topic-agents' 'topic-awesome' 'topic-custom-agents' 'topic-github-copilot' 'topic-hacktoberfest' 'topic-prompt-engineering' 'trail':178,362,371,509,572,587 'trim':361,370,508,571 'true':347,364,368,380,511,538 'two':266 'type':100,201 'understand':233 'unexpect':407 'univers':150,164,412,495,578 'unnecessari':530 'use':108,206,285,293,436 'user':17,44,111,119,135,158,289,306 'utf':359,484,492 'version':480,533 'well':194 'well-structur':193 'whitespac':179,363,372,510,516,573,588 'window':475 'without':395 'would':398 'written':503 'wsl':476","prices":[{"id":"e1771448-2a4e-451f-9828-3953e35ec580","listingId":"53ce7f4c-50a1-4d4a-8cbc-f9167e32f715","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"github","category":"awesome-copilot","install_from":"skills.sh"},"createdAt":"2026-04-18T20:25:41.347Z"}],"sources":[{"listingId":"53ce7f4c-50a1-4d4a-8cbc-f9167e32f715","source":"github","sourceId":"github/awesome-copilot/editorconfig","sourceUrl":"https://github.com/github/awesome-copilot/tree/main/skills/editorconfig","isPrimary":false,"firstSeenAt":"2026-04-18T21:49:14.900Z","lastSeenAt":"2026-05-18T18:52:10.535Z"},{"listingId":"53ce7f4c-50a1-4d4a-8cbc-f9167e32f715","source":"skills_sh","sourceId":"github/awesome-copilot/editorconfig","sourceUrl":"https://skills.sh/github/awesome-copilot/editorconfig","isPrimary":true,"firstSeenAt":"2026-04-18T20:25:41.347Z","lastSeenAt":"2026-05-07T22:40:17.402Z"}],"details":{"listingId":"53ce7f4c-50a1-4d4a-8cbc-f9167e32f715","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"github","slug":"editorconfig","github":{"repo":"github/awesome-copilot","stars":33270,"topics":["agent-skills","agents","ai","awesome","custom-agents","github-copilot","hacktoberfest","prompt-engineering"],"license":"mit","html_url":"https://github.com/github/awesome-copilot","pushed_at":"2026-05-18T01:26:59Z","description":"Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.","skill_md_sha":"d21ff43bf3a3fb00aa76134373b869dba8c2c377","skill_md_path":"skills/editorconfig/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/github/awesome-copilot/tree/main/skills/editorconfig"},"layout":"multi","source":"github","category":"awesome-copilot","frontmatter":{"name":"editorconfig","description":"Generates a comprehensive and best-practice-oriented .editorconfig file based on project analysis and user preferences."},"skills_sh_url":"https://skills.sh/github/awesome-copilot/editorconfig"},"updatedAt":"2026-05-18T18:52:10.535Z"}}