Skip to content

Commit 5bba95b

Browse files
committed
Add ClawHub publish readiness checks
1 parent 64c209d commit 5bba95b

4 files changed

Lines changed: 333 additions & 129 deletions

File tree

.clawhubignore

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# ClawHub accepts text-based skill bundles. Keep generated/binary assets in GitHub only.
2+
*.png
3+
*.jpg
4+
*.jpeg
5+
*.gif
6+
*.ico
7+
*.pdf
8+
*.docx
9+
*.ipynb
10+
*.ttf
11+
*.otf
12+
*.woff
13+
*.woff2
14+
15+
preview/
16+
output/
17+
18+
__pycache__/
19+
*.py[cod]
20+
*$py.class
21+
.mypy_cache/
22+
.pytest_cache/
23+
.ruff_cache/
24+
25+
.venv/
26+
venv/
27+
env/
28+
ENV/
29+
30+
.env
31+
.env.*
32+
!.env.example
33+
secrets.json
34+
*_secret.ini
35+
*_local.ini
36+
*.tmp
37+
.DS_Store
38+
Thumbs.db
39+
desktop.ini

CLAW_HUB_PUBLISHING.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# ClawHub Publishing
2+
3+
This repository is prepared for ClawHub publishing as a text-based OpenClaw skill bundle.
4+
5+
## Included In ClawHub
6+
7+
The ClawHub bundle is intended to include text-based skill material only:
8+
9+
- `SKILL.md`, `README.md`, `QUALITY.md`, and this file
10+
- `agents/openai.yaml`
11+
- `pyproject.toml`
12+
- `.github/workflows/quality.yml`
13+
- `scripts/*.py`
14+
- `references/` text files, schemas, catalogs, and examples
15+
- `examples/` text inputs such as `.ini` files or README placeholders
16+
- `assets/diagrams/*.mmd`
17+
- config examples and templates where they are text-based
18+
19+
## Excluded From ClawHub
20+
21+
`.clawhubignore` excludes binary and generated assets from the publish candidate, including PDFs, PNG previews, DOCX files, fonts, logos, `preview/`, `output/`, caches, virtual environments, local env files, and temporary files.
22+
23+
Those files remain part of the GitHub repository for brand presentation, examples, local demos, and generated artifact previews. They are not part of the ClawHub text bundle.
24+
25+
## License And Brand Boundary
26+
27+
ClawHub publishes skills under MIT-0. The text/code bundle can be used under ClawHub's publishing terms, but CompleteTech LLC names, logos, seals, and other brand assets remain reserved. Publishing this text bundle does not grant a trademark or brand-asset license and does not relicense excluded binary brand assets.
28+
29+
## Runtime Dependencies
30+
31+
Runtime requirements are declared in `SKILL.md` under `metadata.openclaw`.
32+
33+
- All Python-backed skills require `python3`.
34+
- PDF/generator skills declare `reportlab` where PDF rendering is used.
35+
- The contract skill declares `jinja2`.
36+
- `pyyaml` is declared so the included quality/audit validator can parse YAML metadata.
37+
- Optional PNG preview dependencies such as `pypdfium2` and `pillow` are GitHub/local-demo conveniences, not required for the ClawHub core workflow unless a user intentionally runs PNG preview generation.
38+
39+
## Local Readiness Check
40+
41+
Run before publishing:
42+
43+
```bash
44+
python3 scripts/validate_quality.py
45+
```
46+
47+
The validator checks lint, Python compilation, structured-file parsing, Mermaid rendering, smoke tests, Pyright where configured, and ClawHub bundle readiness. It does not publish to ClawHub.
48+
49+
## Publishing
50+
51+
Do not publish automatically. Use the ClawHub CLI only after explicit approval and an authenticated owner context, for example:
52+
53+
```bash
54+
clawhub skill publish . --owner <owner> --version <semver>
55+
```

SKILL.md

