Getting Started
What can I use for?
automates code modernization, including:- Language upgrades — Python 2 to 3, Java 8 to 21
- Language translations — Ada to C++, COBOL to Java
- Framework migrations — AngularJS to React, Express to FastAPI
- Architecture modernization — Refactoring to modern patterns
Does modify my original code?
No. Your original repositories are never modified directly. works on a dedicated feature branch (prefixed withmorph-) and delivers changes as Pull Requests. You always control what gets merged.
What languages does support?
supports a wide range of languages including:- Python, Java, JavaScript, TypeScript
- C, C++, C#, Go, Rust
- Ada, COBOL, Kotlin, PHP
- And more
The Migration Process
How long does a migration take?
It depends on:- Repository size
- Complexity of the transformation
- How quickly you review and merge PRs
Can I stop a migration partway through?
Yes. Milestones are independent once merged. You can:- Stop after any milestone
- Continue later
- Choose not to proceed with remaining milestones
What if I don’t like the generated code?
Every milestone produces a Pull Request that you review before merging:- Make manual edits — Change anything in the PR
- Request regeneration — Close the PR and retry with edited milestone
- Create rules — Prevent the issue in future milestones
Can milestones run in parallel?
Yes. Milestones that are independent — meaning they don’t share file dependencies — can be approved and executed at the same time. Each runs on its own branch and produces its own PR. When one merges, checks whether sibling branches need a rebase and handles it automatically. Milestones that do depend on earlier ones remain locked until their prerequisites merge.Security & Privacy
Is my code secure?
Yes:- Your code is accessed only to perform the migration
- We use secure, encrypted connections
- Code is not shared with third parties
- Contact us for enterprise security requirements
Can I use with private repositories?
Yes. When connecting GitHub, grant access to specific private repositories. only accesses repositories you explicitly authorize.Where does the migrated code go?
commits generated code to the project’s feature branch and delivers changes as Pull Requests. Each repository in the project has a defined role (Modified, New, Reference Only, One-to-One Migration), and PRs are created accordingly. You must review and merge PRs yourself.Project Spec & Rules
What’s the difference between the Project Spec and Rules?
Both work together. The Project Spec sets direction; rules fine-tune execution.
Can I change the Project Spec after approval?
No. An approved Project Spec is locked because it’s the foundation for all generated milestones. If you need different goals or scope at that level:- Create rules to influence how milestones execute
- Edit individual milestones before generating their tasks
- For major changes, consider starting a new project
When should I create a Rule?
Create rules when you:- Know exactly what you want (coding conventions, library choices)
- See the same issue across multiple milestones
- Have company standards that must be followed
- Want to prevent specific patterns in generated code
Milestones
Can I edit a milestone after tasks are generated?
No. Once tasks are generated, the milestone is locked for that execution. To make changes:- Let the execution complete
- Review the PR
- Make manual edits to the PR, or
- Close the PR and edit the milestone for a fresh execution
What if a milestone fails?
- Check the error message
- Click Retry Execute
- If it keeps failing, review the milestone description for issues
- Contact support with the error details if needed
Can I skip a milestone?
Not directly. Milestones that have dependents must be completed before those dependents can start. You can, however, edit a milestone to effectively no-op it if needed.Technical
What happens to my tests?
can:- Migrate existing tests to the new framework
- Generate new tests for migrated code
What about dependencies?
handles dependency updates:- Identifies equivalent packages in the target ecosystem
- Updates import statements
- Generates new dependency configuration (package.json, requirements.txt, etc.)
Does handle database migrations?
For schema changes, can generate migration files (e.g., Alembic for Python). Specify database migration requirements in your Project Spec or rules.What about environment variables and config?
Configuration files are migrated based on your Project Spec. Specify any special handling needed in your modernization goal or rules.Billing & Accounts
How does billing work?
Modelcode uses credit-based billing. Your plan includes 40,000 credits per month at 0.01 per credit. See Billing & Credits for full details.Can multiple team members use one project?
Yes. The Pro plan supports multiple seats. Each seat is billed separately.Getting Help
How do I contact support?
Email support@modelcode.ai with:- Your project name
- Description of the issue
- Any error messages
- Screenshots if helpful