

<!DOCTYPE html>

<html lang="en-US">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=Edge">

  <link rel="stylesheet" href="/Safe-Vibe-Coding/assets/css/just-the-docs-default.css">

  <link rel="stylesheet" href="/Safe-Vibe-Coding/assets/css/just-the-docs-head-nav.css" id="jtd-head-nav-stylesheet">

  <style id="jtd-nav-activation">
  
.site-nav ul li a {
  background-image: none;
}

  </style>

  

  
    <script src="/Safe-Vibe-Coding/assets/js/vendor/lunr.min.js"></script>
  

  <script src="/Safe-Vibe-Coding/assets/js/just-the-docs.js"></script>

  <meta name="viewport" content="width=device-width, initial-scale=1">

  



  <!-- Begin Jekyll SEO tag v2.9.0 -->
<title>Safe Vibe Coding | A practical guide to building real software with LLMs while maintaining correctness, stability, and long-term maintainability.</title>
<meta name="generator" content="Jekyll v4.3.4" />
<meta property="og:title" content="Safe Vibe Coding" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="A practical guide to building real software with LLMs while maintaining correctness, stability, and long-term maintainability." />
<meta name="twitter:description" property="og:description" content="A practical guide to building real software with LLMs while maintaining correctness, stability, and long-term maintainability." />
<link rel="canonical" href="https://frostbite1536.github.io/Safe-Vibe-Coding/assets/css/just-the-docs-head-nav.css" />
<meta property="og:url" content="https://frostbite1536.github.io/Safe-Vibe-Coding/assets/css/just-the-docs-head-nav.css" />
<meta property="og:site_name" content="Safe Vibe Coding" />
<meta property="og:type" content="website" />
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="Safe Vibe Coding" />
<script type="application/ld+json">
{"@context":"https://schema.org","@type":"WebPage","description":"A practical guide to building real software with LLMs while maintaining correctness, stability, and long-term maintainability.","headline":"Safe Vibe Coding","url":"https://frostbite1536.github.io/Safe-Vibe-Coding/assets/css/just-the-docs-head-nav.css"}</script>
<!-- End Jekyll SEO tag -->


  

</head>

<body>
  <a class="skip-to-main" href="#main-content">Skip to main content</a>
  <svg xmlns="http://www.w3.org/2000/svg" class="d-none">
  <symbol id="svg-link" viewBox="0 0 24 24">
  <title>Link</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link">
    <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path>
  </svg>
</symbol>

  <symbol id="svg-menu" viewBox="0 0 24 24">
  <title>Menu</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu">
    <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line>
  </svg>
</symbol>

  <symbol id="svg-arrow-right" viewBox="0 0 24 24">
  <title>Expand</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right">
    <polyline points="9 18 15 12 9 6"></polyline>
  </svg>
</symbol>

  <!-- Feather. MIT License: https://github.com/feathericons/feather/blob/master/LICENSE -->
<symbol id="svg-external-link" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link">
  <title id="svg-external-link-title">(external link)</title>
  <path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line>
</symbol>

  
    <symbol id="svg-doc" viewBox="0 0 24 24">
  <title>Document</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file">
    <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline>
  </svg>
</symbol>

    <symbol id="svg-search" viewBox="0 0 24 24">
  <title>Search</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search">
    <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>
  </svg>
</symbol>

  
  
    <!-- Bootstrap Icons. MIT License: https://github.com/twbs/icons/blob/main/LICENSE.md -->
<symbol id="svg-copy" viewBox="0 0 16 16">
  <title>Copy</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16">
    <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/>
    <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/>
  </svg>
</symbol>
<symbol id="svg-copied" viewBox="0 0 16 16">
  <title>Copied</title>
  <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard-check-fill" viewBox="0 0 16 16">
    <path d="M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3Zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3Z"/>
    <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5v-1Zm6.854 7.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708Z"/>
  </svg>
</symbol>

  
</svg>

  <div class="side-bar">
  <div class="site-header" role="banner">
    <a href="/Safe-Vibe-Coding/" class="site-title lh-tight">
  Safe Vibe Coding

