| name | apigee-policy-top10 |
| description | Reports the top 10 Apigee policy types currently in use across deployed proxy revisions in the caller's Apigee org. Reads the Apigee Management API only; modifies nothing. Authenticates with Application Default Credentials. |
| license | Apache-2.0 |
| compatibility | opencode |
| metadata | {"runtime_iam":["apigee.proxies.list","apigee.deployments.list","apigee.proxyrevisions.get"]} |
apigee-policy-top10
Use this skill when the user asks "what are the top N policies in
use in my Apigee org" or any close paraphrase.
Runtime dispatch
This skill ships ONE behavioural contract that runs on two
runtimes. Choose the invocation path that matches the runtime you
are running in. The downstream behaviour and output contract are
identical.
| Runtime | How you invoke top10.py |
|---|
| OpenCode | Use the !bash`` injection below. OpenCode auto-executes the bash on SKILL.md load. |
| Gemini CLI / Claude Code / other agents | (install location varies; consult the agent's documentation) |
| Any other runtime | Invoke top10.py via whatever bash mechanism the runtime provides, substituting ${SKILL_DIR} with the install path and ${APIGEE_ORG} with the value from the shell environment. |
Steps
-
Resolve the target organization from the environment variable
APIGEE_ORG. If unset, ask the user once for the org id and
then proceed.
-
Invoke the bundled enumerator using the runtime path from the
table above. The exact command is:
Command (this is what OpenCode runs automatically; in
other agent runtimes you run it yourself via the bash tool):
!python3 ${SKILL_DIR}/scripts/top10.py --org "${APIGEE_ORG}"
-
The enumerator's FIRST line of stdout is a customer-facing
announcement that begins Querying your Apigee org now —.
Surface this line verbatim to the user as it appears, before
anything else. Do not paraphrase it. (The script is the source
of truth for the announcement string; the SKILL.md does NOT
contain a verbatim copy that the agent must remember.)
-
After the announcement, the script prints a markdown table with
two columns (policy_type, count) sorted descending.
Reproduce the table verbatim as the answer. Add a brief preface
("Here are the top 10 policy types in use…") and stop.
-
Lines beginning [apigee-policy-top10] are log lines for
operator debugging; do NOT surface them in the answer unless
they say FAILED. On any FAILED line, surface the verbatim
error to the user; do not retry.