From 5b33ef0f5453890124301995ec111237a16de8c8 Mon Sep 17 00:00:00 2001 From: aseimel Date: Mon, 29 Jun 2026 19:58:29 +0200 Subject: [PATCH] Improve public installation guide --- README.md | 116 ++++++++++++++++------- docs/images/openwebui-api-key-step-1.png | Bin 0 -> 33133 bytes docs/images/openwebui-api-key-step-2.png | Bin 0 -> 32292 bytes 3 files changed, 83 insertions(+), 33 deletions(-) create mode 100644 docs/images/openwebui-api-key-step-1.png create mode 100644 docs/images/openwebui-api-key-step-2.png diff --git a/README.md b/README.md index b3b4fc1..8c24a79 100644 --- a/README.md +++ b/README.md @@ -1,54 +1,104 @@ # GESIS OpenCode Desktop Installer -This folder contains a Windows GUI installer for OpenCode Desktop that configures the GESIS AI Server provider. +This repository provides a Windows installer for OpenCode Desktop configured for the GESIS AI Server. -Release/versioning rules are documented in `RELEASE.md`. In short: use simple tags such as `v1`, `v2`, `v3`, and only create a new tag when the distributable EXE changes and the project owner explicitly approves the bump. +The installer is intended for GESIS colleagues who want to use OpenCode with their personal GESIS AI Server API key. It downloads the latest OpenCode Desktop for Windows, checks the API key, shows the models available to that key, and writes the OpenCode configuration automatically. + +## Download + +Download and run: + +```text +GESIS-OpenCode-Installer.exe +``` + +Windows may show a security warning because the installer is not code-signed yet. If you downloaded it from the official GESIS GitLab project, choose **More info** and then **Run anyway**. + +## Before You Start + +You need: + +- Windows 10 or Windows 11 +- internet access +- access to the GESIS AI Server / Open WebUI +- your personal GESIS AI Server API key + +Do not share your API key. The installer stores it only in your own OpenCode configuration. + +## Get Your API Key + +Open the GESIS Open WebUI page: + +[https://ai-openwebui.gesis.org](https://ai-openwebui.gesis.org) + +The screenshots below are illustrative. The exact wording may differ slightly depending on the Open WebUI version. + +1. Sign in to Open WebUI. +2. Open your profile menu. +3. Go to **Settings**. +4. Open **Account**. + +![Open WebUI profile and account settings](docs/images/openwebui-api-key-step-1.png) + +5. Find **API Keys**. +6. Choose **Generate New API Key**. +7. Copy the generated key immediately. + +![Open WebUI API key generation](docs/images/openwebui-api-key-step-2.png) + +If you cannot see API keys, contact the GESIS AI Server / Open WebUI administrators. + +## Install OpenCode + +1. Run `GESIS-OpenCode-Installer.exe`. +2. Paste your personal API key. +3. Click **Check API key**. +4. Select the models you want to use in OpenCode. All available models are selected by default. +5. Click **Install selected models**. +6. Follow any OpenCode Desktop installer prompts that appear. + +When finished, start or restart OpenCode Desktop. + +## What the Installer Does The installer: -- downloads the latest Windows x64 OpenCode Desktop release from `anomalyco/opencode` -- starts the official OpenCode Desktop installer -- asks each user for their personal GESIS AI Server API key -- checks the key against the GESIS AI Server before installing -- shows all models available to that key in a checkbox grid with every model selected by default -- writes only the selected models into the OpenCode config -- writes the OpenCode config to `%USERPROFILE%\.config\opencode\opencode.json` -- restricts OpenCode to the GESIS provider with `enabled_providers` -- explicitly disables known Zen/OpenCode default provider IDs -- backs up an existing config before replacing it +- downloads the latest Windows x64 OpenCode Desktop release +- checks your API key against the GESIS AI Server +- shows only models available to your API key +- writes the selected models to your OpenCode configuration +- disables the default OpenCode/Zen providers so the model list stays focused on GESIS +- backs up an existing OpenCode config before replacing it -## Install +The config is written to: -For normal users, distribute and run: +```text +%USERPROFILE%\.config\opencode\opencode.json +``` -`GESIS-OpenCode-Installer.exe` +## Troubleshooting -They paste their personal GESIS API key, click **Check API key**, choose which available models they want to use in OpenCode from the checkbox grid, and click **Install selected models**. +If the API key is rejected, create a new API key in Open WebUI and try again. -The installer starts compact for API-key entry, then maximizes automatically after models are found so the model grid is visible. The main action buttons stay fixed at the bottom of the window, and only the content area scrolls as a fallback for high Windows text scaling or very large model sets. +If no models are shown, your key may not have access to any models yet. Contact the GESIS AI Server / Open WebUI administrators. -## Rebuild the EXE +If OpenCode still shows old models, close and restart OpenCode Desktop. -Open PowerShell in this folder and run: +If Windows blocks the installer, make sure you downloaded it from the official GESIS GitLab project. + +## For Maintainers + +Build instructions and source files are included in this repository. + +To rebuild the EXE on Windows: ```powershell Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass .\Build-GuiInstaller.ps1 ``` -The older PowerShell installer is kept as an administrator fallback: +Release/versioning rules are documented in `RELEASE.md`. Use simple tags such as `v1`, `v2`, `v3`, and create a new version only when the distributable EXE changes and the project owner explicitly approves the bump. -```powershell -.\Install-OpenCode-GESIS.ps1 -``` +GitLab release pages should be attached to an existing approved tag. Do not create a new tag just to create or edit a release page. -## Files - -- `GESIS-OpenCode-Installer.exe` is the GUI installer for distribution. -- `GesisOpenCodeInstaller.cs` is the GUI installer source. -- `Build-GuiInstaller.ps1` rebuilds the GUI installer. -- `app.manifest` keeps the installer DPI-aware on Windows. -- `GESIS Logo Blau EN.jpg` and `GESIS Signet Blau_transp.png` are embedded into the EXE when it is rebuilt. -- `Install-OpenCode-GESIS.ps1` is the PowerShell fallback installer. -- `opencode.gesis.template.json` is a safe template with no personal API key. -- `opencode.json` mirrors the template and no longer contains a real API key. +In GitLab, release pages are usually found under **Deploy > Releases** in the project sidebar. If the sidebar does not show **Releases**, open **Code > Tags**, select the existing tag such as `v2`, and create a release from that tag. diff --git a/docs/images/openwebui-api-key-step-1.png b/docs/images/openwebui-api-key-step-1.png new file mode 100644 index 0000000000000000000000000000000000000000..d7ff82eae0a0010323c172e3d34a8ca76eda288c GIT binary patch literal 33133 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 YC3{+2818%9sGt3N1NKzz`e)kz0Ya)H2mk;8 literal 0 HcmV?d00001 diff --git a/docs/images/openwebui-api-key-step-2.png b/docs/images/openwebui-api-key-step-2.png new file mode 100644 index 0000000000000000000000000000000000000000..ae8162e39bd713a288889c1a6a18dd4906d51f25 GIT binary patch literal 32292 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 X+MZOoe}}Vn$oKE@a;^N~$l3n_zlS^m literal 0 HcmV?d00001