Vibe Coding Option

I made this option as a custom mode. I copied the following into the the custom instructions box. There’s probably a better way to do it but it works and seems to be more mindful of the settings and rules, Vibe on :sign_of_the_horns:.


Cursor IDE Settings for Vibe Coding Style

This document describes the Cursor IDE settings that should be configured at the IDE level (not just project level) to support the “Vibe Coding” workflow.

Settings Location

Cursor settings are stored in:

  • Windows: %APPDATA%\Cursor\User\settings.json
  • macOS: ~/Library/Application Support/Cursor/User/settings.json
  • Linux: ~/.config/Cursor/User/settings.json

Recommended Settings

1. Enable Auto-run (Chat Settings)

Path: Settings → Chat → Auto-run

Enable this setting to allow the agent to run commands automatically without approval. This is essential for automatic script verification.

Warning: This allows commands to execute without confirmation. Use with caution and consider guardrails.

2. Create Custom “Vibe Coding” Mode

Path: Settings → Chat → Custom Modes → Create New

Mode Name: Vibe Coding

Instructions:

You are operating in "Vibe Coding" mode:
- Always test scripts immediately after creation
- Run scripts and verify exit code before reporting completion
- Minimize file opening - use codebase search instead
- Only mark scripts as "ready for use" after successful test execution
- Fix errors immediately and re-test
- Prefer chat-based workflow over file editing
- Use git worktree context awareness for file access

Tools to Enable:

  • :white_check_mark: File reading
  • :white_check_mark: Terminal execution
  • :white_check_mark: Codebase search
  • :white_check_mark: File writing

Tools to Disable (if available):

  • :cross_mark: Automatic file opening

3. File Opening Behavior

Path: Settings → Editor → Files → Auto Save

Recommended: afterDelay (saves files automatically after a delay)

Note: Cursor removed automatic file opening in later versions. If files are opening unexpectedly, check:

  • Custom modes settings
  • Agent mode settings
  • File associations

4. Terminal Settings

Path: Settings → Terminal

Recommended:

  • Auto-run commands: Enable (for script verification)
  • Terminal timeout: Set to reasonable value (e.g., 60 seconds)
  • Show exit codes: Enable (to verify script success)

5. Chat Panel Settings

Path: Settings → Chat

Recommended:

  • Auto-run: Enable (for automatic script testing)
  • Context window: Increase if needed for large codebases
  • Git worktree awareness: Enable (if available)

Applying Settings

Method 1: Via Cursor UI

  1. Open Cursor Settings (Ctrl+, or Cmd+,)
  2. Navigate to each section above
  3. Apply the recommended settings

Method 2: Via settings.json

Edit the settings.json file directly:

{
  "cursor.chat.autoRun": true,
  "cursor.chat.customModes": [
    {
      "name": "Vibe Coding",
      "instructions": "You are operating in 'Vibe Coding' mode:\n- Always test scripts immediately after creation\n- Run scripts and verify exit code before reporting completion\n- Minimize file opening - use codebase search instead\n- Only mark scripts as 'ready for use' after successful test execution\n- Fix errors immediately and re-test\n- Prefer chat-based workflow over file editing\n- Use git worktree context awareness for file access",
      "tools": {
        "fileReading": true,
        "terminalExecution": true,
        "codebaseSearch": true,
        "fileWriting": true,
        "autoOpenFiles": false
      }
    }
  ],
  "terminal.integrated.autoRun": true,
  "terminal.integrated.showExitCode": true,
  "files.autoSave": "afterDelay"
}

Project-Level Configuration

In addition to IDE-level settings, this project includes:

  • .cursorrules file: IDE-level rules that apply to all projects
  • PROJECT_RULES.md: Project-specific rules and guidelines

Verification

After applying settings, verify:

  1. :white_check_mark: Auto-run is enabled in Chat settings
  2. :white_check_mark: “Vibe Coding” custom mode is created and selected
  3. :white_check_mark: Terminal shows exit codes
  4. :white_check_mark: Scripts are tested automatically after creation

Troubleshooting

Files Still Opening Automatically

  • Check if you’re in Agent mode (which may open files)
  • Verify custom mode settings
  • Check file associations

Scripts Not Being Tested

  • Verify Auto-run is enabled
  • Check custom mode instructions
  • Ensure terminal execution is enabled in custom mode

Context Not Working with Git Worktrees

  • Ensure git worktree awareness is enabled (if available)
  • Use codebase search instead of opening files
  • Rely on file reading tools rather than editor context
3 Likes

Is there not a risk that these custom stuff gets overwritten in the next update??

Haha, nice idea :rofl:

But reading forums, I think what some users really would love is Legacy Mode. Something that is very strict and will not produce anything without permission. Would explain all structural changes before and after executing.

1 Like

speak for yourself! its only time until AI can actually code by itself! best to embrace it

2 Likes

Never! The issue isn’t even that AI can’t develop what you want, but the only one who has a real understanding of what you actually want is yourself! Therefore many people want exact control and understanding of their changes.

2 Likes

LLMs are not intelligent. I coined the term BYOI a while back: Bring Your Own Intelligence! :stuck_out_tongue: Totally agree with you, we need control, because an LLM is not intelligent and cannot make critical decisions in any reliable manner. When they are left to do so, disaster ALWAYS strikes…nuked dbs, entire nuked environments, blown up computers, etc. etc.

A lot of good stuff in here! Thanks for sharing :clipboard:

I would never expect vibe coding to replace large scale programs. This is mainly on new development. Example I have used this for is to pull a few repos I’d like to use together for an esp32. I make a google integrated pond pump with a vfd in a few prompts. With vibe coding parameters the agent handles everything end to end including testing. Is it ready for production, absolutely not, but works for me and I didnt have to write a single line code.