Google Cloud Compute Engine

Vendor key: gcp_compute_engine. For how source fields and scan configs fit together, see Agent Discovery Integrations.

Discovers agentic coding tools, local agents, AI browsers and browser extensions installed on your Compute Engine VMs. The Arthur discovery collector runs on each VM and writes its results to the VM's guest attributes, and Arthur reads them through the Compute Engine API.

Before you start

  1. Deploy the Arthur discovery collector to your VMs. It runs on a schedule through an OS policy.
  2. Enable guest attributes by setting the metadata key enable-guest-attributes=TRUE on each VM or on its project. Arthur reports VMs without it as guest-attributes-disabled and doesn't read them.

For step-by-step instructions, see the Compute Engine setup guide.

Source fields

FieldRequiredSensitiveDefaultDescription
project_idsYesNoComma-separated GCP project IDs to scan, for example prod-fleet,dev-fleet.
include_labelsNoNoAll VMsComma-separated key=value VM labels. Only VMs with at least one of these labels are scanned.
exclude_labelsNoNoNoneComma-separated key=value VM labels. VMs with any of these labels are skipped. If a VM matches both lists, it's excluded.
service_account_keyYes*YesThe full JSON key of a GCP service account.

* Required unless your Arthur engine runs on GCP and has been configured to use its own Application Default Credentials (ARTHUR_ENGINE_GCP_COMPUTE_ENGINE_ALLOW_ADC=true).

Label matching is exact. If no VM has a label in your selectors, the scan logs a warning and continues; it doesn't fail.

Scan config

SettingValue
query"" to use Arthur's built-in agent catalog, or your own catalog YAML.
query_languagenone
lookback_window_secondsArthur lists every VM on every scan. VMs whose collector hasn't reported within this window are counted as not-reported-in-window and their results aren't published. 0 publishes every VM's most recent report.

Required permissions

  • compute.instances.list
  • compute.instances.getGuestAttributes
  • compute.projects.get. Needed only when guest attributes are enabled at the project level rather than on each VM.

The predefined role roles/compute.viewer includes all three.


Did this page help you?