Project limits & large workspaces
Plan around the current document, text and AI-context limits instead of confusing them with one another.
Three limits answer different questions#
| Boundary | Current source limit | What counts |
|---|---|---|
| Project document count | 1,000 total | Forms, UserControls, standard modules, class modules and test modules together. A Form counts once, not once per file. |
| Main source text | 8 MiB UTF-8 | Form/UserControl code and layouts, standard modules and classes combined. ConsoleApp projects are included. |
| Test source text | A separate 8 MiB UTF-8 | Declared test modules. |
| Single source file | 5 MiB | One authored file must also satisfy this limit. |
| AI-enabled project | 1,000 documents | AI chat can open the same project size as the editor. |
| Documents selected for one chat | 64 documents | Code/layout selections in that chat; this is not the total project count. |
| AI edit scope | 32 items | Controls, Forms, documents or procedures defining what may change. |
Recognize which boundary you reached#
At the document ceiling, Add Form or Add Control and Add Module are unavailable. A manifest edited past the supported count is rejected on open, Check and Build with MCB1001. Source-size failures are also reported by Check/Build as MCB1001; editing services such as completion, rename and AI can report MCB4600.
A project with more than 64 documents can use AI. Select no more than 64 documents for one chat, then check the character budget separately. Increasing Request size does not increase the selected-document or scope-item limits.
Reduce the right thing#
- If document count is high, remove genuinely unused documents or move reusable code into a Library Plugin. Do not merge unrelated Forms solely to hide a count.
- If main text is large, split oversized files and remove duplicated generated text from authored modules.
- If tests exceed their separate budget, split or shorten fixtures and avoid repeating large inline payloads.
- If AI context is too large, select fewer documents or divide the task. You do not have to split a valid large project just to open its AI chat.
Measure after a meaningful change#
Save, run Check and confirm that diagnostics are gone. A count below 1,000 does not prove that text budgets fit. A passing main-source budget does not prove that tests fit. Keep both compiler results and any editor-side diagnostic in a report so the failing boundary can be identified.
20f4bfed6b · Build manifestSources & maintenance
Original web explanation, reviewed against these repository sources. API tables and example files follow the implementation.
docs/manual/22-project-files-and-folder-layout.mddocs/manual/16-working-with-the-ai-assistant.md