Agent skill

Dt Obs GCP

by Dynatrace in Dynatrace/dynatrace-for-ai

GCP cloud resources including Compute Engine, GKE, Cloud Run, Pub/Sub, VPC networking, DNS, IAM, Secret Manager, and monitoring.

Apache-2.0Auto-check passedDevOps & Cloud

Install Dt Obs GCP

skills CLI
$ npx skills add Dynatrace/dynatrace-for-ai --skill dt-obs-gcp -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Dynatrace/dynatrace-for-ai dt-obs-gcp --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Dynatrace/dynatrace-for-ai.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/dt-obs-gcp .claude/skills/dt-obs-gcp && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
dt-obs-gcp
GitHub stars
163
Token cost
~2.5k tokens
SKILL.md length
917 words
Files
11 (incl. references)
Skills in repo
33
Repo updated
First seen
Licence
Apache-2.0

At a glance

GCP cloud resources including Compute Engine, GKE, Cloud Run, Pub/Sub, VPC networking, DNS, IAM, Secret Manager, and monitoring.

  • Works in 4 steps: Always parse gcp.object with JSON… → Access primary resource attributes via… → Access extended properties via… → …
  • Tasks that involve Event-driven systems
  • SKILL.md covers When to Use This Skill, Core Concepts, Query Patterns and Reference Guide, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Dt Obs GCP is an agent skill from Dynatrace/dynatrace-for-ai. GCP cloud resources including Compute Engine, GKE, Cloud Run, Pub/Sub, VPC networking, DNS, IAM, Secret Manager, and monitoring. Monitor GCP infrastructure, analyze resource usage, audit security posture, and manage organizational hierarchy across projects and folders.

Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 11 other files, including reference files (for example `references/README.md`, `references/compute-instances.md` and `references/iam-security.md`).

It sits in DevOps & Cloud, covering Event-driven systems and Container orchestration. It works with Google Cloud, Google Kubernetes Engine, Cloud Run and Kubernetes. The repository describes itself as: Skills, prompts, and instructions for building AI agents on top of Dynatrace production context. The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Event-driven systems
  • Tasks that involve Container orchestration

Example prompts

  • “/dt-obs-gcp”

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Always parse gcp.object with JSON parser: parse gcp.object, "JSON:gcpjson"
  2. Access primary resource attributes via gcpjsonconfiguration[...]
  3. Access extended properties via gcpjsonconfiguration[...]
  4. Check for null values after parsing with isNotNull()

What it can do on your machine

Read from SKILL.md and the folder at commit 4f9aa71. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are dql).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Dt Obs GCP loads about 2.5k tokens when it runs, and up to ~9.6k if it reads all its reference files. Until then it costs about 70 tokens; SKILL.md has 917 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~70
When it runs · the whole SKILL.md, loaded when a task matches
~2.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~9.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Dynatrace/dynatrace-for-ai at commit 4f9aa71, republished under its Apache-2.0 licence (© Dynatrace). 917 words, ~2,545 tokens.

