MyCoder is a simple to install, powerful command-line based AI agent system that can perform arbitrary tasks with a particular focus on coding tasks. It uses a modular tool-based architecture that allows it to interact with files, execute commands, make network requests, and spawn sub-agents for parallel task execution.
Please join the MyCoder.ai discord for support: https://discord.gg/5K6TYrHGHt
This tool can do anything on your command line that you ask it to. It can delete files, install software, and even send data to remote servers. It is a powerful tool that should be used with caution. By using this tool, you agree that the authors and contributors are not responsible for any damage that may occur as a result of using this tool.
Before using MyCoder, you must have an ANTHROPIC_API_KEY specified either:
- As an environment variable, “export ANTHROPIC_API_KEY=[your-api-key]” or
- In a .env file in the folder you run
mycoder
from
Get an API key from https://www.anthropic.com/api
# Install globally npm install -g mycoder # Start MyCoder with a prompt mycoder "fix all build errors and ensure the tests pass" # Start in interactive mode mycoder -i # Read prompt from a file mycoder --promptFile=your-prompt.txt
- 🤖 AI-Powered: Leverages Anthropic’s Claude API for intelligent decision making
- 🛠️ Extensible Tool System: Modular architecture with various tool categories
- 🔄 Parallel Execution: Ability to spawn sub-agents for concurrent task processing
- 📝 Self-Modification: Can modify code, it was built and tested by writing itself
- 🔍 Smart Logging: Hierarchical, color-coded logging system for clear output
- 👤 Human Compatible: Uses README.md, project files and shell commands to build its own context
[prompt]
: Main prompt text (positional argument)-i, --interactive
: Run in interactive mode, asking for prompts-f, --file
: Read prompt from a specified file--log
: Set log level (info, verbose, warn, error)-h, --help
: Show help-V, --version
: Show version
To list the current tools that the agent makes use of run:
MyCoder excels at various software development tasks. Here are some example prompts and use cases:
# Converting test framework mycoder "Convert all Jest tests in the src/ directory to Vitest, updating any necessary configuration files and dependencies" # Dependency updates mycoder "Update all dependencies to their latest versions, handle any breaking changes, and ensure all tests pass"
# Class refactoring mycoder "Refactor the UserService class in src/services/UserService.ts to use the repository pattern, update all files that use this class, and ensure tests pass" # API modernization mycoder "Convert all callback-based functions in the project to use async/await, update tests accordingly"
# CLI enhancement mycoder "Add a new global --debug command line option that enables verbose logging throughout the application" # New functionality mycoder "Create a new caching system for API responses using Redis, including configuration op
5 Comments
desertkun
Can you put a screenshot of what it is going to look like into the repo's readme?
CGamesPlay
I am excited to see another project that works as a stand-alone tool without any kind of server and without being an IDE plugin. I am highly curious about how you actually approach making modifications, so I am mostly interested in the transcript you posted. https://pastebin.com/FcGKdPbU
1. I notice that it seems to look at all files in examples, then opts to scan examples/react/start-basic-auth/src/main.tsx, then says "I apologize for the confusion" and seems to move on to something else (lines 13-22). What happened here? This happens again on line 77.
2. It looks (lines 25 to 37) like it has difficulty actually working with source files, due to file size. This seems to happen several more times in the h3 section (line 85). It might be worth building something like Aider's repomap to handle larger files.
It does seem to get to a useful conclusion without a lot of looping around, so overall it looks promising!
jz10
I've been using aider for a while now. It can get pretty expensive with sonnet but I guess it's no different from claude-code
jasonjmcghee
Are you leveraging caching? (It didn't seem like it from initial investigation, so figured I'd ask)
Recent sessions with Claude Code come out to a few $ each and like 90% of tokens are cached reads. Which would be hundreds of $ without.
eterps
While I appreciate the emergence of new AI coding tools, I've observed that many of them fail to offer significant improvements over Aider's existing capabilities (but I want to be proven wrong).