Commit Graph

2148 Commits

Author SHA1 Message Date
Steven Masley fe3b825b86 chore: per template opt into cached terraform directories (#20609)
For experimental and dogfood purposes, this adds the ability to opt in a single template. 
Leaving the rest of the templates as is. 

For GA, this setting might be removed or changed.
2025-11-13 14:04:12 -06:00
david-fraley 5bfbb0301f chore: update release calendar for new patches (#20748) 2025-11-13 17:22:42 +05:00
Steven Masley 04727c06e8 chore: add experiment toggle for terraform workspace caching (#20559)
Experiments passed to provisioners to determine behavior. This adds
`--experiments` flag to provisioner daemons. Prior to this, provisioners
had no method to turn on/off experiments.
2025-11-12 14:26:15 -06:00
Andrew Aquino ac2c161636 fix(docs): add newlines to display GFM alerts correctly (#20747)
Fixes this bug called out by @matifali on
https://coder.com/docs/ai-coder/tasks:
<img width="718" height="165" alt="image"
src="https://github.com/user-attachments/assets/5ac5c70d-c677-44f6-984d-8538a8e7c6cc"
/>

[The docs for GFM
alerts](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#alerts)
specify that the alert type (`[!NOTE]`, `[!IMPORTANT]`, etc) should be
on its own line within the blockquote, with the alert text on the
following line(s).
2025-11-12 11:11:51 -08:00
Danny Kopping c69eb7c157 docs: reflect steps required to enable coder MCP tool injection (#20735)
Follow-up from #20713

Signed-off-by: Danny Kopping <danny@coder.com>
2025-11-12 12:02:04 +00:00
Mathias Fredriksson e61b0fcf42 chore(codersdk): deprecate HasAITask on WorkspaceBuild (#20732)
Closes coder/internal#973
2025-11-12 10:27:06 +00:00
Danny Kopping 04f809f2d0 chore!: allow coder MCP tools to not be injected (#20713)
Currently, when AI Bridge is enabled AND the `oauth2` and
`mcp-server-http` experiments are enabled we inject Coder's MCP tools
into all intercepted AI Bridge requests.

This PR introduces a config to control this behaviour.

**NOTE:** this is a backwards-incompatible change; previously these
tools would be injected automatically, now this setting will need to be
explicitly enabled.

---------

Signed-off-by: Danny Kopping <danny@coder.com>
2025-11-12 11:23:01 +02:00
Atif Ali 086d6b8719 chore(docs): update links and minor improvements to AI Bridge (#20714)
Co-authored-by: Danny Kopping <danny@coder.com>
2025-11-11 15:13:38 +00:00
Cian Johnston b6935c3528 chore(docs/ai-coder): add migration guide for provider version 2.13.0 (#20426)
Closes https://github.com/coder/internal/issues/1080

---------

Co-authored-by: Ben Potter <ben@coder.com>
2025-11-11 09:07:41 +00:00
Atif Ali c21b3e49b3 docs: add client configuration section and support matrix for AI Bridge (#20640)
Revised the AI Bridge documentation to clarify provider configuration
steps, including new sections for OpenAI, Anthropic, and Amazon Bedrock.
Added details on pre-configuring templates and using AI Bridge with
Coder Tasks. Introduced a new image illustrating the AI Bridge
implementation details. Updated compatibility notes for various AI
clients.

Addresses coder/aibridge#4

Preview:
https://coder.com/docs/@aibridge-client-instructions/ai-coder/ai-bridge

---------

Co-authored-by: david-fraley <67079030+david-fraley@users.noreply.github.com>
Co-authored-by: Danny Kopping <danny@coder.com>
Co-authored-by: David Fraley <davidiii@fraley.us>
2025-11-10 22:24:37 +00:00
Paweł Banaszewski 991831b1dd chore: add API key ID to interceptions (#20513)
Adds APIKeyID to interceptions.
Needed for tracking API key usage with bridge.
fixes https://github.com/coder/coder/issues/20001
2025-11-10 13:46:41 +01:00
Jacob Witt 1d1e1f92b0 docs: add OIDC documentation for Microsoft Entra ID user auth (#20202)
Propose Microsoft Entra ID OIDC Directions for Admin Documentation based
on my personal experience / setup.

Propose information on changing access URL in Tutorials -> FAQs

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: DevCats <chris@dualriver.com>
Co-authored-by: DevelopmentCats <christofer@coder.com>
2025-11-07 16:33:51 +05:00
Mathias Fredriksson ce04f6cc5d fix(coderd): remove deprecated AITaskSidebarApp column (#20680)
This column was no longer used in `v2.28` and the codersdk field
deprecated. Both can now be dropped in `v2.29`.

Closes coder/internal#974
2025-11-07 12:45:45 +02:00
david-fraley b0f3effe2c docs: update release calendar for 2.28 release (#20666) 2025-11-06 15:29:18 +00:00
david-fraley 2a5d86e2aa docs: add vacuum full on audit logs table recommendation (#20608) 2025-11-03 01:12:37 +00:00
david-fraley 37222199c3 docs: update release calendar for 2.27.3 patch (#20597) 2025-10-31 06:25:01 +05:00
Zach 139dab7cfe feat(cli): optionally store session token in OS keyring (#20256)
This change implements optional secure storage of the CLI token using the operating system
 keyring for Windows, with groundwork laid for macOS in a future change. Previously, the
 Coder CLI stored authentication tokens in plaintext configuration files, which posed a
 security risk because users' tokens are stored unencrypted and can be easily accessed by
 other processes or users with file system access.

The keyring is opt-in to preserve compatibility with applications (like the JetBrains
Toolbox plugin, VS code plugin, etc). Users can opt into keyring use with a new
`--use-keyring` flag.

The secure storage is platform dependent. Windows Credential Manager API is used on Windows.
The session token continues to be stored in plain text on macOS and Linux. macOS is omitted
for now while we figure out the best path forward for compatibility with apps like Coder Desktop.

https://www.notion.so/coderhq/CLI-Session-Token-in-OS-Keyring-293d579be592808b8b7fd235304e50d5

https://github.com/coder/coder/issues/19403
2025-10-30 17:41:08 -06:00
Danielle Maywood d80b5fc8ed refactor!: remove TaskAppID from codersdk.WorkspaceBuild (#20583)
Remove the `TaskAppID` field from `codersdk.WorkspaceBuild`. Consumers can instead use the new `codersdk.Task` data model for this information.
2025-10-30 16:45:51 +00:00
Spike Curtis 984a834e81 docs: revert work in progress 10k scale doc (#20580)
Reverts in-progress 10k docs because people found it confusing.
2025-10-30 16:17:04 +04:00
Spike Curtis 94f6e83cfa docs: fix typo: worklods (#20578)
fixes typo.
2025-10-30 12:45:47 +04:00
Steven Masley 54497f4f6b chore: add revocation endpoint to oauth well-known (#20561)
Was added to apps endpoints, but not the wider site ones. This is a site
wide oauth route
2025-10-29 16:44:53 -05:00
Cian Johnston 1ebc217624 fix: update task link AppStatus using task_id (#20543)
Fixes https://github.com/coder/coder/issues/20515

Alternative to https://github.com/coder/coder/pull/20519

Adds `task_id` to `workspaces_expanded` view and updates the "View Task"
link in `AppStatuses` component.

NOTE: this contains a migration
2025-10-29 15:45:45 +00:00
Danny Kopping 2f886ce8d0 chore: update docs (#20521)
Updates AI Bridge docs to remove experiment details.
2025-10-29 07:43:33 -06:00
Danny Kopping dcfd6d6f73 chore: graduate aibridge cli out of experimental (#20524)
<!--

If you have used AI to produce some or all of this PR, please ensure you have read our [AI Contribution guidelines](https://coder.com/docs/about/contributing/AI_CONTRIBUTING) before submitting.

-->
2025-10-29 07:36:08 -06:00
Danny Kopping b20fd6f2c1 chore: graduate aibridge API out of experimental (#20523)
<!--

If you have used AI to produce some or all of this PR, please ensure you have read our [AI Contribution guidelines](https://coder.com/docs/about/contributing/AI_CONTRIBUTING) before submitting.

-->
2025-10-29 07:18:54 -06:00
Danny Kopping 95a1ca898f chore: remove aibridge experiment (#20520)
Removes the experiment and all references to it
2025-10-29 06:18:38 -06:00
david-fraley f6df4c0ed8 docs: update release calendar for new patches (#20526) 2025-10-28 14:24:03 -07:00
david-fraley cf93c34172 docs: update coder_token_lifetime description to include units and examples (#20516) 2025-10-28 15:15:57 +00:00
Spike Curtis e720afa9d0 docs: add description of dynamic parameters test (#20488)
## Add Dynamic Parameters test procedure to 10k users validated architecture

This PR adds a new test procedure for Dynamic Parameters to the 10k users validated architecture documentation. No changes to the recommended hardware specs as this test case succeeded with no issues.
2025-10-28 10:11:25 +04:00
Danny Kopping d18441debe feat: add AWS Bedrock support (#20507)
Depends on https://github.com/coder/aibridge/pull/44

Closes https://github.com/coder/aibridge/issues/28

---------

Signed-off-by: Danny Kopping <danny@coder.com>
2025-10-28 03:38:14 +00:00
ケイラ 4f7b279fd8 feat: add an organization member permission level (#19953) 2025-10-27 17:14:16 -06:00
Thomas Kosiewski cadf1352b4 feat: add scoped token support to CLI (#19985)
<!--

If you have used AI to produce some or all of this PR, please ensure you have read our [AI Contribution guidelines](https://coder.com/docs/about/contributing/AI_CONTRIBUTING) before submitting.

-->

Add support for scoped API tokens in CLI

This PR adds CLI support for creating and viewing API tokens with scopes and allow lists. It includes:

- New `--scope` and `--allow` flags for the `tokens create` command
- A new `tokens view` command to display detailed information about a token
- Updated table columns in `tokens list` to show scopes and allow list entries
- Updated help text and examples

These changes enable users to create tokens with limited permissions through the CLI, similar to the existing functionality in the web UI.
2025-10-27 17:07:25 +01:00
Paweł Banaszewski 50ba223aa1 feat: add db query for setting interception ended_at field (#20437)
Adds UpdateAIBridgeInterceptionEnded query to mark interceptions as
done.
Needed for https://github.com/coder/internal/issues/1051
2025-10-27 09:51:37 +01:00
Marcin Tojek c301a0d804 docs: add comprehensive Web Terminal documentation (#20458)
Fixes: https://github.com/coder/coder/issues/19119
2025-10-24 16:24:53 +02:00
Mathias Fredriksson 51d3abb904 feat(site): use new task data model and endpoints (#20431)
Updates the UI to use the new API endpoints for tasks and use its new
data model.

Disclaimer: Since the base data model for tasks changed, we had to do a
quite large refactor and I'm sorry for that 🙏, but you'll notice most of
the changes are to adjust the types.

Closes coder/internal#976

---------

Co-authored-by: Bruno Quaresma <bruno_nonato_quaresma@hotmail.com>
2025-10-24 10:45:19 -03:00
Thomas Kosiewski f684831f56 feat: add allow list to API keys (#19972)
Add API key allow list to the SDK

This PR adds an allow list to API keys in the SDK. The allow list is a list of targets that the API key is allowed to access. If the allow list is empty, a default allow list with a single entry that allows access to all resources is created.

The changes include:

- Adding a default allow list when generating an API key if none is provided
- Adding allow list to the API key response in the SDK
- Converting database allow list entries to SDK format in the API response
- Adding tests to verify the default allow list behavior



Fixes #19854
2025-10-24 12:33:56 +01:00
dependabot[bot] f947a34103 ci: bump the github-actions group across 1 directory with 15 updates (#20384)
Co-authored-by: github-actions[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: M Atif Ali <atif@coder.com>
Co-authored-by: Ethan Dickson <ethan@coder.com>
2025-10-24 16:06:44 +05:00
Danielle Maywood e60112e54f chore(coderd): introduce TaskAppID and deprecate AITaskSidebarAppID (#20336)
As we're moving away from the SidebarAppID nomenclature, this PR
introduces a new `TaskAppID` field to `codersdk.WorkspaceBuild` and
deprecates the `AITaskSidebarAppID` field. They both contain the same
value.
2025-10-24 10:57:32 +01:00
Steven Masley 13ca9ead3a chore!: ensure consistent secret token generation and hashing (#20388)
This PR uses the same sha256 hashing technique as we use for APIKeys. So
now all randomly generated secrets will be hashed with sha256 for
consistency.

This is a breaking change for the oauth tokens. Since oauth is only
allowed for dev builds and experimental, this is ok.
2025-10-23 15:38:49 -05:00
Marcin Tojek 906149317d docs: document location property for support links (#20445) 2025-10-23 22:26:21 +02:00
Mathias Fredriksson a106d67c07 feat(coderd): use task data model for list (#20394)
Updates coder/internal#976
2025-10-23 20:22:51 +03:00
Atif Ali 1cb2ac65e5 chore: remove a redundant letter from docs (#20443) 2025-10-23 22:02:34 +05:00
Mathias Fredriksson 9855460524 feat(coderd): use new data model for task delete (#20334)
Updates coder/internal#976
2025-10-23 19:45:18 +03:00
Mathias Fredriksson 5c802c2627 feat(coderd): use task data model when creating a new task (#20275)
Updates coder/internal#976
2025-10-23 19:12:09 +03:00
Jake Howell d455f6ea2b fix: rename total to count in AIBridgeListInterceptionsResponse (#20410)
Thanks to the great work in #20393, we’ve successfully introduced
offset-based pagination for this endpoint. However, the frontend expects
a `count` field in the response rather than `total`. This PR updates the
response payload to rename the returned key to `count` for consistency
with frontend expectations and existing API patterns.

This is necessary to unblock the work in #20331
2025-10-23 13:19:12 +11:00
Steven Masley 4bd7c7b7e0 feat: implement oauth2 RFC 7009 token revocation endpoint (#20362)
Adds RFC 7009 token revocation endpoint
2025-10-22 15:18:42 -05:00
Jiachen Jiang da31a4bed9 docs: edit Boundary documentation to reflect current functionality (#20403) 2025-10-22 11:32:15 -05:00
Atif Ali 823b14aa34 docs: add base URLs and authentication section to AI Bridge (#20404)
Co-authored-by: Danny Kopping <danny@coder.com>
2025-10-22 13:55:54 +00:00
Marcin Tojek f2a410566c feat: add support buttons (#20339)
Fixes: https://github.com/coder/coder/issues/16804
2025-10-22 15:35:16 +02:00
Dean Sheather 69c2c40512 chore: add user details to aibridge interception list endpoint (#20397)
- Adds FK from `aibridge_interceptions.initiator_id` to `users.id`
- This is enforced by deleting any rows that don't have any users. Since
this is an experimental feature AND coder never deletes user rows I
think this is acceptable.
- Adds `name` as a property on `codersdk.MinimalUser`
- This matches the `visible_users` view in the database. I'm unsure why
`name` wasn't already included given that `username` is.
- Adds a new `initiator` field to `codersdk.AIBridgeInterception` which
contains `codersdk.MinimalUser` (ID, username, name, avatar URL)
- Removes `initiator_id` from `codersdk.AIBridgeInterception`
    - Should be fine since we're still in early access
2025-10-22 16:18:31 +11:00