513 lines
26 KiB
HTML
513 lines
26 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<meta
|
|
name="description"
|
|
content="GoodBuddy is an open-source desktop AI workspace with built-in OpenCode, Continue, and DeepSeek Harness (preview) integrations for coding, knowledge, notes, and scheduled work."
|
|
/>
|
|
<link rel="canonical" href="https://mesalogo.github.io/goodbuddy/en.html" />
|
|
<link rel="alternate" hreflang="zh-CN" href="https://mesalogo.github.io/goodbuddy/" />
|
|
<link rel="alternate" hreflang="en" href="https://mesalogo.github.io/goodbuddy/en.html" />
|
|
<link rel="alternate" hreflang="x-default" href="https://mesalogo.github.io/goodbuddy/en.html" />
|
|
<meta name="theme-color" content="#f6f8fb" />
|
|
<title>GoodBuddy | Open-source desktop AI workspace</title>
|
|
<link
|
|
rel="icon"
|
|
href="./assets/goodbuddy-light.png"
|
|
type="image/png"
|
|
media="(prefers-color-scheme: light)"
|
|
/>
|
|
<link
|
|
rel="icon"
|
|
href="./assets/goodbuddy-dark.png"
|
|
type="image/png"
|
|
media="(prefers-color-scheme: dark)"
|
|
/>
|
|
<link rel="stylesheet" href="./styles.css" />
|
|
<script src="./language.js"></script>
|
|
<script>
|
|
(() => {
|
|
try {
|
|
const savedTheme = localStorage.getItem("goodbuddy-site-theme");
|
|
const systemDark = window.matchMedia("(prefers-color-scheme: dark)").matches;
|
|
document.documentElement.dataset.theme =
|
|
savedTheme === "light" || savedTheme === "dark"
|
|
? savedTheme
|
|
: systemDark
|
|
? "dark"
|
|
: "light";
|
|
} catch {
|
|
document.documentElement.dataset.theme = "light";
|
|
}
|
|
})();
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<a class="skip-link" href="#main-content">Skip to main content</a>
|
|
|
|
<header class="site-header" data-site-header>
|
|
<div class="header-inner">
|
|
<a class="brand" href="#home" aria-label="GoodBuddy home">
|
|
<span class="brand-icon" aria-hidden="true">
|
|
<img class="brand-icon__image brand-icon__image--light" src="./assets/goodbuddy-light.png" alt="" />
|
|
<img class="brand-icon__image brand-icon__image--dark" src="./assets/goodbuddy-dark.png" alt="" />
|
|
</span>
|
|
<span>GoodBuddy</span>
|
|
</a>
|
|
|
|
<button
|
|
class="icon-button menu-toggle"
|
|
type="button"
|
|
aria-label="Open navigation"
|
|
aria-expanded="false"
|
|
aria-controls="site-navigation"
|
|
data-menu-toggle
|
|
>
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="M4 7h16M4 12h16M4 17h16" />
|
|
</svg>
|
|
</button>
|
|
|
|
<nav class="site-navigation" id="site-navigation" aria-label="Main navigation" data-navigation>
|
|
<a href="#download">Download</a>
|
|
<a href="#workflows">Workflows</a>
|
|
<a href="#features">Features</a>
|
|
<a href="#assistant">Assistant</a>
|
|
<a href="./docs-dist/en/">User guide</a>
|
|
<a href="#faq">FAQ</a>
|
|
</nav>
|
|
|
|
<div class="header-actions">
|
|
<a
|
|
class="language-link"
|
|
href="./index.html?lang=zh"
|
|
lang="zh-CN"
|
|
hreflang="zh-CN"
|
|
aria-label="切换到中文"
|
|
data-language-link
|
|
>
|
|
中
|
|
</a>
|
|
<button class="icon-button" type="button" aria-label="Switch to dark theme" data-theme-toggle>
|
|
<svg class="theme-icon theme-icon--sun" viewBox="0 0 24 24" aria-hidden="true">
|
|
<circle cx="12" cy="12" r="4" />
|
|
<path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4" />
|
|
</svg>
|
|
<svg class="theme-icon theme-icon--moon" viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="M20.4 14.6A8.5 8.5 0 0 1 9.4 3.6a8.5 8.5 0 1 0 11 11Z" />
|
|
</svg>
|
|
</button>
|
|
<a
|
|
class="button button--quiet header-github"
|
|
href="https://github.com/mesalogo/goodbuddy"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
>
|
|
GitHub
|
|
<span class="sr-only">(opens in a new window)</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
<div class="menu-backdrop" aria-hidden="true" data-menu-backdrop></div>
|
|
|
|
<main id="main-content">
|
|
<section class="hero section" id="home" aria-labelledby="hero-title">
|
|
<div class="section-inner hero-grid">
|
|
<div class="hero-copy">
|
|
<div class="eyebrow">
|
|
<span class="status-dot" aria-hidden="true"></span>
|
|
Windows · macOS · Linux
|
|
</div>
|
|
<h1 id="hero-title">
|
|
Your desktop<br />
|
|
<span>AI workspace.</span>
|
|
</h1>
|
|
<p class="hero-lead">
|
|
Code, consult your sources, keep notes, and schedule follow-ups in GoodBuddy.
|
|
Built-in integrations bring three coding agents to the desktop:
|
|
OpenCode, Continue, and DeepSeek Harness (preview), alongside direct model chat.
|
|
</p>
|
|
<div class="hero-actions">
|
|
<a class="button button--primary" href="#download">Download now</a>
|
|
<a class="button button--secondary" href="#workflows">Explore workflows</a>
|
|
</div>
|
|
<ul class="hero-facts" aria-label="Product highlights">
|
|
<li>
|
|
<svg viewBox="0 0 20 20" aria-hidden="true"><path d="m5 10 3 3 7-7" /></svg>
|
|
Three desktop platforms, x64 and arm64
|
|
</li>
|
|
<li>
|
|
<svg viewBox="0 0 20 20" aria-hidden="true"><path d="m5 10 3 3 7-7" /></svg>
|
|
Built-in coding agents, configurable models
|
|
</li>
|
|
<li>
|
|
<svg viewBox="0 0 20 20" aria-hidden="true"><path d="m5 10 3 3 7-7" /></svg>
|
|
No GoodBuddy account required
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div
|
|
class="product-stage"
|
|
role="img"
|
|
aria-label="GoodBuddy coding workspace: Continue fixes a search issue with file changes and test results"
|
|
data-tilt-stage
|
|
>
|
|
<div class="stage-glow stage-glow--one"></div>
|
|
<div class="stage-glow stage-glow--two"></div>
|
|
<div class="app-window" data-tilt-card>
|
|
<div class="window-bar">
|
|
<div class="window-dots" aria-hidden="true"><span></span><span></span><span></span></div>
|
|
<div class="window-title">GoodBuddy</div>
|
|
<div class="window-status"><span></span> Agent connected</div>
|
|
</div>
|
|
<div class="app-layout">
|
|
<aside class="app-sidebar" aria-hidden="true">
|
|
<div class="mini-brand">
|
|
<span class="brand-icon" aria-hidden="true">
|
|
<img class="brand-icon__image brand-icon__image--light" src="./assets/goodbuddy-light.png" alt="" />
|
|
<img class="brand-icon__image brand-icon__image--dark" src="./assets/goodbuddy-dark.png" alt="" />
|
|
</span>
|
|
</div>
|
|
<div class="side-item is-active"><span></span>Chat</div>
|
|
<div class="side-item"><span></span>Knowledge</div>
|
|
<div class="side-item"><span></span>Notes</div>
|
|
<div class="side-item"><span></span>Heartbeat</div>
|
|
<div class="side-item"><span></span>Run history</div>
|
|
<div class="sidebar-spacer"></div>
|
|
<div class="side-item"><span></span>Settings</div>
|
|
</aside>
|
|
<div class="app-content">
|
|
<div class="app-content-header">
|
|
<div>
|
|
<strong>Fix empty search results</strong>
|
|
<span>Project: Knowledge search</span>
|
|
</div>
|
|
<div class="runtime-pill">Continue</div>
|
|
</div>
|
|
<div class="message-area">
|
|
<div class="message message--user">Search returns nothing with extra spaces. Fix it and add tests.</div>
|
|
<div class="message message--assistant">
|
|
<div class="assistant-label">
|
|
<span class="assistant-avatar" aria-hidden="true">
|
|
<span class="brand-icon">
|
|
<img class="brand-icon__image brand-icon__image--light" src="./assets/goodbuddy-light.png" alt="" />
|
|
<img class="brand-icon__image brand-icon__image--dark" src="./assets/goodbuddy-dark.png" alt="" />
|
|
</span>
|
|
</span>
|
|
<strong>GoodBuddy</strong>
|
|
</div>
|
|
<p>Trimmed the query. Searches with no matches still show the empty state.</p>
|
|
<div class="tool-card">
|
|
<div class="tool-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true"><path d="M4 6h16M4 12h10M4 18h7" /></svg>
|
|
</div>
|
|
<div><strong>File changes</strong><span>search.ts · search.test.ts</span></div>
|
|
<span class="tool-state">Updated</span>
|
|
</div>
|
|
<div class="demo-result"><code>query.trim()</code><span>Tests passed: whitespace and no-match cases</span></div>
|
|
</div>
|
|
</div>
|
|
<div class="composer">
|
|
<span>Describe your coding task…</span>
|
|
<div class="composer-actions"><span>Continue</span><b>↑</b></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="floating-card floating-card--agents">
|
|
<span class="floating-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true"><path d="m8 7-5 5 5 5M16 7l5 5-5 5M14 4l-4 16" /></svg>
|
|
</span>
|
|
<span><strong>Built-in coding agents</strong><small>OpenCode · Continue · DeepSeek Harness (preview)</small></span>
|
|
</div>
|
|
<div class="floating-card floating-card--scope">
|
|
<span class="scope-dot"></span>
|
|
<span><strong>Cross-platform</strong><small>Windows · macOS · Linux</small></span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="section download-section" id="download" aria-label="Cross-platform downloads">
|
|
<div class="section-inner">
|
|
<div class="download-grid">
|
|
<article class="download-card">
|
|
<div class="platform-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="m3 5 8-1v8H3V5Zm10-1.3L21 3v9h-8V3.7ZM3 14h8v8l-8-1v-7Zm10 0h8v9l-8-1v-8Z" />
|
|
</svg>
|
|
</div>
|
|
<div><h3>Windows</h3><p>x64 / arm64 · Installer / portable ZIP</p></div>
|
|
<a
|
|
class="button button--download"
|
|
href="https://github.com/mesalogo/goodbuddy/releases/latest"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
>Download from GitHub →<span class="sr-only">(opens in a new window)</span></a>
|
|
</article>
|
|
<article class="download-card">
|
|
<div class="platform-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="M16.8 12.7c0-2.7 2.2-4 2.3-4.1A5 5 0 0 0 15.2 6c-1.7-.2-3.2 1-4.1 1-.9 0-2.2-1-3.6-1-1.8 0-3.5 1.1-4.5 2.7-2 3.5-.5 8.7 1.4 11.5.9 1.4 2 2.8 3.5 2.7 1.4 0 1.9-.9 3.7-.9 1.7 0 2.2.9 3.7.9s2.5-1.4 3.4-2.7a10 10 0 0 0 1.6-3.3 4.6 4.6 0 0 1-3.5-4.2ZM14.1 4.3A4.7 4.7 0 0 0 15.2 1a4.8 4.8 0 0 0-3.1 1.6A4.4 4.4 0 0 0 11 5.8c1.2.1 2.3-.5 3.1-1.5Z" />
|
|
</svg>
|
|
</div>
|
|
<div><h3>macOS</h3><p>Apple silicon / Intel · DMG</p></div>
|
|
<a
|
|
class="button button--download"
|
|
href="https://github.com/mesalogo/goodbuddy/releases/latest"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
>Download from GitHub →<span class="sr-only">(opens in a new window)</span></a>
|
|
</article>
|
|
<article class="download-card">
|
|
<div class="platform-icon">
|
|
<img src="./assets/linux-plain.svg" alt="" />
|
|
</div>
|
|
<div><h3>Linux</h3><p>x64 / arm64 · AppImage / DEB / RPM</p></div>
|
|
<a
|
|
class="button button--download"
|
|
href="https://github.com/mesalogo/goodbuddy/releases/latest"
|
|
target="_blank"
|
|
rel="noreferrer"
|
|
>Download from GitHub →<span class="sr-only">(opens in a new window)</span></a>
|
|
</article>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section id="workflows" class="section workflows-section" aria-labelledby="workflows-title">
|
|
<div class="section-inner">
|
|
<div class="section-heading">
|
|
<div><p class="kicker">Everyday workflows</p><h2 id="workflows-title">From research to follow-up</h2></div>
|
|
<p>Search project material, save decisions, and set reminders for what comes next.</p>
|
|
</div>
|
|
<div class="workflow-grid">
|
|
<article class="workflow-card">
|
|
<div class="workflow-copy">
|
|
<p class="kicker">Knowledge and citations</p>
|
|
<h3>Find an answer and check its source</h3>
|
|
<p>Ask questions about local documents or your organization's knowledge base. Follow citations in the answer to the original material.</p>
|
|
</div>
|
|
<div class="workflow-demo">
|
|
<div class="demo-bar">Knowledge Q&A</div>
|
|
<p class="demo-question">What should we check before a staging release?</p>
|
|
<p class="demo-answer">Check configuration, run regression tests, and confirm a rollback package is available. [1]</p>
|
|
<div class="demo-source">[1] Release handbook · Pre-release checks</div>
|
|
</div>
|
|
</article>
|
|
<article class="workflow-card">
|
|
<div class="workflow-copy">
|
|
<p class="kicker">Notes and schedules</p>
|
|
<h3>Keep notes and schedule the next step</h3>
|
|
<p>Save decisions in Magic Notes and schedule a reminder for work that needs a follow-up.</p>
|
|
</div>
|
|
<div class="workflow-demo">
|
|
<div class="demo-bar">Project follow-up</div>
|
|
<p class="demo-question">Save these notes and remind me to check release readiness next Monday.</p>
|
|
<p class="demo-answer">Saved: review the search fix and check regression results before release.</p>
|
|
<ul class="demo-checklist"><li>To-do: review the search fix</li><li>Schedule: next Monday, 09:00, release readiness check</li></ul>
|
|
<div class="demo-source">Magic Notes · Release preparation</div>
|
|
</div>
|
|
</article>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="section features-section" id="features" aria-labelledby="features-title">
|
|
<div class="section-inner">
|
|
<div class="section-heading">
|
|
<div>
|
|
<p class="kicker">Product highlights</p>
|
|
<h2 id="features-title">Projects, knowledge, and agents on your desktop</h2>
|
|
</div>
|
|
<p>
|
|
Choose an agent for the task, connect project files and knowledge sources, and review tool calls and results.
|
|
</p>
|
|
</div>
|
|
|
|
<div class="feature-grid">
|
|
<article class="feature-card feature-card--wide feature-card--accent">
|
|
<div class="feature-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<circle cx="12" cy="12" r="3" />
|
|
<path d="M12 3v3M12 18v3M3 12h3M18 12h3M5.6 5.6l2.1 2.1M16.3 16.3l2.1 2.1M18.4 5.6l-2.1 2.1M7.7 16.3l-2.1 2.1" />
|
|
</svg>
|
|
</div>
|
|
<span class="feature-number">01</span>
|
|
<h3>Built-in OpenCode, Continue, and DeepSeek Harness</h3>
|
|
<p>Select a coding agent, configure its model, and start a task in your project from the desktop interface. DeepSeek Harness is in preview. Direct model chat is also available.</p>
|
|
<div class="provider-pills" aria-label="Supported Agent Runtimes">
|
|
<span>Direct models</span><span>OpenCode</span><span>Continue</span><span>DeepSeek Harness (preview)</span>
|
|
</div>
|
|
</article>
|
|
|
|
<article class="feature-card">
|
|
<div class="feature-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="M4 5h16v14H4zM8 22h8M12 19v3" />
|
|
<path d="M7 9h2M11 9h2M15 9h2M7 13h10" />
|
|
</svg>
|
|
</div>
|
|
<span class="feature-number">02</span>
|
|
<h3>Local and SSH projects</h3>
|
|
<p>Work with local projects, or use OpenCode and Continue with remote projects over SSH. Remote projects require the companion gbagent on the remote host.</p>
|
|
</article>
|
|
|
|
<article class="feature-card">
|
|
<div class="feature-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="M5 4h14v16H5zM8 8h8M8 12h5" />
|
|
<path d="m14 16 2 2 3-4" />
|
|
</svg>
|
|
</div>
|
|
<span class="feature-number">03</span>
|
|
<h3>Connect existing knowledge services</h3>
|
|
<p>Use a local knowledge base or configure Dify, FastGPT, and RAGFlow connections to retrieve material for your conversations.</p>
|
|
</article>
|
|
|
|
<article class="feature-card">
|
|
<div class="feature-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="M12 3 5 6v5c0 4.5 2.8 8.6 7 10 4.2-1.4 7-5.5 7-10V6l-7-3Z" />
|
|
<path d="M9 12h6M12 9v6" />
|
|
</svg>
|
|
</div>
|
|
<span class="feature-number">04</span>
|
|
<h3>Ask questions or give it a task</h3>
|
|
<p>Available tools depend on the selected Runtime and enabled capabilities. Manage MCP services and their Runtime assignments in settings. Operations use the current account's permissions, and tool calls appear in the run history.</p>
|
|
</article>
|
|
|
|
<article class="feature-card">
|
|
<div class="feature-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="M4 6.5C4 5.1 5.1 4 6.5 4H10l2 2h5.5C18.9 6 20 7.1 20 8.5v9c0 1.4-1.1 2.5-2.5 2.5h-11A2.5 2.5 0 0 1 4 17.5v-11Z" />
|
|
<path d="M8 11h8M8 15h5" />
|
|
</svg>
|
|
</div>
|
|
<span class="feature-number">05</span>
|
|
<h3>Skills and MCP tools</h3>
|
|
<p>Import Skills and connect MCP services to give your chosen agent the tools you use at work.</p>
|
|
</article>
|
|
|
|
<article class="feature-card feature-card--wide">
|
|
<div class="feature-icon">
|
|
<svg viewBox="0 0 24 24" aria-hidden="true">
|
|
<path d="M4 13h3l2-6 4 12 2-6h5" />
|
|
<path d="M4 4h16v16H4z" />
|
|
</svg>
|
|
</div>
|
|
<span class="feature-number">06</span>
|
|
<h3>Run history and token usage</h3>
|
|
<p>Review tool calls, cancellation, timeouts, token usage, and run history in one place.</p>
|
|
</article>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="section assistant-section" id="assistant" aria-labelledby="assistant-title">
|
|
<div class="section-inner assistant-grid">
|
|
<div class="assistant-intro">
|
|
<div class="assistant-mark" aria-hidden="true">
|
|
<span class="brand-icon">
|
|
<img class="brand-icon__image brand-icon__image--light" src="./assets/goodbuddy-light.png" alt="" />
|
|
<img class="brand-icon__image brand-icon__image--dark" src="./assets/goodbuddy-dark.png" alt="" />
|
|
</span>
|
|
</div>
|
|
<p class="kicker">Desktop assistant</p>
|
|
<h2 id="assistant-title">Conversations, knowledge, notes, and tasks on your desktop</h2>
|
|
<p>
|
|
Keep reference material, to-dos, and ongoing work in one desktop workspace.
|
|
Choose project files for each conversation. See the configuration guide for each agent's context and tool support.
|
|
</p>
|
|
<a class="text-link" href="#download">
|
|
Choose your desktop release
|
|
<span aria-hidden="true">↓</span>
|
|
</a>
|
|
</div>
|
|
|
|
<div class="assistant-list">
|
|
<article>
|
|
<span class="assistant-number">01</span>
|
|
<div><h3>Search files and web pages</h3><p>Import files, folders, and web pages, then configure full-text and vector search. Enable the knowledge graph to explore relationships between sources.</p></div>
|
|
</article>
|
|
<article>
|
|
<span class="assistant-number">02</span>
|
|
<div><h3>Notes, to-dos, and follow-up</h3><p>Magic Notes captures ideas and tasks. Heartbeat reviews work at configured intervals; both Heartbeat and scheduled work require the desktop app to be running.</p></div>
|
|
</article>
|
|
<article>
|
|
<span class="assistant-number">03</span>
|
|
<div><h3>Understand what is on your desktop</h3><p>Add files, screenshots, app windows, clipboard content, and offline voice input when needed.</p></div>
|
|
</article>
|
|
<article>
|
|
<span class="assistant-number">04</span>
|
|
<div><h3>Reach your desktop assistant through messages</h3><p>Configure messaging channels to send tasks in separate conversations. Message processing requires your desktop to be online and the channel connection to be available.</p></div>
|
|
</article>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section id="faq" class="section faq-section" aria-labelledby="faq-title">
|
|
<div class="section-inner">
|
|
<div class="section-heading">
|
|
<div><p class="kicker">Before you start</p><h2 id="faq-title">Frequently asked questions</h2></div>
|
|
<p>See the <a class="text-link" href="https://github.com/mesalogo/goodbuddy/blob/main/README.md">README getting-started guide</a> for installation and connection steps.</p>
|
|
</div>
|
|
<div class="faq-list">
|
|
<details>
|
|
<summary>Do I need an account or a paid model subscription?</summary>
|
|
<p>No GoodBuddy account is required. External model services may need an account or API key and charge at their own rates. Local models need a suitable runtime on your machine.</p>
|
|
</details>
|
|
<details>
|
|
<summary>Where does my data go?</summary>
|
|
<p>Conversation history and notes are stored on your machine. Using models, knowledge services, MCP tools, or messaging channels sends relevant content to the services you configure. Model requests may include retrieved passages and attachments.</p>
|
|
</details>
|
|
<details>
|
|
<summary>How do I set up a coding agent?</summary>
|
|
<p>Select an agent, configure its model connection, and open a project. Prepare or download the runtime components required by your agent and operating system. DeepSeek Harness is in preview. See the getting-started guide for installation steps.</p>
|
|
</details>
|
|
<details>
|
|
<summary>Which platforms and Chinese domestic systems are supported?</summary>
|
|
<p>Windows, macOS, and Linux releases cover x64 and ARM64, including corresponding Chinese domestic hardware. LoongArch has a separate experimental preview. For systems such as UOS and Kylin, choose the matching architecture and package; compatibility information does not imply vendor or whole-system certification.</p>
|
|
</details>
|
|
<details>
|
|
<summary>What do SSH projects require on the remote host?</summary>
|
|
<p>Remote projects with OpenCode and Continue require a working SSH connection, a companion gbagent matching your desktop version, and the required runtime environment on the host. Operations use the remote login account's permissions. See the README for setup.</p>
|
|
</details>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</main>
|
|
|
|
<footer class="site-footer">
|
|
<div class="section-inner footer-inner">
|
|
<a class="brand brand--footer" href="#home" aria-label="Back to GoodBuddy home">
|
|
<span class="brand-icon" aria-hidden="true">
|
|
<img class="brand-icon__image brand-icon__image--light" src="./assets/goodbuddy-light.png" alt="" />
|
|
<img class="brand-icon__image brand-icon__image--dark" src="./assets/goodbuddy-dark.png" alt="" />
|
|
</span>
|
|
<span>GoodBuddy</span>
|
|
</a>
|
|
<p>Open-source desktop AI workspace. No GoodBuddy account required.</p>
|
|
<div class="footer-links">
|
|
<a href="#download">Download</a>
|
|
<a href="#workflows">Workflows</a>
|
|
<a href="#features">Features</a>
|
|
<a href="./docs-dist/en/">User guide</a>
|
|
<a href="#faq">FAQ</a>
|
|
<a href="https://github.com/mesalogo/goodbuddy/blob/main/README.md">Getting started</a>
|
|
<a href="https://github.com/mesalogo/goodbuddy" target="_blank" rel="noreferrer">
|
|
GitHub<span class="sr-only">(opens in a new window)</span>
|
|
</a>
|
|
</div>
|
|
<small>© <span data-current-year></span> GoodBuddy. This site uses no third-party analytics.</small>
|
|
</div>
|
|
</footer>
|
|
|
|
<script src="./app.js"></script>
|
|
</body>
|
|
</html>
|