Agent Skill · Pixee

pixee-api

Send authenticated requests to any Pixee REST API endpoint.

Provider: Pixee Path in repo: SKILL.md

Skill body

pixee api

PREREQUISITE: Read ../pixee-shared/SKILL.md for global flags, exit codes, and error handling. Those conventions apply to every command in this skill. See ../pixee-auth/SKILL.md if authentication needs to be configured.

The escape-hatch subcommand. pixee api sends authenticated HTTP requests to any Pixee REST API endpoint, modeled on gh api. Use it when a dedicated subcommand does not yet exist, or when an agent needs to compose multi-step operations directly against the API.

HAL discovery

The Pixee API is a HAL (Hypertext Application Language) API: every response contains _links that name the related resources. Start at /api/v1 and follow _links to reach every other endpoint. Do not hardcode paths beyond the root.

# Inspect the root to find the available resources
pixee api /api/v1

# Follow a link — here, the "repositories" link on the root
pixee api /api/v1/repositories --paginate

# Each resource has its own _links; follow them to related resources
pixee api /api/v1/repositories/<id>

Conventions

pixee api closely mirrors gh api:

Pagination

By default, paginated endpoints return only the first page. Add --paginate to let pixee walk the collection automatically:

pixee api /api/v1/repositories --paginate

With --paginate, pixee follows _links.next until it is absent, merges each page’s _embedded.items array, and emits a single flat JSON array. The HAL envelope (_links, page, total) is stripped from the output.

This is pagination-strategy-agnostic: the CLI does not construct page-number query parameters itself, so if the API migrates to a different strategy the same --paginate flag continues to work.

Examples

# POST a workflow with typed fields (auto-switches to POST because fields are present)
pixee api /api/v1/repositories/<id>/workflows \
  -f event=new-scan \
  -F branch=main \
  -f action=none

# Or submit a pre-constructed body
pixee api /api/v1/repositories/<id>/workflows --input workflow.json

# Filter a paginated response externally with jq
pixee api /api/v1/repositories --paginate | jq '.[] | .full_name'

Best practices

Skill frontmatter

metadata: {"version" => "1.0.0", "openclaw" => {"category" => "developer-tools", "requires" => {"bins" => ["pixee"]}, "cliHelp" => "pixee api --help"}}