Skip to content

Standard Unreal Engine C++ Private directories incorrectly blocked by security filter #13420

Open

Description

@Patrick15a

Before submitting your bug report

Relevant environment info

- OS: Windows
- Continue version: 2.0.0
- IDE version: VS Code 1.143.1
- Model: Qwen3 14B
- Mode: Agent
- Game engine: Unreal Engine 5.8
- Project type: C++

Description

Description

Continue's built-in security filter appears to incorrectly block access to C++ source files located inside Unreal Engine's standard Private directory.

Unreal Engine 5.8 officially recommends using Public and Private directories for organizing C++ modules. The Private directory contains ordinary implementation files (.cpp), not necessarily sensitive information.

Continue's Agent Mode rejects file operations within this directory and reports them as security concerns.

This interferes with normal Unreal Engine C++ development workflows.

Steps to Reproduce

  1. Create or open any Unreal Engine C++ project in Visual Studio Code.

  2. Use the standard Unreal Engine module structure:

    ExampleProject/
    └── Source/
        └── ExampleModule/
            ├── Public/
            │   └── ExampleActor.h
            └── Private/
                └── ExampleActor.cpp
    
  3. Open Continue in Agent Mode.

  4. Ask the agent to create or modify Source/ExampleModule/Private/ExampleActor.cpp.

  5. Observe the security error.

Creating the corresponding header file in the Public directory succeeds.

Actual Behavior

The create_new_file tool fails with an error similar to:

create_new_file failed with the message:

Reading or Editing
c%3A/Users/<username>/Documents/ExampleProject/
Source/ExampleModule/Private/ExampleActor.cpp
is not allowed because it is a security concern.

Do not attempt to read or edit this file in any way.

The agent cannot proceed with normal C++ implementation work inside the Private directory.

Expected Behavior

Continue should allow reading, creating and modifying C++ files inside standard Unreal Engine Source/<ModuleName>/Private/ directories when the user has authorized access to the workspace.

The directory name Private should not automatically cause normal C++ source files to be classified as sensitive.

Suspected Root Cause

Continue's security ignore configuration includes directory names such as:

export const DEFAULT_SECURITY_IGNORE_DIRS = [
  // ...
  "private/",
  ".private/",
  // ...
];

The security checks may be matching Unreal Engine's Private directory without considering its purpose as a standard source-code directory.

Relevant source file:

https://github.com/continuedev/continue/blob/main/core/indexing/ignore.ts

Suggested Solutions

  1. Provide a workspace-scoped allowlist for trusted source-code directories.
  2. Allow users to explicitly approve access to standard Unreal Engine Source/<ModuleName>/Private/ directories.
  3. Improve security filtering to distinguish sensitive private-data directories from ordinary C++ implementation directories.

Preferably, these exceptions should not require users to disable security protections globally.

Additional Information

The agent successfully created a C++ header file inside the Public directory but failed when attempting to create the corresponding .cpp implementation file inside Private.

This suggests the issue is related to Continue's file access security checks rather than the underlying language model or filesystem permissions.

Thank you for looking into this!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions