بنقرة واحدة
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.