Download SKILL.mdSave it as .claude/skills/dt-obs-gcp/SKILL.md (or your agent's skills folder). This skill also uses 10 other files; get the full folder from GitHub.
name
dt-obs-gcp
description
GCP cloud resources including Compute Engine, GKE, Cloud Run, Pub/Sub, VPC networking, DNS, IAM, Secret Manager, and monitoring. Monitor GCP infrastructure, analyze resource usage, audit security posture, and manage organizational hierarchy across projects and folders.
license
Apache-2.0

GCP Cloud Infrastructure

Monitor and analyze GCP resources using Dynatrace Smartscape and DQL. Query GCP services, manage organizational hierarchy, audit security posture, and track resource ownership across your GCP infrastructure.

When to Use This Skill

Use this skill when the user needs to work with GCP resources in Dynatrace. Load the reference file for the task type:

TaskFile to load
Inventory and topology queries(no additional file — use core patterns above)
Compute Engine instances, machine types, IP addressesLoad references/compute-instances.md
GKE clusters, node pools, pods, deployments, services, RBACLoad references/kubernetes-gke.md
Cloud Run services, revisions, executionsLoad references/serverless-containers.md
VPC networks, subnets, routes, DNS recordsLoad references/networking-dns.md
Pub/Sub topicsLoad references/messaging-pubsub.md
IAM service accounts, roles, Secret ManagerLoad references/iam-security.md
Monitoring dashboards, logging, saved queriesLoad references/monitoring-logging.md
GCP projects, regions, organizational hierarchyLoad references/resource-management.md
Resource ownership, GCP labels, organizational structureLoad references/resource-ownership.md

Core Concepts

Entity Types

GCP resources use the GCP_* prefix and can be queried using the smartscapeNodes function. All GCP entities are automatically discovered and modeled in Dynatrace Smartscape.

Compute: GCP_COMPUTE_GOOGLEAPIS_COM_INSTANCE, GCP_COMPUTE_GOOGLEAPIS_COM_ADDRESS Networking: GCP_COMPUTE_GOOGLEAPIS_COM_NETWORK, GCP_COMPUTE_GOOGLEAPIS_COM_SUBNETWORK, GCP_COMPUTE_GOOGLEAPIS_COM_ROUTE, GCP_DNS_GOOGLEAPIS_COM_RESOURCERECORDSET Kubernetes (GKE): GCP_K8S_IO_POD, GCP_K8S_IO_NODE, GCP_K8S_IO_SERVICE, GCP_K8S_IO_SERVICEACCOUNT, GCP_K8S_IO_PERSISTENTVOLUMECLAIM, GCP_APPS_K8S_IO_DEPLOYMENT, GCP_APPS_K8S_IO_STATEFULSET, GCP_CONTAINER_GOOGLEAPIS_COM_NODEPOOL, GCP_RBAC_AUTHORIZATION_K8S_IO_CLUSTERROLEBINDING, GCP_RBAC_AUTHORIZATION_K8S_IO_ROLEBINDING Serverless: GCP_RUN_GOOGLEAPIS_COM_SERVICE, GCP_RUN_GOOGLEAPIS_COM_REVISION, GCP_RUN_GOOGLEAPIS_COM_EXECUTION IAM & Security: GCP_IAM_GOOGLEAPIS_COM_SERVICEACCOUNT, GCP_IAM_GOOGLEAPIS_COM_ROLE, GCP_SECRETMANAGER_GOOGLEAPIS_COM_SECRETVERSION Messaging: GCP_PUBSUB_GOOGLEAPIS_COM_TOPIC Monitoring: GCP_MONITORING_GOOGLEAPIS_COM_DASHBOARD, GCP_LOGGING_GOOGLEAPIS_COM_SAVEDQUERY Infrastructure: GCP_REGION

Common GCP Fields

All GCP entities include:

  • gcp.project.id — GCP project identifier
  • gcp.region — GCP region (e.g., us-central1)
  • gcp.zone — GCP zone (e.g., us-central1-a)
  • gcp.organization.id — GCP organization identifier
  • gcp.resource.name — Resource name
  • gcp.resource.type — Resource type identifier
  • gcp.asset.type — GCP asset type
  • gcp.object — JSON blob containing full resource configuration
GCP Organizational Hierarchy

GCP resources are organized in a hierarchy:

  • Organization — Top-level container (gcp.organization.id)
  • Folder — Logical grouping within an organization
  • Project — Resource container (gcp.project.id)
  • Region/Zone — Physical location (gcp.region, gcp.zone)
Entity Naming Convention

GCP entity types follow the pattern GCP_<SERVICE_API>_<RESOURCE>:

  • Service API maps to the Google API domain (e.g., compute.googleapis.com → COMPUTE_GOOGLEAPIS_COM)
  • Resource is the specific resource type (e.g., INSTANCE, NETWORK)

Examples:

  • GCP_COMPUTE_GOOGLEAPIS_COM_INSTANCE — Compute Engine VM
  • GCP_K8S_IO_POD — GKE pod
  • GCP_RUN_GOOGLEAPIS_COM_SERVICE — Cloud Run service

Query Patterns

All GCP queries build on four core patterns. Master these and adapt them to any entity type.

Pattern 1: Resource Discovery

List resources by type, filter by project/region/zone, summarize counts:

dql
smartscapeNodes "GCP_COMPUTE_GOOGLEAPIS_COM_INSTANCE"
| fields name, gcp.project.id, gcp.region, gcp.zone, gcp.resource.name

To list all GCP resource types, replace with "GCP_*" and add | summarize count = count(), by: {type} | sort count desc. Add filters like | filter gcp.project.id == "<PROJECT_ID>" or | filter gcp.region == "<REGION>" to scope results.

Pattern 2: Configuration Parsing

Parse gcp.object JSON for detailed configuration fields:

dql
smartscapeNodes "GCP_COMPUTE_GOOGLEAPIS_COM_INSTANCE"
| parse gcp.object, "JSON:gcpjson"
| fieldsAdd machineType = gcpjson[configuration][resource][machineType],
            status = gcpjson[configuration][resource][status]
| fields name, gcp.project.id, machineType, status

GCP configuration fields are nested under gcpjson[configuration][resource][...] for primary resource attributes and gcpjson[configuration][additionalAttributes][...] for extended properties.

Pattern 3: Relationship Traversal

Follow relationships between resources:

dql
smartscapeNodes "GCP_COMPUTE_GOOGLEAPIS_COM_INSTANCE"
| traverse "*", "GCP_COMPUTE_GOOGLEAPIS_COM_SUBNETWORK"
| fields name, gcp.project.id

GCP entities use "*" as the relationship name in traversals because GCP entities do not have named relationship types. Use fieldsKeep to carry fields through traversals and dt.traverse.history[-N] to access ancestor fields.

Pattern 4: Label-Based Ownership

Group resources by GCP labels for ownership and organizational tracking:

dql
smartscapeNodes "GCP_*"
| filter isNotNull(`tags:gcp_labels`)
| fields name, gcp.project.id, `tags:gcp_labels`

GCP labels are exposed via the tags:gcp_labels field and must be accessed using backtick syntax. Replace "GCP_*" with a specific type to scope to one service.


Show full SKILL.md (428 more words)Show less

Reference Guide

Load reference files for detailed queries when the core patterns above need service-specific adaptation.

ReferenceWhen to loadKey content
compute-instances.mdCompute Engine VMs, machine types, IP addresses, disksInstance inventory, machine type distribution, status checks
kubernetes-gke.mdGKE clusters, node pools, pods, deployments, services, RBACCluster topology, workload distribution, RBAC bindings
serverless-containers.mdCloud Run services, revisions, executionsService inventory, revision tracking, execution analysis
networking-dns.mdVPC networks, subnets, routes, DNS recordsNetwork topology, subnet analysis, route tables, DNS record sets
messaging-pubsub.mdPub/Sub topicsTopic inventory, messaging topology
iam-security.mdIAM service accounts, roles, Secret ManagerService account audit, role analysis, secret version tracking
monitoring-logging.mdMonitoring dashboards, logging, saved queriesDashboard inventory, saved query analysis
resource-management.mdGCP projects, regions, organizational hierarchyProject inventory, region distribution, hierarchy mapping
resource-ownership.mdResource ownership, GCP labels, organizational structureLabel-based grouping, project-level summaries, chargeback

Best Practices

Configuration Parsing
  1. Always parse gcp.object with JSON parser: parse gcp.object, "JSON:gcpjson"
  2. Access primary resource attributes via gcpjson[configuration][resource][...]
  3. Access extended properties via gcpjson[configuration][additionalAttributes][...]
  4. Check for null values after parsing with isNotNull()
GCP Hierarchy
  1. Organization → Folder → Project → Region/Zone
  2. Use gcp.project.id as the primary scoping filter
  3. Use gcp.organization.id for cross-project queries
  4. Use gcp.region and gcp.zone for location-based analysis
Entity Naming
  1. Entity types follow the GCP_<SERVICE_API>_<RESOURCE> format
  2. Service API maps to the Google API domain with underscores replacing dots and hyphens
  3. Use specific entity types (avoid "GCP_*" wildcards when possible)
Labels
  1. GCP labels must be accessed via backtick syntax: `tags:gcp_labels`
  2. Use isNotNull(tags:gcp_labels) for label-based filtering
  3. Track label coverage with summarize operations
Relationship Traversal
  1. Use "*" as the relationship name — GCP entities do not have named relationship types
  2. Use fieldsKeep to maintain important fields through traversal
  3. Access traversal history with dt.traverse.history[-N]
  4. Complex topologies may require multiple traverse operations

Limitations and Notes

Smartscape Limitations
  • Smartscape data reflects the most recent scan; there may be a delay between GCP changes and Dynatrace visibility
  • Not all GCP services are represented as entity types
  • Some configuration fields may be null depending on resource setup
  • Resource discovery depends on GCP integration configuration
GCP-Specific Notes
  • GCP labels must be accessed via backtick syntax: `tags:gcp_labels`
  • GCP entities use "*" for relationship traversal (no named relationship types)
  • GCP object configuration requires parsing with parse gcp.object, "JSON:gcpjson"
  • Configuration fields nest under gcpjson[configuration][resource][...] (differs from AWS pattern)
General Tips
  • Filter early by project and region for better performance
  • Use isNotNull() and isNull() for graceful null handling
  • Combine project and region filters for large environments
  • Use countDistinct() for unique resource counts
  • Limit results with | limit N during exploration

© Dynatrace, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 10 other files (references) in skills/dt-obs-gcp of Dynatrace/dynatrace-for-ai.

  • SKILL.md
  • references/README.md
  • references/compute-instances.md
  • references/iam-security.md
  • references/kubernetes-gke.md
  • references/messaging-pubsub.md
  • references/monitoring-logging.md
  • references/networking-dns.md
  • references/resource-management.md
  • references/resource-ownership.md
  • references/serverless-containers.md

Open the folder on GitHubat commit 4f9aa71

Compare with similar skills

Dt Obs GCP next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Dt Obs GCP compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Dt Obs GCP this skillDynatrace/dynatrace-for-ai163—~2.5kAutomated safety check: PassApache-2.0
Devopsnicepkg/auto-company1952 repos~814Automated safety check: PassMIT
Google Cloud Solution Guided Gke AI Migrationgoogle/skills21k—~8.3kAutomated safety check: PassApache-2.0
Kcli Cluster Deploymentkarmab/kcli653—~1.5kAutomated safety check: PassApache-2.0
Logfire Infrastructurepydantic/skills140—~1.8kAutomated safety check: PassMIT
GCP Gkesickn33/agentic-awesome-skills47k2 repos~2.5kAutomated safety check: PassMIT

Similar skills

  • Devops

    nicepkg/auto-company

    Deploy to Cloudflare (Workers, R2, D1), Docker, GCP (Cloud Run, GKE), Kubernetes (kubectl, Helm).

    195 GitHub starsUsed in 2 repos~814 tokens
    DevOps & CloudAuto-check passed
  • Guides the migration of existing AI workloads (Cloud Run, Gemini API, Gemini Enterprise Agent Platform) to self-hosted GKE inference using gcloud and kubectl.

    21k GitHub stars~8.3k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Guides deployment and management of Kubernetes clusters with kcli.

    653 GitHub stars~1.5k tokensUpdated 2 days ago
    DevOps & CloudAuto-check passed
  • Logfire Infrastructure

    pydantic/skills

    Official

    Monitor hosts, Docker containers, Kubernetes clusters, database/queue/cache servers, and cloud-provider metrics with Pydantic Logfire — no application code required.

    140 GitHub stars~1.8k tokensUpdated 9 days ago
    DevOps & CloudAuto-check passed
  • GCP Gke

    sickn33/agentic-awesome-skills

    Deploy and manage Google Kubernetes Engine clusters. An agent skill from sickn33/agentic-awesome-skills.

    47k GitHub starsUsed in 2 repos~2.5k tokens
    DevOps & CloudAuto-check passed
  • Gke Cost Analysis

    google/skills

    Official

    Answer natural language questions and perform analysis on GKE cluster and workload costs using BigQuery billing exports, cost allocation data, and live cluster monitoring metrics.

    21k GitHub stars~1.5k tokensUpdated yesterday
    DevOps & CloudAuto-check passed

More from Dynatrace/dynatrace-for-ai

All 33 skills in this repo
  • Dt Obs Analytics

    Dynatrace/dynatrace-for-ai

    Analyze dashboards and notebooks using Davis analyzers — anomaly detection, novelty scoring, and correlation.

    163 GitHub stars~3.9k tokensUpdated 9 days ago
    Auto-check passed
  • Dt Setup iOS

    Dynatrace/dynatrace-for-ai

    Set up the Dynatrace iOS SDK (OneAgent) in an iOS project using Swift Package Manager.

    163 GitHub stars~3.3k tokensUpdated 9 days ago
    Auto-check passed
  • Dt Alerting

    Dynatrace/dynatrace-for-ai

    End-to-end Dynatrace alerting lifecycle — anomaly detector setup and model selection (static threshold, adaptive baseline, seasonal baseline), alert event storage in Grail, problem grouping and…

    163 GitHub stars~3.3k tokensUpdated 9 days ago
    Auto-check passed
  • Dt Obs AWS

    Dynatrace/dynatrace-for-ai

    AWS cloud resource monitoring including EC2, RDS, Lambda, ECS/EKS, VPC networking, load balancers, S3, DynamoDB, SQS/SNS, and cost optimization.

    163 GitHub stars~4.2k tokensUpdated 9 days ago
    Auto-check passed
  • Dt Obs Ext Monitors

    Dynatrace/dynatrace-for-ai

    3rd-party test and monitor result ingestion into Dynatrace Grail via the platform events ingest API (platform/ingest/custom/events/).

    163 GitHub stars~1.5k tokensUpdated 9 days ago
    Auto-check passed
  • Dt Obs Problems

    Dynatrace/dynatrace-for-ai

    DAVIS problem analysis including root cause identification, impact assessment, and correlation with other telemetry.

    163 GitHub stars~4.6k tokensUpdated 9 days ago
    Auto-check passed

Questions about Dt Obs GCP

What does Dt Obs GCP do?

GCP cloud resources including Compute Engine, GKE, Cloud Run, Pub/Sub, VPC networking, DNS, IAM, Secret Manager, and monitoring. Dt Obs GCP is an agent skill from Dynatrace/dynatrace-for-ai. GCP cloud resources including Compute Engine, GKE, Cloud Run, Pub/Sub, VPC networking, DNS, IAM, Secret Manager, and monitoring.

When should I use Dt Obs GCP?

Dt Obs GCP fits situations like: tasks that involve Event-driven systems; tasks that involve Container orchestration.

How do I install Dt Obs GCP in Claude Code?

Run `npx skills add Dynatrace/dynatrace-for-ai --skill dt-obs-gcp -a claude-code`. Or copy the skill folder (skills/dt-obs-gcp in Dynatrace/dynatrace-for-ai) into .claude/skills/dt-obs-gcp in your project. Claude Code loads it when a task matches its description.

How do I install Dt Obs GCP in Codex?

Run `npx skills add Dynatrace/dynatrace-for-ai --skill dt-obs-gcp -a codex`. Or copy the skill folder (skills/dt-obs-gcp in Dynatrace/dynatrace-for-ai) into .agents/skills/dt-obs-gcp in your project. Codex loads it when a task matches its description.

Can I use Dt Obs GCP in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Dynatrace/dynatrace-for-ai --skill dt-obs-gcp -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dt-obs-gcp, .gemini/skills/dt-obs-gcp, .github/skills/dt-obs-gcp and .opencode/skills/dt-obs-gcp in your project.

What does Dt Obs GCP need to run?

SKILL.md names no scripts, command-line tools or credentials: Dt Obs GCP is instructions for the agent only.

Does Dt Obs GCP access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Dt Obs GCP safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Dt Obs GCP use?

Dt Obs GCP is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Dt Obs GCP use?

About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 7.1k tokens, read only when the agent opens those files.

What are the alternatives to Dt Obs GCP?

Skills that share tags, products or a category with Dt Obs GCP: Devops (nicepkg/auto-company, 195 stars), Google Cloud Solution Guided Gke AI Migration (google/skills, 21k stars), Kcli Cluster Deployment (karmab/kcli, 653 stars) and Logfire Infrastructure (pydantic/skills, 140 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Dt Obs GCP?

Dynatrace (a GitHub organization) maintains it in Dynatrace/dynatrace-for-ai, which has 163 GitHub stars. The repository holds 33 skills in this directory. The repository was last updated on October 1, 2026.

Source: Dynatrace/dynatrace-for-ai on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.