·
Last changedVersion:
This version passed the hardening gate. Hardening updated the skill content and independently checked the resulting changes. Classified findings before hardening: 5. Classified findings closed: 0. Classified findings remaining: 5. Unclassified scanner findings remaining: 0. Review findings closed: 1. Review findings remaining: 16.
1
4
1
4
Expand | File | Group | Subtype | Severity | Status |
|---|---|---|---|---|---|
SKILL.md | Excessive Agency & Rogue Autonomy | — | Medium | Open | |
SKILL.md | Malicious Code & Command Execution | — | Low | Open | |
SKILL.md | Supply Chain & Install-Time Trust | Install-time download and execute | Low | Open | |
SKILL.md | Malicious Code & Command Execution | Command injection | Low | Open | |
references/create.md | Malicious Code & Command Execution | Command injection | Low | Open |
5 findings
To use this skill effectively:
Execute Operations via Python: Run the Python snippets below using
run_command in the execution environment to manage prompts in Agent
Platform on behalf of the user.
No File System Search: Do not try to find Python files or scripts on the file system for these operations.
Before executing any commands or scripts on behalf of the user, you must adhere to the following safety tiers based on the action requested, to prevent accidental mutation or permanent deletion of prompt resources:
Tier R: Read-only (list, get)
Tier M: Mutating & Reversible (create)
Requires interactive confirmation with 'Yes'/'No' options before executing prompt creation, to prevent unintended resource proliferation or misconfiguration. The confirmation prompt must clearly explain the proposed prompt creation and its key parameters (e.g., display name, template text, target model). Natural-language paraphrases without specifying the parameters are not sufficient.
Same-turn restriction: Do not execute the creation code in the same turn as presenting the confirmation prompt. Stop and wait for the user's reply; only execute after explicit 'Yes' / approval.
Every parameter in the card must trace back to something the user said.
The target model is a user choice, not a default: if the user did not
name one, ASK before building the card. Do not carry over the model that
appears in the examples here or in references/create.md.
Gold Standard Example — for a user who said "create a prompt called Customer Support Greeting for gemini-2.5-pro with the template Hello {{user_name}}, how can I help...":
Tier D: Destructive & Irreversible (delete)
Requires explicit typed confirmation before executing prompt deletion, to prevent accidental permanent loss of production prompt assets.
Same-turn restriction: NEVER execute in the same turn as asking for typed confirmation. Wait for the user to reply in a new turn.
Gold Standard Example:
CRITICAL: Before the user runs any of the Python snippets below, you MUST advise them to ensure the environment is correctly initialized by following these steps:
Google Cloud Authentication: Authenticate with your Google Cloud account and configure active Application Default Credentials (ADC) for Agent Platform access:
Python Dependencies: This skill needs google-cloud-aiplatform and
google-genai.
Probe, and install only what is missing:
Execution: Run Python snippets with a plain python3.
The SDK provides a high-level Prompt class in the preview module.
Use when you need to create a new managed prompt in Agent Platform.
CRITICAL: You must pass the numeric prompt ID (e.g.,
"1234567890123456789") to prompts.delete(). The SDK constructs the full
resource path internally using the project and location from vertexai.init().
Confirmation Required: As a Tier D (Destructive) operation, the agent MUST pause and request explicit, high-friction typed re-confirmation of the prompt ID from the user before executing the deletion code. The action is irreversible.
When the user asks to list prompts or check that a deleted prompt is gone, list
the prompts and explicitly state whether the deleted prompt ID is present. If it
is not found, explicitly confirm: "I have verified that the prompt with ID
<PROMPT_ID> is no longer present in the project."
"MODEL_ID" placeholder. Like the other
placeholders it is MUST-replace, and it is replaced from what the user
said -- if they named no model, ask. Do not substitute a plausible current
model such as gemini-2.5-pro.metadata_schema_uri and nested metadata structure to ensure the prompt
is recognized by Agent Platform Studio and the Prompts SDK.Get started with chainctlchainctl skill install public/google/agent-platform-prompt-management:latest
Bring Chainguard's hardening pipeline to your first-party skills — custom rulesets, automated remediation, full audit trail.
skills.cgr.dev/public/github.com/google/skills/cloud/agent-platform-prompt-management:latest
Apache-2.0
HARDENING.md
LICENSE
SKILL.md
references/create.md