object-storage-stack-menulisted
Install: claude install-skill virajp/ai-plugins
# object-storage-stack-menu
Return the payload below, per the stack-adapter contract. **Return the payload
and nothing else** — no prose, no recommendation, no comparison.
> **`invocation` must stay `both`.** A `user` skill is removed from the model's
> context entirely and cannot be invoked programmatically — vwf does not get an
> error, it gets an empty menu.
## This plugin ships no template, and that is the answer
`object-storage` is **contract-only**. It owns the neutral requirements
(`${CLAUDE_PLUGIN_ROOT}/assets/contract.md`) and offers no provider of its own, because
every object store worth using belongs to a cloud. The flavour comes from the
project's **cloud plugin** — Cloud Storage from `gcp`, R2 from `cloudflare` once
that plugin is unparked — and vwf renders the union of the menus.
**Never invent a vendor-neutral entry to fill the list.** A protocol is not a
template: it names no lifecycle policy, no consistency guarantee and no egress
price, so an entry built from one would record a decision nobody made.
## The payload — return it exactly, on every answer
```yaml
plugin: object-storage
templates: []
note: This plugin is contract-only by design and ships no template. Every
object store belongs to a cloud, so the flavour comes from the project's
cloud plugin — Cloud Storage from gcp, R2 from cloudflare once it is
unparked. The neutral requirements every store must satisfy live in this
plugin's contract, and the cloud plugin's backing template is wha