- ✅ Most tasks and complex projects
- ✅ Enterprise repositories
- ✅ Long conversations (event-driven context drift prevention)
- ✅ Proactive memory management (cross-session learning)
- ✅ GPT-4/5 Turbo, Claude Sonnet, Claude Opus
- ✅ Optimized for autonomous execution
- ✅ Most comprehensive guidance
Beast Mode is a custom chat mode for VS Code agent that adds an opinionated workflow to the agent, including use of a todo list, extensive internet research capabilities, planning, tool usage instructions and more. Designed to be used with 4.1, although it will work with any model.
Below you will find the Beast Mode prompt in various versions - starting with the most recent - 3.1
- Go to the "agent" dropdown in VS Code chat sidebar and select "Configure Modes".
- Select "Create new custom chat mode file"
GitHub Copilot Custom Agent Mode
I modified that beast mode to be more robust, and I love it. Refactored an entire older repo I made from years ago just for fun and was able to do perfectly
I call it "Extensive Mode"
"Extensive Mode.chatmode.md"
The tools should be customized per environment and what you have available,
| import os | |
| import time | |
| import shutil | |
| import argparse | |
| # Create the argument parser | |
| parser = argparse.ArgumentParser(description='Pico Firmware Flasher') | |
| parser.add_argument('uf2_file_path', metavar='UF2_FILE', type=str, help='Path to the UF2 file') | |
| parser.add_argument('-d', '--drive_letter', type=str, default='D:', help='Drive letter of the Pico (default: D:)') |
For awhile now, each time I got a new Windows laptop I would dig up strasis gist on how to set up agent forwarding for SSH in WSL2 -- but recently I tried to point someone else at it and they were very confused by it, so this is my attempt at simpler instructions.
With Chocolatey, you must use an elevated PowerShell session. If there's no choco command found, it will fall back to winget for the npiperelay install. To force using Winget even if you have choco installed, you need to download it, so you can pass parameters to it.
Easy mode: just run this in PowerShell:
| # | |
| # This program is free software: you can redistribute it and/or modify | |
| # it under the terms of the GNU General Public License as published by | |
| # the Free Software Foundation, either version 3 of the License, or | |
| # (at your option) any later version. | |
| # | |
| # This program is distributed in the hope that it will be useful, | |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| # GNU General Public License for more details. |
If you hate git submodule, then you may want to give git subtree a try.
When you want to use a subtree, you add the subtree to an existing repository where the subtree is a reference to another repository url and branch/tag. This add command adds all the code and files into the main repository locally; it's not just a reference to a remote repo.
When you stage and commit files for the main repo, it will add all of the remote files in the same operation. The subtree checkout will pull all the files in one pass, so there is no need to try and connect to another repo to get the portion of subtree files, because they were already included in the main repo.
Let's say you already have a git repository with at least one commit. You can add another repository into this respository like this: