From b0f265c0379e775f89858b1c3efa97b5ac7282ca Mon Sep 17 00:00:00 2001 From: Cian Johnston Date: Thu, 21 Aug 2025 11:35:45 +0100 Subject: [PATCH 1/3] chore: document release process --- README.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/README.md b/README.md index 3f45478..e442ee9 100644 --- a/README.md +++ b/README.md @@ -184,3 +184,41 @@ Pending feedback, we're considering the following features: In the short term, AgentAPI solves the problem of how to programmatically control coding agents. As time passes, we hope to see the major agents release proper SDKs. One might wonder whether AgentAPI will still be needed then. We think that depends on whether agent vendors decide to standardize on a common API, or each sticks with a proprietary format. In the former case, we'll deprecate AgentAPI in favor of the official SDKs. In the latter case, our goal will be to make AgentAPI a universal adapter to control any coding agent, so a developer using AgentAPI can switch between agents without changing their code. + +## For Maintainers + +### Release Process + +Before performing a release, perform a local "smoke-test". +If everything seems OK, you can proceed to do the following: + +1. Update the version string in the following places: + - `openapi.json` + - `chat/package.json` + - `lib/httpapi/server.go` +2. Add details in `CHANGELOG.md` on what changed. +3. Create a PR with the subject `chore: update version to X.Y.Z` +4. Once the above PR is approved and merged, create a new git tag `vX.Y.Z` pointing to the commit of the above PR merged to `main`:S + + ```shell + # Fetch existing tags first! + git fetch --tags + git tag -a vX.Y.Z -m 'vX.Y.Z' + ``` + +5. Push the tag: + + ```shell + git push origin tag vX.Y.Z + ``` + +6. Visit `https://github.com/coder/agentapi/releases/tag/vX.Y.Z` and "Create release from tag". + + - Select the tag you pushed previously. + - Select the previous tag and "Generate release notes". Amend as required. + - **IMPORTANT:** un-check "Set as latest release" and check "Set as a pre-release". + - Click "Publish Release". This will trigger a "Build Release Binaries" CI job. + +7. Visit `https://github.com/coder/agentapi/actions/workflows/release.yml` and monitor the status of the job that was created in the previous step. This will upload the built assets to the corresponding release. + +8. Once the updated assets are released, you can now visit `https://github.com/coder/agentapi/releases/tag/vX.Y.Z`, click "Edit" (✎), and check "Set as latest release". From 188789727c06e224d9c522fc316d9d902190d12a Mon Sep 17 00:00:00 2001 From: Cian Johnston Date: Thu, 21 Aug 2025 11:42:28 +0100 Subject: [PATCH 2/3] move to MAINTAINERS.md --- MAINTAINERS.md | 37 +++++++++++++++++++++++++++++++++++++ README.md | 38 -------------------------------------- 2 files changed, 37 insertions(+), 38 deletions(-) create mode 100644 MAINTAINERS.md diff --git a/MAINTAINERS.md b/MAINTAINERS.md new file mode 100644 index 0000000..ca978c7 --- /dev/null +++ b/MAINTAINERS.md @@ -0,0 +1,37 @@ +# Information Maintainers + +## Release Process + +Before performing a release, perform a local "smoke-test". +If everything seems OK, you can proceed to do the following: + +1. Update the version string in the following places: + - `openapi.json` + - `chat/package.json` + - `lib/httpapi/server.go` +2. Add details in `CHANGELOG.md` on what changed. +3. Create a PR with the subject `chore: update version to X.Y.Z` +4. Once the above PR is approved and merged, create a new git tag `vX.Y.Z` pointing to the commit of the above PR merged to `main`:S + + ```shell + # Fetch existing tags first! + git fetch --tags + git tag -a vX.Y.Z -m 'vX.Y.Z' + ``` + +5. Push the tag: + + ```shell + git push origin tag vX.Y.Z + ``` + +6. Visit `https://github.com/coder/agentapi/releases/tag/vX.Y.Z` and "Create release from tag". + + - Select the tag you pushed previously. + - Select the previous tag and "Generate release notes". Amend as required. + - **IMPORTANT:** un-check "Set as latest release" and check "Set as a pre-release". + - Click "Publish Release". This will trigger a "Build Release Binaries" CI job. + +7. Visit `https://github.com/coder/agentapi/actions/workflows/release.yml` and monitor the status of the job that was created in the previous step. This will upload the built assets to the corresponding release. + +8. Once the updated assets are released, you can now visit `https://github.com/coder/agentapi/releases/tag/vX.Y.Z`, click "Edit" (✎), and check "Set as latest release". diff --git a/README.md b/README.md index e442ee9..3f45478 100644 --- a/README.md +++ b/README.md @@ -184,41 +184,3 @@ Pending feedback, we're considering the following features: In the short term, AgentAPI solves the problem of how to programmatically control coding agents. As time passes, we hope to see the major agents release proper SDKs. One might wonder whether AgentAPI will still be needed then. We think that depends on whether agent vendors decide to standardize on a common API, or each sticks with a proprietary format. In the former case, we'll deprecate AgentAPI in favor of the official SDKs. In the latter case, our goal will be to make AgentAPI a universal adapter to control any coding agent, so a developer using AgentAPI can switch between agents without changing their code. - -## For Maintainers - -### Release Process - -Before performing a release, perform a local "smoke-test". -If everything seems OK, you can proceed to do the following: - -1. Update the version string in the following places: - - `openapi.json` - - `chat/package.json` - - `lib/httpapi/server.go` -2. Add details in `CHANGELOG.md` on what changed. -3. Create a PR with the subject `chore: update version to X.Y.Z` -4. Once the above PR is approved and merged, create a new git tag `vX.Y.Z` pointing to the commit of the above PR merged to `main`:S - - ```shell - # Fetch existing tags first! - git fetch --tags - git tag -a vX.Y.Z -m 'vX.Y.Z' - ``` - -5. Push the tag: - - ```shell - git push origin tag vX.Y.Z - ``` - -6. Visit `https://github.com/coder/agentapi/releases/tag/vX.Y.Z` and "Create release from tag". - - - Select the tag you pushed previously. - - Select the previous tag and "Generate release notes". Amend as required. - - **IMPORTANT:** un-check "Set as latest release" and check "Set as a pre-release". - - Click "Publish Release". This will trigger a "Build Release Binaries" CI job. - -7. Visit `https://github.com/coder/agentapi/actions/workflows/release.yml` and monitor the status of the job that was created in the previous step. This will upload the built assets to the corresponding release. - -8. Once the updated assets are released, you can now visit `https://github.com/coder/agentapi/releases/tag/vX.Y.Z`, click "Edit" (✎), and check "Set as latest release". From 14bcd99f75b70bcafbba8c7428cc005e9cb49cf9 Mon Sep 17 00:00:00 2001 From: Cian Johnston Date: Thu, 21 Aug 2025 11:44:22 +0100 Subject: [PATCH 3/3] Update MAINTAINERS.md Co-authored-by: Hugo Dutka --- MAINTAINERS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS.md b/MAINTAINERS.md index ca978c7..3fbc5af 100644 --- a/MAINTAINERS.md +++ b/MAINTAINERS.md @@ -1,4 +1,4 @@ -# Information Maintainers +# Information for Maintainers ## Release Process