[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6PDJ8430WZ41Z0K98S6SAYZ":3,"skill-same:01M6PDJ8430WZ41Z0K98S6SAYZ":70},{"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":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":40,"repositoryHtmlUrl":41,"repositoryHomepageUrl":41,"ownerHtmlUrl":42,"ownerBlogUrl":43,"ownerDescription":44,"updatedAt":45,"install":46,"resources":59},"01M6PDJ8430WZ41Z0K98S6SAYZ","loop-engineering",null,"Use when a software or repository development task requires multiple actions, repeated verification, recovery from failed attempts, or explicit completion, blocking, or user-decision criteria.","douinc\u002Fagent-skills","douinc","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F104253814?v=4","01M6PDGX2D777TNA7NETDKDHCW","dou inc.","01M6PDGX6QMFW72GNMX59GKN6P",1,"MIT","https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Floop-engineering\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31],"engineering","loop","loop engineering","development","verification","repository","actions","recovery","decision","user","use","task","software","2026-11-10 10:12:30",false,"---\nname: loop-engineering\ndescription: Use when a software or repository development task requires multiple actions, repeated verification, recovery from failed attempts, or explicit completion, blocking, or user-decision criteria.\n---\n\n# Loop Engineering\n\n## Overview\n\nUse a bounded control loop where each iteration reduces uncertainty or advances an observable result.\n\n## Entry Contract\n\nBefore acting, establish:\n\n- one objective and its boundaries;\n- observable completion evidence;\n- safety, authority, and compatibility constraints;\n- an iteration, time, or tool budget;\n- the smallest verification command or observation that can test the next action.\n\nInfer only reversible, low-risk defaults. If missing information would materially change public behavior, cost, scope, or an irreversible action, return `needs-user-decision`.\n\nClassify the task before acting:\n\n- **trivial:** run `goal → action → verification` once;\n- **local:** run the full loop with local evidence;\n- **cross-cutting:** run the full loop and apply Graph Escalation.\n\nRead [loop-protocol.md](references\u002Floop-protocol.md) before iterating and [stop-conditions.md](references\u002Fstop-conditions.md) before declaring an outcome.\n\n## Run the Loop\n\nRepeat `plan → act → verify → decide`:\n\n1. **Plan:** choose one falsifiable hypothesis, one bounded action, and its expected evidence.\n2. **Act:** perform the smallest authorized action that tests the hypothesis or advances the objective.\n3. **Verify:** run the planned check and compare expected with actual evidence.\n4. **Decide:** complete, retry with new evidence, replan, block, or request user direction.\n\nTrack the protocol state in task memory or temporary scratch space. Never add loop transcripts, chain-of-thought, or speculative reasoning to durable project documentation.\n\n## Graph Escalation\n\nBroaden local evidence into a map when:\n\n- a public interface, shared schema, global configuration, or deployment boundary changes;\n- failures appear in multiple components or layers;\n- the same dependency knowledge is repeatedly rediscovered;\n- impact or rollout order cannot be established from the local module.\n\nWhen `graph-engineering` is installed, it is a **REQUIRED SUB-SKILL** for those cross-cutting cases. If unavailable, build a compact evidence-backed impact map inline and continue; do not fail only because the companion skill is absent.\n\n`graph-engineering` never needs to invoke this skill.\n\n## Progress and Final Output\n\nDuring long tool work, report evidence, the decision, and next action at least every 60 seconds without exposing private reasoning.\n\nFinish with exactly one outcome:\n\n| Outcome | Required report |\n| --- | --- |\n| `complete` | acceptance evidence, verification commands or observations, test limitations, and intentional changes |\n| `blocked` | blocking condition, attempts made, recoverable workspace state, and next action |\n| `needs-user-decision` | decision required, evidence, and materially different options |\n\n## Common Mistakes\n\n| Mistake | Correction |\n| --- | --- |\n| Repeating the same action | Require new evidence or replan. |\n| Treating a passing check as sufficient | Match it to every completion criterion. |\n| Expanding scope after each failure | Expand only across an observed dependency boundary. |\n| Calling ambiguity a technical blocker | Use `needs-user-decision` when user intent must govern. |\n| Persisting execution history as architecture | Persist only stable, evidence-backed project knowledge. |\n","# Loop Engineering\n\n## Overview\n\nUse a bounded control loop where each iteration reduces uncertainty or advances an observable result.\n\n## Entry Contract\n\nBefore acting, establish:\n\n- one objective and its boundaries;\n- observable completion evidence;\n- safety, authority, and compatibility constraints;\n- an iteration, time, or tool budget;\n- the smallest verification command or observation that can test the next action.\n\nInfer only reversible, low-risk defaults. If missing information would materially change public behavior, cost, scope, or an irreversible action, return `needs-user-decision`.\n\nClassify the task before acting:\n\n- **trivial:** run `goal → action → verification` once;\n- **local:** run the full loop with local evidence;\n- **cross-cutting:** run the full loop and apply Graph Escalation.\n\nRead [loop-protocol.md](references\u002Floop-protocol.md) before iterating and [stop-conditions.md](references\u002Fstop-conditions.md) before declaring an outcome.\n\n## Run the Loop\n\nRepeat `plan → act → verify → decide`:\n\n1. **Plan:** choose one falsifiable hypothesis, one bounded action, and its expected evidence.\n2. **Act:** perform the smallest authorized action that tests the hypothesis or advances the objective.\n3. **Verify:** run the planned check and compare expected with actual evidence.\n4. **Decide:** complete, retry with new evidence, replan, block, or request user direction.\n\nTrack the protocol state in task memory or temporary scratch space. Never add loop transcripts, chain-of-thought, or speculative reasoning to durable project documentation.\n\n## Graph Escalation\n\nBroaden local evidence into a map when:\n\n- a public interface, shared schema, global configuration, or deployment boundary changes;\n- failures appear in multiple components or layers;\n- the same dependency knowledge is repeatedly rediscovered;\n- impact or rollout order cannot be established from the local module.\n\nWhen `graph-engineering` is installed, it is a **REQUIRED SUB-SKILL** for those cross-cutting cases. If unavailable, build a compact evidence-backed impact map inline and continue; do not fail only because the companion skill is absent.\n\n`graph-engineering` never needs to invoke this skill.\n\n## Progress and Final Output\n\nDuring long tool work, report evidence, the decision, and next action at least every 60 seconds without exposing private reasoning.\n\nFinish with exactly one outcome:\n\n| Outcome | Required report |\n| --- | --- |\n| `complete` | acceptance evidence, verification commands or observations, test limitations, and intentional changes |\n| `blocked` | blocking condition, attempts made, recoverable workspace state, and next action |\n| `needs-user-decision` | decision required, evidence, and materially different options |\n\n## Common Mistakes\n\n| Mistake | Correction |\n| --- | --- |\n| Repeating the same action | Require new evidence or replan. |\n| Treating a passing check as sufficient | Match it to every completion criterion. |\n| Expanding scope after each failure | Expand only across an observed dependency boundary. |\n| Calling ambiguity a technical blocker | Use `needs-user-decision` when user intent must govern. |\n| Persisting execution history as architecture | Persist only stable, evidence-backed project knowledge. |\n",{"name":5,"description":7},"main","ee55538fc8b60bb1595f860f18cbd7baba1925aa","skills\u002Floop-engineering",0,"https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills","https:\u002F\u002Fgithub.com\u002Fdouinc","https:\u002F\u002Fdou.so","A clinical intelligence company","2026-11-11 17:58:59",{"source":8,"skillName":5,"commands":47,"prompt":57,"zipAvailable":58},[48,51,54],{"tool":49,"command":50},"npx","npx skills add douinc\u002Fagent-skills --skill loop-engineering",{"tool":52,"command":53},"bunx","bunx skills add douinc\u002Fagent-skills --skill loop-engineering",{"tool":55,"command":56},"pnpm","pnpm dlx skills add douinc\u002Fagent-skills --skill loop-engineering","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Floop-engineering\u002FSKILL.md",true,[60,66],{"path":61,"resourceType":62,"resourceTypeDesc":63,"sizeBytes":64,"sourceHtmlUrl":65},"references\u002Floop-protocol.md","REFERENCE","参考文档",4026,"https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Floop-engineering\u002Freferences\u002Floop-protocol.md",{"path":67,"resourceType":62,"resourceTypeDesc":63,"sizeBytes":68,"sourceHtmlUrl":69},"references\u002Fstop-conditions.md",3211,"https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Floop-engineering\u002Freferences\u002Fstop-conditions.md",[71,88,127,142,172,188],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":75,"categories":76,"keywords":82,"publishedAt":32},"01M6PDKC7XDA3NYF969T945D7S","template-skill","Replace with description of the skill and when the agent should use it.","https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Ftemplate\u002FSKILL.md",[77],{"categoryNo":78,"categoryName":79,"taxonomyType":80,"taxonomyTypeDesc":81},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[83,84,85,29,86,87],"template skill","template","with","name","it",{"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":106,"publishedAt":32},"01M6PDK6MNC6EMGA8W7KD7NJQX","writing-project-readme","Use when explicitly invoked to write or fully rewrite a project README that must cover tech stack, architecture, features, and service description in a single document — readable by non-engineers (PM, design, ops, domain experts) as well as developers. Triggers on requests like \"write the README\", \"redo README.md based on the whole project\", \"make a comprehensive README everyone can understand\". Skip for one-section edits, badge tweaks, or generating a CHANGELOG.","https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Fwriting-project-readme\u002FSKILL.md",[94,97,98,103],{"categoryNo":95,"categoryName":96,"taxonomyType":80,"taxonomyTypeDesc":81},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":78,"categoryName":79,"taxonomyType":80,"taxonomyTypeDesc":81},{"categoryNo":99,"categoryName":100,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",{"categoryNo":104,"categoryName":105,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000036","内容创作者",[107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126],"writing","README","project","project readme","writing project readme","changelog","architecture","domain","design","alpha","stack","write","pm","as","tech","make","experts","cover","for","features",{"skillNo":128,"name":129,"nameZh":6,"description":130,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":131,"categories":132,"keywords":136,"publishedAt":32},"01M6PDK2S8KXK1NDM22C9FKE49","ux-writing-korean","한국어로 UI\u002FUX 문구를 작성하거나 검수할 때 사용합니다. 해요체, 능동형, 긍정형, 캐주얼 경어, 명사 조합 회피 등 5가지 핵심 원칙과 예외 규칙을 적용합니다.","https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Fux-writing-korean\u002FSKILL.md",[133,134,135],{"categoryNo":95,"categoryName":96,"taxonomyType":80,"taxonomyTypeDesc":81},{"categoryNo":99,"categoryName":100,"taxonomyType":101,"taxonomyTypeDesc":102},{"categoryNo":104,"categoryName":105,"taxonomyType":101,"taxonomyTypeDesc":102},[137,138,139,140,107,141],"ux writing korean","ux writing","korean","ux","ui",{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":152,"publishedAt":32},"01M6PDJXK3DVWFR0420XV79HZ6","token-audit","Audit a Claude Code or Codex CLI project for token waste and fix it with the user's approval. Use whenever the user wants to check, reduce, or optimize token usage, context bloat, or API\u002Fsubscription costs of an agent project — phrases like \"토큰 점검\", \"토큰 낭비 찾아줘\", \"토큰 최적화\", \"컨텍스트 최적화\", \"Claude Code 비용 줄여줘\", \"API 비용이 너무 나와\", \"audit token efficiency\", \"check my CLAUDE.md\u002FAGENTS.md\u002FMCP setup\". Also trigger when the user complains that sessions hit context limits too fast, that costs jumped unexpectedly, or asks whether their project setup is token-efficient — even if they don't say the word \"token\".","https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Ftoken-audit\u002FSKILL.md",[148,149],{"categoryNo":78,"categoryName":79,"taxonomyType":80,"taxonomyTypeDesc":81},{"categoryNo":150,"categoryName":151,"taxonomyType":101,"taxonomyTypeDesc":102},"01JBSEEDCAT000000000000030","开发工程师",[153,154,155,156,157,158,159,160,161,162,109,163,164,165,166,167,168,169,170,171],"token","audit","token audit","limits","token efficiency","bloat","api","my","usage","mcp setup","efficiency","optimize","fix","context","reduce","code","codex cli","cli","MCP",{"skillNo":173,"name":174,"nameZh":6,"description":175,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":176,"categories":177,"keywords":178,"publishedAt":32},"01M6PDJR1Y9BAM48RDKRQHK5MQ","release-showcase","정식 릴리스의 변경을 이전·이후 스크린샷, 클릭 흐름 녹화 영상, 비교·단계·탭·흐름도 같은 HTML 컴포넌트로 보여 주는 파일 하나짜리 릴리스 문서를 만든다. 텍스트뿐인 릴리스 노트로는 어떤 UX가 바뀌었고 새 기능을 어떻게 쓰는지 감이 안 올 때 쓴다. '릴리스 노트 문서 만들어 줘', '릴리스 쇼케이스', '이번 배포 변경사항 정리해서 공유', '릴리즈 노트 HTML', '변경사항을 화면으로 보여 주는 문서', '업데이트 소개 페이지', 'what's new 페이지', 'release notes with screenshots', 'changelog page', '배포 공지 자료'처럼 버전 태그 사이의 변경을 팀·고객에게 시각적으로 알릴 때 반드시 사용한다. git 태그로 릴리스하는 저장소라면 웹·데스크톱·모바일 어느 앱이든 쓴다. 커밋 목록만 필요한 CHANGELOG.md 갱신, 릴리스 태그·배포 자체, 마케팅 영상 제작에는 쓰지 않는다.","https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Frelease-showcase\u002FSKILL.md",[],[179,180,181,182,183,184,185,112,85,186,187],"release","showcase","release showcase","git","release notes","notes","screenshots","html","page",{"skillNo":189,"name":190,"nameZh":6,"description":191,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":192,"categories":193,"keywords":196,"publishedAt":32},"01M6PDJJEQMBWWXW4TPXYNNV38","public-sector-rfp-authoring","Use when drafting or revising Korean government or local-government bid notices, requests for proposals, statements of work, or public-sector service\u002Fproject specifications from the ordering agency's perspective.","https:\u002F\u002Fgithub.com\u002Fdouinc\u002Fagent-skills\u002Fblob\u002Fmain\u002Fskills\u002Fpublic-sector-rfp-authoring\u002FSKILL.md",[194,195],{"categoryNo":78,"categoryName":79,"taxonomyType":80,"taxonomyTypeDesc":81},{"categoryNo":99,"categoryName":100,"taxonomyType":101,"taxonomyTypeDesc":102},[197,198,199,200,201,202,203,125,204,205,206,109,207,139,29,208,209,210],"public sector rfp authoring","authoring","rfp","public","hermes","agency","perspective","requests","specifications","service","local","proposals","work","hermes agent"]