PossessedIDE
A VS Code extension that makes your IDE look possessed, automatically cycling through files in a sequence and simulating developer activity.
Features
- Select multiple files from your workspace
- Files organized by type for easy selection
- Common package files and directories automatically excluded
- Automatically opens files in sequence with customizable timing (seconds or minutes)
- Simulates developer activity with natural mouse and keyboard interactions
- Continuously cycles through files until manually stopped or timed duration completes
- Set auto-stop timer to automatically end tracking after specified hours, minutes, and seconds
- Filter files using the search box
- Start and stop the tracking process with keyboard shortcuts
- Temporarily disables input to VS Code during tracking (using pointer-events: none)
- Tracking continues even if the selection panel is closed
How to Use
- Press
Ctrl+Shift+T (or Cmd+Shift+T on Mac) to open the file selector panel
- Select the files you want to cycle through
- Files are organized by type (extension) for easier selection
- Use the search box to filter specific files
- Use "Select All" or "Deselect All" buttons for quick selection
- Configure timing settings:
- Set your preferred switching time between files (in seconds or minutes)
- Optionally enable auto-stop timer to automatically end tracking after a specified duration
- Enter hours, minutes, and seconds for the auto-stop timer
- Click the "Start Sequence" button to begin tracking
- The extension will:
- Open files sequentially according to your timing settings
- Perform random developer-like interactions in each file (scrolling, cursor movement, etc.)
- Continue cycling through files until stopped manually or the auto-stop duration is reached
- The extension will continue tracking even if you close the selection panel
- Press
Ctrl+Shift+Escape (or Cmd+Shift+Escape on Mac) at any time to stop the tracking process
Simulated Developer Activity
The extension simulates natural developer behavior with these interactions:
- Scrolling: Random scrolling up or down (1-5 lines at a time)
- Arrow keys: Random cursor movement using arrow keys
- Cursor placement: Random cursor placement simulating mouse clicks
- Text selection: Occasional text selection with Caps keys
These interactions occur randomly between file changes to create a natural-looking pattern of developer activity.
Auto-Stop Timer
The auto-stop feature allows you to set a specific duration after which tracking will automatically stop:
- Enable/disable the auto-stop timer using the checkbox
- Set hours, minutes, and seconds for the total tracking duration
- The extension will automatically stop after the specified time has elapsed
- A notification will appear when tracking stops automatically
- If no auto-stop time is set, tracking will continue indefinitely until manually stopped
What's Excluded
The extension automatically excludes common package directories and generated files across multiple languages and frameworks, including:
- Node modules, package lock files, and build directories
- Python virtual environments and cache files
- Java/Kotlin build directories
- .NET bin and obj directories
- Test files, logs, and temporary files
- Many other package and build directories from common languages
Development
Prerequisites
Setup
- Clone this repository
- Run
npm install to install dependencies
- Press F5 to start debugging
Building
- Run
npm run esbuild to build once
- Run
npm run esbuild-watch to build with watch mode
License
MIT
| |