</a>
    <button id="menu-button" class="site-button btn-reset" aria-label="Toggle menu" aria-pressed="false">
      <svg viewBox="0 0 24 24" class="icon" aria-hidden="true"><use xlink:href="#svg-menu"></use></svg>
    </button>
  </div>

  <nav aria-label="Main" id="site-nav" class="site-nav">
  
  
    <ul class="nav-list"><li class="nav-list-item"><a href="/Safe-Vibe-Coding/" class="nav-list-link">Home</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/CHECKLIST.html" class="nav-list-link">Quick Reference Checklist</a></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="toggle items in Guides category" aria-pressed="false">
      <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg>
    </button><a href="/Safe-Vibe-Coding/docs/" class="nav-list-link">Guides</a><ul class="nav-list"><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/BEGINNER_SETUP.html" class="nav-list-link">Claude Code Setup Guide</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/CLAUDE_CODE_ADVANCED.html" class="nav-list-link">Claude Code Architecture Deep Dive</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/CONTEXT_MANAGEMENT.html" class="nav-list-link">Context Management</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/CODE_REVIEW_AI.html" class="nav-list-link">Code Review for AI</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/ANTI_PATTERNS.html" class="nav-list-link">Anti-Patterns & Warning Signs</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/API_KEY_SECURITY.html" class="nav-list-link">API Key & Secrets Security</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/AUDIT_FINDINGS.html" class="nav-list-link">Audit Findings & Lessons</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/VERSION_CONTROL.html" class="nav-list-link">Version Control</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/AI_AUDIT_FAILURES.html" class="nav-list-link">When AI Audits Go Wrong</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/AUTOMATION_TESTING.html" class="nav-list-link">Automation & Testing</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/CODE_REVIEW_SETUP.html" class="nav-list-link">Setting Up AI Code Review</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/EMOTIONAL_PROMPT_ENGINEERING.html" class="nav-list-link">Emotional Prompt Engineering</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/mcp-development" class="nav-list-link">Building MCP Servers</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/mcp-tool-grouping" class="nav-list-link">MCP Tool Grouping</a></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="toggle items in Agents Guide category" aria-pressed="false">
            <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg>
          </button><a href="/Safe-Vibe-Coding/agents" class="nav-list-link">Agents Guide</a><ul class="nav-list"><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/what-is-an-agent" class="nav-list-link">1. What Is an Agent?</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/core-philosophy" class="nav-list-link">2. Core Philosophy & Mental Model</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/when-to-build" class="nav-list-link">3. When to Build an Agent (and When Not To)</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/purpose-and-scope" class="nav-list-link">4. Defining Purpose & Scope</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/tool-interface-design" class="nav-list-link">5. Designing the Tool Interface</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/system-prompts-as-contracts" class="nav-list-link">6. System Prompts as Contracts</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/model-selection" class="nav-list-link">7. Model Selection for Agents</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/memory-and-state" class="nav-list-link">8. Memory & State Management</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/minimal-tool-set" class="nav-list-link">9. Building a Minimal Tool Set First</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/observability-from-day-one" class="nav-list-link">10. Observability from Day One</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/escalation-and-hitl" class="nav-list-link">11. Escalation Paths & Human-in-the-Loop</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/authorization-and-sandboxing" class="nav-list-link">12. Authorization, Sandboxing & Isolation</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/cost-and-kill-switches" class="nav-list-link">13. Cost, Rate-Limiting & Latency Budgets</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/testing-strategies" class="nav-list-link">14. Testing Strategies</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/prompt-injection-defense" class="nav-list-link">15. Hardening Against Prompt Injection</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/chaos-and-adversarial-testing" class="nav-list-link">16. Chaos & Adversarial Testing</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/evaluation-frameworks" class="nav-list-link">17. Evaluation Frameworks</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/deployment-patterns" class="nav-list-link">18. Deployment Patterns</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/monitoring-and-incident-response" class="nav-list-link">19. Monitoring & Incident Response</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/multi-agent-coordination" class="nav-list-link">20. Multi-Agent Coordination</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/checkpoint-summaries" class="nav-list-link">21. Checkpoint Summaries & Capability Drift</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/anti-patterns" class="nav-list-link">22. Anti-Patterns & Failure Modes</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/prompt-library" class="nav-list-link">23. Prompt Library for Agent Development</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/documenting-agent-behavior" class="nav-list-link">24. Documenting Agent Behavior</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/quick-reference-checklists" class="nav-list-link">25. Quick-Reference Checklists</a>
              </li><li class="nav-list-item">
                <a href="/Safe-Vibe-Coding/agents/further-reading-and-tooling" class="nav-list-link">26. Further Reading & Tooling</a>
              </li></ul></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/plan-driven-development" class="nav-list-link">Plan-Driven Development</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/dependency-safety" class="nav-list-link">Dependency Safety</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/refactoring-with-ai" class="nav-list-link">Refactoring with AI</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/AFTER_THE_MERGE.html" class="nav-list-link">After the Merge</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/TEAM_WORKFLOWS.html" class="nav-list-link">Team Workflows</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/LEGACY_CODEBASES.html" class="nav-list-link">Legacy Codebases</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/SMART_CONTRACT_AUDIT.html" class="nav-list-link">Smart Contract Auditing</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/EXPERT_PANEL_EVALUATION.html" class="nav-list-link">Expert Panel Evaluation</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/docs/EXTERNAL_AUDIT_TOOLS.html" class="nav-list-link">Auditing at Scale</a></li></ul></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="toggle items in Prompts Library category" aria-pressed="false">
      <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg>
    </button><a href="/Safe-Vibe-Coding/prompts/" class="nav-list-link">Prompts Library</a><ul class="nav-list"><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/engineering-prompt.html" class="nav-list-link">Engineering Prompt</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/bug-hunt.html" class="nav-list-link">Bug Hunt</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/backend-bug-hunt.html" class="nav-list-link">Backend Bug Hunt</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/frontend-bug-hunt.html" class="nav-list-link">Frontend Bug Hunt</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/bug-fixing.html" class="nav-list-link">Bug Fixing</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/performance-review.html" class="nav-list-link">Performance Review</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/root-cause-isolation.html" class="nav-list-link">Root Cause Isolation</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/architecture-aware-feature.html" class="nav-list-link">Architecture-Aware Feature</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/modularity-review.html" class="nav-list-link">Modularity Review</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/refactor-for-clarity.html" class="nav-list-link">Refactor for Clarity</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/invariant-check.html" class="nav-list-link">Invariant Check</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/user-feedback-simulation.html" class="nav-list-link">User Feedback Simulation</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/llm-coding-templates.html" class="nav-list-link">LLM Coding Prompt Templates</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/code-review.html" class="nav-list-link">Code Review</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/feature-implementation.html" class="nav-list-link">Feature Implementation Workflow</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/project-bootstrap.html" class="nav-list-link">Project Bootstrap for Agents</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/setup-code-review-pipeline.html" class="nav-list-link">Setup Code Review Pipeline</a></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/prompts/smart-contract-audit.html" class="nav-list-link">Smart Contract Audit</a></li></ul></li><li class="nav-list-item"><a href="/Safe-Vibe-Coding/INCORPORATE.html" class="nav-list-link">Incorporate into Your Repo</a></li></ul>

  <ul class="nav-list"><li class="nav-list-item external">
          <a href="https://docs.anthropic.com/en/docs/claude-code" class="nav-list-link external"
            
          >
            Claude Code Docs
            <svg viewBox="0 0 24 24" aria-labelledby="svg-external-link-title"><use xlink:href="#svg-external-link"></use></svg>
          </a>
        </li></ul>
