Files
2nd/10_Wiki/Topic_Programming/AI_and_ML/DeepCode AI.md
T
Antigravity Agent 9148c358d0 docs(10_Wiki): 위키 전체 재구성 — Topic_* 폴더를 4개 카테고리로 통합 + 대규모 중복 제거
Topic_Agent/Topic_Blog/Topics/Topics_Biz/Topics_Meeting/Topics_Rag의 마크다운 지식 문서를
Topic_General/Topic_Programming/Topic_Graphic/Topic_Business 4개 카테고리로 재분류.

- 중복 제거: frontmatter의 status:duplicate/merged + duplicate_of/redirect_to 필드로
  자기 자신을 중복으로 선언한 리다이렉트 stub 1032개 제거, 완전 동일 내용 파일 472개 제거,
  동일 파일명·다른 내용 충돌 시 더 큰(완전한) 버전만 유지(162개 제거) — 총 1639개 중복 제거.
- 분류: 폴더 단위로 명확한 항목(AI_and_ML/Coding/Architecture 등 → Programming,
  Comfyui/Visual_Effects → Graphic, Topics_Biz/Topics_Meeting/사업 등 → Business,
  Poetic_Blog_Writing/창의성/Game_Design 등 → General)은 폴더 우선순위로,
  나머지 혼재 폴더(Topic_Agent/Topic_Blog/Topics 루트/Thinking & Reasoning/Other/UI_UX_Assets)는
  title/tags 키워드 스코어링으로 파일 단위 분류(불명확한 경우 General로 폴백).
  원본 폴더명은 "From_*" 서브폴더로 보존해 추적 가능성 유지.
- 최종 배치: Programming 2784 / General 1608 / Graphic 285 / Business 249 = 4926개 문서.
- 에이전트 운영 상태(.astra/.agent/.obsidian/sessions/memory/_company/docs/lessons/_shared/src)는
  지식 콘텐츠가 아니므로 재분류 대상에서 제외하고 원위치 유지.
- Topics/Topic_email(상위 보호 폴더 Topic_email과 파일명 100% 중복) 삭제 — 보호 폴더 자체는 미변경.
- 완전히 비게 된 Topic_Agent/Topic_Blog/Topics_Biz/Topics_Rag 폴더 제거.
2026-07-05 00:33:48 +09:00

7.1 KiB

id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
id title category status canonical_id aliases duplicate_of source_trust_level confidence_score verification_status tags raw_sources last_reinforced github_commit tech_stack
wiki-2026-0508-deepcode-ai DeepCode AI (Snyk Code) 10_Wiki/Topics verified self
DeepCode AI
Snyk Code
symbolic AI security
neuro-symbolic SAST
AI Fix
none B 0.85 applied
security
sast
snyk
deepcode
neuro-symbolic
ml-security
autofix
ai-code-analysis
2026-05-10 pending
language framework
SaaS Snyk Code / DeepCode

DeepCode AI (Snyk Code)

매 한 줄

"매 LLM 의 X — 매 symbolic + neural 의 결합". 매 25M+ data flow + 매 19+ language. 매 interfile analysis. 매 commit-based 의 verified fix pattern. 매 modern hybrid 의 example (vs LLM-only Corgea).

매 핵심 differentiator

Hybrid AI (vs LLM-only)

  • 매 symbolic reasoning + 매 NN.
  • 매 semantic representation 의 build.
  • 매 hallucination ↓.
  • 매 interpretable.

Interfile dataflow

  • 매 file boundary 의 cross.
  • 매 multi-module vulnerability 의 catch.

Commit-based fix pattern

  • 매 OSS 의 actual fix commits 의 학습.
  • 매 verified pattern.
  • 매 LLM hallucination 의 avoid.

매 history

  • 매 2017 ETH spinoff (DeepCode).
  • 매 2020 Snyk 의 acquire.
  • 매 2024 DeepCode AI Fix.

매 Snyk 의 stack

  • Snyk Code (DeepCode-powered SAST).
  • Snyk Open Source (SCA).
  • Snyk Container (image scan).
  • Snyk IaC (Terraform / K8s).

매 vs alternative

Tool Approach Strength
Snyk Code (DeepCode) Hybrid neuro-symbolic Verified fix + low FP
Corgea LLM-native Business logic + autofix
Semgrep Pattern + custom Speed + control
SonarQube Rule-based + AI Quality gate
GitHub Advanced Code scanning + Copilot Autofix GitHub integration

매 limitation

  • 매 LLM-native 의 emerging features (Corgea) 의 less.
  • 매 enterprise SaaS pricing.
  • 매 language-specific depth varies.

💻 패턴 (응용 — Snyk integration)

