cloud-monitoring-notification-channels-configuration
Generates Terraform HCL configurations for Cloud Monitoring notification channels (`google_monitoring_notification_channel`) and adds notification channels to…
Skill by googleOfficial
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/google-cloud-monitoring-notification-channels-configuration
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: devops, cloud, writing, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Shell scripts
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/cloud-monitoring-notification-channels-configuration
What's inside
- Skill name
cloud-monitoring-notification-channels-configuration- Description
- Generates Terraform HCL configurations for Cloud Monitoring notification channels (`google_monitoring_notification_channel`) and adds notification channels to alerting policies (`google_monitoring_alert_policy`) in Google Cloud projects. Use when creating or configuring email, SMS, Slack, PagerDuty, Pub/Sub, or webhook notification channels, verifying Pub/Sub topic compatibility (including cross-project topics, message storage policies, and in-transit enforcement) and publishing permissions for the Cloud Monitoring Service Agent, or adding notification channels to existing alert policies. Don't use for authoring or editing alerting policy conditions, selecting metric descriptors, or writing PromQL or Monitoring Filter queries.
- License
- Apache-2.0
- Metadata
- version: 1.0.1 · category: CloudObservabilityAndMonitoring
- Instructions
- 271 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
- Instructions call the network
Files (10)
- SKILL.md
- secret.tfvars · assets/
- attribution.md · references/
- email.md · references/
- pagerduty.md · references/
- pubsub.md · references/
- slack.md · references/
- sms.md · references/
- webhook.md · references/
- verify_pubsub_topic.sh · scripts/
SKILL.md (first lines)
# Cloud Monitoring Notification Channels Configuration
## Attribution
**MUST READ**: Before executing any `gcloud`, REST API, or MCP command, you
MUST read [Usage Attribution](references/attribution.md). For commands executed
directly in the terminal (never in generated scripts, Terraform, or user code),
prefix `gcloud` with
`CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:cloud-monitoring-notification-channels-configuration)"`
and append `agent-skills/1.0 (skill:cloud-monitoring-notification-channels-configuration)` to `User-Agent` headers.
## Context Provided
* **Terraform Only**: Write the generated observability configuration ONLY as
Terraform (`.tf`) files (e.g., `notification_channels.tf`).
- Install Terraform **ONLY** if you are asked to deploy the channels AND
there is no valid Terraform installation.
- If you are **NOT** asked to deploy the channels, **DO NOT** install
Terraform.
* **Working Directory Inference**: Determine the target path for `.tf` files
using the following order:
1. If the user provides a path, use that exact path for the `.tf` file.
2. If a path is not provided, search the workspace for existing `.tf` files
(preferring files that already define
`google_monitoring_notification_channel` or
`google_monitoring_alert_policy` resources, or existing directories in
the strict preference order: `monitoring/`, then `ops/`, then `sre/`).
If found, write `notification_channels.tf` in that directory (or update
the existing `.tf` file when modifying an existing resource).
3. If a path is not provided and no `.tf` files or target directories exist
in the workspace, create and write to
`monitoring/notification_channels.tf`.
* **Google Cloud Prerequisites**: When running `gcloud` CLI discovery commands
or deploying configurations with the `terraform` CLI against a Google Cloud
project, ensure the following prerequisites are met in order (do not execute
these commands if the user only asks to generate or print Terraform HCL):
1. **Target Project ID & Project Number**:
* Identify the target Google Cloud `{project_id}` from the user's
request or via `gcloud config get-value project`. If neither is
available, prompt the user to provide `{project_id}` before
continuing.
* When the Google Cloud project number (`{project_number}`) is needed
(such as constructing the Cloud Monitoring Service Agent identity
for Pub/Sub channels):
* **Method A (Standard)**: Run `gcloud projects describe
{project_id} --format='value(projectNumber)'`.
* **Method B (Ask User)**: If the command fails or you cannot
retrieve the project number, ask the user to provide it.
2. **Authentication**: Authenticate the `gcloud` CLI via `gcloud auth
login` and configure Application Default Credentials (ADC) for Terraform
via `gcloud auth application-default login`.
3. **Project Configuration & Billing**: Configure the target Google Cloud
project via `gcloud config set project {project_id}` (and ensure the
project has an active billing account attached).
* **Recovery Actions**: If `gcloud config set project {project_id}` or
`gcloud projects describe {project_id}` fails, verify active
credentials with `gcloud auth list`, list accessible projects with
`gcloud projects list`, or prompt the user to confirm the project ID
and access permissions. If deployment fails due to a missing or
inactive billing account, stop deployment and instruct the user to
link an active billing account (via `gcloud billing projects link
{project_id} --billing-account={account_id}` or in the Google Cloud
console) before retrying.
4. **IAM Permissions**: Ensure the principal has permission to manage
notification channels—either via the predefined Monitoring
NotificationChannel Editor role
(`roles/monitoring.notificationChannelEditor`, plus
`roles/monitoring.alertPolicyEditor` when adding a channel to an
existing alert policy) **or via a custom IAM role** containing the
equivalent permissions (`monitoring.notificationChannels.get`,
`monitoring.notificationChannels.list`,
`monitoring.notificationChannels.create`,
`monitoring.notificationChannels.update`,
`monitoring.notificationChannels.delete`, and
`monitoring.alertPolicies.get` / `monitoring.alertPolicies.update` when
updating an alert policy).
* **Recovery Actions**: Users with a custom role granting these
permissions do not need the predefined role name. If a `gcloud` or
`terraform` command fails with `PERMISSION_DENIED` (HTTP 403), stop
execution, identify the missing `monitoring.notificationChannels.*`
or `monitoring.alertPolicies.*` permission, and instruct the user to
ask a project administrator to grant
`roles/monitoring.notificationChannelEditor` (or a custom role with
the required permissions) to their principal.
* **Discovery Tips**:
* **Listing Notification Channels**: You MUST use `gcloud beta monitoring
channels list --project={project_id}` to list notification channels. Do
**NOT** use any other `gcloud` commands to list notification channels.
* **Verifying Pub/Sub Topics**: When configuring a Pub/Sub notification
channel, run
[`scripts/verify_pubsub_topic.sh`](scripts/verify_pubsub_topic.sh)
`{monitoring_project_id} {topic_name_or_path}` to verify that:
1. The Pub/Sub API (`pubsub.googleapis.com`) is enabled in the topic's
project (supporting both same-project topics and cross-project
topics specified as
`projects/{topic_project_id}/topics/{topic_name}`).
2. The topic exists and the monitoring project's Cloud Monitoring
Service Agent
(`service-{monitoring_project_number}@gcp-sa-monitoring-notification.iam.gserviceaccount.com`)
holds `roles/pubsub.publisher` on the topic or topic project.
3. The topic does **not** define a message storage policy
(`messageStoragePolicy` / `message_storage_policy`) and does **not**
have in-transit enforcement (`enforceInTransit` /
`enforce_in_transit`) enabled. **DO NOT** use a Pub/Sub topic that
defines a message storage policy or enforces in-transit restrictions
as a notification channel, because Cloud Monitoring cannot deliver
messages to such topics.
* **Attribution**: You MUST tag EVERY applicable command and Terraform
resource below that you create, modify, or suggest to the user.
* **Terraform HCL (`user_labels`)**:
* Every `google_monitoring_notification_channel` resource that you
create MUST include the `created-with-google-skill` label in its
`user_labels` block:
```terraform
user_labels = {
created-with-google-skill = "cloud-monitoring-notification-channels-configuration"
}From google/skills, Apache-2.0.
More from google/skills
- 0.865score
google-ads-api-account-diagnostics
google-ads-api-teamOfficial
Diagnoses Google Ads account performance issues such as conversion loss (value or volume), low lead flow/volume, and lost impression share (opportunities) due…
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.861score
secops-triage
Google LLCOfficial
Expert guidance for security alert triage in Google SecOps.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.861score
secops-detection-engineering
Google LLCOfficial
Author, validate, test, and deploy YARA-L 2.0 detection rules and evaluate end-to-end detection coverage gaps in Google SecOps.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.861score
secops-hunt
Google LLCOfficial
Expert guidance for proactive threat hunting in Google SecOps.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.861score
secops-cases
Google LLCOfficial
Manage Google Security Operations (SecOps) SOAR cases throughout their lifecycle.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.861score
secops-investigate
Google LLCOfficial
Expert guidance for deep security incident and entity investigations in Google SecOps.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.824score
google-ads-api-quickstart
google-ads-api-teamOfficial
Guides developers through Google Ads API quickstart: credential setup, choosing from 6 client libraries/REST, configuring environments, and running a…
SkillBFreshness: B★ 21.5KClaude Code +9 - 0.819score
google-ads-api-mcp-setup
google-ads-api-teamOfficial
Guides developers through downloading, configuring, and installing the official open-source Google Ads MCP Server.
SkillBFreshness: B★ 21.5KClaude Code +9 - 0.815score
ima-dai-sdk
Google LLCOfficial
Integrates the Google Interactive Media Ads (IMA) Dynamic Ad Insertion (DAI) SDK into websites, web apps, mobile apps, or TV apps.
SkillBFreshness: B★ 21.5KClaude Code +9 - 0.815score
ima-sdk-client-side
Google LLCOfficial
Supports Interactive Media Ads (IMA) SDK.
SkillBFreshness: B★ 21.5KClaude Code +9 - 0.699score
gcloud
googleOfficial
Provides safety-critical validation, guardrails, and data reduction for gcloud CLI operations across Google Cloud Platform (GCP) services and infrastructure.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.699score
agent-platform-deploy
googleOfficial
Deploy open models or custom weights from Model Garden to Agent Platform endpoints, check the status of an in-progress deployment operation, or clean up…
SkillAFreshness: A★ 21.5KClaude Code +9
Compare and alternatives
Featured in
Signals
- Stars
- 21,542
- Forks
- 1,821
- Open issues
- 21
- Last commit (this folder)
- Oct 19, 2026 (8 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0.1
- License
- Apache-2.0
- Repository
- github.com/google/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from google
- 0.699score
retrieving-developer-knowledge
googleOfficial
Searches, retrieves, and synthesizes official Google developer documentation across Google Cloud, AI/Gemini, Android, Chrome, Web, Flutter, Go, Firebase, and…
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.699score
data-manager-api-setup
googleOfficial
Guides developers through client library installation and authentication setup steps for the Data Manager API.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.699score
agent-platform-migrate-from-ai-studio
googleOfficial
Guides agents and users through migrating from Gemini API in Google AI Studio to Gemini Enterprise Agent Platform (formerly Vertex AI).
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.699score
gcloud
googleOfficial
Provides safety-critical validation, guardrails, and data reduction for gcloud CLI operations across Google Cloud Platform (GCP) services and infrastructure.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.699score
google-cloud-recipe-onboarding
googleOfficial
Guides a developer's first steps on Google Cloud, covering account creation, billing setup, project management, and deploying a first resource.
SkillAFreshness: A★ 21.5KClaude Code +9 - 0.699score
agent-platform-deploy
googleOfficial
Deploy open models or custom weights from Model Garden to Agent Platform endpoints, check the status of an in-progress deployment operation, or clean up…
SkillAFreshness: A★ 21.5KClaude Code +9
Cite this page
cloud-monitoring-notification-channels-configuration skill. Agent Mart. https://agentmart.dev/skills/google-cloud-monitoring-notification-channels-configuration (last updated 2026-10-24)