| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
This directory contains tools and output for converting CLI-format custom modes to VS Code-compatible format.
The Roo Code custom modes exist in two versions:
This conversion tool transforms CLI modes into VS Code-compatible format.
vs-code/
├── convert_modes.py # Conversion script
├── converted_modes/ # Output directory
│ ├── custom_modes.yaml # VS Code-compatible mode definitions (186 modes)
│ ├── .roo/ # Rules directory
│ │ ├── rules-{slug}/ # One directory per mode
│ │ │ └── 1_instructions.xml
│ │ └── ... (186 mode directories)
│ └── README.md # Detailed usage guide
└── README.md # This file
cd Custom-Modes-Roo-Code/vs-code
python3 convert_modes.py listThis displays all available modes organized alphabetically.
# Search with wildcards
python3 convert_modes.py search code*
python3 convert_modes.py search *python* *architect*
# Search multiple patterns
python3 convert_modes.py search golang* rust* *developer*Convert all modes (merges with existing):
python3 convert_modes.py convert allConvert specific modes (adds or updates):
python3 convert_modes.py convert code-skeptic architect python-proCustom output directory:
python3 convert_modes.py convert all --output my_custom_modesPurge the output directory:
python3 convert_modes.py purgeCopy to remote environment (WSL/SSH):
python3 convert_modes.py copy remoteCopy to local environment:
python3 convert_modes.py copy localUsage: python3 convert_modes.py {list|search|convert|purge|copy} [args...] [options]
Commands:
list List all available modes
search Search for modes by pattern (supports wildcards)
convert Convert modes to VS Code format (merges with existing)
purge Empty the output directory
copy Copy converted modes to VS Code settings
Arguments:
For search: One or more search patterns (supports * wildcard)
For convert: Mode slugs to convert (use "all" for all modes)
For copy: Destination: 'remote' or 'local'
Options:
--source PATH Source custom_modes.yaml file (default: ../custom_modes.yaml)
--output DIR Output directory (default: converted_modes)
--help Show help message
Examples:
# List and search
python3 convert_modes.py list
python3 convert_modes.py search code* *python*
# Convert (merges with existing output)
python3 convert_modes.py convert all
python3 convert_modes.py convert code-skeptic architect
python3 convert_modes.py convert python-pro --output my_modes
# Manage output
python3 convert_modes.py purge
# Copy to VS Code
python3 convert_modes.py copy remote
python3 convert_modes.py copy local
Smart Merge (Default): The convert command now intelligently merges modes:
Example output:
Conversion complete! Output directory: 'converted_modes' Total modes in output: 15 Updated: 3 mode(s) Added: 2 new mode(s) Kept: 10 existing mode(s)
This means you can:
After conversion, use the copy command to install:
Remote Environment (WSL/SSH):
python3 convert_modes.py copy remoteLocal Environment:
python3 convert_modes.py copy localManual Installation (if needed):
Remote (WSL/SSH):
cp converted_modes/custom_modes.yaml ~/.vscode-server/data/User/globalStorage/rooveterinaryinc.roo-cline/settings/
cp -r converted_modes/.roo ~/.vscode-server/data/User/globalStorage/rooveterinaryinc.roo-cline/settings/Local Linux:
cp converted_modes/custom_modes.yaml ~/.config/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/
cp -r converted_modes/.roo ~/.config/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/Local macOS:
cp converted_modes/custom_modes.yaml ~/Library/Application\ Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/
cp -r converted_modes/.roo ~/Library/Application\ Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/Local Windows:
copy converted_modes\custom_modes.yaml %APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\
xcopy /E /I converted_modes\.roo %APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\.rooThe convert_modes.py script:
CLI Format:
customModes:
- slug: code-skeptic
name: 🧐 Code Skeptic
roleDefinition: You are a SKEPTICAL...
customInstructions: "You will: 1. NEVER ACCEPT..."
groups: [read, edit, browser, command, mcp]VS Code Format:
customModes:
- slug: code-skeptic
name: 🧐 Code Skeptic
roleDefinition: You are a SKEPTICAL...
whenToUse: Use when you need to act as a 🧐 Code Skeptic...
groups: [read, edit, browser, command, mcp]The customInstructions content is extracted to:
.roo/rules-code-skeptic/1_instructions.xml
What the script CAN do:
What the script CANNOT do:
The CLI modes contain unstructured text instructions. Hand-crafted VS Code modes use rich, semantic XML. The conversion preserves the content but cannot automatically create semantic structure.
The script converts from ../custom_modes.yaml (the consolidated CLI file).
Note: The repository also contains individual YAML files in ../agents/ organized by category. These files have the same customInstructions content but include additional metadata:
The consolidated file was chosen for simplicity since the instruction content is identical.
The converted modes work immediately in VS Code with basic functionality.
Pros:
Cons:
For frequently-used modes, manually restructure the XML:
Example Enhancement:
# Before (auto-converted)
rules-code-skeptic/
└── 1_instructions.xml # All content in one file
# After (manually enhanced)
rules-code-skeptic/
├── 1_workflow.xml # Structured workflow steps
├── 2_quality_gates.xml # Quality checklist
├── 3_verification.xml # Verification procedures
└── 4_examples.xml # Concrete examples"File name too long" error:
"AttributeError: 'list' object has no attribute 'strip'":
Modes not appearing in VS Code:
Modes appear but don't work correctly:
If you enhance any modes with better XML structure:
For issues or questions:
Last Updated: 2025-01-04 Script Version: 2.0 Source: Custom-Modes-Roo-Code/custom_modes.yaml (CLI format) Target: VS Code Roo Code Extension
# Workflow example
python3 convert_modes.py list # See all modes
python3 convert_modes.py search *python* # Find Python modes
python3 convert_modes.py convert python-pro # Convert one mode
python3 convert_modes.py convert all # Convert all (merges)
python3 convert_modes.py copy remote # Install to VS Code| Back | FazBrowse Home | New Git URL |