Lines changed: 107 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -1,102 +1,107 @@
1-
---
2-
name: agentic-security-review-skill
3-
description: >-
4-
Create CompleteTech LLC security, safety, permissions, and production-readiness review artifacts for agentic development workflows, including risk intake, tool permissions, secrets handling, data exposure, prompt-injection testing, retrieval trust, approval gates, external actions, audit logging, model/provider configuration, retention, dependency risk, least privilege, launch blockers, rollback, incident response, escalation, red-team results, and security signoff. Use before production launch or whenever tools, data, credentials, integrations, retrieval sources, or external actions change.
5-
version: 1.0.0
6-
metadata:
7-
openclaw:
8-
skillKey: agentic-security-review-skill
9-
homepage: https://github.com/CompleteTech-LLC/agentic-security-review-skill
10-
requires:
11-
bins:
12-
- python3
13-
---
14-
15-
# Agentic Security Review Skill
16-
17-
## Purpose
18-
19-
Create practical security review artifacts for CompleteTech LLC agentic development workflows. Use this skill before launch, before granting new access, after material configuration changes, and after incidents or near misses.
20-
21-
## System Boundary
22-
23-
This skill owns security, safety, permissions, data, credential, tool, and launch-risk review. Use it alongside discovery, proposal, or delivery when risk needs a dedicated artifact. It does not replace `agentic-delivery-skill` launch checklists, `agentic-contract-skill` legal terms, external compliance certification, formal penetration testing, or counsel-reviewed privacy/security advice.
24-
25-
## Core Workflow
26-
27-
1. Identify the review event: launch, new tool, sensitive data, external action, retrieval/RAG, credential change, dependency change, incident, or signoff.
28-
2. Gather verified facts: workflow purpose, users, data classes, tools, permissions, credentials, integrations, retrieval sources, human approvals, logs, deployment path, rollback owner, incident contacts, and known constraints.
29-
3. Use `references/use-case-decision-table.md` to choose the right review artifact.
30-
4. Use `references/security-positioning.md` for CompleteTech LLC security language and guardrails.
31-
5. Use `references/security-catalog.md` for the artifact library.
32-
6. Keep the review bounded and evidence-based. Do not claim compliance, certification, legal approval, penetration-test completion, production readiness, or guaranteed security unless the user provides verified evidence.
33-
34-
## Artifact Selection Guide
35-
36-
- Starting a new agentic workflow: use `agentic-risk-intake`.
37-
- Adding a tool or integration: use `tool-permission-inventory`.
38-
- Handling API keys, tokens, service accounts, or secrets: use `credential-secret-handling-checklist`.
39-
- Accessing sensitive, client, personal, regulated, or proprietary data: use `data-exposure-review`.
40-
- Testing prompt injection or tool misuse: use `prompt-injection-test-plan`.
41-
- Adding retrieval/RAG, indexed docs, websites, or knowledge stores: use `retrieval-source-trust-review`.
42-
- Reviewing human-in-the-loop controls: use `approval-gate-audit`.
43-
- Sending emails, creating calendar events, modifying files, posting messages, purchasing, billing, or changing production systems: use `external-action-review`.
44-
- Needing traceability, audit trails, or operational evidence: use `logging-auditability-review`.
45-
- Changing model, provider, system prompt, tool runtime, or safety settings: use `model-provider-configuration-review`.
46-
- Defining storage, deletion, or retention behavior: use `data-retention-review`.
47-
- Adding packages, services, scripts, or vendor dependencies: use `dependency-supply-chain-review`.
48-
- Reducing access scope or sandboxing execution: use `sandbox-least-privilege-checklist`.
49-
- Preparing for launch: use `production-readiness-security-checklist`.
50-
- Deciding what blocks launch: use `launch-blocker-checklist`.
51-
- Preparing a backout path: use `rollback-plan`.
52-
- Responding to a security event or near miss: use `incident-response-plan`.
53-
- Defining who to contact and when to escalate: use `human-escalation-procedure`.
54-
- Summarizing adversarial testing: use `red-team-test-report`.
55-
- Recording final approval status: use `security-signoff-memo`.
56-
57-
When several artifacts fit, start with the artifact closest to the change or decision being reviewed, then add supporting artifacts only when they materially reduce risk.
58-
59-
## Quality Rules
60-
61-
- Use verified contact routing. Do not invent client, security, legal, billing, support, or approval email addresses; ask for the right address or use `TBD`.
62-
- Preserve least privilege: name each tool, permission, credential, data class, and external action that is actually needed.
63-
- Protect human approval gates for irreversible actions, client-facing communication, payments, data export/deletion, production changes, and material business decisions.
64-
- Separate facts from recommendations. Label unknowns, assumptions, residual risks, blockers, and owner decisions.
65-
- Recommend technical escalation when secrets may be exposed, logs are missing, sandboxing is weak, prompt injection can trigger tools, approval gates are bypassed, production rollback is unclear, or sensitive data flows are not understood.
66-
- Recommend client or human approval before launch, before expanding permissions, before connecting client systems, before sending external communications, and before closing incident follow-up.
67-
68-
## Resource Guide
69-
70-
- `references/security-positioning.md`: load for CompleteTech LLC review language and boundaries.
71-
- `references/use-case-decision-table.md`: load when choosing a security review artifact.
72-
- `references/security-lifecycle.md`: load for review flow from intake through launch and post-incident follow-up.
73-
- `references/security-catalog.md`: load for the reusable artifact templates.
74-
- `references/template-index.json`: machine-readable artifact metadata used by the renderer.
75-
- `scripts/render_security_review.py`: list security artifacts or render a draft with placeholders.
76-
77-
## Renderer
78-
79-
```bash
80-
python3 scripts/render_security_review.py --list
81-
python3 scripts/render_security_review.py --stage launch --list
82-
python3 scripts/render_security_review.py --template agentic-risk-intake --var client_name=Acme --var workflow="support triage agent"
83-
```
84-
85-
Rendered artifacts are drafts. Replace placeholders with verified project facts before sending, storing, or relying on them.
86-
87-
## Rendering to a Branded PDF
88-
89-
Artifacts from this skill are delivered as branded CompleteTech LLC **PDF** documents, not raw Markdown. The renderer emits the PDF (and prints the Markdown) in **one command**, using the same reportlab branding engine as the contract skill:
90-
91-
```bash
92-
pip install -r requirements.txt
93-
python3 scripts/render_security_review.py --template security-signoff-memo \
94-
--out artifact.pdf --png artifact.png \
95-
--title "Security Signoff Memo" --doc-type "SECURITY REVIEW" \
96-
--subtitle "Workflow: <b>Support Email Triage Agent (Pilot)</b>" --meta "MEMO NO.=SEC-2026-0090" --meta "DATE=2026-06-17" \
97-
--var client_name="Client Name" --var workflow="support triage"
98-
```
99-
100-
- `--no-pdf` emits Markdown only (the original behavior); `--no-cover` drops the cover page.
101-
- Already drafted the Markdown yourself? Render it directly: `python3 scripts/render_pdf.py --markdown artifact.md --out artifact.pdf --logo assets/logo.png --title "..."`.
102-
- The PDF supports a Markdown subset: `#`/`##`/`###` headings, paragraphs, `-` bullets, tables, `>` callouts, `**bold**`, and `[PAGE_BREAK]`. PDF requires `reportlab`; the optional `--png` preview requires `pypdfium2` and `pillow`. See `assets/examples/` for a rendered example.
1+
---
2+
name: agentic-security-review-skill
3+
description: >-
4+
Create CompleteTech LLC security, safety, permissions, and production-readiness review artifacts for agentic development workflows, including risk intake, tool permissions, secrets handling, data exposure, prompt-injection testing, retrieval trust, approval gates, external actions, audit logging, model/provider configuration, retention, dependency risk, least privilege, launch blockers, rollback, incident response, escalation, red-team results, and security signoff. Use before production launch or whenever tools, data, credentials, integrations, retrieval sources, or external actions change.
5+
version: 1.0.0
6+
metadata:
7+
openclaw:
8+
skillKey: agentic-security-review-skill
9+
homepage: https://github.com/CompleteTech-LLC/agentic-security-review-skill
10+
requires:
11+
bins:
12+
- python3
13+
install:
14+
- kind: uv
15+
package: reportlab>=4.0
16+
- kind: uv
17+
package: pyyaml>=6.0
18+
---
19+
20+
# Agentic Security Review Skill
21+
22+
## Purpose
23+
24+
Create practical security review artifacts for CompleteTech LLC agentic development workflows. Use this skill before launch, before granting new access, after material configuration changes, and after incidents or near misses.
25+
26+
## System Boundary
27+
28+
This skill owns security, safety, permissions, data, credential, tool, and launch-risk review. Use it alongside discovery, proposal, or delivery when risk needs a dedicated artifact. It does not replace `agentic-delivery-skill` launch checklists, `agentic-contract-skill` legal terms, external compliance certification, formal penetration testing, or counsel-reviewed privacy/security advice.
29+
30+
## Core Workflow
31+
32+
1. Identify the review event: launch, new tool, sensitive data, external action, retrieval/RAG, credential change, dependency change, incident, or signoff.
33+
2. Gather verified facts: workflow purpose, users, data classes, tools, permissions, credentials, integrations, retrieval sources, human approvals, logs, deployment path, rollback owner, incident contacts, and known constraints.
34+
3. Use `references/use-case-decision-table.md` to choose the right review artifact.
35+
4. Use `references/security-positioning.md` for CompleteTech LLC security language and guardrails.
36+
5. Use `references/security-catalog.md` for the artifact library.
37+
6. Keep the review bounded and evidence-based. Do not claim compliance, certification, legal approval, penetration-test completion, production readiness, or guaranteed security unless the user provides verified evidence.
38+
39+
## Artifact Selection Guide
40+
41+
- Starting a new agentic workflow: use `agentic-risk-intake`.
42+
- Adding a tool or integration: use `tool-permission-inventory`.
43+
- Handling API keys, tokens, service accounts, or secrets: use `credential-secret-handling-checklist`.
44+
- Accessing sensitive, client, personal, regulated, or proprietary data: use `data-exposure-review`.
45+
- Testing prompt injection or tool misuse: use `prompt-injection-test-plan`.
46+
- Adding retrieval/RAG, indexed docs, websites, or knowledge stores: use `retrieval-source-trust-review`.
47+
- Reviewing human-in-the-loop controls: use `approval-gate-audit`.
48+
- Sending emails, creating calendar events, modifying files, posting messages, purchasing, billing, or changing production systems: use `external-action-review`.
49+
- Needing traceability, audit trails, or operational evidence: use `logging-auditability-review`.
50+
- Changing model, provider, system prompt, tool runtime, or safety settings: use `model-provider-configuration-review`.
51+
- Defining storage, deletion, or retention behavior: use `data-retention-review`.
52+
- Adding packages, services, scripts, or vendor dependencies: use `dependency-supply-chain-review`.
53+
- Reducing access scope or sandboxing execution: use `sandbox-least-privilege-checklist`.
54+
- Preparing for launch: use `production-readiness-security-checklist`.
55+
- Deciding what blocks launch: use `launch-blocker-checklist`.
56+
- Preparing a backout path: use `rollback-plan`.
57+
- Responding to a security event or near miss: use `incident-response-plan`.
58+
- Defining who to contact and when to escalate: use `human-escalation-procedure`.
59+
- Summarizing adversarial testing: use `red-team-test-report`.
60+
- Recording final approval status: use `security-signoff-memo`.
61+
62+
When several artifacts fit, start with the artifact closest to the change or decision being reviewed, then add supporting artifacts only when they materially reduce risk.
63+
64+
## Quality Rules
65+
66+
- Use verified contact routing. Do not invent client, security, legal, billing, support, or approval email addresses; ask for the right address or use `TBD`.
67+
- Preserve least privilege: name each tool, permission, credential, data class, and external action that is actually needed.
68+
- Protect human approval gates for irreversible actions, client-facing communication, payments, data export/deletion, production changes, and material business decisions.
69+
- Separate facts from recommendations. Label unknowns, assumptions, residual risks, blockers, and owner decisions.
70+
- Recommend technical escalation when secrets may be exposed, logs are missing, sandboxing is weak, prompt injection can trigger tools, approval gates are bypassed, production rollback is unclear, or sensitive data flows are not understood.
71+
- Recommend client or human approval before launch, before expanding permissions, before connecting client systems, before sending external communications, and before closing incident follow-up.
72+
73+
## Resource Guide
74+
75+
- `references/security-positioning.md`: load for CompleteTech LLC review language and boundaries.
76+
- `references/use-case-decision-table.md`: load when choosing a security review artifact.
77+
- `references/security-lifecycle.md`: load for review flow from intake through launch and post-incident follow-up.
78+
- `references/security-catalog.md`: load for the reusable artifact templates.
79+
- `references/template-index.json`: machine-readable artifact metadata used by the renderer.
80+
- `scripts/render_security_review.py`: list security artifacts or render a draft with placeholders.
81+
82+
## Renderer
83+
84+
```bash
85+
python3 scripts/render_security_review.py --list
86+
python3 scripts/render_security_review.py --stage launch --list
87+
python3 scripts/render_security_review.py --template agentic-risk-intake --var client_name=Acme --var workflow="support triage agent"
88+
```
89+
90+
Rendered artifacts are drafts. Replace placeholders with verified project facts before sending, storing, or relying on them.
91+
92+
## Rendering to a Branded PDF
93+
94+
Artifacts from this skill are delivered as branded CompleteTech LLC **PDF** documents, not raw Markdown. The renderer emits the PDF (and prints the Markdown) in **one command**, using the same reportlab branding engine as the contract skill:
95+
96+
```bash
97+
pip install -r requirements.txt
98+
python3 scripts/render_security_review.py --template security-signoff-memo \
99+
--out artifact.pdf --png artifact.png \
100+
--title "Security Signoff Memo" --doc-type "SECURITY REVIEW" \
101+
--subtitle "Workflow: <b>Support Email Triage Agent (Pilot)</b>" --meta "MEMO NO.=SEC-2026-0090" --meta "DATE=2026-06-17" \
102+
--var client_name="Client Name" --var workflow="support triage"
103+
```
104+
105+
- `--no-pdf` emits Markdown only (the original behavior); `--no-cover` drops the cover page.
106+
- Already drafted the Markdown yourself? Render it directly: `python3 scripts/render_pdf.py --markdown artifact.md --out artifact.pdf --logo assets/logo.png --title "..."`.
107+
- The PDF supports a Markdown subset: `#`/`##`/`###` headings, paragraphs, `-` bullets, tables, `>` callouts, `**bold**`, and `[PAGE_BREAK]`. PDF requires `reportlab`; the optional `--png` preview requires `pypdfium2` and `pillow`. See `assets/examples/` for a rendered example.

0 commit comments

Comments
 (0)