[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71B176FF06GZV9Y2PWBFND8":3,"skill-same:01M71B176FF06GZV9Y2PWBFND8":56},{"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":30,"linkOnly":31,"markdownContent":32,"markdownBody":33,"frontMatter":34,"refName":35,"commitSha":36,"skillDirectory":37,"forksCount":38,"repositoryHtmlUrl":39,"repositoryHomepageUrl":6,"ownerHtmlUrl":40,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":41,"install":42,"resources":55},"01M71B176FF06GZV9Y2PWBFND8","go-style",null,"Conventions Go strictes du repo skills-transfer-hub (CLI `sth`). À utiliser pour écrire ou refactoriser du code Go dans ce repo. Deux règles dures — aucune variable à une lettre (sauf idiomes Go listés) et aucun commentaire dans le code.","Skills-transfer-hub\u002Fskills-transfer-hub","Skills-transfer-hub","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F287518758?v=4","01M71B0WKTCG48ASPEFGEC2XB7","STH","01M71B0WMEKBC0M71T9TH1FCQC",4,"MIT","https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub\u002Fblob\u002Fdevelop\u002F.claude\u002Fskills\u002Fgo-style\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29],"go","style","go style","cli","code","transfer","conventions go","repo","hub","conventions","du","2026-11-10 10:12:30",false,"---\nname: go-style\ndescription: Conventions Go strictes du repo skills-transfer-hub (CLI `sth`). À utiliser pour écrire ou refactoriser du code Go dans ce repo. Deux règles dures — aucune variable à une lettre (sauf idiomes Go listés) et aucun commentaire dans le code.\n---\n\n# Style Go — skills-transfer-hub\n\nDeux règles non négociables pour tout code Go écrit ou modifié dans ce repo.\n\n## 1. Pas de variable à une lettre\n\nTout identifiant local porte un nom descriptif : `file`, `buffer`, `line`, `record`, `command`, `index`…\n\nExceptions idiomatiques **autorisées** (et uniquement celles-ci) :\n\n- **Receivers** : `func (a *app)`, `func (c *Client)` — cohérence avec le reste du codebase.\n- **`t *testing.T`** (et `b *testing.B`) dans les tests.\n- **`err`** pour les erreurs.\n- **Index de boucle** : `for i := 0; i \u003C n; i++`. Une boucle `for _, x := range` prend un nom descriptif (`for _, record := range records`), pas une lettre.\n\nExemples :\n\n```go\n\u002F\u002F au lieu de\nf, err := os.OpenFile(path, ...)\nfor _, l := range lines { ... }\nfor _, c := range commands { ... }\n\n\u002F\u002F écrire\nfile, err := os.OpenFile(path, ...)\nfor _, line := range lines { ... }\nfor _, command := range commands { ... }\n```\n\n## 2. Pas de commentaire dans le code\n\nZéro commentaire, **y compris les doc-comments godoc** sur les symboles exportés. Le code se documente par des noms de fonctions, de types et de variables explicites.\n\n```go\n\u002F\u002F au lieu de\n\u002F\u002F ReadUsageLog returns the most-recent entries, newest-first.\nfunc ReadUsageLog(limit int) ([]UsageLogRecord, error) { ... }\n\n\u002F\u002F écrire\nfunc ReadUsageLog(limit int) ([]UsageLogRecord, error) { ... }\n```\n\nSi une logique semble nécessiter un commentaire, extraire une fonction nommée ou renommer les variables jusqu'à ce que le code soit lisible seul.\n\n## Portée\n\n- Aucun linter n'impose ces règles dans le repo (rien ne casse au build\u002FCI), mais elles sont obligatoires en revue.\n- `.github\u002Finstructions\u002Fgo.instructions.md` reste plus permissif (variables courtes en boucle, commentaires « si nécessaire ») ; **ce skill prime** pour le nouveau code.\n","# Style Go — skills-transfer-hub\n\nDeux règles non négociables pour tout code Go écrit ou modifié dans ce repo.\n\n## 1. Pas de variable à une lettre\n\nTout identifiant local porte un nom descriptif : `file`, `buffer`, `line`, `record`, `command`, `index`…\n\nExceptions idiomatiques **autorisées** (et uniquement celles-ci) :\n\n- **Receivers** : `func (a *app)`, `func (c *Client)` — cohérence avec le reste du codebase.\n- **`t *testing.T`** (et `b *testing.B`) dans les tests.\n- **`err`** pour les erreurs.\n- **Index de boucle** : `for i := 0; i \u003C n; i++`. Une boucle `for _, x := range` prend un nom descriptif (`for _, record := range records`), pas une lettre.\n\nExemples :\n\n```go\n\u002F\u002F au lieu de\nf, err := os.OpenFile(path, ...)\nfor _, l := range lines { ... }\nfor _, c := range commands { ... }\n\n\u002F\u002F écrire\nfile, err := os.OpenFile(path, ...)\nfor _, line := range lines { ... }\nfor _, command := range commands { ... }\n```\n\n## 2. Pas de commentaire dans le code\n\nZéro commentaire, **y compris les doc-comments godoc** sur les symboles exportés. Le code se documente par des noms de fonctions, de types et de variables explicites.\n\n```go\n\u002F\u002F au lieu de\n\u002F\u002F ReadUsageLog returns the most-recent entries, newest-first.\nfunc ReadUsageLog(limit int) ([]UsageLogRecord, error) { ... }\n\n\u002F\u002F écrire\nfunc ReadUsageLog(limit int) ([]UsageLogRecord, error) { ... }\n```\n\nSi une logique semble nécessiter un commentaire, extraire une fonction nommée ou renommer les variables jusqu'à ce que le code soit lisible seul.\n\n## Portée\n\n- Aucun linter n'impose ces règles dans le repo (rien ne casse au build\u002FCI), mais elles sont obligatoires en revue.\n- `.github\u002Finstructions\u002Fgo.instructions.md` reste plus permissif (variables courtes en boucle, commentaires « si nécessaire ») ; **ce skill prime** pour le nouveau code.\n",{"name":5,"description":7},"develop","695b154094664df194907674dbb0bca01229dbd7",".claude\u002Fskills\u002Fgo-style",0,"https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub","https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub","2026-10-29 01:20:46",{"source":8,"skillName":5,"commands":43,"prompt":53,"zipAvailable":54},[44,47,50],{"tool":45,"command":46},"npx","npx skills add Skills-transfer-hub\u002Fskills-transfer-hub --skill go-style",{"tool":48,"command":49},"bunx","bunx skills add Skills-transfer-hub\u002Fskills-transfer-hub --skill go-style",{"tool":51,"command":52},"pnpm","pnpm dlx skills add Skills-transfer-hub\u002Fskills-transfer-hub --skill go-style","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub\u002Fblob\u002Fdevelop\u002F.claude\u002Fskills\u002Fgo-style\u002FSKILL.md",true,[],[57,74,82,90,98,107],{"skillNo":58,"name":59,"nameZh":6,"description":60,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":61,"categories":62,"keywords":68,"publishedAt":30},"01M71B1G0C1G0ZHTW39K853ZSN","sth-runtime-skill","Validates that gemini discovers an STH project skill.","https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub\u002Fblob\u002Fdevelop\u002Ftestdata\u002Fruntime\u002Fgemini-project\u002F.agents\u002Fskills\u002Fsth-runtime-skill\u002FSKILL.md",[63],{"categoryNo":64,"categoryName":65,"taxonomyType":66,"taxonomyTypeDesc":67},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[69,70,71,72,73],"sth runtime skill","runtime","project skill","gemini","project",{"skillNo":75,"name":59,"nameZh":6,"description":76,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":77,"categories":78,"keywords":80,"publishedAt":30},"01M71B1F698XB5YM7YZRMFM15E","Validates that cursor discovers an STH project skill.","https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub\u002Fblob\u002Fdevelop\u002Ftestdata\u002Fruntime\u002Fcursor-project\u002F.agents\u002Fskills\u002Fsth-runtime-skill\u002FSKILL.md",[79],{"categoryNo":64,"categoryName":65,"taxonomyType":66,"taxonomyTypeDesc":67},[70,69,73,71,81],"cursor",{"skillNo":83,"name":59,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":88,"publishedAt":30},"01M71B1DY5C2E7N1B84RH6GN68","Validates that copilot discovers an STH project skill.","https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub\u002Fblob\u002Fdevelop\u002Ftestdata\u002Fruntime\u002Fcopilot-project\u002F.agents\u002Fskills\u002Fsth-runtime-skill\u002FSKILL.md",[87],{"categoryNo":64,"categoryName":65,"taxonomyType":66,"taxonomyTypeDesc":67},[69,70,89,73,71],"copilot",{"skillNo":91,"name":59,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":96,"publishedAt":30},"01M71B1CJNN52E2T3YWG3K1XFW","Validates that codex discovers an STH project skill.","https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub\u002Fblob\u002Fdevelop\u002Ftestdata\u002Fruntime\u002Fcodex-project\u002F.agents\u002Fskills\u002Fsth-runtime-skill\u002FSKILL.md",[95],{"categoryNo":64,"categoryName":65,"taxonomyType":66,"taxonomyTypeDesc":67},[69,70,73,71,97],"codex",{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":30},"01M71B1AZSJ5JZFMBVNRRT6FH2","sth-runtime-command","Validates that codex discovers an STH project command.","https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub\u002Fblob\u002Fdevelop\u002Ftestdata\u002Fruntime\u002Fcodex-project\u002F.agents\u002Fskills\u002Fsth-runtime-command\u002FSKILL.md",[],[105,70,106,73,97],"sth runtime command","command",{"skillNo":108,"name":59,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":113,"publishedAt":30},"01M71B19MS8K1RGJXQYR92CR0X","Validates that claude discovers an STH project skill.","https:\u002F\u002Fgithub.com\u002FSkills-transfer-hub\u002Fskills-transfer-hub\u002Fblob\u002Fdevelop\u002Ftestdata\u002Fruntime\u002Fclaude-project\u002F.claude\u002Fskills\u002Fsth-runtime-skill\u002FSKILL.md",[112],{"categoryNo":64,"categoryName":65,"taxonomyType":66,"taxonomyTypeDesc":67},[69,70,71,73]]