원클릭으로
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 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
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.