-
-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathaction.yml
More file actions
88 lines (79 loc) · 2.51 KB
/
Copy pathaction.yml
File metadata and controls
88 lines (79 loc) · 2.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# Source: Matching the qwed-verification file list structure
name: 'QWED Protocol Verification'
description: 'Verify LLM outputs with Z3/SymPy. Scan secrets, code, and shell scripts. SARIF output for GitHub Security.'
author: 'QWED-AI'
branding:
icon: 'shield'
color: 'purple'
inputs:
api_key:
description: 'QWED API Key (Optional for local mode)'
required: false
# New: Action type selector
action:
description: 'Action type: verify, scan-secrets, scan-code, verify-shell'
required: false
default: 'verify'
# Add provider and model inputs
provider:
description: 'LLM provider (e.g. openai, anthropic)'
required: false
model:
description: 'Model name'
required: false
mask_pii:
description: 'Mask PII in inputs/outputs'
required: false
default: 'false'
# Legacy inputs for single verification
query:
description: 'The user query (e.g. "Derivative of x^2") - used with action=verify'
required: false
llm_output:
description: 'The LLM output to verify - used with action=verify'
required: false
engine:
description: 'Verification Engine: math, logic, code, sql, shell'
required: false
default: 'math'
# New: Batch scan inputs
paths:
description: 'Glob patterns for files to scan (e.g. "**/*.py,**/*.env")'
required: false
default: '.'
# New: Output format
output_format:
description: 'Output format: text, json, sarif'
required: false
default: 'text'
# New: Fail on findings
fail_on_findings:
description: 'Fail the action if security issues are found'
required: false
default: 'true'
outputs:
verified:
description: 'True if verification passed or no issues found'
explanation:
description: 'Detailed proof or error explanation'
findings_count:
description: 'Number of security issues found (for scan modes)'
badge_url:
description: 'URL for QWED verified badge'
sarif_file:
description: 'Path to SARIF output file (if output_format=sarif)'
runs:
using: 'docker'
image: 'Dockerfile'
env:
INPUT_API_KEY: ${{ inputs.api_key }}
INPUT_PROVIDER: ${{ inputs.provider }}
INPUT_MODEL: ${{ inputs.model }}
INPUT_MASK_PII: ${{ inputs.mask_pii }}
INPUT_ACTION: ${{ inputs.action }}
INPUT_QUERY: ${{ inputs.query }}
INPUT_LLM_OUTPUT: ${{ inputs.llm_output }}
INPUT_ENGINE: ${{ inputs.engine }}
INPUT_PATHS: ${{ inputs.paths }}
INPUT_OUTPUT_FORMAT: ${{ inputs.output_format }}
INPUT_FAIL_ON_FINDINGS: ${{ inputs.fail_on_findings }}