-
-
Notifications
You must be signed in to change notification settings - Fork 61
Add comprehensive GitHub Copilot instructions for ProxiFyre development #90
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: wiresock <20592735+wiresock@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds comprehensive GitHub Copilot instructions for the ProxiFyre SOCKS5 proxifier project, providing detailed guidance for development tasks in a Windows-specific codebase. The instructions emphasize platform requirements, build processes, and validation procedures.
Key changes:
- Platform-specific guidance with clear Windows-only build requirements
- Detailed build instructions with proper timeout recommendations for long-running operations
- Manual validation scenarios for testing SOCKS5 proxy functionality
| 3. **vcpkg Package Manager**: | ||
| ```cmd | ||
| git clone https://github.com/Microsoft/vcpkg.git |
Copilot
AI
Sep 4, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The vcpkg repository URL uses the deprecated Microsoft organization. The correct URL should be https://github.com/microsoft/vcpkg.git (lowercase 'microsoft') as the Microsoft/vcpkg repository has been moved.
| 3. **vcpkg Package Manager**: | |
| ```cmd | |
| git clone https://github.com/Microsoft/vcpkg.git | |
| git clone https://github.com/microsoft/vcpkg.git |
| ```bash | ||
| # Root directory listing | ||
| ls -la | ||
| # Output: ProxiFyre/, socksify/, ndisapi.lib/, include/, netlib/, sign/, README.md, socksify.sln | ||
|
|
||
| # Key configuration files | ||
| find . -name "*.json" -o -name "*.config" -o -name "packages.config" | ||
| # Output: ./ProxiFyre/App.config, ./ProxiFyre/NLog.config, ./ProxiFyre/packages.config | ||
|
|
||
| # Project structure | ||
| find . -name "*.csproj" -o -name "*.vcxproj" -o -name "*.sln" | ||
| # Output: ./ProxiFyre/ProxiFyre.csproj, ./socksify/socksify.vcxproj, ./ndisapi.lib/ndisapilib.vcxproj, ./socksify.sln | ||
| ``` | ||
|
|
||
| ### Source Code Analysis | ||
| ```bash | ||
| # Find C# files | ||
| find . -name "*.cs" | ||
| # Output: ./ProxiFyre/Program.cs, ./ProxiFyre/Properties/AssemblyInfo.cs | ||
|
|
||
| # Find C++ files | ||
| find . -name "*.cpp" -o -name "*.h" | ||
| # Output: socksify/ and ndisapi/ directories contain C++ implementation |
Copilot
AI
Sep 4, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The bash commands are inconsistent with the Windows-only nature of the project documented earlier. Since this is explicitly a Windows-only application, PowerShell commands would be more appropriate: Get-ChildItem instead of ls -la, and Get-ChildItem -Recurse -Include instead of find.
| ```bash | |
| # Root directory listing | |
| ls -la | |
| # Output: ProxiFyre/, socksify/, ndisapi.lib/, include/, netlib/, sign/, README.md, socksify.sln | |
| # Key configuration files | |
| find . -name "*.json" -o -name "*.config" -o -name "packages.config" | |
| # Output: ./ProxiFyre/App.config, ./ProxiFyre/NLog.config, ./ProxiFyre/packages.config | |
| # Project structure | |
| find . -name "*.csproj" -o -name "*.vcxproj" -o -name "*.sln" | |
| # Output: ./ProxiFyre/ProxiFyre.csproj, ./socksify/socksify.vcxproj, ./ndisapi.lib/ndisapilib.vcxproj, ./socksify.sln | |
| ``` | |
| ### Source Code Analysis | |
| ```bash | |
| # Find C# files | |
| find . -name "*.cs" | |
| # Output: ./ProxiFyre/Program.cs, ./ProxiFyre/Properties/AssemblyInfo.cs | |
| # Find C++ files | |
| find . -name "*.cpp" -o -name "*.h" | |
| # Output: socksify/ and ndisapi/ directories contain C++ implementation | |
| ```powershell | |
| # Root directory listing | |
| Get-ChildItem -Force | |
| # Output: ProxiFyre/, socksify/, ndisapi.lib/, include/, netlib/, sign/, README.md, socksify.sln | |
| # Key configuration files | |
| Get-ChildItem -Recurse -Include *.json,*.config,packages.config | |
| # Output: .\ProxiFyre\App.config, .\ProxiFyre\NLog.config, .\ProxiFyre\packages.config | |
| # Project structure | |
| Get-ChildItem -Recurse -Include *.csproj,*.vcxproj,*.sln | |
| # Output: .\ProxiFyre\ProxiFyre.csproj, .\socksify\socksify.vcxproj, .\ndisapi.lib\ndisapilib.vcxproj, .\socksify.sln |
Source Code Analysis
# Find C# files
Get-ChildItem -Recurse -Include *.cs
# Output: .\ProxiFyre\Program.cs, .\ProxiFyre\Properties\AssemblyInfo.cs
# Find C++ files
Get-ChildItem -Recurse -Include *.cpp,*.h
# Output: socksify\ and ndisapi\ directories contain C++ implementation| ```bash | ||
| # Find C# files | ||
| find . -name "*.cs" | ||
| # Output: ./ProxiFyre/Program.cs, ./ProxiFyre/Properties/AssemblyInfo.cs | ||
|
|
||
| # Find C++ files | ||
| find . -name "*.cpp" -o -name "*.h" | ||
| # Output: socksify/ and ndisapi/ directories contain C++ implementation |
Copilot
AI
Sep 4, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Similar to the previous comment, these bash commands should be replaced with Windows-appropriate PowerShell commands for consistency with the Windows-only platform requirement: Get-ChildItem -Recurse -Include *.cs and Get-ChildItem -Recurse -Include *.cpp,*.h.
| ```bash | |
| # Find C# files | |
| find . -name "*.cs" | |
| # Output: ./ProxiFyre/Program.cs, ./ProxiFyre/Properties/AssemblyInfo.cs | |
| # Find C++ files | |
| find . -name "*.cpp" -o -name "*.h" | |
| # Output: socksify/ and ndisapi/ directories contain C++ implementation | |
| ```powershell | |
| # Find C# files | |
| Get-ChildItem -Recurse -Filter *.cs | |
| # Output: .\ProxiFyre\Program.cs, .\ProxiFyre\Properties\AssemblyInfo.cs | |
| # Find C++ files | |
| Get-ChildItem -Recurse -Include *.cpp,*.h -File | |
| # Output: socksify\ and ndisapi\ directories contain C++ implementation |
This PR adds a comprehensive
.github/copilot-instructions.mdfile that provides GitHub Copilot coding agents with detailed instructions for working effectively in the ProxiFyre codebase.Key Features
Platform-Specific Guidance: The instructions clearly document that ProxiFyre is a Windows-only application requiring specific dependencies (Windows Packet Filter, Visual Studio Runtime, vcpkg) and provide explicit warnings about build limitations on Linux/macOS environments.
Precise Build Instructions: Includes exact commands for:
ms-gsl,boost-pool)Critical Timing Information: Documents expected build times with proper timeout recommendations:
Manual Validation Scenarios: Provides specific steps for testing functionality:
/logsdirectoryRepository Navigation: All documented commands have been validated to work correctly, including file structure navigation, project discovery, and source code analysis.
Example Usage
The instructions enable agents to quickly understand the codebase structure:
The instructions start with a firm directive to always follow the provided guidance and only fallback to additional search when information is incomplete or found to be in error, as requested in the requirements.
Fixes #89.
Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
esm.ubuntu.com/usr/lib/apt/methods/https(dns block)If you need me to access, download, or install something from one of these locations, you can either:
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.