CLI scan

npm install -g snyk
snyk auth
snyk code test                  # 매 SAST
snyk code test --json           # 매 JSON output
snyk code test --severity-threshold=high

CI integration

- name: Snyk Code
  uses: snyk/actions/node@master
  env: { SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }} }
  with:
    command: code test
    args: --severity-threshold=high --sarif-file-output=snyk-code.sarif

- name: Upload SARIF
  uses: github/codeql-action/upload-sarif@v3
  with: { sarif_file: snyk-code.sarif }

IDE integration

- VS Code: Snyk Security extension.
- IntelliJ / WebStorm: Snyk plugin.
- 매 inline 의 finding + fix 의 click.

DeepCode AI Fix workflow

1. Vulnerability detected (e.g., SQL injection).
2. AI Fix 의 verified pattern 의 retrieve.
3. PR comment 의 diff 의 propose.
4. Developer 의 review + merge.
5. Snyk 의 re-test 의 confirm fix.

Multi-tool layered security

security_pipeline:
  pre_commit:
    - gitleaks  # 매 secret
  
  pr:
    - snyk_code  # 매 SAST (DeepCode)
    - snyk_open_source  # 매 SCA (CVE)
    - semgrep  # 매 custom rule
    - corgea  # 매 LLM-native (optional, parallel)
  
  pre_deploy:
    - snyk_container  # 매 image
    - cosign  # 매 sign
  
  runtime:
    - falco

Custom rule (Snyk + Semgrep complementary)

# 매 .snyk policy
ignore:
  'SNYK-CC-K8S-1':
    - '*':
        reason: 'Internal dev cluster — non-prod'
        expires: '2026-12-31T00:00:00Z'

# 매 semgrep for org-specific
rules:
  - id: internal-deprecated-api
    pattern: oldClient.deprecatedMethod(...)
    message: Use newClient instead.
    severity: WARNING

Vulnerability triage

def triage_findings(snyk_findings):
    triaged = []
    for f in snyk_findings:
        priority = (
            f['severity_score'] *
            f['exploit_maturity_factor'] *  # 매 0.5-2
            f['reachability_factor']         # 매 0.3-1.5
        )
        triaged.append({
            **f,
            'priority': priority,
            'sla_hours': sla_for_severity(f['severity']),
        })
    return sorted(triaged, key=lambda x: -x['priority'])

Auto-fix verification

def verify_fix(original_code, ai_proposed_fix):
    # 매 1. syntax check
    if not parses_correctly(ai_proposed_fix): return 'invalid syntax'
    
    # 매 2. test still passes
    if not run_tests(ai_proposed_fix): return 'tests fail'
    
    # 매 3. vulnerability resolved
    if scan(ai_proposed_fix).has_vuln: return 'vuln remains'
    
    # 매 4. no new vuln introduced
    new_vulns = set(scan(ai_proposed_fix).vulns) - set(scan(original_code).vulns)
    if new_vulns: return f'introduces new: {new_vulns}'
    
    return 'verified'

SARIF (standard output)

import json

def parse_sarif(sarif_file):
    with open(sarif_file) as f:
        data = json.load(f)
    
    findings = []
    for run in data['runs']:
        for result in run['results']:
            findings.append({
                'rule': result['ruleId'],
                'severity': result['level'],
                'message': result['message']['text'],
                'file': result['locations'][0]['physicalLocation']['artifactLocation']['uri'],
                'line': result['locations'][0]['physicalLocation']['region']['startLine'],
            })
    return findings

Suppress false positives

// 매 Snyk 의 inline ignore
function safe_html(input) {
  // snyk-ignore: javascript/xss — 매 input 의 sanitized at boundary
  return `<div>${input}</div>`;
}

매 결정 기준

상황 Tool
Mid-large + budget Snyk Code (DeepCode)
AI-native focus Corgea
Custom rules speed Semgrep
Open-source self-host SemGrep
GitHub native GitHub Advanced Security
Enterprise compliance Veracode / Checkmarx

기본값: 매 Snyk + Semgrep complementary.

🔗 Graph

🤖 LLM 활용

언제: 매 enterprise SAST. 매 multi-language. 매 verified autofix. 언제 X: 매 budget-tight (Semgrep). 매 air-gapped.

안티패턴

  • Single tool: 매 layered defense X.
  • No triage: 매 alert fatigue.
  • AI Fix 의 blind merge: 매 verify 의 still 필요.
  • No SARIF integration: 매 dashboard 의 single source X.

🧪 검증 / 중복

🕓 Changelog

날짜 변경
2026-05-08 Phase 1
2026-05-10 Manual cleanup — neuro-symbolic + 매 CI / SARIF / triage / verify code