Skip to content

feat: add workspace_apps configuration to control apps in workspace table #18922

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 9 commits into from

Conversation

blink-so[bot]
Copy link
Contributor

@blink-so blink-so bot commented Jul 19, 2025

This PR adds the ability to configure which apps appear in the workspace table on the /workspaces page via terraform.

Changes

  • Added workspace_apps field to the coder_agent terraform resource
  • Updated proto definitions to include workspace_apps
  • Modified the WorkspaceApps component to respect the configured apps list
  • Added support for both built-in apps (vscode, vscode_insiders, web_terminal) and custom apps

Usage Example

resource "coder_agent" "main" {
  os   = "linux"
  arch = "amd64"
  
  # Configure which apps appear in the workspace table
  workspace_apps = ["vscode", "my-custom-app", "web_terminal"]
}

Implementation Notes

  • Maximum of 4 apps are displayed (existing limit)
  • Apps are shown in the order specified in the configuration
  • Falls back to existing behavior if workspace_apps is not specified
  • Custom apps can be referenced by slug or ID

TODO

  • Add database migration for workspace_apps column
  • Update backend to populate workspace_apps from provisioner data
  • Add comprehensive documentation
  • Add tests

Requested by @jacqueline in Slack.

blink-so bot added 2 commits July 19, 2025 19:01
Updated the button labels on the /workspaces page to clearly indicate that VS Code opens in the browser, matching the UI mockup provided.
…pace table

- Added workspace_apps field to terraform coder_agent resource
- Updated proto definition to include workspace_apps
- Modified frontend WorkspaceApps component to respect configured apps
- Allows specifying which apps (built-in and custom) appear in the workspace table
- Maximum of 4 apps displayed, in the order specified
blink-so bot added 3 commits July 19, 2025 19:27
- Add database migration for workspace_apps column
- Update SQL queries to include workspace_apps
- Update provisioner server to pass workspace_apps from terraform
- Still needs: database code regeneration and API updates
Add workspace_apps configuration to control which apps appear in workspace table:
- Add database migration for workspace_apps column
- Update WorkspaceAgent struct to include workspace_apps field
- Update SQL queries to handle workspace_apps
- Add comprehensive tests for the new functionality
- Add documentation with examples

This allows administrators to configure via Terraform which apps
appear as action buttons in the workspace table while maintaining
backward compatibility.
@blink-so blink-so bot force-pushed the feat/configurable-display-app-icons branch from 0c281d9 to eb77a5e Compare July 19, 2025 19:57
@matifali
Copy link
Member

This can be controlled with order I think.

Copy link
Member

@johnstcn johnstcn left a comment

Choose a reason for hiding this comment

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

Is the intention here to allow full customization of the apps shown in the workspace list as opposed to the workspace details? Having a different ordering on the list as opposed to the details page seems potentially confusing.

Instead of adding yet another field on our provider, an alternative solution could be to simply include the first four coder_app instances based on the order field and what is set in display_apps. I'd suggest display_apps taking priority and then 'filling in' the remainder with the top N coder_apps based on order (up to max 4 apps).

EDIT: this appears to be the current logic. We first prioritize the 'built-in apps' and then fill in the remaining 'slots' with any healthy non-hidden user apps.

@johnstcn johnstcn closed this Jul 21, 2025
@github-actions github-actions bot locked and limited conversation to collaborators Jul 21, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants