Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ MANIFESTS := \
plugins/zero/.claude-plugin/plugin.json \
plugins/zero/.codex-plugin/plugin.json \
plugins/zero/.factory-plugin/plugin.json \
plugins/zero-gemini/gemini-extension.json
plugins/zero-gemini/gemini-extension.json \
plugins/zero-kiro/manifest.json

# The manifest read for the current version (all of MANIFESTS stay in lockstep).
VERSION_SOURCE := plugins/zero/.claude-plugin/plugin.json
Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ installation, use the guides below. Pick your agent:
- **[Codex app](guides/codex-app.md)**
- **[Droid](guides/droid.md)**
- **[Gemini CLI](guides/gemini-cli.md)**
- **[Kiro](guides/kiro.md)**
- **[Anything else (standalone installer)](guides/generic.md)** — works in any
agent with a shell (and for humans at a terminal):

Expand Down Expand Up @@ -73,7 +74,9 @@ plugins/zero/ # the shared plugin: skill + hooks (+ Claude's
├── .codex-plugin/ # Codex manifest
└── .factory-plugin/ # Droid manifest
plugins/zero-gemini/ # thin Gemini-only overlay (manifest + hook wiring)
plugins/zero-kiro/ # thin Kiro overlay (Power + skill/MCP/hook templates)
scripts/build-gemini.sh # assembles the installable Gemini extension into dist/
scripts/build-kiro.sh # assembles the installable Kiro package into dist/
guides/ # per-host install guides + the agent install runbook
```

Expand All @@ -83,5 +86,5 @@ mechanics — live in the per-host guides.
## Status

This repo is built up iteratively, one carefully reviewed PR at a time. Today
it ships the **Claude Code**, **Codex**, **Droid**, and **Gemini CLI** plugins;
additional hosts (Cursor) will land in subsequent PRs.
it ships the **Claude Code**, **Codex**, **Droid**, **Gemini CLI**, and
**Kiro** plugins; additional hosts (Cursor) will land in subsequent PRs.
102 changes: 102 additions & 0 deletions guides/kiro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
# Zero for Kiro

How to install Zero in Kiro and keep it up to date.

## Install

### Inside Kiro IDE

Install the Zero Power from a local checkout:

1. Clone this repository and build the Kiro package:

```bash
git clone https://github.com/officialzeroxyz/zero-plugins.git
cd zero-plugins
./scripts/build-kiro.sh
```

2. In Kiro, open the Powers panel.
3. Choose **Add Custom Power**.
4. Choose **Import power from a folder**.
5. Select `dist/zero-kiro/power`.
6. Finish the install prompt.

Install the Zero skill so it is available as `/zero`:

```bash
mkdir -p ~/.kiro/skills
rm -rf ~/.kiro/skills/zero
cp -R dist/zero-kiro/skills/zero ~/.kiro/skills/zero
```

Install the Zero runner:

```bash
curl -fsSL https://zero.xyz/install.sh | bash
```

Restart Kiro, then ask: *"Help me set up and test Zero."*

### From the terminal

Build the Kiro package and copy the skill:

```bash
git clone https://github.com/officialzeroxyz/zero-plugins.git
cd zero-plugins
./scripts/build-kiro.sh
mkdir -p ~/.kiro/skills
rm -rf ~/.kiro/skills/zero
cp -R dist/zero-kiro/skills/zero ~/.kiro/skills/zero
```

Add the Zero MCP server:

```bash
kiro-cli mcp add --name zero --scope global --url https://mcp.zero.xyz --force
```

Optional: install the Kiro CLI custom-agent template with Zero prompt hooks:

```bash
mkdir -p ~/.kiro/agents ~/.kiro/zero/hooks
cp dist/zero-kiro/agents/zero.json ~/.kiro/agents/zero.json
cp dist/zero-kiro/hooks/*.sh ~/.kiro/zero/hooks/
chmod +x ~/.kiro/zero/hooks/*.sh
```

Start Kiro with that template:

```bash
kiro-cli chat --agent zero
```

Then ask: *"Help me set up and test Zero."*

## Staying up to date

- Kiro CLI updates itself automatically.
- The optional `zero` Kiro CLI agent provisions and refreshes the Zero runner
with its `agentSpawn` hook.
- If you only installed the Kiro IDE Power, rerun the standalone installer to
refresh the runner:

```bash
curl -fsSL https://zero.xyz/install.sh | bash
```

- To update the Zero Kiro files:

```bash
cd zero-plugins
git pull
./scripts/build-kiro.sh
rm -rf ~/.kiro/skills/zero
cp -R dist/zero-kiro/skills/zero ~/.kiro/skills/zero
cp dist/zero-kiro/agents/zero.json ~/.kiro/agents/zero.json
cp dist/zero-kiro/hooks/*.sh ~/.kiro/zero/hooks/
```

If you installed the Power in Kiro IDE, open the Powers panel and use the
Power's update action, or re-import `dist/zero-kiro/power`.
2 changes: 1 addition & 1 deletion plugins/zero-gemini/gemini-extension.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "zero",
"version": "1.3.3",
"version": "1.4.0",
"description": "Discover and call paid AI capabilities (x402 / MPP) with automatic, wallet-backed payment. Search a live index of external services — image/video/audio generation, web scraping, data enrichment, real-time data, messaging — then call them and pay per use. Bundles the 'zero' skill and the Zero MCP connector.",
"mcpServers": {
"zero": {
Expand Down
33 changes: 33 additions & 0 deletions plugins/zero-kiro/POWER.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
name: "zero"
displayName: "Zero"
description: "Discover and call paid external capabilities from Kiro when native tools are not enough."
keywords: ["zero", "x402", "mpp", "capability search", "paid tools", "web scraping", "image generation", "video generation", "audio generation", "translation", "weather", "messaging", "crypto"]
author: "Zero"
---

# Zero

Zero is a search engine and payment layer for AI agents. Use it when a request
needs a capability Kiro does not have natively, such as image, video, or audio
generation, transcription, web scraping, data enrichment, real-time data,
messaging, or on-chain actions.

## Onboarding

1. Confirm the Zero skill is installed at `~/.kiro/skills/zero/SKILL.md` or
`<workspace>/.kiro/skills/zero/SKILL.md`.
2. If `zero` is not on `PATH`, ask the user to run the standalone Zero
installer from the Kiro guide. Do not create a wallet yourself.
3. Follow the Zero skill for the full workflow: search, inspect, call, review.
4. Use the bundled `zero` MCP server for account and authorization tasks.

## Tool Use

- Prefer Kiro's native abilities for coding, local files, shell commands, and
analysis it can already perform.
- Use Zero before telling the user to sign up for a service, get an API key, or
use an external tool themselves.
- Capability calls may cost real money. Inspect the capability and cap spend
before calling it.
- Always review paid runs using the instructions in the Zero skill.
40 changes: 40 additions & 0 deletions plugins/zero-kiro/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# zero-kiro (overlay - not directly installable)

This directory holds Kiro-specific packaging for Zero:

- `POWER.md` - Kiro IDE Power entry point
- `mcp.json` - Kiro Power MCP server configuration for `https://mcp.zero.xyz`
- `steering/` - Power steering instructions
- `agents/zero.json` - optional Kiro CLI custom-agent template with hooks
- `hooks/ensure-runner.sh` - Kiro CLI hook wrapper around the shared runner provisioner
- `hooks/zero-context.sh` - Kiro CLI hook helper that prints plain context
- `manifest.json` - repo version metadata kept in lockstep with the other hosts

The canonical Zero skill lives once in [`../zero/`](../zero/) and is copied into
the build output by `scripts/build-kiro.sh`. User-facing install instructions
are in the [Kiro guide](../../guides/kiro.md).

## How the package is built

```text
plugins/zero-kiro/ # this overlay
├── POWER.md # Kiro IDE Power metadata and instructions
├── mcp.json # Kiro Power MCP config
├── agents/zero.json # optional CLI agent template
├── hooks/ensure-runner.sh # Kiro hook runner provisioning helper
├── hooks/zero-context.sh # Kiro hook context helper
└── steering/zero.md # Power steering

scripts/build-kiro.sh # assembles overlay + shared files -> dist/zero-kiro/

dist/zero-kiro/
├── power/ # folder to import as a Kiro Power
├── skills/zero/SKILL.md # copy to ~/.kiro/skills/zero
├── agents/zero.json # optional copy to ~/.kiro/agents/zero.json
└── hooks/*.sh # optional copy to ~/.kiro/zero/hooks/
```

Kiro Powers do not currently bundle Agent Skills into `.kiro/skills`, so the
standalone guide includes a separate skill-copy step. Kiro CLI hooks are part
of custom agent JSON, not the Power package, so `agents/zero.json` is shipped as
a template for users who want the hook-driven CLI path.
30 changes: 30 additions & 0 deletions plugins/zero-kiro/agents/zero.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"name": "zero",
"description": "Kiro CLI agent template with Zero context and MCP configuration",
"prompt": "Use Zero when a request needs external capabilities Kiro does not have natively. Prefer native Kiro abilities for local coding and analysis. Follow the installed zero skill for authentication, search, inspect, call, and review.",
"tools": ["*"],
"allowedTools": ["read"],
"mcpServers": {
"zero": {
"url": "https://mcp.zero.xyz",
"autoApprove": ["*"]
}
},
"hooks": {
"agentSpawn": [
{
"command": "bash ~/.kiro/zero/hooks/ensure-runner.sh",
"timeout_ms": 120000,
"cache_ttl_seconds": 86400
}
],
"userPromptSubmit": [
{
"command": "bash ~/.kiro/zero/hooks/zero-context.sh",
"timeout_ms": 5000
}
]
},
"includeMcpJson": true,
"welcomeMessage": "Zero is available for external capabilities when native Kiro tools are not enough."
}
30 changes: 30 additions & 0 deletions plugins/zero-kiro/hooks/ensure-runner.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
#!/usr/bin/env bash
#
# Kiro CLI AgentSpawn hook wrapper.
#
# Runs the shared Zero runner provisioner, then emits Kiro-friendly plain text.
# Kiro adds successful agentSpawn stdout to context, unlike Claude/Gemini which
# expect a JSON hook envelope.

set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SHARED="$SCRIPT_DIR/ensure-runner-shared.sh"

out="$(bash "$SHARED" 2> >(cat >&2) || true)"

case "$out" in
*"Zero runner ready"*)
cat <<'EOF'
Zero runner ready. Prefer invoking it as `zero`; if that is not on PATH in this shell, use `~/.zero/runtime/bin/zero`. Follow the zero skill for authentication, search, inspect, call, and review.
EOF
;;
*"Zero runner unavailable"*)
cat <<'EOF'
Zero runner unavailable in this environment. Tell the user Zero is not available here instead of improvising authentication or creating a wallet.
EOF
;;
*)
printf '%s\n' "$out"
;;
esac
12 changes: 12 additions & 0 deletions plugins/zero-kiro/hooks/zero-context.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/usr/bin/env bash
#
# Kiro CLI UserPromptSubmit / AgentSpawn hook helper.
#
# Kiro CLI adds stdout from successful agentSpawn and userPromptSubmit hooks to
# the agent context, so emit plain text rather than Claude/Gemini hook JSON.

set -euo pipefail

cat <<'EOF'
Zero is available when installed for Kiro: use the zero skill before saying a requested external capability is unavailable or telling the user to sign up for a third-party service. Resolve the runner as `zero` or `~/.zero/runtime/bin/zero`, then follow the zero skill for search, inspect, call, and review. Do not create a wallet yourself.
EOF
5 changes: 5 additions & 0 deletions plugins/zero-kiro/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"name": "zero-kiro",
"version": "1.4.0",
"description": "Zero Kiro Power, skill drop, MCP config, and CLI hook template"
}
9 changes: 9 additions & 0 deletions plugins/zero-kiro/mcp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"mcpServers": {
"zero": {
"url": "https://mcp.zero.xyz",
"disabled": false,
"autoApprove": ["*"]
}
}
}
14 changes: 14 additions & 0 deletions plugins/zero-kiro/steering/zero.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Zero Steering

Use Zero when Kiro lacks a requested external capability. Typical examples
include image, video, audio, voice, transcription, translation, web scraping,
data enrichment, real-time data, messaging, and on-chain actions.

Resolve the runner as `zero` first, then fall back to
`~/.zero/runtime/bin/zero`. If neither exists, ask the user to install Zero
from the Kiro guide. Do not improvise authentication and do not create a wallet.

Follow the installed `zero` skill for the exact workflow and authentication
rules. The flow is search, inspect, call, review. Capability calls can spend
the user's funds, so inspect capability details and use spend caps before
fetching.
2 changes: 1 addition & 1 deletion plugins/zero/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "zero",
"version": "1.3.3",
"version": "1.4.0",
"description": "Discover and call paid AI capabilities (x402 / MPP) with automatic, wallet-backed payment. Search a live index of external services — image/video/audio generation, web scraping, data enrichment, real-time data, messaging — then call them and pay per use. Bundles the 'zero' skill and the Zero MCP connector.",
"author": { "name": "Zero", "url": "https://zero.xyz" },
"homepage": "https://zero.xyz",
Expand Down
2 changes: 1 addition & 1 deletion plugins/zero/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "zero",
"version": "1.3.3",
"version": "1.4.0",
"description": "Discover and call paid AI capabilities (x402 / MPP) with automatic, wallet-backed payment. Search a live index of external services — image/video/audio generation, web scraping, data enrichment, real-time data, messaging — then call them and pay per use. Bundles the 'zero' skill.",
"author": { "name": "Zero", "url": "https://zero.xyz" },
"homepage": "https://zero.xyz",
Expand Down
2 changes: 1 addition & 1 deletion plugins/zero/.factory-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "zero",
"version": "1.3.3",
"version": "1.4.0",
"description": "Discover and call paid AI capabilities (x402 / MPP) with automatic, wallet-backed payment. Search a live index of external services — image/video/audio generation, web scraping, data enrichment, real-time data, messaging — then call them and pay per use. Bundles the 'zero' skill and the Zero MCP connector.",
"author": { "name": "Zero", "url": "https://zero.xyz" },
"homepage": "https://zero.xyz",
Expand Down
Loading
Loading