</nav>


  
  
    <footer class="site-footer">
      This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll.
    </footer>
  
</div>

  <div class="main" id="top">
    <div id="main-header" class="main-header">
  
    

<div class="search" role="search">
  <div class="search-input-wrap">
    <input type="text" id="search-input" class="search-input" tabindex="0" placeholder="Search Safe Vibe Coding" aria-label="Search Safe Vibe Coding" autocomplete="off">
    <label for="search-input" class="search-label"><svg viewBox="0 0 24 24" class="search-icon"><use xlink:href="#svg-search"></use></svg></label>
  </div>
  <div id="search-results" class="search-results"></div>
</div>

  
  
  
    <nav aria-label="Auxiliary" class="aux-nav">
  <ul class="aux-nav-list">
    
      <li class="aux-nav-list-item">
        <a href="https://github.com/Frostbite1536/Safe-Vibe-Coding" class="site-button"
          
          target="_blank" rel="noopener noreferrer"
          
        >
          View on GitHub
        </a>
      </li>
    
  </ul>
</nav>

  
</div>

    <div class="main-content-wrap">
      
      <div id="main-content" class="main-content">
        <main>
          
            <h.site-nav ul li a {
  background-image: linear-gradient(-90deg, rgb(92.0784313725%, 92.8705882353%, 96.0392156863%) 0%, rgba(92.0784313725%, 92.8705882353%, 96.0392156863%, 0.8) 80%, rgba(92.0784313725%, 92.8705882353%, 96.0392156863%, 0) 100%);
}

          

          
        </main>
        

  <hr>
  <footer>
    
      <p><a href="#top" id="back-to-top">Back to top</a></p>
    

    <p class="text-small text-grey-dk-100 mb-0">Released into the public domain. Use it however helps you build better software.</p>

    
  </footer>


      </div>
    </div>
    
      
<button id="search-button" class="search-button btn-reset" aria-label="Focus on search">
  <svg viewBox="0 0 24 24" class="icon" aria-hidden="true"><use xlink:href="#svg-search"></use></svg>
</button>


<div class="search-overlay"></div>

    
  </div>

  
    





<script type="module">
  
  import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10.9.1/dist/mermaid.esm.min.mjs';
  

  var config = {}
;
  mermaid.initialize(config);
  mermaid.run({
    querySelector: '.language-mermaid',
  });
</script>



  
</body>
</html>

