Documentation
CI/CD Pipeline API & Skill Testing Reference
Technical reference for the ClawProd pipeline API, skill testing framework, and security scanning configuration.
Pipeline API
The ClawProd pipeline runs automatically on every git push via a GitHub Action. You can also trigger and query builds programmatically.
Trigger a Build
POST /api/v1/builds
Authorization: Bearer <api-key>
{
"repo": "github.com/user/my-skill",
"ref": "main",
"publish": true
}
Get Build Status
GET /api/v1/builds/:buildId
Response:
{
"id": "build_abc123",
"status": "passed",
"stages": ["lint", "test", "security-scan", "publish"],
"duration_ms": 12340,
"published_version": "1.2.0"
}
List Builds
GET /api/v1/builds?repo=github.com/user/my-skill&status=failed&limit=10
Pipeline Stages
Every build runs four stages in order. A failure at any stage stops the pipeline.
- Lint — Validates skill manifest, metadata fields, and file structure against the OpenClaw skill spec.
- Test — Runs your test suite in an isolated sandbox. If no custom tests exist, runs the default test suite (manifest validation, permission checks, basic execution).
- Security Scan — Checks for CVEs in dependencies, excessive permission requests, data exfiltration patterns, and prompt injection vectors.
- Publish — On pass, bumps version, generates changelog, and publishes to ClawHub. Only runs if
publish: true.
Skill Testing Framework
ClawProd includes a built-in testing framework for OpenClaw skills. Tests run in a sandboxed environment with a real OpenClaw instance.
Test File Structure
# tests/my-skill.test.yaml
name: "My Skill Tests"
setup:
env: sandbox
fixtures: ["sample-data.json"]
tests:
- name: "handles valid input"
input: "Process this sample data"
expect:
status: success
output_contains: "processed"
- name: "rejects unauthorized access"
input: "Access restricted resource"
permissions: ["read"]
expect:
status: error
error_type: "permission_denied"
Default Test Suite
Skills without custom tests still get checked against the default suite:
- Manifest schema validation (required fields, correct types)
- Permission scope verification (no unnecessary permissions)
- Basic execution test (skill loads and responds without error)
- Dependency version check (no known-vulnerable packages)
Security Scanning Reference
The security scanner runs five checks on every build:
- CVE scan — Checks all dependencies against the National Vulnerability Database.
- Permission analysis — Flags skills requesting more permissions than their functionality requires.
- Data exfiltration detection — Identifies patterns like unauthorized network calls, file system reads outside scope, or credential harvesting.
- Prompt injection vectors — Scans for common injection patterns in skill prompts and input handling.
- Custom policies — Enterprise users can define organization-specific security rules.
GitHub Action Setup
# .github/workflows/clawprod.yml
name: ClawProd CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: clawprod/action@v1
with:
api-key: ${{ secrets.CLAWPROD_API_KEY }}
publish: true
Ready to automate your skill pipeline?
Join the waitlist for early access to ClawProd CI/CD with 50 free builds per month.
Join Waitlist