Skip to content

Commit e6f3b94

Browse files
authored
Rename skills and added documentation for skills (#117)
* Rename skills and added documentation for skills
1 parent 0fb0f65 commit e6f3b94

26 files changed

Lines changed: 32 additions & 18 deletions

README.md

Lines changed: 26 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,11 @@ The CI/CD extension for Gemini CLI automates Continuous Integration and Continuo
1414
1515
## 📋 Key Features
1616

17-
- **Intelligent Code Deployment**: Use the `/cicd:deploy` command to deploy your codebase. The extension leverages Gemini to analyze your project and recommend the best Google Cloud service: Cloud Run for dynamic applications or Cloud Storage for static websites. Includes pre-deployment scanning for secrets, keys, and passwords to prevent accidental leaks.
18-
- **AI-Powered CI/CD Pipeline Design**: Generate secure and robust CI/CD pipelines in moments with `/cicd:design`. Collaborate with Gemini to tailor the pipeline to your specific needs, including automatic setup of the required Google Cloud infrastructure.
19-
- **Interactive GCP Management**: The extension provides commands and tools to interact directly with Google Cloud's CI/CD services (Cloud Build, Artifact Registry, Artifact Analysis, Cloud Deploy, Developer Connect) from within Gemini CLI. Run builds, check for vulnerabilities (CVEs), view SBOMs, and pull build logs to investigate failures.
20-
- **Simplified Complex Release Flows**: Build sophisticated Cloud Deploy release pipelines quickly, guided by simple, interactive questions.
17+
- **Intelligent Code Deployment**: Use the `google-cicd-deploy` skill to deploy your codebase. The extension leverages Gemini to analyze your project and deploy to Google Cloud services like Cloud Run for dynamic applications or Cloud Storage for static websites. Includes pre-deployment secret scanning.
18+
- **AI-Powered CI/CD Pipeline Design**: Generate secure and robust CI/CD pipelines with `google-cicd-pipeline-design`. Collaborate with Gemini to tailor the pipeline and generate a YAML configuration.
19+
- **Terraform GCP Infrastructure**: Provision and troubleshoot production-grade Google Cloud infrastructure using the `google-cicd-terraform` skill, enforcing Google’s Cloud Foundation Fabric patterns.
20+
- **Interactive GCP Management**: The extension provides tools to interact directly with Google Cloud's CI/CD services (Cloud Build, Artifact Registry, Cloud Deploy, Developer Connect) from within Gemini CLI.
21+
- **Simplified Complex Release Flows**: Build sophisticated Cloud Deploy release pipelines with the `google-cicd-release-orchestration` skill, setting up deployment strategies like canary and automatic rollbacks.
2122
- **Integrated CI/CD MCP Server**: The extension includes a local Model Context Protocol (MCP) server, seamlessly integrating Gemini CLI with Google Cloud CI/CD services.
2223

2324
## ⚙️ Installation
@@ -40,8 +41,10 @@ gemini extensions install https://github.com/gemini-cli-extensions/cicd
4041
* Artifact Registry API
4142
* Artifact Analysis API
4243
* Developer Connect API
43-
* Cloud Run API
44+
* Cloud Resource Manager API
4445
* Cloud Storage API
46+
* Cloud Run API
47+
* Google Kubernetes Engine API
4548
* Application Default Credentials (ADC): Ensure [Application Default Credentials](https://cloud.google.com/docs/authentication/gcloud) are configured in your environment. You can set this up by running:
4649
```bash
4750
gcloud auth login
@@ -56,8 +59,8 @@ gemini extensions install https://github.com/gemini-cli-extensions/cicd
5659
> This CI/CD extension connects Gemini CLI to a local MCP server, granting it the ability to access and modify your Google Cloud data based on your Application Default Credentials.
5760
>
5861
> * **LLM Hallucinations & Unintended Actions:** LLMs can produce incorrect or unexpected outputs ("hallucinate"). Since this extension allows Gemini to call tools that modify cloud resources, hallucinations can lead to unintended actions on your GCP project. **Always meticulously verify all generated configurations and commands before execution.**
59-
> * **Authentication and Permissions (ADC):** The extension uses your local ADC, inheriting its permissions. Be aware of the scope of these permissions, as Gemini CLI can potentially read, modify, and delete GCP resources.
60-
> * **Pipeline Service Account Permissions:** CI/CD pipelines generated by `/cicd:design` run using a GCP service account. Carefully vet the IAM roles and permissions assigned to this service account to prevent overly broad access.
62+
> * **Authentication and Permissions:** The extension uses your local Application Default Credentials ([ADC](https://docs.cloud.google.com/docs/authentication/set-up-adc-local-dev-environment)), inheriting its permissions. Be aware of the scope of these permissions, as Gemini CLI can potentially read, modify, and delete GCP resources.
63+
> * **Pipeline Service Account Permissions:** CI/CD pipelines generated by the `google-cicd-pipeline-design` skill run using a GCP service account. Carefully vet the IAM roles and permissions assigned to this service account to prevent overly broad access.
6164
> * **Indirect Prompt Injection Risk:** Be cautious when providing input to the language model, especially from untrusted sources, due to the risk of indirect prompt injection.
6265
> * **Untrusted Inputs:** Never include untrusted inputs (e.g., files, documents, emails from unverified sources) in the model's context. Such inputs could contain hidden instructions to hijack your session.
6366
> * **Untrusted Tools:** Only use this extension with the official tools it provides.
@@ -66,25 +69,36 @@ gemini extensions install https://github.com/gemini-cli-extensions/cicd
6669
6770
## ☕ Usage
6871
69-
#### `/cicd:deploy`
70-
Analyzes your local workspace to recommend and guide you through deploying to the most suitable Google Cloud service. It suggests Cloud Storage for static websites and Cloud Run for dynamic applications. Includes a pre-deployment scan for secrets to help prevent leaks.
72+
Activate the specialized skills using the `activate_skill` tool or by asking Gemini to use them.
73+
74+
#### `google-cicd-deploy`
75+
Deploys your application to Google Cloud. Analyzes your workspace and deploys to Cloud Storage for static websites or Cloud Run for container-based applications (either via Buildpacks or by building an image). Includes a pre-deployment scan for secrets to help prevent leaks.
7176
72-
#### `/cicd:design`
73-
Launches an AI-assisted process to design and generate a CI/CD pipeline configuration (`cloudbuild.yaml`) tailored to your project, including the necessary Google Cloud infrastructure.
77+
#### `google-cicd-pipeline-design`
78+
Designs and implements a Google Cloud-based CI/CD pipeline. Operates in two stages:
79+
1. **Architectural Design**: Gathers context, proposes deployment patterns, and drafts a YAML action plan collaboratively.
80+
2. **Plan Implementation**: Translates the approved plan into Terraform HCL or implements it directly using specialized tools and `gcloud`.
7481
7582
**Design Process:**
7683
7784
1. **Requirement Gathering:** Gemini inspects your current workspace and asks clarifying questions to understand your application type, build process, testing strategies, and deployment objectives.
78-
2. **Infrastructure Setup:** Based on the requirements, Gemini guides you through setting up the required GCP resources. This may include:
85+
2. **Infrastructure Setup:** Based on the requirements, Gemini guides you through setting up the required GCP resources. The skill offers setting up infrastructure using Terraform or directly updating your Google Cloud resources. This may include:
7986
* Creating or configuring Artifact Registry repositories.
8087
* Establishing connections to your Git repository (e.g., GitHub) using Developer Connect.
8188
* Setting up or advising on necessary IAM service accounts and permissions for the Cloud Build service.
89+
8290
3. **Pipeline Configuration Generation:** Gemini generates a `cloudbuild.yaml` file defining the pipeline stages (e.g., source checkout, build, test, artifact push). The configuration uses Cloud Build's script mode for clarity and ease of editing.
8391
4. **Validation & Testing:** The extension will attempt to validate the generated pipeline configuration, potentially by submitting an initial test build using `gcloud builds submit`.
8492
5. **Review & Refinement:** You can review the generated configuration and infrastructure setup and provide feedback to Gemini for adjustments.
8593

8694
The goal is to produce a functional, production-ready CI/CD pipeline configuration with all the necessary GCP prerequisites in place.
8795

96+
#### `google-cicd-release-orchestration`
97+
Designs Cloud Deploy delivery pipelines and manages releases. Guides you through designing `clouddeploy.yaml` for targets, pipelines, and automations (including observability alert policies). Also assists with release management and generating runtime manifests.
98+
99+
#### `google-cicd-terraform`
100+
Architects, provisions, and troubleshoots CI/CD related resources in Google Cloud infrastructure using Terraform. Provides expert guidance on designing and deploying core services (Cloud Build, Cloud Deploy, Artifact Registry), implementing IAM least-privilege, and managing GCS-backed state.
101+
88102
### 🛠️ Supported MCP Tools
89103

90104
The extension exposes the following tools to Gemini CLI, enabling interaction with Google Cloud services:
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: deploy-cicd-gcp
2+
name: google-cicd-deploy
33
description: Deploy an application to Google Cloud. Use when the user wants to deploy a new application on GCP.
44
---
55

skills/gcp-cicd-deploy/references/how_to_deploy_to_gcs_with_gcloud.md renamed to skills/google-cicd-deploy/references/how_to_deploy_to_gcs_with_gcloud.md

File renamed without changes.

skills/gcp-cicd-design/SKILL.md renamed to skills/google-cicd-pipeline-design/SKILL.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
name: gcp-cicd-design
2+
name: google-cicd-pipeline-design
33
description: Design and implement a Google Cloud based CI/CD pipeline. Use when the user wants to build a new pipeline, design an architecture on GCP.
44
---
55

@@ -39,12 +39,12 @@ Once the user has approved the YAML plan, you must guide them through the implem
3939

4040
2. **Execute Based on Choice**:
4141
* **If Terraform is selected**:
42-
* Activate the `gcp-cicd-terraform` skill.
42+
* Activate the `google-cicd-terraform` skill.
4343
* Translate the approved YAML plan into Terraform HCL, following the standards and structure defined in the skill.
4444
* Follow the skill's **Execution Protocol** (Init, Validate, Plan, Apply), ensuring manual confirmation before the final `apply`.
4545
* **If Direct Implementation is selected**:
4646
* **Process Sequentially**: Execute the plan by processing the `stages` object in order.
47-
* **Leverage Skills & Tools**: For each component, check for available specialized tools (e.g., `create_cloud_build_trigger`) or relevant skills (e.g., `cloud-deploy-pipelines`). If a matching tool or skill is found, prioritize its use.
47+
* **Leverage Skills & Tools**: For each component, check for available specialized tools (e.g., `create_cloud_build_trigger`) or relevant skills (e.g., `google-cicd-release-orchestration`). If a matching tool or skill is found, prioritize its use.
4848
* **GCloud Fallback**: If no specialized tool or skill exists for a component, fall back to the appropriate `gcloud` command via `run_shell_command`.
4949
* **Report & Progress**: Announce the start of each step, wait for success, and report completion before proceeding to the next component.
5050

skills/gcp-cicd-design/references/how_to_build_cloudbuild_yaml.md renamed to skills/google-cicd-pipeline-design/references/how_to_build_cloudbuild_yaml.md

File renamed without changes.

skills/gcp-cicd-design/references/how_to_create_cloudbuild_trigger.md renamed to skills/google-cicd-pipeline-design/references/how_to_create_cloudbuild_trigger.md

File renamed without changes.

skills/gcp-cicd-design/references/how_to_write_dockerfile.md renamed to skills/google-cicd-pipeline-design/references/how_to_write_dockerfile.md

File renamed without changes.

skills/gcp-cicd-design/references/pattern_git_tag_triggered_release.txt renamed to skills/google-cicd-pipeline-design/references/pattern_git_tag_triggered_release.txt

File renamed without changes.

skills/gcp-cicd-design/references/pattern_trunk_based_ci_tag_based_cd.txt renamed to skills/google-cicd-pipeline-design/references/pattern_trunk_based_ci_tag_based_cd.txt

File renamed without changes.

skills/gcp-cicd-design/references/pattern_trunk_based_push_to_deploy.txt renamed to skills/google-cicd-pipeline-design/references/pattern_trunk_based_push_to_deploy.txt

File renamed without changes.

0 commit comments

Comments
 (0)