Pipe .http file syntax to httpyac via stdin.
The main use case of httpyap is teaching agents how to make readable requests, otherwise they tend to prefer to use curl
Why http syntax is better than curl:
- Curl acts different between operating systems
- Http is prettier ✨
Requires Node.js 18+. Install directly from GitHub:
npm install -g github:harvzor/httpyapTo uninstall:
npm uninstall -g httpyapA agent skill is available, teaching AI agents how to use yap. Install it with the skills npm tool:
Install globally (recommended - keeps skills out of individual project repos):
npx skills add git@github.com:harvzor/httpyap.git -gOr install into the current project only:
npx skills add git@github.com:harvzor/httpyap.gitType yap, paste your request, then type ### on its own line and press Enter to send:
$ yap
Paste your .http request, then type ### to send:
GET https://httpbin.org/json
###Bash
Single line:
echo "GET https://httpbin.org/json" | yapMultiline:
yap << 'EOF'
POST https://httpbin.org/post
Content-Type: application/json
{
"foo": "bar"
}
EOFZsh
Single line:
echo "GET https://httpbin.org/json" | yapMultiline:
yap << 'EOF'
POST https://httpbin.org/post
Content-Type: application/json
{
"foo": "bar"
}
EOFPowerShell
Single line:
"GET https://httpbin.org/json" | yapMultiline:
@"
POST https://httpbin.org/post
Content-Type: application/json
{
"foo": "bar"
}
"@ | yapNushell
Single line:
"GET https://httpbin.org/json" | yapMultiline:
'POST https://httpbin.org/post
Content-Type: application/json
{
"foo": "bar"
}' | yapHttpyap supports .env files via httpyac's variable resolution. Place a .env file in the working directory and reference variables using {{name}} syntax in your request:
# .env
token=my-secret-token
baseUrl=https://httpbin.org@"
GET {{baseUrl}}/json
Authorization: Bearer {{token}}
"@ | yapVariables can be defined inline in the request using @name = value:
@"
@token = my-secret-token
GET https://httpbin.org/json
Authorization: Bearer {{token}}
"@ | yapDisplays the full request/response exchange with syntax highlighting, matching httpyac's default output format.


