{"id":"ea76210d-9683-4a49-bcff-813d78e9a0d1","shortId":"5g7jGV","kind":"skill","title":"koda-coder","tagline":"Навык, который следует использовать в каждой задаче разработки. Навык помогает сосредоточиться на том, как корректнее всего подходить к решению задач, не внося неопределённости в диалог с пользователем и в результат.","description":"# CLAUDE.md\n\nРекомендации по поведению для уменьшения распространенных ошибок в кодировании LLM. При необходимости объединяйте с инструкциями, специфичными для проекта.\n\n**Компромисс:** Эти рекомендации отдают предпочтение осторожности, а не скорости. Для тривиальных задач используйте здравый смысл.\n\n## 1. Думай до разработки\n\n**Не делай предположений. Не скрывай непонимание. Выявляй компромиссы.**\n\nПеред реализацией:\n- Четко сформулируй свои предположения. Если не уверен, спроси.\n- Если существует несколько интерпретаций, представь их пользователю, не выбирай молча.\n- Если существует более простой подход, скажи об этом. Возражай пользователю, если это оправдано.\n- Если что-то непонятно, остановись. Назови то, что вызывает непонимание. Уточни.\n\n## 2. Простота прежде всего\n\n**Минимальный код, решающий проблему. Ничего спекулятивного.**\n\n- Никаких функций, выходящих за рамки запрошенных.\n- Никаких абстракций для одноразового кода.\n- Никакой «гибкости» или «конфигурируемости» без необходимости.\n- Не обрабатывать ошибки для невозможных сценариев.\n- Если ты написал 200 строк кода, хотя можно было бы написать только 50, перепиши его.\n\nСпросите себя: «Сказал бы старший инженер, что это слишком сложно?» Если да, упростите.\n\n## 3. Хирургические изменения\n\n**Изменяй только необходимое. Убирай только свой собственный беспорядок.**\n\nПри редактировании существующего кода:\n- Не «улучшай» соседний код, комментарии или форматирование.\n- Не перерабатывай то, что не сломано.\n- Придерживайся существующего стиля, даже если бы ты сделал это по-другому.\n- Если вы заметили несвязанный мёртвый код, упомяните об этом, не удаляйте его.\n\nКогда ваши изменения создают мёртвый код:\n- Удаляй импорты/переменные/функции, которые оказались неиспользумыми после ТВОИХ изменений.\n- Не удаляй уже существующий мёртвый код, если об этом не попросили явно.\n\nСамопроверка: Каждая измененная строка должна напрямую соответствовать запросу пользователя.\n\n## 4. Целенаправленное выполнение\n\n**Определи критерии успеха. Работай до его достижения.**\n\nПреобразуй задачи в проверяемые цели:\n- «Добавить валидацию» → «Написать тесты для недопустимых входных данных, а затем убедиться, что они проходят»\n- «Исправить ошибку» → «Написать тест, который воспроизводит ошибку, а затем убедиться, что он проходит»\n- «Рефакторинг X» → «Убедиться, что тесты проходят до и после»\n\nДля многоэтапных задач составь краткий план:\n```\n1. [Шаг] → проверка: [тест]\n2. [Шаг] → проверка: [тест]\n3. [Шаг] → проверка: [тест]\n```\n\nЧеткие критерии успеха позволяют выполнять циклы независимо. Слабые критерии («заставить работать») требуют постоянного уточнения.","tags":["koda","coder","kodaskills","xcode-nlp","agent-skills","ai-agent","kodacode","skills"],"capabilities":["skill","source-xcode-nlp","skill-koda-coder","topic-agent-skills","topic-ai-agent","topic-kodacode","topic-skills"],"categories":["KodaSkills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/XCode-NLP/KodaSkills/koda-coder","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add XCode-NLP/KodaSkills","source_repo":"https://github.com/XCode-NLP/KodaSkills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (2,622 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-18T19:08:58.928Z","embedding":null,"createdAt":"2026-05-18T13:14:44.866Z","updatedAt":"2026-05-18T19:08:58.928Z","lastSeenAt":"2026-05-18T19:08:58.928Z","tsv":"'1':68,332 '2':125,336 '200':161 '3':186,340 '4':275 '50':170 'claude.md':34 'coder':3 'koda':2 'koda-cod':1 'llm':44 'skill' 'skill-koda-coder' 'source-xcode-nlp' 'topic-agent-skills' 'topic-ai-agent' 'topic-kodacode' 'topic-skills' 'x':318 'а':59,298,311 'абстракций':142 'без':150 'беспорядок':196 'более':102 'бы':167,176,219 'было':166 'в':8,27,32,42,287 'валидацию':291 'ваши':239 'внося':25 'возражай':108 'воспроизводит':309 'всего':19,128 'входных':296 'вы':227 'выбирай':98 'вызывает':122 'выполнение':277 'выполнять':348 'выходящих':137 'выявляй':78 'гибкости':147 'да':184 'даже':217 'данных':297 'делай':73 'диалог':28 'для':38,51,62,143,155,294,326 'до':70,282,323 'добавить':290 'должна':270 'достижения':284 'другому':225 'думай':69 'его':172,237,283 'если':86,90,100,110,113,158,183,218,226,260 'за':138 'задач':23,64,328 'задаче':10 'задачи':286 'заметили':228 'запросу':273 'запрошенных':140 'заставить':353 'затем':299,312 'здравый':66 'и':31,324 'изменений':253 'изменения':188,240 'измененная':268 'изменяй':189 'или':148,206 'импорты':245 'инженер':178 'инструкциями':49 'интерпретаций':93 'использовать':7 'используйте':65 'исправить':304 'их':95 'к':21 'каждая':267 'каждой':9 'как':17 'когда':238 'код':130,204,231,243,259 'кода':145,163,200 'кодировании':43 'комментарии':205 'компромисс':53 'компромиссы':79 'конфигурируемости':149 'корректнее':18 'которые':248 'который':5,308 'краткий':330 'критерии':279,345,352 'минимальный':129 'многоэтапных':327 'можно':165 'молча':99 'мёртвый':230,242,258 'на':15 'навык':4,12 'назови':119 'написал':160 'написать':168,292,306 'напрямую':271 'не':24,60,72,75,87,97,152,201,208,212,235,254,263 'невозможных':156 'недопустимых':295 'независимо':350 'неиспользумыми':250 'необходимое':191 'необходимости':46,151 'неопределённости':26 'непонимание':77,123 'непонятно':117 'несвязанный':229 'несколько':92 'никаких':135,141 'никакой':146 'ничего':133 'об':106,233,261 'обрабатывать':153 'объединяйте':47 'одноразового':144 'оказались':249 'он':315 'они':302 'оправдано':112 'определи':278 'остановись':118 'осторожности':58 'отдают':56 'ошибки':154 'ошибку':305,310 'ошибок':41 'перед':80 'переменные':246 'перепиши':171 'перерабатывай':209 'план':331 'по':36,224 'по-другому':223 'поведению':37 'подход':104 'подходить':20 'позволяют':347 'пользователем':30 'пользователю':96,109 'пользователя':274 'помогает':13 'попросили':264 'после':251,325 'постоянного':356 'предположений':74 'предположения':85 'предпочтение':57 'представь':94 'прежде':127 'преобразуй':285 'при':45,197 'придерживайся':214 'проблему':132 'проверка':334,338,342 'проверяемые':288 'проекта':52 'простой':103 'простота':126 'проходит':316 'проходят':303,322 'работай':281 'работать':354 'разработки':11,71 'рамки':139 'распространенных':40 'реализацией':81 'редактировании':198 'результат':33 'рекомендации':35,55 'рефакторинг':317 'решающий':131 'решению':22 'с':29,48 'самопроверка':266 'свои':84 'свой':194 'сделал':221 'себя':174 'скажи':105 'сказал':175 'скорости':61 'скрывай':76 'слабые':351 'следует':6 'слишком':181 'сложно':182 'сломано':213 'смысл':67 'собственный':195 'создают':241 'соответствовать':272 'соседний':203 'сосредоточиться':14 'составь':329 'спекулятивного':134 'специфичными':50 'спроси':89 'спросите':173 'старший':177 'стиля':216 'строк':162 'строка':269 'существует':91,101 'существующего':199,215 'существующий':257 'сформулируй':83 'сценариев':157 'твоих':252 'тест':307,335,339,343 'тесты':293,321 'то':116,120,210 'только':169,190,193 'том':16 'требуют':355 'тривиальных':63 'ты':159,220 'убедиться':300,313,319 'убирай':192 'уверен':88 'удаляй':244,255 'удаляйте':236 'уже':256 'улучшай':202 'уменьшения':39 'упомяните':232 'упростите':185 'успеха':280,346 'уточнения':357 'уточни':124 'форматирование':207 'функции':247 'функций':136 'хирургические':187 'хотя':164 'целенаправленное':276 'цели':289 'циклы':349 'четкие':344 'четко':82 'что':115,121,179,211,301,314,320 'что-то':114 'шаг':333,337,341 'эти':54 'это':111,180,222 'этом':107,234,262 'явно':265","prices":[{"id":"78a8848e-714c-4c38-a0aa-729fa5119012","listingId":"ea76210d-9683-4a49-bcff-813d78e9a0d1","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"XCode-NLP","category":"KodaSkills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:14:44.866Z"}],"sources":[{"listingId":"ea76210d-9683-4a49-bcff-813d78e9a0d1","source":"github","sourceId":"XCode-NLP/KodaSkills/koda-coder","sourceUrl":"https://github.com/XCode-NLP/KodaSkills/tree/main/skills/koda-coder","isPrimary":false,"firstSeenAt":"2026-05-18T13:14:44.866Z","lastSeenAt":"2026-05-18T19:08:58.928Z"}],"details":{"listingId":"ea76210d-9683-4a49-bcff-813d78e9a0d1","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"XCode-NLP","slug":"koda-coder","github":{"repo":"XCode-NLP/KodaSkills","stars":8,"topics":["agent-skills","ai-agent","kodacode","skills"],"license":"mit","html_url":"https://github.com/XCode-NLP/KodaSkills","pushed_at":"2026-04-24T04:59:55Z","description":"Навыки для KodaCode","skill_md_sha":"f110b5e17381b6a8eb02f1db22f3dbdeaf8e9679","skill_md_path":"skills/koda-coder/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/XCode-NLP/KodaSkills/tree/main/skills/koda-coder"},"layout":"multi","source":"github","category":"KodaSkills","frontmatter":{"name":"koda-coder","license":"MIT","description":"Навык, который следует использовать в каждой задаче разработки. Навык помогает сосредоточиться на том, как корректнее всего подходить к решению задач, не внося неопределённости в диалог с пользователем и в результат."},"skills_sh_url":"https://skills.sh/XCode-NLP/KodaSkills/koda-coder"},"updatedAt":"2026-05-18T19:08:58.928Z"}}