Theodore is an autonomous coding agent built as a VSCode extension, featuring Model Context Protocol (MCP) integration for enhanced code understanding and manipulation.
- Code Analysis: Intelligent code analysis using the MCP code-analyzer server
- Context Management: Smart context tracking and management through the MCP context-manager server
- File Watching: Real-time file system monitoring via the MCP file-watcher server
- Integrated Communication: Seamless communication between MCP servers for coordinated functionality
The extension uses three main MCP servers:
- Context Manager: Manages code context and caching for efficient operations
- Code Analyzer: Analyzes code structure and dependencies
- File Watcher: Monitors file system changes and maintains cache consistency
-
Clone the repository:
git clone https://github.com/yourusername/Theodore.git cd Theodore -
Install dependencies:
npm run install:all
-
Build the extension:
npm run build
-
Install the VSIX:
- In VSCode, go to Extensions
- Click "..." (More Actions)
- Select "Install from VSIX..."
- Choose the generated VSIX file from the
bindirectory
-
Install dependencies:
npm run install:all
-
Start the development server:
npm run watch
-
Launch the extension in debug mode:
- Press F5 in VSCode
- A new VSCode window will open with the extension loaded
Run all tests:
npm testRun specific test suites:
npm run test:webview # Run webview testsBuild the extension:
npm run buildThis will:
- Build the webview UI
- Run type checking
- Run linting
- Bundle the extension
- Create a VSIX package
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.