- Update package.json description to reflect new branding
- Add fix_chat_input function to update Pro URL references
- Rename all Dyad-related functions and tags to MoreMinimore
- Update test files to use new function names
- Remove Pro restrictions from Annotator component
- Update branding text throughout the application
I moved all isomorphic-git usage into a single git_utils.ts file and
added Dugite as an alternative Git provider. The app now checks the
user’s settings and uses dugite when user enabled native git for all
isomorphic-git commands. This makes it easy to fully remove
isomorphic-git in the future by updating only git_utils.ts.
<!-- CURSOR_SUMMARY -->
---
> [!NOTE]
> Adds Dugite-based native Git (bundled binary) and refactors all Git
calls to a unified git_utils API, replacing direct isomorphic-git usage
across the app.
>
> - **Git Platform Abstraction**:
> - Introduces `dugite` and bundles Git via Electron Forge
(`extraResource`) with `LOCAL_GIT_DIRECTORY` setup in `src/main.ts`.
> - Adds `src/ipc/git_types.ts` and a comprehensive
`src/ipc/utils/git_utils.ts` wrapper supporting both Dugite (native) and
`isomorphic-git` (fallback): `commit`, `add`/`addAll`, `remove`, `init`,
`clone`, `push`, `setRemoteUrl`, `currentBranch`, `listBranches`,
`renameBranch`, `log`, `isIgnored`, `getCurrentCommitHash`,
`getGitUncommittedFiles`, `getFileAtCommit`, `checkout`,
`stageToRevert`.
> - **Refactors (switch to git_utils)**:
> - Replaces direct `isomorphic-git` imports in handlers and processors:
`app_handlers`, `chat_handlers`, `createFromTemplate`,
`github_handlers`, `import_handlers`, `portal_handlers`,
`version_handlers`, `response_processor`, `neon_timestamp_utils`,
`utils/codebase`.
> - Updates tests to mock `git_utils`
(`src/__tests__/chat_stream_handlers.test.ts`).
> - **Behavioral/Feature Updates**:
> - `createFromTemplate` uses `fetch` for GitHub API and `gitClone` for
cloning with cache validation.
> - GitHub integration uses `gitSetRemoteUrl`/`gitPush`/`gitClone`,
handling public vs token URLs and directory creation when native Git is
disabled.
> - Versioning, imports, app file edits, migrations now stage/commit via
`git_utils`.
> - **UI/Copy**:
> - Updates Settings description for “Enable Native Git”.
> - **Config/Version**:
> - Bumps version to `0.29.0-beta.1`; adds `dugite` dependency.
>
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
ba098f7f25d85fc6330a41dc718fbfd43fff2d6c. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
---------
Co-authored-by: Will Chen <willchen90@gmail.com>
# Description
This pull request ignore `venv` directories and closes#1415
<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Exclude Python virtual environment directories (.venv, venv) from
codebase scanning to reduce noise and avoid indexing dependencies. This
aligns with existing excludes like node_modules and build outputs.
<!-- End of auto-generated description by cubic. -->
<!-- This is an auto-generated description by cubic. -->
## Summary by cubic
Enable the Dyad Engine to prioritize a user-selected component by
flagging the file as focused and sending codebase files per request.
Keeps full context when the engine is on; falls back to path-scoped
context when it’s off.
- **New Features**
- Mark the selected component file as focused when the engine is
enabled.
- Send codebase files to the engine via dyadFiles, applied to
dyad_options unless disabled.
- Maintain full chatContext with engine; restrict to the selected file
path only when engine is off.
- **Refactors**
- Removed files from getModelClient and provider APIs; file transport
moved into request payload.
- Stream handlers now pass files to model calls and include
dyadDisableFiles/dyadFiles in the request.
- Added focused flag to CodebaseFile.
<!-- End of auto-generated description by cubic. -->
<!-- CURSOR_SUMMARY -->
---
> [!NOTE]
> Sends codebase files per request to the Dyad Engine, focuses the
selected component when smart context is enabled, and refactors model
client/provider APIs to remove file parameters.
>
> - **Engine integration**:
> - Send codebase files per request via `dyadFiles` in provider options;
propagate through `simpleStreamText` and `dyad-engine` options.
> - Add `isSmartContextEnabled` from `get_model_client` and gate context
behavior accordingly.
> - **Selected component focus**:
> - When smart context is on and a component is selected, mark its file
as `focused` in `CodebaseFile` and avoid broad smart context includes;
allow on-demand reads.
> - When smart context is off, restrict `chatContext` to the selected
file path.
> - **Refactors**:
> - Remove `files` parameter from `getModelClient` and Dyad provider;
move file transport into request body.
> - Update `llm_engine_provider` to read `dyadFiles` from request and
populate `dyad_options.files` unless `dyadDisableFiles`.
> - Extend `CodebaseFile` with optional `focused` flag; thread `files`
through `chat_stream_handlers` calls.
>
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
022b26d0197ab5b5d4f5b589f45bc230de36e0e5. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
<!-- This is an auto-generated description by cubic. -->
## Summary by cubic
Added .php to ALLOWED_EXTENSIONS so codebase scanning and related
features include PHP files.
<!-- End of auto-generated description by cubic. -->
Fixes#1221
Fixes#1037
<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Enable JSON file support in codebase scanning so common configs and data
(e.g., package.json, vercel.json, translations) are included. Adds .json
to the allowed extensions and removes special-casing for
package.json/vercel.json.
<!-- End of auto-generated description by cubic. -->
Fixes#554#1049
<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Stop mutating package.json when reading files. readFileWithCache now
returns raw content so all fields are preserved (e.g., packageManager).
Fixes#554 and #1049.
- **Bug Fixes**
- Removed package.json "cleaning" logic and the cleanContent helper.
- Return and cache unmodified file content from both fs and
virtualFileSystem.
<!-- End of auto-generated description by cubic. -->
Test cases:
- [x] create-ts-errors
- [x] with auto-fix
- [x] without auto-fix
- [x] create-unfixable-ts-errors
- [x] manually edit file & click recheck
- [x] fix all
- [x] delete and rename case
THINGS
- [x] error handling for checkProblems isn't working as expected
- [x] make sure it works for both default templates (add tests)
- [x] fix bad animation
- [x] change file context (prompt/files)
IF everything passes in Windows AND defensive try catch... then enable
by default
- [x] enable auto-fix by default