Files
shockbot/action.yml
T
Mateusz Burzyński 5684cbef77 Implement support for output schemas (#411)
* tweak examples

* tweak prompt

* Implement support for output schemas

* fix: add example for structured output with zod schema

* tweak

* remove redundant cast

* fix input name

* strip $schema

* hack around vendor requirement

* clarify required result output

---------

Co-authored-by: pullfrog[bot] <226033991+pullfrog[bot]@users.noreply.github.com>
2026-03-05 23:07:03 +00:00

54 lines
1.9 KiB
YAML

name: "Pullfrog Action"
description: "Execute coding agents with a prompt"
author: "Pullfrog"
inputs:
prompt:
description: "Prompt to send to the agent (string or JSON payload)"
required: true
effort:
description: "Effort level: mini (fast), auto (default), max (most capable)"
required: false
timeout:
description: "Maximum run duration (e.g., 10m, 1h30m). Default: 1h"
required: false
agent:
description: "Agent to use: claude, codex, gemini, cursor, opencode"
required: false
cwd:
description: "Working directory for the agent (defaults to GITHUB_WORKSPACE)"
required: false
web:
description: "Web fetch permission: disabled or enabled (default: enabled)"
required: false
search:
description: "Web search permission: disabled or enabled (default: enabled)"
required: false
push:
description: "Git push permission: disabled (read-only, can't push) or enabled (can push). Default: enabled"
required: false
shell:
description: "Shell permission: disabled, restricted (filters secrets from env vars), or enabled. Public repos default to restricted for security; private repos default to enabled."
required: false
output_schema:
description: "JSON Schema (draft-07) for structured output validation. When provided, the action output becomes required and must conform to this schema."
required: false
token:
description: "GitHub-provided token with job-scoped permissions. Do not set this unless you know what you are doing."
required: false
default: ${{ github.token }}
outputs:
result:
description: "It's set when the prompt explicitly requests it and is required when output_schema is provided; use it to capture actionable output for the next workflow step."
runs:
using: "node24"
main: "entry"
post: "post"
post-if: "failure() || cancelled()"
branding:
icon: "code"
color: "green"