Synthèse automatique
Ce skill gère les modules Go : il liste les dépendances obsolètes, classe chaque mise à jour par niveau de risque sémantique, applique les mises à jour de façon progressive et ajuste la version de Go déclarée dans go.mod.
Points forts
- Classe les mises à jour en trois niveaux (patch sûr, mineur à surveiller, majeur risqué) à partir de `go list -m -u all`
- Sauvegarde go.mod et go.sum avant toute modification, puis vérifie avec `go build ./...` et `go test ./...`
- Prend en charge le changement de version Go via `go mod edit -go=` avec un tableau des évolutions marquantes par version
- Propose un rapport final structuré indiquant les modules mis à jour et ceux volontairement ignorés
Limites
- Les mises à jour majeures ne sont pas automatisées : le skill les signale mais laisse la migration manuelle
- Pas de gestion des vulnérabilités ni d'intégration à govulncheck
- Le tableau des nouveautés Go s'arrête à la version 1.24 et devra être actualisé
À utiliser lorsqu'il faut auditer, planifier ou exécuter une mise à jour des dépendances d'un projet Go, ou faire évoluer la version du langage dans go.mod.
Ne pas l'utiliser pour des build systems non-Go ou pour une migration majeure d'API qui exige une refonte manuelle du code.
Analyse de sécurité
PrudenceThe instructions only run standard Go toolchain commands (cat, go list, go get, go mod tidy, go build, go test, go mod edit) plus a simple cp backup. There is no obfuscation, no curl|sh, no credential/token handling, and no destructive filesystem operations. The risk is limited to legitimate but powerful build/dependency mutations and network fetches, so it lands at caution rather than safe.
- •Uses Bash to run `go get -u ./...`, `go get -u <mod>@latest`, and `go mod tidy`, which fetch code from the network and modify go.mod/go.sum and the module cache
- •Creates backup copies (go.mod.backup / go.sum.backup) in the repo working tree rather than a temp location, which could be accidentally committed
- •`go get -u` on all dependencies simultaneously is a broad, hard-to-review mutation of the project state
Exemples
go.mod の依存関係を確認して、更新可能なモジュールを危険度付きで一覧にしてパッチバージョンの依存関係だけを更新して、go mod tidy とテストまで実行してgo.mod の Go バージョンを 1.22 に変更して、ビルドとテストで互換性を確認してname: manage-mod description: Go モジュールを管理する。「依存関係を更新」「go mod」「モジュール更新」「依存関係確認」「go.mod 更新」「パッケージ更新」「依存関係を整理」「Go バージョン変更」などで起動。更新可能なモジュールの一覧、危険度評価、段階的更新、バージョン管理をサポート。 allowed-tools: [Read, Bash, Glob, Grep]
Manage-Mod
Go モジュールを管理します。依存関係の更新、危険度評価、Go バージョン管理をサポート。
引数
--check: 更新可能なモジュールを確認のみ(更新しない)--version: Go バージョンを確認・変更--set <version>: Go バージョンを指定したバージョンに変更--help: ヘルプを表示
依存関係更新
1. 現在の依存関係を確認
cat go.mod
go list -m -u all
2. 更新可能なモジュールを分析
各モジュールについて以下を評価:
| 危険度 | 基準 | 説明 | |--------|------|------| | 🟢 安全 | パッチバージョン (v1.2.3 → v1.2.4) | バグ修正のみ、後方互換性保証 | | 🟡 注意 | マイナーバージョン (v1.2.0 → v1.3.0) | 新機能追加、非推奨警告あり | | 🔴 危険 | メジャーバージョン (v1.x.y → v2.0.0) | 破壊的変更、API の変更 |
3. 更新実行
# バックアップ作成
cp go.mod go.mod.backup
cp go.sum go.sum.backup
# 特定モジュールの更新
go get -u github.com/xxx/yyy@latest
# すべての依存関係を更新
go get -u ./...
# go.mod の整理
go mod tidy
# 更新後の確認
go build ./...
go test ./...
4. 結果レポート
✅ 依存関係更新完了
更新されたモジュール:
- github.com/xxx/yyy: v1.2.0 → v1.3.0 (🟡 マイナー)
- github.com/aaa/bbb: v2.1.0 → v2.1.1 (🟢 パッチ)
更新をスキップ:
- github.com/ccc/ddd: v1.0.0 → v2.0.0 (🔴 メジャー - 手動確認推奨)
推奨アクション:
1. `go test ./...` でテストを実行
2. メジャーバージョンアップは個別に検討
Go バージョン管理
1. 現在のバージョンを確認
# go.mod の Go バージョンを確認
grep "^go " go.mod
# システムの Go バージョンを確認
go version
2. バージョン変更(--set オプション使用時)
# go.mod の Go バージョンを変更
go mod edit -go=1.22
# 依存関係の整理
go mod tidy
3. 互換性チェック
# ビルド確認
go build ./...
# テスト確認
go test ./...
Go バージョンの主な変更点
| バージョン | 主な変更 | |-----------|---------| | 1.24 | tool ディレクティブ、go run キャッシング改善 | | 1.23 | イテレータ関数(range over func) | | 1.22 | ループ変数スコープ変更、PGO デフォルト有効化 | | 1.21 | 標準ライブラリの min/max/clear 関数 | | 1.20 | カバレッジプロファイル、PGO サポート |
重要な注意事項
- ✅ メジャーバージョンアップは慎重に
- ✅ 更新後は必ずビルドとテストを実行
- ✅ 依存関係更新は独立したコミットに
- ✅ CHANGELOG を確認
- ❌ 後方互換性に注意(Go バージョンを上げると古いバージョンでビルドできない可能性)
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/go-module-management-mmio717a/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/go-module-management-mmio717a' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/go-module-management-mmio717a/download' --output '.skill-downloads/go-module-management-mmio717a/SKILL.md.part' && mv '.skill-downloads/go-module-management-mmio717a/SKILL.md.part' '.skill-downloads/go-module-management-mmio717a/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
Claude Code
test -f '.skill-downloads/go-module-management-mmio717a/SKILL.md' && test -s '.skill-downloads/go-module-management-mmio717a/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/manage-mod' && cp -R '.skill-downloads/go-module-management-mmio717a' '.claude/skills/manage-mod'OpenSkills
OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/go-module-management-mmio717a'openskills read 'go-module-management-mmio717a'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/go-module-management-mmio717a/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Bonnes pratiques React Hook Form
Developpement
Maîtrisez React Hook Form : évitez les anti-patterns, gérez les abonnements, et traitez correctement reset, dirty state et entrées contrôlées.
Migration Emotion vers Mantine
Developpement
Migrer les styled-components Emotion vers des composants Mantine avec style props et modules CSS. Pour convertir .styled.tsx ou supprimer les imports @emotion.
Détecteur de dérive de périmètre
Developpement
Analyse les diffs git par rapport à une intention pour détecter la dérive de périmètre, fichiers non liés et PR trop larges, puis suggère de garder, diviser ou justifier.