Since https://github.com/coder/agentapi/pull/49 was merged, agentapi by
default only accepts requests with the `Host` header set to localhost,
127.0.0.1, or [::1]. In Coder, agentapi is served behind a reverse proxy
as a workspace app, so we need to use a wildcard
`AGENTAPI_ALLOWED_HOSTS` for agentapi-based modules to continue working.
This PR updates the claude code and agentapi modules, and a subsequent
PR will update modules that are based on the agentapi module.
- Add .tftest.hcl for jetbrains, zed, and code-server
- Remove Bun tests for these migrated modules only
- Keep Bun tests for other modules during transition
- Update contributing guide to mention terraform test
- Include runner script to execute terraform tests across modules
Replace Bun-based test runner with Terraform native testing. Adds script to discover and run tests across modules and updates docs/scripts to use terraform test.
- test/test.ts: ensure `-state` is immediately followed by the state file to avoid apply failures
- readmevalidation: fix two logger message typos (processing/processed)
Updates https://github.com/coder/coder/issues/18779
Builds on https://github.com/coder/registry/pull/297
## Description
Adds support for specifying `subdomain = false` in the agentapi module.
Change added in https://github.com/coder/registry/pull/297
NOTE: `AGENTAPI_CHAT_BASE_PATH` is exported before running `main.sh` in
agentapi, so this environment variable is available to calling modules
if `var.subdomain = false`.
## Type of Change
- [ ] New module
- [ ] Bug fix
- [X] Feature/enhancement
- [ ] Documentation
- [ ] Other
## Testing & Validation
- [X] Tests pass (`bun test`)
- [X] Code formatted (`bun run fmt`)
- [X] Changes tested locally
## Related Issues
https://github.com/coder/coder/issues/18779
## Description
<!-- Briefly describe what this PR does and why -->
This PR adds a description field to the `jetbrains_ides`
`coder_parameter`.
This allows the JetBrains IDEs parameter to display a helpful
description in both the Coder UI and the CLI, improving clarity for
users when selecting which IDEs to configure in a workspace.
<img width="1102" height="252" alt="Screenshot 2025-08-07 at 11 04 13"
src="https://github.com/user-attachments/assets/90c78088-700a-4152-8a16-4b8c88c52e2c"
/>
## Type of Change
- [ ] New module
- [ ] Bug fix
- [x] Feature/enhancement
- [ ] Documentation
- [ ] Other
## Testing & Validation
- [x] Tests pass (`bun test`)
- [x] Code formatted (`bun run fmt`)
- [x] Changes tested locally
## Related Issues
https://github.com/coder/coder/issues/19145
Updates https://github.com/coder/coder/issues/18779
A separate PR will update dependant modules `goose` and `aider`.
## Description
* Adds `subdomain` argument to `agentapi` module
* Updates `agentapi` module to set `AGENTAPI_CHAT_BASE_PATH` to an
autogenerated path if `var.subdomain = false`
* Updates default `agentapi` version to `v0.3.3` to support running
without subdomain
## Type of Change
- [ ] New module
- [ ] Bug fix
- [x] Feature/enhancement
- [ ] Documentation
- [ ] Other
## Testing & Validation
- [X] Tests pass (`bun test`)
- [X] Code formatted (`bun run fmt`)
- [x] Changes tested locally
## Related Issues
- https://github.com/coder/coder/issues/18779
On our dogfood workspaces, we fail to install `@devcontainers/cli` with
`yarn` because our agent directory `/home/coder/coder` contains a
`package.json` with `packageManager` being set to `pnpm`. This change
instead ensures to run `yarn global add` inside the
`$CODER_SCRIPT_DATA_DIR` so that we don't read a `package.json` and
cause things to break.
Realized this was an issue while fixing how we're rendering GFM alerts
on the Registry website.
## Description
Basically, the URLs we're using right now are technically valid, but
they were using the old URL pattern from before we created the
`coder/registry` repo. The Registry website has logic to handle
redirects for these, but we should avoid triggering it as it adds
unnecessary entries to the user's browser history.
### Changes made
- Updated all Registry links in the HCP Vault alert to include `coder`
as the namespace
## Type of Change
- [ ] New module
- [ ] Bug fix
- [ ] Feature/enhancement
- [x] Documentation
- [ ] Other
## Testing & Validation
- [x] Tests pass (`bun test`)
- [x] Code formatted (`bun run fmt`)
- [x] Changes tested locally
## Description
This is an issue that doesn't exist within `coder/registry`, but was
breaking our build process for the Registry website. We were using an
invalid image path.
## 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`)
- [x] Changes tested locally
## Description
this PR adds a new template that creates & runs Coder workspaces on K8s
with the user's Coder `username` as the Linux UID. a commonly requested
use-case by customers.
## Type of Change
- [x] New module
- [ ] Bug fix
- [ ] Feature/enhancement
- [ ] Documentation
- [ ] Other
## Module Information
<!-- Delete this section if not applicable -->
**Path:** `registry/ericpaulsen/templates/k8s-pod-username.tf`
## Testing & Validation
- [x] Changes tested locally
This template builds Docker containers from a Dockerfile, rather than
using a pre-built image, allowing for more customization of the
development environment.
Based on the docker template that was removed in coder/coder#15504.
---------
Co-authored-by: blink-so[bot] <211532188+blink-so[bot]@users.noreply.github.com>
## Description
Updates README for final version of hcp-vault-secrets. Previous version
was tagged and documented wrong
<!-- Briefly describe what this PR does and why -->
## Type of Change
- [ ] New module
- [ ] Bug fix
- [ ] Feature/enhancement
- [ ] Documentation
- [X] Other
## Module Information
<!-- Delete this section if not applicable -->
**Path:** `registry/coder/modules/hcp-vault-secrets`
**New version:** `v1.0.32`
**Breaking change:** [ ] Yes [X] No
## Description
<!-- Briefly describe what this PR does and why -->
add deprecation notice and migration guidance to README
## Type of Change
- [ ] New module
- [ ] Bug fix
- [ ] Feature/enhancement
- [ ] Documentation
- [X] Other
## Module Information
<!-- Delete this section if not applicable -->
**Path:** `registry/coder/modules/hcp-vault-secrets`
**New version:** `v1.0.8`
**Breaking change:** [ ] Yes [X] No
## Testing & Validation
- [X] Tests pass (`bun test`)
- [X] Code formatted (`bun run fmt`)
- [NA] Changes tested locally
## Related Issues
<!-- Link related issues or write "None" if not applicable -->
None
## Description
<!-- Briefly describe what this PR does and why -->
Adds support for a `depth` variable to the git-clone module. If a repo
is large, a shallow clone makes the `git clone` a lot faster
## Type of Change
- [ ] New module
- [ ] Bug fix
- [x] Feature/enhancement
- [ ] Documentation
- [ ] Other
## Module Information
<!-- Delete this section if not applicable -->
**Path:** `registry/coder/modules/git-clone`
**New version:** `v1.0.19` ?
**Breaking change:**
- [ ] Yes
- [x] No
## Testing & Validation
- [ ] Tests pass (`bun test`)
- [ ] Code formatted (`bun run fmt`)
- [ ] Changes tested locally
- `bun test` - I don't know if this is expected
```shell
✗ git-clone > fails without git [298.14ms]
✗ git-clone > runs with git [289.14ms]
✗ git-clone > runs with github clone with switch to feat/branch
[277.19ms]
✗ git-clone > runs with gitlab clone with switch to feat/branch
[293.49ms]
✗ git-clone > runs with github clone with branch_name set to feat/branch
[288.07ms]
```
## Related Issues
<!-- Link related issues or write "None" if not applicable -->
None
---------
Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com>
Co-authored-by: DevelopmentCats <christofer@coder.com>
## Description
Change logo to correct fleet.svg logo in Jetbrains-Fleet frontmatter
## Type of Change
- [ ] New module
- [X] Bug fix
- [ ] Feature/enhancement
- [ ] Documentation
- [ ] Other
## Module Information
<!-- Delete this section if not applicable -->
**Path:** `registry/coder/modules/jetbrains-fleet`
**New version:** `v1.0.1`
**Breaking change:** [ ] Yes [X] No
## Testing & Validation
- [X] Tests pass (`bun test`)
- [X] Code formatted (`bun run fmt`)
- [X] Changes tested locally
## Related Issues
None
<!-- Link related issues or write "None" if not applicable -->
## Description
When passing in custom dotfiles URIs, the format for those (`git@...` vs
`https://...`) are going to be different for different environments, and
admins are going to want to give their developers particular
instructions. This PR makes the parameter `description` customizable so
that we can change the default description a developer sees.
---
## Type of Change
- [ ] New module
- [ ] Bug fix
- [x] Feature/enhancement
- [ ] Documentation
- [ ] Other
---
## Module Information
<!-- Delete this section if not applicable -->
**Path:** `registry/coder/modules/dotfiles`
**New version:** `v1.2.0`
**Breaking change:** [ ] Yes [X] No
---
## Testing & Validation
- [X] Tests pass (`bun test`)
- [X] Code formatted (`bun run fmt`)
- [x] Changes tested locally
---------
Co-authored-by: DevCats <christofer@coder.com>
The agentapi module is a building block for modules that need to run an
agentapi server. It's not meant for end users of Coder.
The agentapi-specific logic is mostly extracted from [the claude-code
module](c0f2d945c5/registry/coder/modules/claude-code).
You can see this module in action in [the goose 2.0
PR](https://github.com/coder/registry/pull/178).