Skip to content

feat: Ollama-like setting page for lm-studio#661

Merged
nekomeowww merged 1 commit intomoeru-ai:mainfrom
AdairLi2504:lmstudio-setting-page
Oct 17, 2025
Merged

feat: Ollama-like setting page for lm-studio#661
nekomeowww merged 1 commit intomoeru-ai:mainfrom
AdairLi2504:lmstudio-setting-page

Conversation

@AdairLi2504
Copy link
Copy Markdown
Contributor

Description

There is a new setting page for lm-studio, so users will not face a confusing and actually useless apiKey input.

Additional Context

There is no evidence that lm-studio server can handle any headers, so advanced setting is not needed

@netlify
Copy link
Copy Markdown

netlify Bot commented Oct 17, 2025

Deploy Preview for airi-docs ready!

Name Link
🔨 Latest commit 3e9cff4
🔍 Latest deploy log https://app.netlify.com/projects/airi-docs/deploys/68f23e3fc346f8000844e64f
😎 Deploy Preview https://deploy-preview-661--airi-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @AdairLi2504, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly improves the user experience for configuring LM Studio by adding a dedicated settings page. The change streamlines the setup process by removing an irrelevant API key input and focusing on the essential base URL configuration, making it more intuitive and less confusing for users interacting with local LM Studio servers.

Highlights

  • New LM Studio Settings Page: Introduces a dedicated settings page for LM Studio, replacing the previous confusing API key input with a more relevant base URL configuration.
  • Simplified Configuration: The new page focuses solely on the base URL for LM Studio, aligning with its typical usage and removing unnecessary fields like the API key.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@netlify
Copy link
Copy Markdown

netlify Bot commented Oct 17, 2025

Deploy Preview for airi-vtuber ready!

Name Link
🔨 Latest commit 3e9cff4
🔍 Latest deploy log https://app.netlify.com/projects/airi-vtuber/deploys/68f23e41fcc816000882ff1f
😎 Deploy Preview https://deploy-preview-661--airi-vtuber.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a dedicated settings page for LM Studio, which simplifies the user experience by removing the unnecessary API key field. The implementation is solid, but I've identified a couple of areas for improvement. My feedback focuses on reducing code duplication by leveraging an existing composable and avoiding hardcoded values by using provider metadata, which will enhance maintainability.

Comment on lines +20 to +40
// Define computed properties for credentials

const baseUrl = computed({
get: () => providers.value[providerId]?.baseUrl || '',
set: (value) => {
if (!providers.value[providerId])
providers.value[providerId] = {}
providers.value[providerId].baseUrl = value
},
})

// Use the composable to get validation logic and state
const {
t,
router,
providerMetadata,
isValidating,
isValid,
validationMessage,
handleResetSettings,
} = useProviderValidation(providerId)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The useProviderValidation composable already provides a baseUrl computed property. Re-implementing it here introduces unnecessary code duplication. To improve maintainability and adhere to the DRY principle, you should use the baseUrl provided by the composable.

// Use the composable to get validation logic and state
const {
  t,
  router,
  providerMetadata,
  baseUrl,
  isValidating,
  isValid,
  validationMessage,
  handleResetSettings,
} = useProviderValidation(providerId)

>
<ProviderBaseUrlInput
v-model="baseUrl"
placeholder="http://localhost:1234/v1/"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The placeholder URL is hardcoded. It's better to dynamically bind this value from the provider's metadata. This avoids hardcoding and centralizes the default configuration, making future updates easier. The generic provider settings page already follows this pattern.

          :placeholder="providerMetadata?.defaultOptions?.().baseUrl as string || 'http://localhost:1234/v1/'"

@AdairLi2504 AdairLi2504 changed the title ollama-like setting page for lm-studio feat: Ollama-like setting page for lm-studio Oct 17, 2025
@nekomeowww nekomeowww merged commit 9c2b9d4 into moeru-ai:main Oct 17, 2025
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants