원클릭으로
xh
HTTPie-compatible HTTP client for REST API calls
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
HTTPie-compatible HTTP client for REST API calls
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
OpenCode agent runtime — manage sessions, dispatch tasks, repair DB issues, and reset diffs
Look up people, projects, products, and decisions locally first: contact info (email, Slack ID, GitHub handle), titles and teams, project/product status, who works on what, and past decisions. Check before searching Slack, email, calendar, or GitHub — this is the first stop for any contact detail, project context, or decision-history question.
Load when reviewing a diff, naming a code smell or anti-pattern, deciding refactoring direction, or grading review-comment severity. Required reading when a named pattern is cited — load explicitly rather than paraphrasing from memory.
Load before creating, restacking, or landing a branch in a git-spice–managed stack — branch naming, stack navigation, and conflict/restack recovery. Use instead of raw git commands whenever the repo has a git-spice stack.
Load when investigating production errors, latency, or trace data that requires querying Elasticsearch/APM directly — index patterns, field names, auth setup, and time-range syntax. Use before hand-rolling a query DSL call or guessing field names.
Manage dotfiles via chezmoi — apply safely, destroy files, manage LaunchAgents and externals, config and template gotchas
| name | xh |
| description | HTTPie-compatible HTTP client for REST API calls |
| license | MIT |
xh CLI — HTTPie-compatible, cleaner than curl.
xh --ignore-stdin --session=agent [METHOD] https://endpoint Key:Value [key=value] [key==value]
Key:Value (no space after colon)key=value (string) or key:=value (raw JSON)key==valuexh --ignore-stdin --session=agent --json POST https://...--ignore-stdinAlways use --ignore-stdin in agent/non-TTY contexts. Without it, xh tries to read stdin and conflicts with body arguments.
Sessions are pre-configured per host at chezmoi apply time. --session=agent resolves the correct credentials for each host automatically.
Never pass an Authorization: header or a $*_API_KEY value — the session already carries the credentials for the host.
If a request returns 401, the session may be stale — re-run chezmoi apply to refresh.
Pass query as a string field and variables as raw JSON:
xh --ignore-stdin --session=agent POST https://api.example.com/graphql \
query='{ issues { nodes { id title } } }' \
variables:='{"id":"ABC-123"}'
Queries are read-only; mutations modify data and may require ask permission.
@/path/to/file.json sends a file as the request body (useful for complex JSON like ES queries):
xh --ignore-stdin --session=agent POST https://api.example.com/search @/tmp/query.json
Cannot mix @file with key=value body items — pick one per request. Alternative for inline complex JSON: key:='{"nested":"json"}' — single-quoted bash avoids escaping inner double quotes.