structural-search
Code nach AST-Struktur durchsuchen
또한 다음에서 사용할 수 있습니다: 0xDarkMatter
Das Finden von Code-Mustern mit Regex führt zu falsch-positiven Ergebnissen und verpassten Übereinstimmungen. Diese Skill bietet AST-basierte Suchmuster, die die Codestruktur verstehen und präzise Codesuche und Refactoring über JavaScript, TypeScript, Python, Go und Rust ermöglichen.
스킬 ZIP 다운로드
Claude에서 업로드
설정 → 기능 → 스킬 → 스킬 업로드로 이동
토글을 켜고 사용 시작
테스트해 보기
"structural-search" 사용 중입니다. Find all eval calls in the codebase
예상 결과:
- Found 3 eval calls:
- - src/auth.js:42 - eval(userInput)
- - src/utils.js:15 - eval(dynamicCode)
- - src/parser.js:88 - eval(config.script)
- Recommendation: Replace eval with safer alternatives like JSON.parse for data or Function constructors for specific use cases.
"structural-search" 사용 중입니다. Convert var to const across TypeScript files
예상 결과:
- Previewing 12 matches for pattern: var $NAME = $_
- - components/Button.tsx:5 - var theme = 'dark'
- - components/Modal.tsx:12 - var count = 0
- - utils/api.ts:8 - var endpoint = '/api/v1'
- Run with --rewrite to apply changes to all files.
보안 감사
안전Documentation-only skill containing pattern references for ast-grep CLI. No executable code, network calls, filesystem access, or external command execution detected. All 175 static findings are false positives: bash command examples in documentation were incorrectly flagged as external command execution, and security pattern examples were misidentified as vulnerabilities.
위험 요인
🌐 네트워크 접근 (6)
⚙️ 외부 명령어 (135)
⚡ 스크립트 포함 (16)
품질 점수
만들 수 있는 것
Sicherheitsrisiken erkennen
Sicherheitsprobleme wie eval-Aufrufe, innerHTML-Zuweisungen und hartcodierte Zugangsdaten in der gesamten Codebasis finden.
Sicheres Refactoring
Strukturelle Änderungen vor dem Anwenden in der Vorschau anzeigen, um unbeabsichtigte Änderungen zu vermeiden.
Muster-Migration
Muster wie require zu Import-Anweisungen oder var zu const in gesamten Projekten konvertieren.
이 프롬프트를 사용해 보세요
Finde alle Aufrufe von [function_name] mit ast-grep struktureller Suche. Zeige Dateipfade und Zeilennummern.
Suche nach [eval/innerHTML/innerText/command injection] Mustern, die Sicherheitsrisiken darstellen könnten.
Refactoring von [old_pattern] zu [new_pattern] ohne Änderungen anzuwenden in der Vorschau anzeigen. Zeige zuerst alle Übereinstimmungen.
Erstelle eine ast-grep YAML-Regel, die [anti-pattern] erkennt mit der Nachricht [warning_message].
모범 사례
- Zeige Refactoring immer zuerst mit sg -p 'pattern' -r 'replacement' in der Vorschau an, bevor du --rewrite verwendest, um Änderungen anzuwenden.
- Erstelle YAML-Regeln in einem rules/-Verzeichnis und führe sg scan aus, um unternehmensweite Codierungsstandards durchzusetzen.
- Kombiniere ast-grep mit Pre-Commit-Hooks, um Probleme zu erkennen, bevor der Code das Repository erreicht.
피하기
- Regex für die Codesuche anstelle von AST-Mustern verwenden, was strukturelle Übereinstimmungen verfehlt und falsch-positive Ergebnisse produziert.
- sg scan --fix ohne vorherige Überprüfung der Änderungen ausführen, was unbeabsichtigte Änderungen einführen kann.
- Breite Muster wie $_ == $_ ohne Verständnis des Kontexts anwenden, was legitime Codemuster匹配t.