## Description
Use more descriptive names
Depends on coder/coder#https://github.com/coder/coder/pull/18716
---
## Type of Change
- [ ] New module
- [ ] Bug fix
- [ ] Feature/enhancement
- [x] Documentation
- [ ] Other
The README points to an old version of claude code that doesn't support
the `--continue` flag, making it incompatible with the latest version of
the module. It's easy to copy and paste the example and run into an
error. This PR updates the example version and adds troubleshooting
notes.
## Description
This PR updates the CI release flow to match the registry-server's new
development flow.
The "dev" registry now deploys directly from the main branch of
registry-server.
The "production" registry now deploys from tagged releases of
registry-server. We have added a "production" tag that will
track the same commit as the latest semver release of the
registry-server.
---
## Type of Change
- [ ] New module
- [x] Bug fix
- [ ] Feature/enhancement
- [ ] Documentation
- [ ] Other
---
## Related Issues
Fixes https://github.com/coder/registry/pull/170
Closes #
Reverts https://github.com/coder/registry/pull/168 which should not have
been merged, and disables production deployments for now until a fix is
in place on the registry-server side.
Related to https://github.com/coder/internal/issues/700
This PR:
- makes AgentAPI a required dependency of the module. It's now used:
- to improve task reporting (by exporting `CODER_MCP_AI_AGENTAPI_URL`
before running `coder exp mcp configure claude-code`)
- to add a web chat interface to Claude (using the `Claude Code Web`
workspace app)
- removes support for tmux and screen since we don't need them if we
have AgentAPI
- makes the Claude Code CLI workspace app optional and disabled by
default - a new `experiment_cli_app` module variable controls its
presence
- makes the module spawn the `coder_ai_task` resource, which makes the
module compatible with the new Coder Tasks feature
- makes Claude Code remember the conversation between workspace restarts
using the `--continue` flag. Previously the module's implementation was
a bit bugged
Note: the filebrowser tests stopped passing because of an upstream
update in the filebrowser project around required password length. I
confirmed they are not related to this PR's changes.
---------
Co-authored-by: Ben Potter <me@bpmct.net>
## Description
This PR updates all of our current icons to use high-quality SVG files.
All icons use a perfect square aspect ratio to make sure they look good
on the registry.coder.com website, too.
This PR does **not** update our validation process to enforce the use of
.svg files. That may be something worth considering in the future, but
better to wait until we know for certain that we won't ever need other
image formats.
## Type of Change
- [x] Other
## Testing & Validation
- [x] Tests pass (`bun test`)
- [x] Code formatted (`bun run fmt`)
- [x] Changes tested locally
## Description
This PR swaps out all instances of the old Coder logo for the logo that
is launching in about an hour. If this is the first time you've seen the
new logo, be sure to check out [coder.com](https://coder.com/) later
today – we're refreshing the whole website and brand!
## Type of Change
- [x] Other
## Testing & Validation
- [x] Tests pass (`bun test`)
- [x] Code formatted (`bun run fmt`)
- [x] Changes tested locally
Introduces coder module: local-windows-rdp
- Creates a coder app that can launch local rdp with auto-login using
coder-desktop
- Runs a PowerShell script inside of the VM setting RDP permissions, and
sets Username and Password inside of VM
### Testing
- [x] AWS
- [x] GCP
- [ ] Azure
---------
Co-authored-by: Atif Ali <atif@coder.com>
## Description
Add Tmux Plugin Manager with resurrect and continuum plugins. Add
functionality to be able to enable workspace persistence to save the
tmux session automatically so that it can persist through workspace
restarts.
---
## Type of Change
- [ ] New module
- [ ] Bug fix
- [X] Feature/enhancement
- [ ] Documentation
- [ ] Other
---
## Module Information
**Path:** `registry/coder/modules/claude-code`
**New version:** `v1.4.0`
**Breaking change:** [ ] Yes [X] No
---
## Testing & Validation
- [X] Tests pass (`bun test`)
- [X] Code formatted (`bun run fmt`)
- [X] Changes tested locally
---
## Related Issues
Closes [#29](https://github.com/coder/registry/issues/29)
## Description
Set up Pre-Req's, and ensure that formatting is done before checking
diff since it likes to not respect prettier formatting.
---
## Type of Change
- [ ] New module
- [X] Bug fix
- [ ] Feature/enhancement
- [ ] Documentation
- [ ] Other
---
## Testing & Validation
- [X] Tests pass (`bun test`)
- [X] Code formatted (`bun run fmt`)
- [ ] Changes tested locally
---------
Co-authored-by: Atif Ali <atif@coder.com>
for admins with certainty about what is installed in the environment,
this is ideal. otherwise, it's best to get user trust
---------
Co-authored-by: DevelopmentCats <christofer@coder.com>
Co-authored-by: Atif Ali <atif@coder.com>
## Description
Removed unnecessary comments and added commands to reset the working
directory and clean untracked files in the version-bump workflow. This
improves the script's reliability by ensuring a clean state after
executing version checks.
---
## Type of Change
- [ ] New module
- [X] Bug fix
- [ ] Feature/enhancement
- [ ] Documentation
- [ ] Other
---
## Related Issues
None
## Description
Relates to
Fixes an issue where RDP doesn't function properly over Coder Connect,
by disabling UDP and relying only on TCP. c.f.
https://github.com/coder/internal/issues/608#issuecomment-2965923672 for
a detailed description of the problem.
---
## Type of Change
- [ ] New module
- [X] Bug fix
- [ ] Feature/enhancement
- [ ] Documentation
- [ ] Other
---
## Module Information
<!-- Delete this section if not applicable -->
**Path:** `registry/coder/modules/windows-rdp`
**New version:** `v1.0.19`
**Breaking change:** [ ] Yes [x] No
---
## Testing & Validation
- [x] Tests pass (`bun test`)
- [x] Code formatted (`bun run fmt`)
- [x] Changes tested locally
---
## Related Issues
https://github.com/coder/internal/issues/608
Closes #
---------
Signed-off-by: Spike Curtis <spike@coder.com>
This PR copies the templates in coder/coder/examples/templates over to
the registry, so that template contribution can be done through the
registry.
For now, the starter templates in the coder/coder binary and the
templates available in coder/registry will simply be different
constructs, until we find a solution we like around a single source of
truth for templates that doesn't raise hairy semver concerns for
coder/coder:
https://codercom.slack.com/archives/C05T7165ET1/p1749493368773469
# Extract Version Bump Logic into Reusable Script
This PR extracts the version bump logic from the GitHub Actions workflow
(PR #137) into a reusable script and implements the requirements as
requested.
## ✅ What This PR Delivers
### 🔧 **Version Bump Script**: `.github/scripts/version-bump.sh`
- Extracts all version bump logic from the original workflow
- Supports `patch`, `minor`, and `major` version bumps
- Configurable base reference for diff comparison (defaults to
`origin/main`)
- Comprehensive error handling and semantic version validation
- Can be used standalone or in workflows
### 🔍 **Version Check Workflow**: `.github/workflows/version-check.yaml`
- **Required CI check** that runs on all PRs modifying modules
- Verifies that module versions have been properly updated
- Fails if versions need bumping but haven't been updated
- Provides clear instructions on how to fix version issues
### 🚀 **Version Bump Workflow**: `.github/workflows/version-bump.yaml`
- Simplified workflow that uses the extracted script
- Triggered by PR labels (`version:patch`, `version:minor`,
`version:major`)
- Automatically commits version updates and comments on PR
### 📚 **Updated Documentation**: `CONTRIBUTING.md`
- Clear instructions on how to use the version bump script
- Examples for different bump types
- Information about PR labels as an alternative
- Explains that CI will check version updates
## 🎯 Key Features
✅ **Script Logic Extracted**: All complex bash logic moved from workflow
to reusable script
✅ **Required CI Check**: Version check workflow ensures versions are
updated
✅ **Diff Verification**: Script checks git diff to detect modified
modules
✅ **Contribution Docs Updated**: Clear instructions for contributors
✅ **Backward Compatible**: Maintains all original functionality
✅ **Error Handling**: Comprehensive validation and clear error messages
## 📖 Usage Examples
```bash
# For bug fixes
./.github/scripts/version-bump.sh patch
# For new features
./.github/scripts/version-bump.sh minor
# For breaking changes
./.github/scripts/version-bump.sh major
```
## 🔄 Workflow Integration
1. **Developer makes changes** to modules
2. **CI runs version-check** workflow automatically
3. **If versions need updating**, CI fails with instructions
4. **Developer runs script** or adds PR label
5. **Versions get updated** automatically
6. **CI passes** and PR can be merged
## 🧪 Testing
The script has been tested with:
- ✅ Valid and invalid bump types
- ✅ Module detection from git diff
- ✅ Version calculation and validation
- ✅ README version updates
- ✅ Error handling for edge cases
This implementation addresses all the original requirements while making
the logic more maintainable and reusable.
---------
Co-authored-by: blink-so[bot] <211532188+blink-so[bot]@users.noreply.github.com>
Co-authored-by: DevelopmentCats <christofer@coder.com>
Changes are broken down in to multiples commits to hopefully make
reviewing easy. 1 commit for the slog change and then a commit per Go
file for style changes.
Style changes are generally:
- try to use full sentences for all comments
- try to stick to 120 column lines (not strict) instead of 80
- try to one line as many `call function, check if err != nil` blocks as
possible (ex: only err or variables are not reused outside the if statement)
- try to use `err` or `errs` for all return type names, previously used
`problems` in some cases but `errs` in others
- some minor readability changes
- `Todo` -> `TODO`, sometimes also useful to do `TODO (name):` to make
it easier to find things a specific author meant to follow up on
- comments for types/functions should generally start with `//
FunctionName/TypeName ...`
---------
Signed-off-by: Callum Styan <callumstyan@gmail.com>
Goes along with https://github.com/coder/coder/issues/8237
Most people probably gets apps from modules, and so to group them we'll
need new versions of aaaaaall of these modules.
Also some were missing `order`, which is related and intertwined pretty
closely in the implementation of `group`, so add it where necessary.
This PR adds `golangci-lint` based on the configuration from
`coder/coder`
([here](https://github.com/coder/coder/blob/main/.golangci.yaml)) then
migrated to v2 using `golangci-lint migrate` plus the addition of few
more linters.
---------
Signed-off-by: Callum Styan <callumstyan@gmail.com>
## Changes made
- Added avatars for each contributor
- Updated validation steps to account for avatars, if the avatar field
exists
- Went ahead and made some slog changes, ahead of @cstyan's refactor PR
Added an optional envvar to vault-token module to handle communicating
with a non default vault namespace.
in vault enterprise, you can run multiple secure isolated vault
environments from the one vault server.
each namespace has it's own authentication methods and secrets engines.
vault uses the VAULT_NAMESPACE envvar to determine the namespace to use.
no value, or either `root` or `/` will use the root (default) namespace,
any other value will use a different namespace
in vault community edition, the only supported namespace is "root", no
other namespaces can be used.
in HCP vault dedicated (the saas hosted version), you cant access vault
without a namespace set
this defaults to not setting the env var, so is backwards compatible,
and works with vault CE
---------
Co-authored-by: Birdie K <5210502+moo-im-a-cow@users.noreply.github.com>
Let's be upfront about how our module works so operators/template
authors can evaluate the security implications.
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
- Add Multiplexer, and tmux with mouse support.
- Add check to make sure tmux and screen are not set at the same time.
- Add Variable for session name so the name of the screen or tmux
session can be customized.
Tested in dev environment.
Reference: https://github.com/coder/registry/issues/31
- Changed default values from null to empty strings for
`experiment_goose_provider` and `experiment_goose_model` variables in
main.tf to ensure compatibility and avoid null interpolation issues.
Should resolve https://github.com/coder/registry/issues/27
The goal is to provide a method for template owners to configure default
`Machine Settings` that can be overridden by developers via `User
Settings` and repositories via `Workspace Settings`.
This option allows template owners to push new settings options with a
template release that would not be ignored because the setting file
already exists.
This also formats the `settings.json` file if `jq` is installed.
Eventually, I would imagine the current `settings` option will be
depreciated in favor of this option.