Files
wehub-resource-sync 8a21a212f8
Deploy Documentation / deploy (push) Has been cancelled
Canary / build-cli (push) Has been skipped
Canary / Upload Install Script (push) Has been skipped
Canary / bundle-desktop (push) Has been skipped
Canary / bundle-desktop-intel (push) Has been skipped
Canary / bundle-desktop-linux (push) Has been skipped
Canary / bundle-desktop-windows (push) Has been skipped
Canary / bundle-desktop-windows-cuda (push) Has been skipped
Canary / Release (push) Has been skipped
Cargo Deny / deny (push) Has been skipped
Unused Dependencies / machete (push) Has been skipped
Canary / Prepare Version (push) Failing after 1s
Live Provider Tests / check-fork (push) Failing after 0s
Create Minor Release PR / check-version-bump-pr (push) Has been skipped
Publish Ask AI Bot Docker Image / docker (push) Failing after 1s
Live Provider Tests / changes (push) Has been skipped
Scorecard supply-chain security / Scorecard analysis (push) Has been skipped
Publish Docker Image / docker (push) Failing after 1s
CI / changes (push) Failing after 8s
Create Minor Release PR / release (push) Has been skipped
Live Provider Tests / Smoke Tests (push) Has been cancelled
Live Provider Tests / Smoke Tests (Code Execution) (push) Has been cancelled
Live Provider Tests / Compaction Tests (push) Has been cancelled
CI / Build Rust Project on Windows (push) Has been cancelled
Live Provider Tests / Build Binary (push) Has been cancelled
CI / Lint Rust Code (push) Has been cancelled
CI / Check Generated Schemas are Up-to-Date (push) Has been cancelled
CI / Test and Lint Electron Desktop App (push) Has been cancelled
CI / Check Rust Code Format (push) Has been cancelled
CI / Build and Test Rust Project (push) Has been cancelled
CI / Check MSRV (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:04:08 +08:00

3.0 KiB

title, sidebar_label, description, sidebar_position
title sidebar_label description sidebar_position
Enhanced Code Editing with AI Models Enhanced Code Editing Use AI models to intelligently apply code changes 110

The Developer extension supports using AI models for enhanced code editing through the str_replace command. When configured, it intelligently applies code changes using an AI model instead of simple string replacement.

The use of models specializing in code editing can reduce the load on the main LLM providers while increasing accuracy, quality, and speed and lowering cost. This enhanced approach provides:

  • Context-aware editing: The AI understands code structure and can make more intelligent changes
  • Better formatting: Maintains consistent code style and formatting
  • Error prevention: Can catch and fix potential issues during the edit
  • Flexible model support: Works with any OpenAI-compatible API
  • Clean implementation: Uses proper control flow instead of exception handling for configuration checks

Configuration

Set these environment variables to enable AI-powered code editing:

export GOOSE_EDITOR_API_KEY="your-api-key-here"
export GOOSE_EDITOR_HOST="https://api.openai.com/v1"
export GOOSE_EDITOR_MODEL="gpt-4o"

All three environment variables must be set and non-empty for the feature to activate.

This optional feature is completely backwards compatible - if not configured, the extension works exactly as before with simple string replacement.

Supported Providers

Any OpenAI-compatible API endpoint should work. Examples:

OpenAI:

export GOOSE_EDITOR_API_KEY="sk-..."
export GOOSE_EDITOR_HOST="https://api.openai.com/v1"
export GOOSE_EDITOR_MODEL="gpt-4o"

Anthropic (via OpenAI-compatible proxy):

export GOOSE_EDITOR_API_KEY="sk-ant-..."
export GOOSE_EDITOR_HOST="https://api.anthropic.com/v1"
export GOOSE_EDITOR_MODEL="claude-3-5-sonnet-20241022"

Morph:

export GOOSE_EDITOR_API_KEY="sk-..."
export GOOSE_EDITOR_HOST="https://api.morphllm.com/v1"
export GOOSE_EDITOR_MODEL="morph-v0"

Relace:

export GOOSE_EDITOR_API_KEY="rlc-..."
export GOOSE_EDITOR_HOST="https://instantapply.endpoint.relace.run/v1/apply"
export GOOSE_EDITOR_MODEL="auto"

Local/Custom endpoints:

export GOOSE_EDITOR_API_KEY="your-key"
export GOOSE_EDITOR_HOST="http://localhost:8000/v1"
export GOOSE_EDITOR_MODEL="your-model"

How It Works

When the str_replace tool is used to edit code:

  1. Configuration Check: goose checks if all three environment variables are properly set and non-empty.

  2. With AI Enabled: If configured, goose sends the original code and your requested change to the configured AI model for processing.

  3. Fallback: If the AI API is not configured or the API call fails, it falls back to simple string replacement.

  4. User Feedback: The first time you use str_replace without AI configuration, you'll see a helpful message explaining how to enable the feature.