From a44ee7111feed59c088b880782f02c50f897ca83 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 18 Jul 2026 02:07:58 +0000 Subject: [PATCH 1/3] feat(stlc): configurable CI runner and private-production-repo support in workflow templates --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1556dd6..f5f1bb8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: lint: timeout-minutes: 10 name: lint - runs-on: ${{ github.repository == 'stainless-sdks/agentmail-cli' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} + runs-on: ${{ startsWith(github.repository, 'stainless-sdks/') && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} if: (github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata') steps: @@ -48,7 +48,7 @@ jobs: permissions: contents: read id-token: write - runs-on: ${{ github.repository == 'stainless-sdks/agentmail-cli' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} + runs-on: ${{ startsWith(github.repository, 'stainless-sdks/') && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} if: (github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata') steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 @@ -95,7 +95,7 @@ jobs: test: timeout-minutes: 10 name: test - runs-on: ${{ github.repository == 'stainless-sdks/agentmail-cli' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} + runs-on: ${{ startsWith(github.repository, 'stainless-sdks/') && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} if: github.event_name == 'push' || github.event.pull_request.head.repo.fork steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 From 6a66ceb8d3b60367e956818d0dbccafa002b29e6 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 20 Jul 2026 22:04:23 +0000 Subject: [PATCH 2/3] feat(api): api update --- .stats.yml | 4 ++-- pkg/cmd/apikey.go | 5 +++++ pkg/cmd/apikey_test.go | 4 +++- pkg/cmd/inboxapikey.go | 5 +++++ pkg/cmd/inboxapikey_test.go | 4 +++- pkg/cmd/podapikey.go | 5 +++++ pkg/cmd/podapikey_test.go | 4 +++- 7 files changed, 26 insertions(+), 5 deletions(-) diff --git a/.stats.yml b/.stats.yml index 5df686d..3674798 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 95 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/agentmail/agentmail-710dd939e94b2dbb7a2d7ffae0f5dbc6bab5893c201299f452fcf39e7dbd886c.yml -openapi_spec_hash: 4eb49916915aeac5a7897470322459d4 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/agentmail/agentmail-de0e6b98063302dfd5d2764851feb9718d504c322e217df7e390b94f9ca69275.yml +openapi_spec_hash: 25c26b19e1886ea1574a9da8402ec7df config_hash: 8c7283a75ec714092fa5f03087e28a65 diff --git a/pkg/cmd/apikey.go b/pkg/cmd/apikey.go index 1f75a1e..9c632d6 100644 --- a/pkg/cmd/apikey.go +++ b/pkg/cmd/apikey.go @@ -49,6 +49,11 @@ var apiKeysCreate = requestflag.WithInnerFlags(cli.Command{ Usage: "Read API keys.", InnerField: "api_key_read", }, + &requestflag.InnerFlag[*bool]{ + Name: "permissions.api-key-update", + Usage: "Update API keys.", + InnerField: "api_key_update", + }, &requestflag.InnerFlag[*bool]{ Name: "permissions.domain-create", Usage: "Create domains.", diff --git a/pkg/cmd/apikey_test.go b/pkg/cmd/apikey_test.go index 2dd1fa4..d3f22a4 100644 --- a/pkg/cmd/apikey_test.go +++ b/pkg/cmd/apikey_test.go @@ -17,7 +17,7 @@ func TestAPIKeysCreate(t *testing.T) { "--api-key", "string", "api-keys", "create", "--name", "name", - "--permissions", "{api_key_create: true, api_key_delete: true, api_key_read: true, domain_create: true, domain_delete: true, domain_read: true, domain_update: true, draft_create: true, draft_delete: true, draft_read: true, draft_send: true, draft_update: true, inbox_create: true, inbox_delete: true, inbox_read: true, inbox_update: true, label_blocked_read: true, label_spam_read: true, label_trash_read: true, list_entry_create: true, list_entry_delete: true, list_entry_read: true, message_read: true, message_send: true, message_update: true, metrics_read: true, pod_create: true, pod_delete: true, pod_read: true, thread_delete: true, thread_read: true, webhook_create: true, webhook_delete: true, webhook_read: true, webhook_update: true}", + "--permissions", "{api_key_create: true, api_key_delete: true, api_key_read: true, api_key_update: true, domain_create: true, domain_delete: true, domain_read: true, domain_update: true, draft_create: true, draft_delete: true, draft_read: true, draft_send: true, draft_update: true, inbox_create: true, inbox_delete: true, inbox_read: true, inbox_update: true, label_blocked_read: true, label_spam_read: true, label_trash_read: true, list_entry_create: true, list_entry_delete: true, list_entry_read: true, message_read: true, message_send: true, message_update: true, metrics_read: true, pod_create: true, pod_delete: true, pod_read: true, thread_delete: true, thread_read: true, webhook_create: true, webhook_delete: true, webhook_read: true, webhook_update: true}", ) }) @@ -34,6 +34,7 @@ func TestAPIKeysCreate(t *testing.T) { "--permissions.api-key-create=true", "--permissions.api-key-delete=true", "--permissions.api-key-read=true", + "--permissions.api-key-update=true", "--permissions.domain-create=true", "--permissions.domain-delete=true", "--permissions.domain-read=true", @@ -77,6 +78,7 @@ func TestAPIKeysCreate(t *testing.T) { " api_key_create: true\n" + " api_key_delete: true\n" + " api_key_read: true\n" + + " api_key_update: true\n" + " domain_create: true\n" + " domain_delete: true\n" + " domain_read: true\n" + diff --git a/pkg/cmd/inboxapikey.go b/pkg/cmd/inboxapikey.go index 4478dd7..f914116 100644 --- a/pkg/cmd/inboxapikey.go +++ b/pkg/cmd/inboxapikey.go @@ -55,6 +55,11 @@ var inboxesAPIKeysCreate = requestflag.WithInnerFlags(cli.Command{ Usage: "Read API keys.", InnerField: "api_key_read", }, + &requestflag.InnerFlag[*bool]{ + Name: "permissions.api-key-update", + Usage: "Update API keys.", + InnerField: "api_key_update", + }, &requestflag.InnerFlag[*bool]{ Name: "permissions.domain-create", Usage: "Create domains.", diff --git a/pkg/cmd/inboxapikey_test.go b/pkg/cmd/inboxapikey_test.go index 363128d..607f309 100644 --- a/pkg/cmd/inboxapikey_test.go +++ b/pkg/cmd/inboxapikey_test.go @@ -18,7 +18,7 @@ func TestInboxesAPIKeysCreate(t *testing.T) { "inboxes:api-keys", "create", "--inbox-id", "inbox_id", "--name", "name", - "--permissions", "{api_key_create: true, api_key_delete: true, api_key_read: true, domain_create: true, domain_delete: true, domain_read: true, domain_update: true, draft_create: true, draft_delete: true, draft_read: true, draft_send: true, draft_update: true, inbox_create: true, inbox_delete: true, inbox_read: true, inbox_update: true, label_blocked_read: true, label_spam_read: true, label_trash_read: true, list_entry_create: true, list_entry_delete: true, list_entry_read: true, message_read: true, message_send: true, message_update: true, metrics_read: true, pod_create: true, pod_delete: true, pod_read: true, thread_delete: true, thread_read: true, webhook_create: true, webhook_delete: true, webhook_read: true, webhook_update: true}", + "--permissions", "{api_key_create: true, api_key_delete: true, api_key_read: true, api_key_update: true, domain_create: true, domain_delete: true, domain_read: true, domain_update: true, draft_create: true, draft_delete: true, draft_read: true, draft_send: true, draft_update: true, inbox_create: true, inbox_delete: true, inbox_read: true, inbox_update: true, label_blocked_read: true, label_spam_read: true, label_trash_read: true, list_entry_create: true, list_entry_delete: true, list_entry_read: true, message_read: true, message_send: true, message_update: true, metrics_read: true, pod_create: true, pod_delete: true, pod_read: true, thread_delete: true, thread_read: true, webhook_create: true, webhook_delete: true, webhook_read: true, webhook_update: true}", ) }) @@ -36,6 +36,7 @@ func TestInboxesAPIKeysCreate(t *testing.T) { "--permissions.api-key-create=true", "--permissions.api-key-delete=true", "--permissions.api-key-read=true", + "--permissions.api-key-update=true", "--permissions.domain-create=true", "--permissions.domain-delete=true", "--permissions.domain-read=true", @@ -79,6 +80,7 @@ func TestInboxesAPIKeysCreate(t *testing.T) { " api_key_create: true\n" + " api_key_delete: true\n" + " api_key_read: true\n" + + " api_key_update: true\n" + " domain_create: true\n" + " domain_delete: true\n" + " domain_read: true\n" + diff --git a/pkg/cmd/podapikey.go b/pkg/cmd/podapikey.go index ff85ae4..cba4ed1 100644 --- a/pkg/cmd/podapikey.go +++ b/pkg/cmd/podapikey.go @@ -55,6 +55,11 @@ var podsAPIKeysCreate = requestflag.WithInnerFlags(cli.Command{ Usage: "Read API keys.", InnerField: "api_key_read", }, + &requestflag.InnerFlag[*bool]{ + Name: "permissions.api-key-update", + Usage: "Update API keys.", + InnerField: "api_key_update", + }, &requestflag.InnerFlag[*bool]{ Name: "permissions.domain-create", Usage: "Create domains.", diff --git a/pkg/cmd/podapikey_test.go b/pkg/cmd/podapikey_test.go index 730ea70..97829eb 100644 --- a/pkg/cmd/podapikey_test.go +++ b/pkg/cmd/podapikey_test.go @@ -18,7 +18,7 @@ func TestPodsAPIKeysCreate(t *testing.T) { "pods:api-keys", "create", "--pod-id", "pod_id", "--name", "name", - "--permissions", "{api_key_create: true, api_key_delete: true, api_key_read: true, domain_create: true, domain_delete: true, domain_read: true, domain_update: true, draft_create: true, draft_delete: true, draft_read: true, draft_send: true, draft_update: true, inbox_create: true, inbox_delete: true, inbox_read: true, inbox_update: true, label_blocked_read: true, label_spam_read: true, label_trash_read: true, list_entry_create: true, list_entry_delete: true, list_entry_read: true, message_read: true, message_send: true, message_update: true, metrics_read: true, pod_create: true, pod_delete: true, pod_read: true, thread_delete: true, thread_read: true, webhook_create: true, webhook_delete: true, webhook_read: true, webhook_update: true}", + "--permissions", "{api_key_create: true, api_key_delete: true, api_key_read: true, api_key_update: true, domain_create: true, domain_delete: true, domain_read: true, domain_update: true, draft_create: true, draft_delete: true, draft_read: true, draft_send: true, draft_update: true, inbox_create: true, inbox_delete: true, inbox_read: true, inbox_update: true, label_blocked_read: true, label_spam_read: true, label_trash_read: true, list_entry_create: true, list_entry_delete: true, list_entry_read: true, message_read: true, message_send: true, message_update: true, metrics_read: true, pod_create: true, pod_delete: true, pod_read: true, thread_delete: true, thread_read: true, webhook_create: true, webhook_delete: true, webhook_read: true, webhook_update: true}", ) }) @@ -36,6 +36,7 @@ func TestPodsAPIKeysCreate(t *testing.T) { "--permissions.api-key-create=true", "--permissions.api-key-delete=true", "--permissions.api-key-read=true", + "--permissions.api-key-update=true", "--permissions.domain-create=true", "--permissions.domain-delete=true", "--permissions.domain-read=true", @@ -79,6 +80,7 @@ func TestPodsAPIKeysCreate(t *testing.T) { " api_key_create: true\n" + " api_key_delete: true\n" + " api_key_read: true\n" + + " api_key_update: true\n" + " domain_create: true\n" + " domain_delete: true\n" + " domain_read: true\n" + From b86c127967e4527628f505adf46dd4ed36338345 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 20 Jul 2026 22:04:48 +0000 Subject: [PATCH 3/3] release: 0.7.15 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 9 +++++++++ pkg/cmd/version.go | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index ec46183..1985dc1 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.7.14" + ".": "0.7.15" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index ecdf208..d79d7b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## 0.7.15 (2026-07-20) + +Full Changelog: [v0.7.14...v0.7.15](https://github.com/agentmail-to/agentmail-cli/compare/v0.7.14...v0.7.15) + +### Features + +* **api:** api update ([6a66ceb](https://github.com/agentmail-to/agentmail-cli/commit/6a66ceb8d3b60367e956818d0dbccafa002b29e6)) +* **stlc:** configurable CI runner and private-production-repo support in workflow templates ([a44ee71](https://github.com/agentmail-to/agentmail-cli/commit/a44ee7111feed59c088b880782f02c50f897ca83)) + ## 0.7.14 (2026-07-15) Full Changelog: [v0.7.13...v0.7.14](https://github.com/agentmail-to/agentmail-cli/compare/v0.7.13...v0.7.14) diff --git a/pkg/cmd/version.go b/pkg/cmd/version.go index 6e914c7..c34323a 100644 --- a/pkg/cmd/version.go +++ b/pkg/cmd/version.go @@ -2,4 +2,4 @@ package cmd -const Version = "0.7.14" // x-release-please-version +const Version = "0.7.15" // x-release-please-version