Skip to content

test(plugins): add live install verification scripts for each agent - #184

Open
evanpurkhiser wants to merge 1 commit into
mainfrom
evanpurkhiser/test-plugins-add-live-install-verification-scripts-for-each-agent
Open

test(plugins): add live install verification scripts for each agent#184
evanpurkhiser wants to merge 1 commit into
mainfrom
evanpurkhiser/test-plugins-add-live-install-verification-scripts-for-each-agent

test(plugins): add live install verification scripts for each agent

35c22e7
Select commit
Loading
Failed to load commit list.
@sentry/warden / warden: security-review completed Jun 17, 2026 in 0s

1 issue

security-review: Found 1 issue (1 medium)

Medium

Unpinned curl|bash installers run with GH_TOKEN in deploy step (supply-chain exposure) - `.github/workflows/deploy-plugins.yml:113`

Each new plugin-src/<agent>/verify-install.sh pipes an unverified remote installer (e.g. curl -fsSL https://x.ai/cli/install.sh | bash) and is invoked from the deploy workflow's Build and deploy step, which exports GH_TOKEN (a GitHub App token with contents:write on the matching plugin repo). If any of the four vendor install endpoints is compromised, the malicious installer inherits GH_TOKEN and the tokenized git remote already on the runner, allowing pushes to getsentry/plugin-<agent>. Pin the CLI install to a verified version/checksum or run the install in a step that does not have the deploy token in scope.

Also found at:

  • plugin-src/cursor/verify-install.sh:28
  • plugin-src/grok/verify-install.sh:21

⏱ 1m 57s · 453.4k in / 42.4k out · $1.65

Annotations

Check warning on line 113 in .github/workflows/deploy-plugins.yml

See this annotation in the file changed.

@sentry-warden sentry-warden / warden: security-review

Unpinned curl|bash installers run with GH_TOKEN in deploy step (supply-chain exposure)

Each new plugin-src/&lt;agent&gt;/verify-install.sh pipes an unverified remote installer (e.g. `curl -fsSL https://x.ai/cli/install.sh | bash`) and is invoked from the deploy workflow's `Build and deploy` step, which exports GH_TOKEN (a GitHub App token with contents:write on the matching plugin repo). If any of the four vendor install endpoints is compromised, the malicious installer inherits GH_TOKEN and the tokenized git remote already on the runner, allowing pushes to getsentry/plugin-&lt;agent&gt;. Pin the CLI install to a verified version/checksum or run the install in a step that does not have the deploy token in scope.

Check warning on line 28 in plugin-src/cursor/verify-install.sh

See this annotation in the file changed.

@sentry-warden sentry-warden / warden: security-review

[TJL-YS2] Unpinned curl|bash installers run with GH_TOKEN in deploy step (supply-chain exposure) (additional location)

Each new plugin-src/&lt;agent&gt;/verify-install.sh pipes an unverified remote installer (e.g. `curl -fsSL https://x.ai/cli/install.sh | bash`) and is invoked from the deploy workflow's `Build and deploy` step, which exports GH_TOKEN (a GitHub App token with contents:write on the matching plugin repo). If any of the four vendor install endpoints is compromised, the malicious installer inherits GH_TOKEN and the tokenized git remote already on the runner, allowing pushes to getsentry/plugin-&lt;agent&gt;. Pin the CLI install to a verified version/checksum or run the install in a step that does not have the deploy token in scope.

Check warning on line 21 in plugin-src/grok/verify-install.sh

See this annotation in the file changed.

@sentry-warden sentry-warden / warden: security-review

[TJL-YS2] Unpinned curl|bash installers run with GH_TOKEN in deploy step (supply-chain exposure) (additional location)

Each new plugin-src/&lt;agent&gt;/verify-install.sh pipes an unverified remote installer (e.g. `curl -fsSL https://x.ai/cli/install.sh | bash`) and is invoked from the deploy workflow's `Build and deploy` step, which exports GH_TOKEN (a GitHub App token with contents:write on the matching plugin repo). If any of the four vendor install endpoints is compromised, the malicious installer inherits GH_TOKEN and the tokenized git remote already on the runner, allowing pushes to getsentry/plugin-&lt;agent&gt;. Pin the CLI install to a verified version/checksum or run the install in a step that does not have the deploy token in scope.