Conversation
✅ Deploy Preview for livecodes ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Deploying livecodes with
|
| Latest commit: |
e7a13d2
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://cc78be0e.livecodes.pages.dev |
| Branch Preview URL: | https://remove-ai-assistant.livecodes.pages.dev |
|
Size Change: -900 B (-0.09%) Total Size: 1.02 MB
ℹ️ View Unchanged
|
WalkthroughThis PR removes the AI Code Assistant: docs and UI references deleted or commented, Codeium/AI integrations disabled in editor implementations, enableAI removed from config/SDK/validation/locales, homepage/footer/sidebar entries hidden, and minor editor reload and style adjustments made. Changes
Sequence Diagram(s)sequenceDiagram
participant UI as Client UI (settings/commands)
participant Core as LiveCodes Core
participant Config as Config/SDK
participant Editor as Editor (Monaco/CodeMirror)
participant AI as External AI Provider (Codeium/Windsurf)
rect rgba(200,200,255,0.5)
UI->>Core: update settings / trigger command
Core->>Config: read validated config
Config-->>Core: return config (no enableAI)
Core->>Editor: create/reconfigure editor (no AI extensions)
Editor-->>Core: ready
Core-->>UI: reflect editor state
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
No actionable comments were generated in the recent review. 🎉 🧹 Recent nitpick comments
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/sdk/models.ts (1)
813-818:⚠️ Potential issue | 🟡 MinorComment out orphaned JSDoc block above disabled
enableAIproperty.The JSDoc on lines 814–817 references the AI feature documentation but is not commented out, leaving it as an orphaned comment above the disabled property. The
disableAIquery param on line 2077 is intentionally maintained for backward compatibility (seesrc/livecodes/main.ts:32) and is actively used, so no change is needed there.Proposed fix
- /** - * If `true`, [AI code assistant](https://livecodes.io/docs/features/ai) is enabled. - * `@default` false - */ + // /** + // * If `true`, [AI code assistant](https://livecodes.io/docs/features/ai) is enabled. + // * `@default` false + // */ // enableAI: boolean;
🤖 Fix all issues with AI agents
In `@docs/src/components/HomepageFeatures.tsx`:
- Around line 83-96: The two-item imbalance in FeatureList2 is caused by
removing the AI Code Assistant card while the JSX still renders each item with
className="col col--4"; update the FeatureList2 rendering so the two cards
occupy half width each (change className to "col col--6" when
FeatureList2.length === 2) or restore/add a replacement entry to the
FeatureList2 array so it has three items; locate the FeatureList2 constant and
the mapping that renders items (look for FeatureList2 and the JSX that assigns
className="col col--4") and implement the conditional class or add the new
feature card.
🧹 Nitpick comments (4)
docs/docs/features/editor-settings.mdx (1)
20-24: Consider removing commented-out documentation instead of keeping it.Since the AI service is no longer available, you may want to fully remove this section rather than commenting it out. Commented-out docs can become stale and confusing for contributors. That said, if there's intent to restore this feature later, keeping it commented is fine.
src/livecodes/config/validate-config.ts (1)
187-187: Unrelated change:versionvalidation added alongside AI removal.This line adds validation for the
versionproperty, which appears unrelated to the AI assistant removal. Consider splitting this into a separate commit or mentioning it in the PR description for clarity.src/livecodes/UI/command-menu-actions.ts (1)
603-620: Consistent removal of AI command menu actions.Same comment as other files — consider fully removing the commented-out code rather than leaving it in place, to keep the codebase clean. This is optional given the possibility of restoring the feature.
src/livecodes/editor/codemirror/codemirror.ts (1)
50-53: Consider removing commented code entirely.The AI/Codeium integration has been disabled by commenting out the code. Since version control preserves the history, consider removing these commented sections entirely to reduce maintenance burden and improve code clarity.
🧹 Proposed cleanup
Remove all commented AI/Codeium code:
- Lines 50-53: CodeiumEditor type and editors array
- Lines 112-114: codeium variable declaration
- Line 184: codeium module path
- Line 198: codeium assignment
- Line 221: enableAI setting
- Line 235: codeium extension usage
- Lines 345-346: codeiumEditor instance
- Line 521: editors cleanup
This will make the codebase cleaner without losing the historical context (which remains in git history).
Also applies to: 112-114, 184-184, 198-198, 221-221, 235-235, 345-346, 521-521
| // { | ||
| // title: 'AI Code Assistant', | ||
| // image: './img/magic-wand.svg', | ||
| // description: ( | ||
| // <> | ||
| // Leverage the <Link to="./features/ai">power of AI</Link> to help you write/learn code, using | ||
| // the <strong>free</strong> Copilot alternative. It understands the context of your code and | ||
| // comments to generate suggestions. It has a wide range of language support, and it works | ||
| // everywhere (in the <Link to="./getting-started#standalone-app">standalone app</Link>,{' '} | ||
| // <Link to="./features/embeds">embedded playgrounds</Link> and{' '} | ||
| // <Link to="./features/self-hosting">self-hosted</Link> apps). | ||
| // </> | ||
| // ), | ||
| // }, |
There was a problem hiding this comment.
Layout imbalance: FeatureList2 now has only 2 items in a 3-column grid.
With the AI Code Assistant card removed, FeatureList2 renders 2 items using col col--4 (33% width each), leaving a noticeable gap. All other feature lists have 3 items. Consider either adding a replacement feature card or adjusting the column class for this section (e.g., col col--6) so the two remaining cards are centered and evenly distributed.
🤖 Prompt for AI Agents
In `@docs/src/components/HomepageFeatures.tsx` around lines 83 - 96, The two-item
imbalance in FeatureList2 is caused by removing the AI Code Assistant card while
the JSX still renders each item with className="col col--4"; update the
FeatureList2 rendering so the two cards occupy half width each (change className
to "col col--6" when FeatureList2.length === 2) or restore/add a replacement
entry to the FeatureList2 array so it has three items; locate the FeatureList2
constant and the mapping that renders items (look for FeatureList2 and the JSX
that assigns className="col col--4") and implement the conditional class or add
the new feature card.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In `@src/livecodes/core.ts`:
- Around line 4045-4046: The shouldReload calculation erroneously lacks a
null/undefined guard for newConfig.editor causing unrelated settings changes to
trigger editor reloads; update the condition used to compute shouldReload (the
expression assigning shouldReload) to only compare when newConfig.editor is
non-null/undefined (same guard style as in applyConfig), i.e. check
newConfig.editor != null before comparing to getConfig().editor and testing
membership in getActiveEditor(); keep references to shouldReload,
newConfig.editor, getConfig(), getActiveEditor(), and mirror the null-guarded
pattern used in applyConfig/editors.markup.
| const shouldReload = | ||
| newConfig.editor !== getConfig().editor && !((newConfig.editor || '') in getActiveEditor()); |
There was a problem hiding this comment.
Missing null guard causes spurious editor reloads when changing unrelated settings.
When newConfig.editor is undefined (e.g., the user only changed theme or font size), the old code short-circuited via newConfig.editor != null. The new code evaluates undefined !== getConfig().editor → true, and !(('' ) in getActiveEditor()) is also likely true, so shouldReload becomes true—triggering a full editor reload for every settings change.
The analogous check in applyConfig (Line 1533) still retains the null guard: newConfig.editor != null && !(newConfig.editor in editors.markup).
🐛 Proposed fix: restore the null guard
const shouldReload =
- newConfig.editor !== getConfig().editor && !((newConfig.editor || '') in getActiveEditor());
+ newConfig.editor != null &&
+ newConfig.editor !== getConfig().editor &&
+ !(newConfig.editor in getActiveEditor());🤖 Prompt for AI Agents
In `@src/livecodes/core.ts` around lines 4045 - 4046, The shouldReload calculation
erroneously lacks a null/undefined guard for newConfig.editor causing unrelated
settings changes to trigger editor reloads; update the condition used to compute
shouldReload (the expression assigning shouldReload) to only compare when
newConfig.editor is non-null/undefined (same guard style as in applyConfig),
i.e. check newConfig.editor != null before comparing to getConfig().editor and
testing membership in getActiveEditor(); keep references to shouldReload,
newConfig.editor, getConfig(), getActiveEditor(), and mirror the null-guarded
pattern used in applyConfig/editors.markup.
|
i18n ActionsSource PR has been merged into the default branch. Maintainers can comment |
|
.i18n-update-push |
i18n Actions:
|
| Name | Description |
|---|---|
| New Branch for i18n | i18n/live-codes/remove-ai-assistant |
| Last Commit SHA | 45d2f16 |
Maintainers can comment .i18n-update-pull after translation is done to trigger the i18n pull workflow and pull the changes back to Github.
|
.i18n-update-pull |
i18n Actions:
|
| Name | Description |
|---|---|
| i18n Branch | i18n/live-codes/remove-ai-assistant |
| Last Commit SHA | a25b0d1 |
| i18n PR | #938 |




The AI code completion service by Windsurf is no longer working.
See: Exafunction/codeium-react-code-editor#47
Summary by CodeRabbit
Features
Documentation
Localization
Style