一键导入
hardcode-scan
Scanne un dépôt pour détecter secrets, URLs env-spécifiques et magic values hardcodées. Rapport fichier:ligne avec suggestions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Scanne un dépôt pour détecter secrets, URLs env-spécifiques et magic values hardcodées. Rapport fichier:ligne avec suggestions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Expert guidance for the App Intents framework on Apple platforms. Use when developers mention: (1) Siri or Shortcuts integration, (2) AppIntent, AppEntity, AppEnum, or AppShortcutsProvider, (3) Spotlight actions or indexed entities, (4) exposing app features to Apple Intelligence, (5) parameters, parameter summaries, or intent donation, (6) widget/control configuration intents. Not for widget timeline design itself (see widgetkit-live-activities skill).
Expert guidance for CloudKit sync on Apple platforms. Use when developers mention: (1) iCloud sync or cross-device sync of app data, (2) SwiftData + CloudKit or NSPersistentCloudKitContainer, (3) CKSyncEngine or custom CloudKit record sync, (4) CloudKit sharing / collaboration (CKShare), (5) CloudKit entitlements, containers, or schema deployment, (6) conflict resolution or offline-first with iCloud. Not for third-party sync backends (Firebase, Supabase) and not for app-server REST sync (see docs/api/sync.md).
Expert guidance for StoreKit 2 in-app purchases and subscriptions on Apple platforms. Use when developers mention: (1) in-app purchases, IAP, or subscriptions, (2) Product, Transaction, or currentEntitlements, (3) receipt validation or transaction verification, (4) SubscriptionStoreView / StoreView / ProductView, (5) restore purchases, offer codes, promotional offers, refunds, (6) StoreKit Testing in Xcode or sandbox testing. Not for RevenueCat or third-party billing SDKs.
Apple Human Interface Guidelines for visionOS (Apple Vision Pro). Use when designing or building spatial apps: (1) windows, volumes, and immersive spaces, (2) ornaments, glass material, and spatial layout, (3) eye/hand input, hover effects, and target sizes, (4) comfort, motion, and immersion levels, (5) porting an iOS/iPadOS app to visionOS, (6) RealityKit + SwiftUI scene composition. Companion to the ehmo *-design-guidelines skills for the other Apple platforms.
Expert guidance for WidgetKit widgets and ActivityKit Live Activities on Apple platforms. Use when developers mention: (1) home screen / lock screen / StandBy widgets, (2) Live Activities or Dynamic Island, (3) widget timelines, TimelineProvider, or reload budgets, (4) interactive widgets with App Intents buttons/toggles, (5) Control Center controls (ControlWidget), (6) updating a Live Activity via APNs push. Not for Siri/Shortcuts intents themselves (see app-intents skill).
Audit the health of your Claude Code configuration across all six layers — permissions, hooks, MCP servers, installed skills, agents, settings conflicts. Use when asked to "/health", "check my Claude Code config", "audit my setup", or before debugging unexpected behavior (silent permission denials, MCP tool not appearing, hooks not firing).
| name | hardcode-scan |
| description | Scanne un dépôt pour détecter secrets, URLs env-spécifiques et magic values hardcodées. Rapport fichier:ligne avec suggestions. |
| version | 1.0.0 |
| platforms | ["linux","macos"] |
| metadata | {"hermes":{"tags":["scan","secrets","security","hardcode","env"],"related_skills":["github","cost-audit"],"model":"deepseek-v4-full","coding_delegate":"mistral-3.5","coding_runtime":"vibe-cli"}} |
Adaptation de hardcode — ULK → Hermes. Carte :
docs/backlog/2026-06-28-SPEC-HERMES-HARDCODE-SCAN/CARD.md(P3, GitHub #247).
Scanne le code source : credentials, URLs/IPs env-dépendantes, magic values. Rapport
fichier:ligne : type : valeur masquée + suggestions (variable d'env, constante nommée).
Report-only par défaut ; un mode --fix opt-in édite les sources.
--fix uniquement) : l'édition des sources (remplacer une valeur
hardcodée par une variable d'env / constante) est du coding → Mistral 3.5 via vibe CLI :
delegate_task(coder, prompt="remplace <valeur> à <fichier:ligne> par <ENV_VAR|constante> — contrat : build/lint passe")
└─ (coder via vibe — invocation selon la config Hermes)
DeepSeek cadre (fichier + contrat + vérif), Mistral produit le diff, DeepSeek relit avant écriture.--fix, aucune écriture de code → tout reste DeepSeek.Resources/reports/hardcode-YYYY-MM-DD.md (sur demande).github.http://localhost/192.168.x.x, nombres magiques non commentés.fichier:ligne : type : valeur masquée + suggestion de remplacement.--fix (opt-in) : proposer un diff → attendre confirmation → déléguer l'édition à Mistral via vibe.Cœur déterministe livré : hardcode-scan.sh (à côté de ce SKILL.md). Scanne un dossier
et émet fichier:ligne:type. Report-only ; --fail-on-find pour usage CI. Patterns couverts :
clés AWS, en-têtes de clé privée, assignations secret/api_key/password/token (≥6 car.), tokens
Slack, URLs env-spécifiques (localhost/127.0.0.1/10.x/192.168.x) et IPs privées.
hardcode-scan.sh "$HERMES_VAULT" --fail-on-find
Testé via hermes/tests/hardcode-scan.test.sh (4 cas verts). Les nombres magiques et la
PII (emails/téléphones) relèvent du jugement — trop de faux positifs en regex pure — donc
délégués au modèle, pas au .sh. Le mode --fix (édition des sources) reste délégué à
Mistral 3.5 via vibe et n'est pas couvert par ce script.
.sh) : tokens/keys, IPs privées, URLs localhost/192.168.x.x.--report-only sans modification (défaut).--fix ne modifie rien sans confirmation ; édition déléguée à Mistral, jamais faite en session DeepSeek.example.com, localhost dans les tests.--fix explicite — Hermes ne modifie pas le code sans accord.