From a5e83b49f1ad4edeb9d41ecd2e733c9b79f25d49 Mon Sep 17 00:00:00 2001 From: Nick Vigilante Date: Wed, 15 Jul 2026 16:33:45 +0000 Subject: [PATCH 1/3] docs: audit and fix manifest.json page descriptions for SEO Rewrite hand-maintained page descriptions in docs/manifest.json so each one is accurate, unique, and within the 70-155 character meta-description target, following meta-description SEO best practices. Highlights: - Fix 5 copy/paste errors where a page reused another page's description: Monitoring, Metrics, Permissions & Policies, STUN and NAT, and Manage Provisioner Jobs. - Replace the reference/index.md description that just repeated its title, and fix the "Coderd API" and "VSCode" wording. - Correct the AI landing page's outdated agent examples. - Expand terse descriptions into the 70-155 character range. Only description string values changed; JSON structure, ordering, and Biome formatting are unchanged. Auto-generated reference subtrees (CLI via scripts/clidocgen, REST API via scripts/apidocgen, and Agent API) are left to their generators. DOCS-576 --- docs/manifest.json | 488 ++++++++++++++++++++++----------------------- 1 file changed, 244 insertions(+), 244 deletions(-) diff --git a/docs/manifest.json b/docs/manifest.json index ffa3db63685..04d7dcdf45b 100644 --- a/docs/manifest.json +++ b/docs/manifest.json @@ -3,78 +3,78 @@ "routes": [ { "title": "About", - "description": "Coder docs", + "description": "Coder is a self-hosted platform for running AI coding agents and cloud development environments on the infrastructure you control.", "path": "./README.md", "icon_path": "./images/icons/home.svg", "children": [ { "title": "Screenshots", - "description": "View screenshots of the Coder platform", + "description": "See screenshots of the Coder platform, including browser-based workspace access and the admin dashboard.", "path": "./about/screenshots.md" }, { "title": "Support", - "description": "How Coder supports your deployment and you", + "description": "Get help with your Coder deployment through GitHub issues, our Discord community, and premium support.", "path": "./support/index.md", "children": [ { "title": "Generate a Support Bundle", - "description": "Generate and upload a Support Bundle to Coder Support", + "description": "Generate a support bundle and share workspace and deployment diagnostics with Coder support to troubleshoot issues.", "path": "./support/support-bundle.md" } ] }, { "title": "Contributing", - "description": "Learn how to contribute to Coder", + "description": "Set up your development environment and learn the workflow for contributing code to Coder.", "path": "./about/contributing/CONTRIBUTING.md", "icon_path": "./images/icons/contributing.svg", "children": [ { "title": "Code of Conduct", - "description": "See the code of conduct for contributing to Coder", + "description": "Read the Contributor Covenant code of conduct that governs participation in the Coder community.", "path": "./about/contributing/CODE_OF_CONDUCT.md", "icon_path": "./images/icons/circle-dot.svg" }, { "title": "Documentation", - "description": "Our style guide for use when authoring documentation", + "description": "Follow Coder's style guide conventions for voice, formatting, and terminology when you author documentation.", "path": "./about/contributing/documentation.md", "icon_path": "./images/icons/document.svg" }, { "title": "Modules", - "description": "Learn how to contribute modules to Coder", + "description": "Learn how to build and contribute reusable Terraform modules to the Coder Registry.", "path": "./about/contributing/modules.md", "icon_path": "./images/icons/gear.svg" }, { "title": "Templates", - "description": "Learn how to contribute templates to Coder", + "description": "Learn how to build and contribute complete workspace templates to the Coder Registry.", "path": "./about/contributing/templates.md", "icon_path": "./images/icons/picture.svg" }, { "title": "Backend", - "description": "Our guide for backend development", + "description": "A guide to Coder's backend systems to help engineers and community contributors start backend development.", "path": "./about/contributing/backend.md", "icon_path": "./images/icons/gear.svg" }, { "title": "Frontend", - "description": "Our guide for frontend development", + "description": "A guide to Coder's frontend codebase and conventions to help you start contributing to the UI.", "path": "./about/contributing/frontend.md", "icon_path": "./images/icons/frontend.svg" }, { "title": "Security", - "description": "Security vulnerability disclosure policy", + "description": "Read Coder's security policy and learn how to responsibly report a security vulnerability.", "path": "./about/contributing/SECURITY.md", "icon_path": "./images/icons/lock.svg" }, { "title": "AI Contribution Guidelines", - "description": "Guidelines for AI-generated contributions.", + "description": "Follow the rules for pull requests where an AI system is the primary author of the code.", "path": "./about/contributing/AI_CONTRIBUTING.md", "icon_path": "./images/icons/ai_intelligence.svg" } @@ -84,7 +84,7 @@ }, { "title": "Get started", - "description": "Install Coder and launch your first workspace", + "description": "Install Coder, build your first template, and launch your first workspace in this quickstart guide.", "path": "./get-started/index.md", "icon_path": "./images/icons/rocket.svg", "children": [ @@ -95,17 +95,17 @@ "children": [ { "title": "Add a programming language", - "description": "Expose a new language through a parameter and install it at startup", + "description": "Expose a new programming language through a template parameter and install it at workspace startup.", "path": "./get-started/customize-your-template/add-a-language.md" }, { "title": "Install your own command-line tools", - "description": "Install personal command-line tools and make them persist", + "description": "Install your own command-line tools in a workspace and make them persist across rebuilds.", "path": "./get-started/customize-your-template/install-command-line-tools.md" }, { "title": "Clone private repositories", - "description": "Authenticate to GitHub with an external-auth data source", + "description": "Clone private GitHub repositories in your workspace using a Coder external-auth data source.", "path": "./get-started/customize-your-template/authenticate-to-github.md" } ] @@ -114,120 +114,120 @@ }, { "title": "Install", - "description": "Installing Coder", + "description": "Install the Coder server and CLI, then choose a deployment method for your infrastructure.", "path": "./install/index.md", "icon_path": "./images/icons/download.svg", "children": [ { "title": "Coder CLI", - "description": "Install the standalone binary", + "description": "Install the standalone Coder CLI binary on Linux, macOS, or Windows to run the server and client.", "path": "./install/cli.md", "icon_path": "./images/icons/terminal.svg" }, { "title": "Docker", - "description": "Install Coder using Docker", + "description": "Install and run Coder using the official Docker images for a quick single-machine deployment.", "path": "./install/docker.md", "icon_path": "./images/icons/docker.svg" }, { "title": "Kubernetes", - "description": "Install Coder on Kubernetes", + "description": "Install Coder on a Kubernetes cluster using the official Helm chart for production deployments.", "path": "./install/kubernetes.md", "icon_path": "./images/icons/kubernetes.svg", "children": [ { "title": "Deploy Coder on Azure with an Application Gateway", - "description": "Deploy Coder on Azure with an Application Gateway", + "description": "Deploy Coder on Azure Kubernetes Service behind an Azure Application Gateway ingress controller.", "path": "./install/kubernetes/kubernetes-azure-app-gateway.md" } ] }, { "title": "Rancher", - "description": "Deploy Coder on Rancher", + "description": "Deploy Coder on Rancher as a Kubernetes workload using the Rancher UI and Helm.", "path": "./install/rancher.md", "icon_path": "./images/icons/rancher.svg" }, { "title": "OpenShift", - "description": "Install Coder on OpenShift", + "description": "Install Coder on a Red Hat OpenShift cluster using Helm, with the required security context settings.", "path": "./install/openshift.md", "icon_path": "./images/icons/openshift.svg" }, { "title": "Cloud Providers", - "description": "Install Coder on cloud providers", + "description": "Install guides and example templates for deploying Coder on AWS, Google Cloud, and Azure.", "path": "./install/cloud/index.md", "icon_path": "./images/icons/cloud.svg", "children": [ { "title": "AWS Marketplace", - "description": "Install Coder via AWS Marketplace", + "description": "Deploy a Coder proof-of-concept on AWS using the listing available in the AWS Marketplace.", "path": "./install/cloud/aws-marketplace.md" }, { "title": "GCP Compute Engine", - "description": "Install Coder on GCP Compute Engine", + "description": "Deploy the Coder control plane on a Google Cloud Compute Engine virtual machine.", "path": "./install/cloud/compute-engine.md" }, { "title": "Azure VM", - "description": "Install Coder on an Azure VM", + "description": "Set up the Coder server on a Microsoft Azure virtual machine, step by step.", "path": "./install/cloud/azure-vm.md" } ] }, { "title": "Air-gapped Deployments", - "description": "Run Coder in air-gapped / disconnected / offline environments", + "description": "Run Coder in air-gapped, disconnected, or offline environments where all features remain supported.", "path": "./install/airgap.md", "icon_path": "./images/icons/lan.svg" }, { "title": "Unofficial Install Methods", - "description": "Other installation methods", + "description": "Explore community-contributed, unofficial methods for installing Coder beyond the supported paths.", "path": "./install/other/index.md", "icon_path": "./images/icons/generic.svg" }, { "title": "Upgrading", - "description": "Learn how to upgrade Coder", + "description": "Learn how to upgrade your Coder server to a newer version, with steps for each install method.", "path": "./install/upgrade.md", "icon_path": "./images/icons/upgrade.svg", "children": [ { "title": "Upgrading Best Practices", - "description": "Best practices and troubleshooting for Coder upgrades", + "description": "Follow best practices and troubleshooting tips to plan and carry out Coder upgrades.", "path": "./install/upgrade-best-practices.md" } ] }, { "title": "Uninstall", - "description": "Learn how to uninstall Coder", + "description": "Learn how to uninstall your Coder server and remove its associated resources.", "path": "./install/uninstall.md", "icon_path": "./images/icons/trash.svg" }, { "title": "Releases", - "description": "Learn about the Coder release channels and schedule", + "description": "Learn about Coder's release channels, versioning, and schedule so you can plan upgrades.", "path": "./install/releases/index.md", "icon_path": "./images/icons/star.svg", "children": [ { "title": "Feature stages", - "description": "Information about pre-GA stages.", + "description": "Understand Coder's feature stages, including early access, beta, and general availability.", "path": "./install/releases/feature-stages.md" }, { "title": "Upgrading from ESR 2.24 to 2.29", - "description": "Upgrade from ESR 2.24 to 2.29", + "description": "A step-by-step guide to upgrade a Coder deployment from Extended Support Release 2.24 to 2.29.", "path": "./install/releases/esr-2.24-2.29-upgrade.md" }, { "title": "Upgrading from ESR 2.29 to 2.34", - "description": "Upgrade from ESR 2.29 to 2.34", + "description": "A step-by-step guide to upgrade a Coder deployment from Extended Support Release 2.29 to 2.34.", "path": "./install/releases/esr-2.29-2.34-upgrade.md" } ] @@ -236,44 +236,44 @@ }, { "title": "User Guides", - "description": "Guides for end-users of Coder", + "description": "Guides for Coder end users on accessing, managing, and personalizing their workspaces.", "path": "./user-guides/index.md", "icon_path": "./images/icons/users.svg", "children": [ { "title": "Access Workspaces", - "description": "Connect to your Coder workspaces", + "description": "Connect to your Coder workspace using SSH, your IDE, a web terminal, remote desktop, and more.", "path": "./user-guides/workspace-access/index.md", "icon_path": "./images/icons/access.svg", "children": [ { "title": "Visual Studio Code", - "description": "Use VSCode with Coder in the desktop or browser", + "description": "Develop in your Coder workspace remotely with VS Code, using the desktop app or the browser.", "path": "./user-guides/workspace-access/vscode.md" }, { "title": "Web Terminal", - "description": "Use the browser-based terminal to access your workspace", + "description": "Use the browser-based web terminal to run commands in your workspace without any local setup.", "path": "./user-guides/workspace-access/web-terminal.md" }, { "title": "JetBrains IDEs", - "description": "Use JetBrains IDEs with Coder", + "description": "Connect JetBrains IDEs to Coder workspaces using JetBrains Toolbox or Gateway.", "path": "./user-guides/workspace-access/jetbrains/index.md", "children": [ { "title": "JetBrains Fleet", - "description": "Connect JetBrains Fleet to a Coder workspace", + "description": "Connect JetBrains Fleet, a lightweight multi-language IDE, to a Coder workspace over SSH.", "path": "./user-guides/workspace-access/jetbrains/fleet.md" }, { "title": "JetBrains Gateway", - "description": "Use JetBrains Gateway to connect to Coder workspaces", + "description": "Use JetBrains Gateway to open and work in your Coder workspace from a full JetBrains IDE.", "path": "./user-guides/workspace-access/jetbrains/gateway.md" }, { "title": "JetBrains Toolbox", - "description": "Access Coder workspaces from JetBrains Toolbox", + "description": "Connect to and manage your Coder workspaces from the JetBrains Toolbox app.", "path": "./user-guides/workspace-access/jetbrains/toolbox.md", "state": ["beta"] } @@ -281,52 +281,52 @@ }, { "title": "Remote Desktop", - "description": "Use RDP in Coder", + "description": "Connect to a GUI-based desktop in your Coder workspace using RDP, including Windows workspaces.", "path": "./user-guides/workspace-access/remote-desktops.md" }, { "title": "Emacs TRAMP", - "description": "Use Emacs TRAMP in Coder", + "description": "Use Emacs TRAMP to edit files and run commands in your Coder workspace over SSH.", "path": "./user-guides/workspace-access/emacs-tramp.md" }, { "title": "Port Forwarding", - "description": "Access ports on your workspace", + "description": "Securely access ports and processes running inside your Coder workspace from your local machine.", "path": "./user-guides/workspace-access/port-forwarding.md" }, { "title": "Filebrowser", - "description": "Access your workspace files", + "description": "Upload, download, and manage files in your Coder workspace from the browser with File Browser.", "path": "./user-guides/workspace-access/filebrowser.md" }, { "title": "Web IDEs and Coder Apps", - "description": "Access your workspace with IDEs in the browser", + "description": "Access your Coder workspace through web-based IDEs that run in the browser, with no local install.", "path": "./user-guides/workspace-access/web-ides.md" }, { "title": "code-server", - "description": "Access your workspace with code-server", + "description": "Access your Coder workspace in the browser with code-server, the VS Code experience over the web.", "path": "./user-guides/workspace-access/code-server.md" }, { "title": "Zed", - "description": "Access your workspace with Zed", + "description": "Access your Coder workspace with the Zed collaborative code editor over SSH.", "path": "./user-guides/workspace-access/zed.md" }, { "title": "Cursor", - "description": "Access your workspace with Cursor", + "description": "Access your Coder workspace with Cursor, the AI-powered code editor, over SSH.", "path": "./user-guides/workspace-access/cursor.md" }, { "title": "Windsurf", - "description": "Access your workspace with Windsurf", + "description": "Access your Coder workspace with Windsurf, the AI-powered code editor, over SSH.", "path": "./user-guides/workspace-access/windsurf.md" }, { "title": "Antigravity", - "description": "Access your workspace with Antigravity", + "description": "Access your Coder workspace with the Antigravity agentic code editor over SSH.", "path": "./user-guides/workspace-access/antigravity.md" } ] @@ -339,26 +339,26 @@ "children": [ { "title": "Coder Desktop Connect and Sync", - "description": "Use Coder Desktop to manage your workspace code and files locally", + "description": "Use Coder Desktop to connect to workspaces and sync their code and files to your local machine.", "path": "./user-guides/desktop/desktop-connect-sync.md" } ] }, { "title": "Workspace Management", - "description": "Manage workspaces", + "description": "Create, start, stop, update, and delete your Coder workspaces from the dashboard or CLI.", "path": "./user-guides/workspace-management.md", "icon_path": "./images/icons/generic.svg" }, { "title": "Workspace Sharing", - "description": "Sharing workspaces", + "description": "Let multiple users securely connect to a single Coder workspace to program and debug together.", "path": "./user-guides/shared-workspaces.md", "icon_path": "./images/icons/generic.svg" }, { "title": "Workspace Scheduling", - "description": "Cost control with workspace schedules", + "description": "Control cloud costs by scheduling when your Coder workspaces automatically start and stop.", "path": "./user-guides/workspace-scheduling.md", "icon_path": "./images/icons/stopwatch.svg" }, @@ -376,7 +376,7 @@ "children": [ { "title": "Working with dev containers", - "description": "Access dev containers via SSH, your IDE, or web terminal.", + "description": "Access and work inside dev containers in your Coder workspace over SSH, your IDE, or the web terminal.", "path": "./user-guides/devcontainers/working-with-dev-containers.md" }, { @@ -393,7 +393,7 @@ }, { "title": "Dotfiles", - "description": "Personalize your environment with dotfiles", + "description": "Personalize your Coder workspaces by applying your dotfiles repository with the coder dotfiles command.", "path": "./user-guides/workspace-dotfiles.md", "icon_path": "./images/icons/art-pad.svg" }, @@ -408,48 +408,48 @@ }, { "title": "Administration", - "description": "Guides for template and deployment administrators", + "description": "Guides for the template and deployment administrators who configure, secure, and operate Coder.", "path": "./admin/index.md", "icon_path": "./images/icons/wrench.svg", "children": [ { "title": "Setup", - "description": "Configure user access to your control plane.", + "description": "Configure your Coder control plane with server settings and environment variables.", "path": "./admin/setup/index.md", "icon_path": "./images/icons/toggle_on.svg", "children": [ { "title": "Appearance", - "description": "Learn how to configure the appearance of Coder", + "description": "Customize your Coder deployment's appearance, including the logo, service banner, and application name.", "path": "./admin/setup/appearance.md", "state": ["premium"] }, { "title": "Telemetry", - "description": "Learn what usage telemetry Coder collects", + "description": "Learn what usage telemetry Coder collects, why it is collected, and how to opt out.", "path": "./admin/setup/telemetry.md" }, { "title": "Data Retention", - "description": "Configure data retention policies for database tables", + "description": "Configure retention policies that automatically purge old records from Coder database tables.", "path": "./admin/setup/data-retention.md" } ] }, { "title": "Infrastructure", - "description": "How to integrate Coder with your organization's compute", + "description": "Learn how to plan, provision, and manage the infrastructure that runs your Coder deployment.", "path": "./admin/infrastructure/index.md", "icon_path": "./images/icons/container.svg", "children": [ { "title": "Architecture", - "description": "Learn about Coder's architecture", + "description": "Learn about Coder's architecture and the components that make up a deployment.", "path": "./admin/infrastructure/architecture.md" }, { "title": "Validated Architectures", - "description": "Architectures for large Coder deployments", + "description": "Coder Validated Architectures with reference designs and best practices for large deployments.", "path": "./admin/infrastructure/validated-architectures/index.md", "children": [ { @@ -476,24 +476,24 @@ }, { "title": "Scale Testing", - "description": "Ensure your deployment can handle your organization's needs", + "description": "Plan and run scale tests to make sure your Coder deployment can handle your organization's load.", "path": "./admin/infrastructure/scale-testing.md" }, { "title": "Scaling Utilities", - "description": "Tools to help you scale your deployment", + "description": "Use Coder's built-in scale-testing utility to benchmark and load-test your deployment.", "path": "./admin/infrastructure/scale-utility.md" }, { "title": "Scaling best practices", - "description": "How to prepare a Coder deployment for scale", + "description": "Best practices for preparing and tuning a Coder deployment so it scales to many users.", "path": "./tutorials/best-practices/scale-coder.md" } ] }, { "title": "Users", - "description": "Learn how to manage and audit users", + "description": "Learn how to create, manage, and audit users and their access in your Coder deployment.", "path": "./admin/users/index.md", "icon_path": "./images/icons/users.svg", "children": [ @@ -504,17 +504,17 @@ "children": [ { "title": "Google", - "description": "Configure Google as an OIDC provider", + "description": "Configure Coder to authenticate users with Google using OpenID Connect (OIDC).", "path": "./admin/users/oidc-auth/google.md" }, { "title": "Microsoft", - "description": "Configure Microsoft Entra ID as an OIDC provider", + "description": "Configure Coder to authenticate users with Microsoft Entra ID using OpenID Connect (OIDC).", "path": "./admin/users/oidc-auth/microsoft.md" }, { "title": "Configure OIDC refresh tokens", - "description": "How to configure OIDC refresh tokens", + "description": "Configure OIDC refresh tokens so Coder can keep user sessions active beyond token expiration.", "path": "./admin/users/oidc-auth/refresh-tokens.md" } ] @@ -568,48 +568,48 @@ }, { "title": "Templates", - "description": "Learn how to author and maintain Coder templates", + "description": "Learn how to author, publish, and maintain the Coder templates that define your workspaces.", "path": "./admin/templates/index.md", "icon_path": "./images/icons/picture.svg", "children": [ { "title": "Creating Templates", - "description": "Learn how to create templates with Terraform", + "description": "Create a Coder template with Terraform to define the infrastructure for your workspaces.", "path": "./admin/templates/creating-templates.md" }, { "title": "Managing Templates", - "description": "Learn how to manage templates and best practices", + "description": "Learn how to edit, version, and manage Coder templates, along with recommended best practices.", "path": "./admin/templates/managing-templates/index.md", "children": [ { "title": "Image Management", - "description": "Learn about template image management", + "description": "Learn how to build and manage the container images that back your Coder templates.", "path": "./admin/templates/managing-templates/image-management.md" }, { "title": "Change Management", - "description": "Learn about template change management and versioning", + "description": "Manage Coder template changes with source control, versioning, and CI/CD publishing.", "path": "./admin/templates/managing-templates/change-management.md" }, { "title": "Envbuilder", - "description": "Shift environment definition to repositories", + "description": "Use Envbuilder to shift workspace environment definitions from templates into your Git repositories.", "path": "./admin/templates/managing-templates/envbuilder.md" }, { "title": "Template Dependencies", - "description": "Learn how to manage template dependencies", + "description": "Manage provider and module dependencies in your Coder templates to keep builds reproducible.", "path": "./admin/templates/managing-templates/dependencies.md" }, { "title": "Workspace Scheduling", - "description": "Learn how to control how workspaces are started and stopped", + "description": "Configure template settings that control how workspaces autostart, autostop, and stay available.", "path": "./admin/templates/managing-templates/schedule.md" }, { "title": "External Workspaces", - "description": "Learn how to manage external workspaces", + "description": "Connect externally managed servers and machines to Coder as external workspaces.", "path": "./admin/templates/managing-templates/external-workspaces.md", "state": ["premium", "early access"] } @@ -617,22 +617,22 @@ }, { "title": "Extending Templates", - "description": "Learn best practices in extending templates", + "description": "Use Coder-native features to extend your templates with parameters, metadata, IDEs, and more.", "path": "./admin/templates/extending-templates/index.md", "children": [ { "title": "Agent Metadata", - "description": "Retrieve real-time stats from the workspace agent", + "description": "Display real-time metrics from the workspace agent, such as CPU, memory, and disk usage.", "path": "./admin/templates/extending-templates/agent-metadata.md" }, { "title": "Build Parameters", - "description": "Use parameters to customize workspaces at build", + "description": "Use build parameters to prompt users and customize each workspace when it is created.", "path": "./admin/templates/extending-templates/parameters.md" }, { "title": "Dynamic Parameters", - "description": "Conditional, identity-aware parameter syntax for advanced users.", + "description": "Build conditional, identity-aware template forms with Coder's dynamic parameters.", "path": "./admin/templates/extending-templates/dynamic-parameters.md" }, { @@ -643,109 +643,109 @@ }, { "title": "Icons", - "description": "Customize your template with built-in icons", + "description": "Customize your Coder templates and resources with built-in or custom icons.", "path": "./admin/templates/extending-templates/icons.md" }, { "title": "Resource Metadata", - "description": "Display resource state in the workspace dashboard", + "description": "Expose key workspace resource information to your users in the Coder dashboard with metadata.", "path": "./admin/templates/extending-templates/resource-metadata.md" }, { "title": "Resource Monitoring", - "description": "Monitor resources in the workspace dashboard", + "description": "Monitor workspace resource usage and alert on thresholds from the Coder dashboard.", "path": "./admin/templates/extending-templates/resource-monitoring.md" }, { "title": "Resource Ordering", - "description": "Design the UI of workspaces", + "description": "Control the order that resources and parameters appear in the workspace creation UI.", "path": "./admin/templates/extending-templates/resource-ordering.md" }, { "title": "Resource Persistence", - "description": "Control resource persistence", + "description": "Control which workspace resources persist across restarts and which are recreated on each build.", "path": "./admin/templates/extending-templates/resource-persistence.md" }, { "title": "Environment Variables", - "description": "Inject environment variables into workspaces using coder_env", + "description": "Inject environment variables into Coder workspaces using the coder_env Terraform resource.", "path": "./admin/templates/extending-templates/environment-variables.md" }, { "title": "Terraform Variables", - "description": "Use variables to manage template state", + "description": "Use Terraform template-wide variables to parameterize and manage your Coder templates.", "path": "./admin/templates/extending-templates/variables.md" }, { "title": "Terraform Modules", - "description": "Reuse terraform code across templates", + "description": "Reuse Terraform code across your Coder templates with shared, versioned modules.", "path": "./admin/templates/extending-templates/modules.md" }, { "title": "Web IDEs and Coder Apps", - "description": "Add and configure Web IDEs in your templates as coder apps", + "description": "Add and configure web IDEs in your Coder templates as coder_app resources.", "path": "./admin/templates/extending-templates/web-ides.md" }, { "title": "Pre-install JetBrains IDEs", - "description": "Pre-install JetBrains IDEs in a template for faster IDE startup", + "description": "Pre-install JetBrains IDE backends in your template for faster first-time connections.", "path": "./admin/templates/extending-templates/jetbrains-preinstall.md" }, { "title": "JetBrains IDEs in Air-Gapped Deployments", - "description": "Configure JetBrains IDEs for air-gapped deployments", + "description": "Configure JetBrains IDEs to work in air-gapped Coder deployments without internet access.", "path": "./admin/templates/extending-templates/jetbrains-airgapped.md" }, { "title": "Docker in Workspaces", - "description": "Use Docker in your workspaces", + "description": "Run Docker inside container-based Coder workspaces using several supported approaches.", "path": "./admin/templates/extending-templates/docker-in-workspaces.md" }, { "title": "Workspace Tags", - "description": "Control provisioning using Workspace Tags and Parameters", + "description": "Route workspace builds to specific provisioners using workspace tags and parameters.", "path": "./admin/templates/extending-templates/workspace-tags.md" }, { "title": "Provider Authentication", - "description": "Authenticate with provider APIs to provision workspaces", + "description": "Authenticate the Coder server to cloud provider APIs so it can provision workspaces.", "path": "./admin/templates/extending-templates/provider-authentication.md" }, { "title": "Dev Containers", - "description": "Extend templates with containerized dev environments", + "description": "Extend your Coder templates with containerized dev container development environments.", "path": "./admin/templates/extending-templates/devcontainers.md" }, { "title": "Improving Agent Resiliency", - "description": "Manage agent child process CPU and OOM priority", + "description": "Improve workspace agent resiliency by tuning child process CPU and out-of-memory priority.", "path": "./admin/templates/extending-templates/process-priority.md" }, { "title": "Process Logging", - "description": "Log workspace processes", + "description": "Log all system-level process activity inside workspaces for security and auditing.", "path": "./admin/templates/extending-templates/process-logging.md", "state": ["premium"] }, { "title": "Startup Dependencies", - "description": "Coordinate workspace startup with dependency management", + "description": "Coordinate workspace startup scripts with dependency management so they run in the right order.", "path": "./admin/templates/startup-coordination/index.md", "state": ["early access"], "children": [ { "title": "Usage", - "description": "How to use startup coordination", + "description": "Declare units and dependencies with coder exp sync to coordinate your workspace startup scripts.", "path": "./admin/templates/startup-coordination/usage.md" }, { "title": "Troubleshooting", - "description": "Troubleshoot startup coordination", + "description": "Diagnose and resolve common problems with workspace startup coordination and coder exp sync.", "path": "./admin/templates/startup-coordination/troubleshooting.md" }, { "title": "Examples", - "description": "Examples of startup coordination", + "description": "A complete, production-ready example of coordinating workspace startup scripts with sync units.", "path": "./admin/templates/startup-coordination/example.md" } ] @@ -754,32 +754,32 @@ }, { "title": "Open in Coder", - "description": "Open workspaces in Coder", + "description": "Add an Open in Coder button to your repositories and wikis so users can create workspaces fast.", "path": "./admin/templates/open-in-coder.md" }, { "title": "Permissions \u0026 Policies", - "description": "Learn how to create templates with Terraform", + "description": "Control which users and groups can use, edit, and administer each Coder template.", "path": "./admin/templates/template-permissions.md", "state": ["premium"] }, { "title": "Troubleshooting Templates", - "description": "Learn how to troubleshoot template issues", + "description": "Troubleshoot common Coder template problems, from failed builds to misconfigured workspaces.", "path": "./admin/templates/troubleshooting.md" } ] }, { "title": "External Provisioners", - "description": "Learn how to run external provisioners with Coder", + "description": "Run external provisioner daemons to isolate builds and scale workspace provisioning.", "path": "./admin/provisioners/index.md", "icon_path": "./images/icons/key.svg", "state": ["premium"], "children": [ { "title": "Manage Provisioner Jobs", - "description": "Learn how to run external provisioners with Coder", + "description": "Monitor and manage provisioner jobs for workspace builds, including canceling stuck jobs.", "path": "./admin/provisioners/manage-provisioner-jobs.md", "state": ["premium"] } @@ -787,89 +787,89 @@ }, { "title": "External Authentication", - "description": "Learn how to configure external authentication", + "description": "Configure external authentication so workspaces can access Git providers and other OAuth services.", "path": "./admin/external-auth/index.md", "icon_path": "./images/icons/plug.svg" }, { "title": "Integrations", - "description": "Use integrations to extend Coder", + "description": "Extend Coder with integrations for observability, secrets, source control, and other platforms.", "path": "./admin/integrations/index.md", "icon_path": "./images/icons/puzzle.svg", "children": [ { "title": "Prometheus", - "description": "Collect deployment metrics with Prometheus", + "description": "Collect and export Coder deployment metrics to a Prometheus server for monitoring.", "path": "./admin/integrations/prometheus.md" }, { "title": "Kubernetes Logging", - "description": "Stream K8s event logs on workspace startup", + "description": "Stream Kubernetes event logs into workspace startup logs to debug pod scheduling issues.", "path": "./admin/integrations/kubernetes-logs.md" }, { "title": "Additional Kubernetes Clusters", - "description": "Deploy workspaces on additional Kubernetes clusters", + "description": "Deploy Coder workspaces across additional Kubernetes clusters beyond the control plane cluster.", "path": "./admin/integrations/multiple-kube-clusters.md" }, { "title": "JFrog Artifactory", - "description": "Integrate Coder with JFrog Artifactory", + "description": "Integrate Coder with JFrog Artifactory to secure workspaces and manage packages and tokens.", "path": "./admin/integrations/jfrog-artifactory.md" }, { "title": "Island Secure Browser", - "description": "Integrate Coder with Island's Secure Browser", + "description": "Integrate Coder with the Island Enterprise Browser for secure, policy-controlled workspace access.", "path": "./admin/integrations/island.md" }, { "title": "DX PlatformX", - "description": "Integrate Coder with DX PlatformX", + "description": "Forward Coder notifications to DX PlatformX to measure and improve developer experience.", "path": "./admin/integrations/platformx.md" }, { "title": "DX Data Cloud", - "description": "Tag Coder Users with DX Data Cloud", + "description": "Tag and sync Coder users with DX Data Cloud to measure developer productivity.", "path": "./admin/integrations/dx-data-cloud.md" }, { "title": "HashiCorp Vault", - "description": "Integrate Coder with HashiCorp Vault", + "description": "Integrate Coder with HashiCorp Vault to inject secrets securely into your workspaces.", "path": "./admin/integrations/vault.md" }, { "title": "OAuth2 Provider", - "description": "Use Coder as an OAuth2 provider", + "description": "Use Coder as an OAuth2 authorization server so third-party apps can authenticate users.", "path": "./admin/integrations/oauth2-provider.md" }, { "title": "Dev Containers", - "description": "Configure dev container support using Docker or Envbuilder", + "description": "Configure dev container support in your templates using either Docker or Envbuilder.", "path": "./admin/integrations/devcontainers/index.md", "children": [ { "title": "Dev Containers Integration", - "description": "Configure native dev containers with Docker", + "description": "Configure a Coder template for native dev containers backed by Docker.", "path": "./admin/integrations/devcontainers/integration.md" }, { "title": "Envbuilder", - "description": "Build dev containers without Docker", + "description": "Use Envbuilder to build dev containers from a repository without requiring Docker.", "path": "./admin/integrations/devcontainers/envbuilder/index.md", "children": [ { "title": "Add an Envbuilder template", - "description": "How to add an Envbuilder template", + "description": "Add an Envbuilder-compatible template so users can build dev containers from a repository.", "path": "./admin/integrations/devcontainers/envbuilder/add-envbuilder.md" }, { "title": "Security and caching", - "description": "Configure authentication and caching", + "description": "Configure Envbuilder registry authentication and layer caching for faster, secure builds.", "path": "./admin/integrations/devcontainers/envbuilder/envbuilder-security-caching.md" }, { "title": "Releases and known issues", - "description": "Release channels and known issues", + "description": "Learn about Envbuilder's release channels and current known issues before you deploy it.", "path": "./admin/integrations/devcontainers/envbuilder/envbuilder-releases-known-issues.md" } ] @@ -880,84 +880,84 @@ }, { "title": "Networking", - "description": "Understand Coder's networking layer", + "description": "Understand Coder's networking model, including how workspaces, servers, and clients connect.", "path": "./admin/networking/index.md", "icon_path": "./images/icons/networking.svg", "children": [ { "title": "Port Forwarding", - "description": "Learn how to forward ports in Coder", + "description": "Learn how port forwarding works in Coder and how to expose workspace ports to users.", "path": "./admin/networking/port-forwarding.md" }, { "title": "STUN and NAT", - "description": "Learn how to forward ports in Coder", + "description": "Learn how Coder uses STUN and NAT traversal to establish direct peer-to-peer workspace connections.", "path": "./admin/networking/stun.md" }, { "title": "Workspace Proxies", - "description": "Run geo distributed workspace proxies", + "description": "Run geo-distributed workspace proxies to give distributed teams low-latency workspace access.", "path": "./admin/networking/workspace-proxies.md", "state": ["premium"] }, { "title": "High Availability", - "description": "Learn how to configure Coder for High Availability", + "description": "Configure Coder in high availability (HA) mode for horizontal scalability and failover.", "path": "./admin/networking/high-availability.md", "state": ["premium"] }, { "title": "Wildcard Access URL", - "description": "Learn about wildcard access URL in Coder deployments", + "description": "Configure a wildcard access URL to enable port forwarding, web IDEs, and app previews.", "path": "./admin/networking/wildcard-access-url.md" }, { "title": "Troubleshooting", - "description": "Troubleshoot networking issues in Coder", + "description": "Diagnose and resolve Coder networking issues using coder ping and other built-in tools.", "path": "./admin/networking/troubleshooting.md" } ] }, { "title": "Monitoring", - "description": "Configure security policy and audit your deployment", + "description": "Monitor your Coder deployment with logs, metrics, health checks, and alerting best practices.", "path": "./admin/monitoring/index.md", "icon_path": "./images/icons/speed.svg", "children": [ { "title": "Logs", - "description": "Learn about Coder's logs", + "description": "Learn how Coder services write logs to standard output and how to collect them.", "path": "./admin/monitoring/logs.md" }, { "title": "Metrics", - "description": "Learn about Coder's logs", + "description": "Learn about the deployment metrics Coder exposes and how to use them to monitor health.", "path": "./admin/monitoring/metrics.md" }, { "title": "Health Check", - "description": "Learn about Coder's automated health checks", + "description": "Use Coder's deployment health page to monitor your control plane and its dependencies.", "path": "./admin/monitoring/health-check.md" }, { "title": "Connection Logs", - "description": "Monitor connections to workspaces", + "description": "Monitor SSH, app, and agent connections to your workspaces with the connection log.", "path": "./admin/monitoring/connection-logs.md", "state": ["premium"] }, { "title": "Notifications", - "description": "Configure notifications for your deployment", + "description": "Configure how Coder sends notifications for deployment events over email and webhooks.", "path": "./admin/monitoring/notifications/index.md", "children": [ { "title": "Slack Notifications", - "description": "Learn how to setup Slack notifications", + "description": "Set up a Slack integration to deliver Coder notifications to your channels.", "path": "./admin/monitoring/notifications/slack.md" }, { "title": "Microsoft Teams Notifications", - "description": "Learn how to setup Microsoft Teams notifications", + "description": "Set up a Microsoft Teams integration to deliver Coder notifications to your channels.", "path": "./admin/monitoring/notifications/teams.md" } ] @@ -966,24 +966,24 @@ }, { "title": "Security", - "description": "Configure security policy and audit your deployment", + "description": "Secure your Coder deployment with audit logs, secrets management, and database encryption.", "path": "./admin/security/index.md", "icon_path": "./images/icons/lock.svg", "children": [ { "title": "Audit Logs", - "description": "Audit actions taken inside Coder", + "description": "Track user and administrator actions across your Coder deployment with audit logs.", "path": "./admin/security/audit-logs.md", "state": ["premium"] }, { "title": "Secrets", - "description": "Use sensitive variables in your workspaces", + "description": "Learn the recommended ways to get secrets into your Coder workspaces securely.", "path": "./admin/security/secrets.md" }, { "title": "Database Encryption", - "description": "Encrypt the database to prevent unauthorized access", + "description": "Encrypt sensitive values in the Coder database to protect tokens and secrets at rest.", "path": "./admin/security/database-encryption.md", "state": ["premium"] } @@ -991,7 +991,7 @@ }, { "title": "Licensing", - "description": "Configure licensing for your deployment", + "description": "Add and manage Coder licenses to unlock Premium and AI Governance Add-On features.", "path": "./admin/licensing/index.md", "icon_path": "./images/icons/licensing.svg" } @@ -999,23 +999,23 @@ }, { "title": "Run AI Coding Agents in Coder", - "description": "Learn how to run and integrate agentic AI coding agents like GPT-Code, OpenDevin, or SWE-Agent in Coder workspaces to boost developer productivity.", + "description": "Run and manage AI coding agents like Claude Code and Aider in Coder workspaces, alongside your existing development environments.", "path": "./ai-coder/index.md", "icon_path": "./images/icons/wand.svg", "children": [ { "title": "Best Practices", - "description": "Best Practices running Coding Agents", + "description": "Cultural and technical best practices for introducing AI coding agents into your organization.", "path": "./ai-coder/best-practices.md" }, { "title": "In the IDE", - "description": "Run IDE agents with Coder", + "description": "Run in-IDE AI coding assistants and agents while backing their compute with Coder workspaces.", "path": "./ai-coder/ide-agents.md" }, { "title": "Coder Agents", - "description": "Self-hosted agent by Coder", + "description": "Delegate development work to coding agents in your deployment with Coder Agents, a chat interface and API.", "path": "./ai-coder/agents/index.md", "state": ["beta"], "children": [ @@ -1027,25 +1027,25 @@ }, { "title": "Search Syntax", - "description": "Filter conversations by title, status, and linked pull requests", + "description": "Filter Coder Agents conversations by title, status, and linked pull requests with search syntax.", "path": "./ai-coder/agents/chat-search-syntax.md", "state": ["beta"] }, { "title": "Architecture", - "description": "How the agent in the control plane communicates with workspaces", + "description": "Learn how the Coder Agents control-plane agent communicates with your workspaces.", "path": "./ai-coder/agents/architecture.md", "state": ["beta"] }, { "title": "Chat Sharing", - "description": "Share Coder Agents conversations with users and groups", + "description": "Give other users and groups read-only access to a Coder Agents conversation with chat sharing.", "path": "./ai-coder/agents/chat-sharing.md", "state": ["beta"] }, { "title": "Models", - "description": "Configure LLM providers and models for Coder Agents", + "description": "Configure the LLM providers and models that power Coder Agents from Admin settings.", "path": "./ai-coder/agents/models.md", "state": ["beta"] }, @@ -1057,7 +1057,7 @@ }, { "title": "Platform Controls", - "description": "How platform teams control agent behavior, models, and policies", + "description": "Learn how platform teams control Coder Agents behavior, models, spend, and policies.", "path": "./ai-coder/agents/platform-controls/index.md", "state": ["beta"], "children": [ @@ -1075,49 +1075,49 @@ }, { "title": "Spend Management", - "description": "Spend limits and cost tracking for Coder Agents", + "description": "Set spend limits and track AI costs for Coder Agents with admin-only controls.", "path": "./ai-coder/agents/platform-controls/usage-insights.md", "state": ["beta"] }, { "title": "Git Providers", - "description": "Git provider configuration for the in-chat diff viewer", + "description": "Configure Git providers so Coder Agents can show pull request diffs in the in-chat viewer.", "path": "./ai-coder/agents/platform-controls/git-providers.md", "state": ["beta"] }, { "title": "Data Retention", - "description": "Automatic cleanup of old conversation data", + "description": "Configure automatic cleanup of old Coder Agents conversation data to manage database size.", "path": "./ai-coder/agents/platform-controls/chat-retention.md", "state": ["beta"] }, { "title": "Debug Data Retention", - "description": "Automatic cleanup of old chat debug data", + "description": "Configure automatic cleanup of old Coder Agents chat debug data to manage database size.", "path": "./ai-coder/agents/platform-controls/chat-debug-retention.md", "state": ["beta"] }, { "title": "Auto-Archive", - "description": "Automatic archiving of inactive conversations", + "description": "Automatically archive long-inactive Coder Agents conversations to keep chat lists tidy.", "path": "./ai-coder/agents/platform-controls/chat-auto-archive.md", "state": ["beta"] }, { "title": "Advisor", - "description": "Strategic guidance for root agent chats", + "description": "Provide strategic, high-level guidance to root Coder Agents chats with the Advisor.", "path": "./ai-coder/agents/platform-controls/advisor.md", "state": ["early access"] }, { "title": "Virtual desktop", - "description": "Allow agents to use a graphical desktop within workspaces", + "description": "Give Coder Agents a graphical virtual desktop inside workspaces for GUI-based tasks.", "path": "./ai-coder/agents/platform-controls/virtual-desktop.md", "state": ["early access"] }, { "title": "Chat debug logging", - "description": "Record detailed traces of chat turns for troubleshooting", + "description": "Record detailed traces of each Coder Agents chat turn to troubleshoot agent behavior.", "path": "./ai-coder/agents/platform-controls/chat-debug-logging.md", "state": ["early access"] } @@ -1125,13 +1125,13 @@ }, { "title": "Extending Agents", - "description": "Add custom skills and MCP tools to agent workspaces", + "description": "Extend Coder Agents with custom skills and MCP tools defined in your workspace templates.", "path": "./ai-coder/agents/extending-agents.md", "state": ["beta"] }, { "title": "Tasks to Chats API Migration", - "description": "Guide for migrating from the Tasks API to the Chats API", + "description": "Migrate your integrations from the Coder Tasks API to the newer Coder Agents Chats API.", "path": "./ai-coder/agents/tasks-to-chats-migration.md", "state": ["beta"] } @@ -1139,143 +1139,143 @@ }, { "title": "AI Governance Add-On", - "description": "Features around managing agents at scale", + "description": "Govern AI usage at scale with the AI Governance Add-On: Agent Firewall, AI Gateway, and reporting.", "path": "./ai-coder/ai-governance.md", "state": ["ai governance add-on"], "children": [ { "title": "Agent Firewall", - "description": "Understanding Agent Firewall in Coder Tasks", + "description": "Restrict and audit the network access of AI agents with Agent Firewall, a process-level firewall.", "path": "./ai-coder/agent-firewall/index.md", "state": ["ai governance add-on"], "children": [ { "title": "NS Jail", - "description": "Documentation for Namespace Jail", + "description": "Learn how Agent Firewall's default nsjail jail type isolates agents using Linux namespaces.", "path": "./ai-coder/agent-firewall/nsjail/index.md", "children": [ { "title": "NS Jail on Docker", - "description": "Runtime and permission requirements for running NS Jail on Docker", + "description": "Runtime and permission requirements for running Agent Firewall's nsjail jail type on Docker.", "path": "./ai-coder/agent-firewall/nsjail/docker.md" }, { "title": "NS Jail on Kubernetes", - "description": "Runtime and permission requirements for running NS Jail on Kubernetes", + "description": "Runtime and permission requirements for running Agent Firewall's nsjail jail type on Kubernetes.", "path": "./ai-coder/agent-firewall/nsjail/k8s.md" }, { "title": "NS Jail on ECS", - "description": "Runtime and permission requirements for running NS Jail on ECS", + "description": "Runtime and permission requirements for running Agent Firewall's nsjail jail type on AWS ECS.", "path": "./ai-coder/agent-firewall/nsjail/ecs.md" } ] }, { "title": "LandJail", - "description": "Documentation for LandJail", + "description": "Learn how Agent Firewall's landjail jail type isolates agents using Landlock v4.", "path": "./ai-coder/agent-firewall/landjail.md" }, { "title": "Rules Engine", - "description": "Documentation for the Agent Firewall rules engine", + "description": "Learn how the Agent Firewall rules engine filters agent network requests with configurable rules.", "path": "./ai-coder/agent-firewall/rules-engine.md" }, { "title": "Version Compatibility", - "description": "Version requirements and compatibility information", + "description": "Check the Coder and Claude Code module version requirements for running Agent Firewall.", "path": "./ai-coder/agent-firewall/version.md" } ] }, { "title": "AI Gateway", - "description": "AI Gateway for Enterprise Governance \u0026 Observability", + "description": "Govern and observe AI coding traffic with AI Gateway, an LLM proxy built into the Coder control plane.", "path": "./ai-coder/ai-gateway/index.md", "icon_path": "./images/icons/api.svg", "state": ["ai governance add-on"], "children": [ { "title": "Setup", - "description": "How to set up and configure AI Gateway", + "description": "Enable and configure AI Gateway inside the Coder control plane, with no extra compute to deploy.", "path": "./ai-coder/ai-gateway/setup.md", "state": ["ai governance add-on"] }, { "title": "Authentication", - "description": "Learn how to authenticate against AI Gateway", + "description": "Authenticate AI coding tools against AI Gateway using your Coder API token.", "path": "./ai-coder/ai-gateway/auth.md", "state": ["ai governance add-on"] }, { "title": "Client Configuration", - "description": "How to configure your AI coding tools to use AI Gateway", + "description": "Configure your AI coding tools to route their model requests through AI Gateway.", "path": "./ai-coder/ai-gateway/clients/index.md", "state": ["ai governance add-on"], "children": [ { "title": "Claude Code", - "description": "Configure Claude Code to use AI Gateway", + "description": "Configure Claude Code to route requests through AI Gateway using environment variables.", "path": "./ai-coder/ai-gateway/clients/claude-code.md", "state": ["ai governance add-on"] }, { "title": "Codex", - "description": "Configure Codex to use AI Gateway", + "description": "Configure the Codex CLI to route requests through AI Gateway with a custom model provider.", "path": "./ai-coder/ai-gateway/clients/codex.md", "state": ["ai governance add-on"] }, { "title": "Mux", - "description": "Configure Mux to use AI Gateway", + "description": "Configure Mux, the parallel coding agent tool, to route requests through AI Gateway.", "path": "./ai-coder/ai-gateway/clients/mux.md", "state": ["ai governance add-on"] }, { "title": "OpenCode", - "description": "Configure OpenCode to use AI Gateway", + "description": "Configure OpenCode to route its OpenAI and Anthropic requests through AI Gateway.", "path": "./ai-coder/ai-gateway/clients/opencode.md", "state": ["ai governance add-on"] }, { "title": "Factory", - "description": "Configure Factory to use AI Gateway", + "description": "Configure Factory's Droid agent to route its model requests through AI Gateway.", "path": "./ai-coder/ai-gateway/clients/factory.md", "state": ["ai governance add-on"] }, { "title": "Cline", - "description": "Configure Cline to use AI Gateway", + "description": "Configure Cline to route its OpenAI and Anthropic requests through AI Gateway.", "path": "./ai-coder/ai-gateway/clients/cline.md", "state": ["ai governance add-on"] }, { "title": "Kilo Code", - "description": "Configure Kilo Code to use AI Gateway", + "description": "Configure Kilo Code to route its model requests through AI Gateway from the UI.", "path": "./ai-coder/ai-gateway/clients/kilo-code.md", "state": ["ai governance add-on"] }, { "title": "VS Code", - "description": "Configure VS Code to use AI Gateway", + "description": "Configure VS Code to route its AI model requests through Coder's AI Gateway.", "path": "./ai-coder/ai-gateway/clients/vscode.md", "state": ["ai governance add-on"] }, { "title": "JetBrains", - "description": "Configure JetBrains IDEs to use AI Gateway", + "description": "Configure JetBrains AI Assistant to route model requests through AI Gateway.", "path": "./ai-coder/ai-gateway/clients/jetbrains.md", "state": ["ai governance add-on"] }, { "title": "Zed", - "description": "Configure Zed to use AI Gateway", + "description": "Configure the Zed editor's language models to route requests through AI Gateway.", "path": "./ai-coder/ai-gateway/clients/zed.md", "state": ["ai governance add-on"] }, { "title": "GitHub Copilot", - "description": "Configure GitHub Copilot to use AI Gateway via AI Gateway Proxy", + "description": "Route GitHub Copilot model requests through AI Gateway using the AI Gateway Proxy.", "path": "./ai-coder/ai-gateway/clients/copilot.md", "state": ["ai governance add-on"] } @@ -1283,18 +1283,18 @@ }, { "title": "MCP Tools Injection", - "description": "How to configure MCP servers for tools injection through AI Gateway", + "description": "Connect MCP servers to AI Gateway to inject tools and centrally manage what users can call.", "path": "./ai-coder/ai-gateway/mcp.md" }, { "title": "AI Gateway Proxy", - "description": "Proxy for AI coding tools without base URL override support", + "description": "Use AI Gateway Proxy to route AI tools that don't support base URL overrides through AI Gateway.", "path": "./ai-coder/ai-gateway/ai-gateway-proxy/index.md", "state": ["ai governance add-on"], "children": [ { "title": "Setup", - "description": "How to set up and configure AI Gateway Proxy", + "description": "Enable and configure AI Gateway Proxy inside the Coder control plane, with no extra compute.", "path": "./ai-coder/ai-gateway/ai-gateway-proxy/setup.md", "state": ["ai governance add-on"] } @@ -1302,31 +1302,31 @@ }, { "title": "Provider Configuration", - "description": "How AI Gateway stores, seeds, and reloads provider configuration", + "description": "Learn how AI Gateway stores, seeds, and reloads LLM provider configuration for your deployment.", "path": "./ai-coder/ai-gateway/providers.md", "state": ["ai governance add-on"] }, { "title": "Auditing AI Sessions", - "description": "How to audit AI sessions", + "description": "Audit AI coding sessions and threads captured by AI Gateway for governance and review.", "path": "./ai-coder/ai-gateway/audit.md", "state": ["ai governance add-on"] }, { "title": "Monitoring", - "description": "How to monitor AI Gateway", + "description": "Monitor AI Gateway activity, including prompts, token usage, and tool calls per request.", "path": "./ai-coder/ai-gateway/monitoring.md", "state": ["ai governance add-on"] }, { "title": "Reference", - "description": "Technical reference for AI Gateway", + "description": "Technical reference for AI Gateway, including the aibridged component that runs inside coderd.", "path": "./ai-coder/ai-gateway/reference.md", "state": ["ai governance add-on"] }, { "title": "Rebranding Migration", - "description": "Migrate from AI Bridge names to AI Gateway", + "description": "Update configuration and references after the AI Bridge rename to AI Gateway.", "path": "./ai-coder/ai-gateway/rebranding-migration.md", "state": ["ai governance add-on"] } @@ -1334,7 +1334,7 @@ }, { "title": "Usage Data Reporting", - "description": "Configure AI usage data reporting", + "description": "Learn what AI usage data the AI Governance Add-On reports to Coder for billing and reporting.", "path": "./ai-coder/usage-data-reporting.md", "state": ["ai governance add-on"] } @@ -1342,38 +1342,38 @@ }, { "title": "MCP Server", - "description": "Connect AI coding agents to Coder using the MCP server", + "description": "Connect external AI coding agents to Coder using its built-in Model Context Protocol server.", "path": "./ai-coder/mcp-server.md", "state": ["beta"] }, { "title": "Coder Tasks", - "description": "Run Coding Agents on your Own Infrastructure", + "description": "Run and manage coding agents like Claude Code and Aider on your own infrastructure with Coder Tasks.", "path": "./ai-coder/tasks.md", "children": [ { "title": "Understanding Coder Tasks", - "description": "Core principles and concepts behind Coder Tasks", + "description": "Understand the core principles and concepts behind Coder Tasks for managing coding agents.", "path": "./ai-coder/tasks-core-principles.md" }, { "title": "Custom Agents", - "description": "Run custom agents with Coder Tasks", + "description": "Run custom coding agents beyond the Coder Registry defaults with Coder Tasks.", "path": "./ai-coder/custom-agents.md" }, { "title": "Task Lifecycle", - "description": "How tasks pause and resume, and what gets preserved", + "description": "Learn how Coder Tasks pause when idle and resume on interaction, and what state is preserved.", "path": "./ai-coder/tasks-lifecycle.md" }, { "title": "Agent Compatibility", - "description": "Which AI agents support session persistence across workspace restarts", + "description": "See which AI coding agents support session persistence across workspace restarts in Coder Tasks.", "path": "./ai-coder/agent-compatibility.md" }, { "title": "Tasks Migration Guide", - "description": "Changes to Coder Tasks made in v2.28", + "description": "Migrate your task templates for the Coder Tasks changes introduced in version 2.28.0.", "path": "./ai-coder/tasks-migration.md" }, { @@ -1383,12 +1383,12 @@ }, { "title": "Create a GitHub to Coder Tasks Workflow", - "description": "How to setup Coder Tasks to run in GitHub", + "description": "Build a workflow that triggers Coder Tasks from GitHub issues and pull requests.", "path": "./ai-coder/github-to-tasks.md" }, { "title": "Tasks to Chats API Migration", - "description": "Guide for migrating from the Tasks API to the Chats API", + "description": "Migrate your integrations from the Coder Tasks API to the newer Coder Agents Chats API.", "path": "./ai-coder/agents/tasks-to-chats-migration.md", "state": ["beta"] } @@ -1398,33 +1398,33 @@ }, { "title": "Tutorials", - "description": "Coder knowledgebase for administrating your deployment", + "description": "Step-by-step, employee-written guides and tutorials for deploying and administering Coder.", "path": "./tutorials/index.md", "icon_path": "./images/icons/generic.svg", "children": [ { "title": "Quickstart", - "description": "Learn how to install and run Coder quickly", + "description": "Install Coder, build your first template, and launch your first workspace in this quickstart guide.", "path": "./get-started/index.md" }, { "title": "Write a Template from Scratch", - "description": "Learn how to author Coder templates", + "description": "Learn how to write a Coder template from scratch with Terraform, step by step.", "path": "./tutorials/template-from-scratch.md" }, { "title": "Using an External Database", - "description": "Use Coder with an external database", + "description": "Configure Coder to use an external PostgreSQL database for production deployments.", "path": "./tutorials/external-database.md" }, { "title": "Image Management", - "description": "Learn about image management with Coder", + "description": "Learn how to build and manage the container images that back your Coder templates.", "path": "./admin/templates/managing-templates/image-management.md" }, { "title": "Configuring Okta", - "description": "Custom claims/scopes with Okta for group/role sync", + "description": "Configure custom Okta claims and scopes to drive Coder group and role sync.", "path": "./tutorials/configuring-okta.md" }, { @@ -1435,12 +1435,12 @@ }, { "title": "Google to AWS Federation", - "description": "Federating a Google Cloud service account to AWS", + "description": "Federate a Google Cloud service account to AWS so Coder can authenticate across clouds.", "path": "./tutorials/gcp-to-aws.md" }, { "title": "JFrog Artifactory Integration", - "description": "Integrate Coder with JFrog Artifactory", + "description": "Integrate Coder with JFrog Artifactory to secure workspaces and manage packages and tokens.", "path": "./admin/integrations/jfrog-artifactory.md" }, { @@ -1450,97 +1450,97 @@ }, { "title": "Istio Integration", - "description": "Integrate Coder with Istio", + "description": "Use the Istio service mesh to secure and control your Coder workspace traffic.", "path": "./admin/integrations/istio.md" }, { "title": "Island Secure Browser Integration", - "description": "Integrate Coder with Island's Secure Browser", + "description": "Integrate Coder with the Island Enterprise Browser for secure, policy-controlled workspace access.", "path": "./admin/integrations/island.md" }, { "title": "Template ImagePullSecrets", - "description": "Creating ImagePullSecrets for private registries", + "description": "Create Kubernetes ImagePullSecrets so Coder workspaces can pull images from private registries.", "path": "./tutorials/image-pull-secret.md" }, { "title": "Postgres SSL", - "description": "Configure Coder to connect to Postgres over SSL", + "description": "Configure Coder to connect to a PostgreSQL database over an encrypted SSL connection.", "path": "./tutorials/postgres-ssl.md" }, { "title": "Azure Federation", - "description": "Federating Coder to Azure", + "description": "Federate Coder's control plane to Azure so it can authenticate to Azure services.", "path": "./tutorials/azure-federation.md" }, { "title": "Deploy Coder on Azure with an Application Gateway", - "description": "Deploy Coder on Azure with an Application Gateway", + "description": "Deploy Coder on Azure Kubernetes Service behind an Azure Application Gateway ingress controller.", "path": "./install/kubernetes/kubernetes-azure-app-gateway.md" }, { "title": "Cloning Git Repositories", - "description": "Learn how to clone Git repositories in Coder", + "description": "Learn how to automatically clone Git repositories into your Coder workspaces on startup.", "path": "./tutorials/cloning-git-repositories.md" }, { "title": "Test Templates Through CI/CD", - "description": "Learn how to test and publish Coder templates in a CI/CD pipeline", + "description": "Test and publish your Coder templates automatically through a CI/CD pipeline.", "path": "./tutorials/testing-templates.md" }, { "title": "Use Apache as a Reverse Proxy", - "description": "Learn how to use Apache as a reverse proxy", + "description": "Configure Apache as a reverse proxy for Coder, with TLS certificates from Let's Encrypt.", "path": "./tutorials/reverse-proxy-apache.md" }, { "title": "Use Caddy as a Reverse Proxy", - "description": "Learn how to use Caddy as a reverse proxy", + "description": "Configure Caddy as a reverse proxy for Coder, with automatic HTTPS certificates.", "path": "./tutorials/reverse-proxy-caddy.md" }, { "title": "Use NGINX as a Reverse Proxy", - "description": "Learn how to use NGINX as a reverse proxy", + "description": "Configure NGINX as a reverse proxy for Coder, with TLS certificates from Let's Encrypt.", "path": "./tutorials/reverse-proxy-nginx.md" }, { "title": "Pre-install JetBrains IDEs in Workspaces", - "description": "Pre-install JetBrains IDEs in workspaces", + "description": "Pre-install JetBrains IDE backends in your template for faster first-time connections.", "path": "./admin/templates/extending-templates/jetbrains-preinstall.md" }, { "title": "Use JetBrains IDEs in Air-Gapped Deployments", - "description": "Configure JetBrains IDEs for air-gapped deployments", + "description": "Configure JetBrains IDEs to work in air-gapped Coder deployments without internet access.", "path": "./admin/templates/extending-templates/jetbrains-airgapped.md" }, { "title": "FAQs", - "description": "Miscellaneous FAQs from our community", + "description": "Answers to frequently asked questions about Coder OSS and licensed deployments.", "path": "./tutorials/faqs.md" }, { "title": "Best practices", - "description": "Guides to help you make the most of your Coder experience", + "description": "Best-practice guides to help you get the most out of your Coder deployment.", "path": "./tutorials/best-practices/index.md", "children": [ { "title": "Organizations - best practices", - "description": "How to make the best use of Coder Organizations", + "description": "Best practices for structuring and using Coder organizations effectively.", "path": "./tutorials/best-practices/organizations.md" }, { "title": "Scale Coder", - "description": "How to prepare a Coder deployment for scale", + "description": "Best practices for preparing and tuning a Coder deployment so it scales to many users.", "path": "./tutorials/best-practices/scale-coder.md" }, { "title": "Security - best practices", - "description": "Make your Coder deployment more secure", + "description": "Follow security best practices to harden your Coder deployment against common risks.", "path": "./tutorials/best-practices/security-best-practices.md" }, { "title": "Speed up your workspaces", - "description": "Speed up your Coder templates and workspaces", + "description": "Speed up Coder template builds and workspace startup with practical optimizations.", "path": "./tutorials/best-practices/speed-up-templates.md" } ] @@ -1549,13 +1549,13 @@ }, { "title": "Reference", - "description": "Reference", + "description": "Reference for automating Coder through the REST API, command-line interface, and Agent API.", "path": "./reference/index.md", "icon_path": "./images/icons/notes.svg", "children": [ { "title": "REST API", - "description": "Learn how to use Coderd API", + "description": "Reference for the Coder REST API, including endpoints, authentication, and schemas.", "path": "./reference/api/index.md", "icon_path": "./images/icons/api.svg", "children": [ @@ -1686,7 +1686,7 @@ }, { "title": "Command Line", - "description": "Learn how to use Coder CLI", + "description": "Reference for the Coder command-line interface, with usage and flags for every command.", "path": "./reference/cli/index.md", "icon_path": "./images/icons/terminal.svg", "children": [ @@ -2487,7 +2487,7 @@ }, { "title": "Agent API", - "description": "Learn how to use Coder Agent API", + "description": "Reference for the Coder Agent API used by workspace agents to communicate with the server.", "path": "./reference/agent-api/index.md", "icon_path": "./images/icons/api.svg", "children": [ From 2baea6663dcc98a99795fecd005404311305e405 Mon Sep 17 00:00:00 2001 From: Nick Vigilante Date: Wed, 15 Jul 2026 16:44:23 +0000 Subject: [PATCH 2/3] docs: regenerate feature-stages.md beta table from manifest The beta-features table in feature-stages.md is generated from the beta page descriptions in docs/manifest.json by scripts/release/docs_update_feature_stages.sh. Regenerate it so `make gen` is clean after the manifest description edits. Updates the descriptions for MCP Server, JetBrains Toolbox, and Coder Agents; the User secrets row is unchanged. --- docs/install/releases/feature-stages.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/install/releases/feature-stages.md b/docs/install/releases/feature-stages.md index f4f46f7ea5b..74406f03055 100644 --- a/docs/install/releases/feature-stages.md +++ b/docs/install/releases/feature-stages.md @@ -104,12 +104,12 @@ available in the documentation. -| Feature | Description | -|------------------------------------------------------------------------------|----------------------------------------------------------------------------| -| [MCP Server](../../ai-coder/mcp-server.md) | Connect AI coding agents to Coder using the MCP server | -| [JetBrains Toolbox](../../user-guides/workspace-access/jetbrains/toolbox.md) | Access Coder workspaces from JetBrains Toolbox | -| [User secrets](../../user-guides/user-secrets.md) | Store secret values in Coder and automatically inject them into workspaces | -| [Coder Agents](../../ai-coder/agents/index.md) | Self-hosted agent by Coder | +| Feature | Description | +|------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------| +| [MCP Server](../../ai-coder/mcp-server.md) | Connect external AI coding agents to Coder using its built-in Model Context Protocol server. | +| [JetBrains Toolbox](../../user-guides/workspace-access/jetbrains/toolbox.md) | Connect to and manage your Coder workspaces from the JetBrains Toolbox app. | +| [User secrets](../../user-guides/user-secrets.md) | Store secret values in Coder and automatically inject them into workspaces | +| [Coder Agents](../../ai-coder/agents/index.md) | Delegate development work to coding agents in your deployment with Coder Agents, a chat interface and API. | ## General Availability (GA) From fa9d7520bdfcc5e4835482085d84a43b9b7da908 Mon Sep 17 00:00:00 2001 From: Nick Vigilante Date: Thu, 23 Jul 2026 21:09:29 +0000 Subject: [PATCH 3/3] docs: reword extending-templates description, use Codex over Aider Address review feedback on the manifest descriptions: - "Extending Templates" described its features as "Coder-native", but several (Terraform variables and modules, third-party IDEs, Docker) are not native to Coder. Reword to drop the inaccurate claim while keeping the front-loaded, in-range description. - The AI landing page and Coder Tasks descriptions listed Aider as an example agent. Aider is no longer relevant, so replace it with Codex, which is already referenced elsewhere in the docs. feature-stages.md is unaffected: none of these pages are beta-stage, so the generated beta-features table does not change. --- docs/manifest.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/manifest.json b/docs/manifest.json index 04d7dcdf45b..f2ca995f0d4 100644 --- a/docs/manifest.json +++ b/docs/manifest.json @@ -617,7 +617,7 @@ }, { "title": "Extending Templates", - "description": "Use Coder-native features to extend your templates with parameters, metadata, IDEs, and more.", + "description": "Extend your Coder templates with parameters, metadata, web IDEs, Docker, and more.", "path": "./admin/templates/extending-templates/index.md", "children": [ { @@ -999,7 +999,7 @@ }, { "title": "Run AI Coding Agents in Coder", - "description": "Run and manage AI coding agents like Claude Code and Aider in Coder workspaces, alongside your existing development environments.", + "description": "Run and manage AI coding agents like Claude Code and Codex in Coder workspaces, alongside your existing development environments.", "path": "./ai-coder/index.md", "icon_path": "./images/icons/wand.svg", "children": [ @@ -1348,7 +1348,7 @@ }, { "title": "Coder Tasks", - "description": "Run and manage coding agents like Claude Code and Aider on your own infrastructure with Coder Tasks.", + "description": "Run and manage coding agents like Claude Code and Codex on your own infrastructure with Coder Tasks.", "path": "./ai-coder/tasks.md", "children": [ {