You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
kiro-powers: mirror SKILL.md — document API calls in objectives
Adds the 4th objective pattern (API call) and a "Calling APIs directly"
section to the kane-cli run steering, matching the upstream SKILL.md change.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
| 📦 **Extraction**| "store X as 'name'" | Reads a value from the page and persists it in `final_state`|
46
+
| 🔌 **API call**| "call", "POST/GET a URL", a pasted `curl`| Makes the HTTP request itself; "save the response as X", then assert/reference `{{X.status}}` / `{{X.response_body…}}`|
46
47
47
48
## The "store as" pattern is mandatory for extraction
48
49
@@ -64,6 +65,17 @@ Vague phrasing does **not** persist values. The agent may "see" them but they wi
64
65
"go to example.com, store the headline as 'headline'"
65
66
```
66
67
68
+
## Calling APIs directly
69
+
70
+
The agent can make API calls itself — not just observe the requests a page makes. Phrase an explicit call and name the response:
71
+
72
+
```
73
+
"Call POST https://api.example.com/login with body {...}, save the response as login,
74
+
assert {{login.status}} is 200"
75
+
```
76
+
77
+
Reference the saved response as `{{login.status}}` and `{{login.response_body.<field>}}`; a pasted `curl` works too. API calls and browser actions mix in one objective — use a direct call to set up state (seed a record, hit a backend), and DevTools/Network (below) to **observe** the requests the page itself makes.
78
+
67
79
## Combining patterns
68
80
69
81
Chain action → extraction → assertion in a single objective:
0 commit comments