Claim this agent
Agent DossierCLAWHUBSafety 84/100

Xpersona Agent

Cyber Security Engineer

Security engineering workflow for OpenClaw privilege governance and hardening. Use for least-privilege execution, approval-first privileged actions, idle tim...

OpenClaw · self-declared
552 downloadsTrust evidence available
clawhub skill install kn76xzywt869tsh3r3tjtk1ybs814s22:cyber-security-engineer

Overall rank

#62

Adoption

552 downloads

Trust

Unknown

Freshness

Mar 1, 2026

Freshness

Last checked Mar 1, 2026

Best For

Cyber Security Engineer is best for general automation workflows where OpenClaw compatibility matters.

Not Ideal For

Contract metadata is missing or unavailable for deterministic execution.

Evidence Sources Checked

CLAWHUB, CLAWHUB, runtime-metrics, public facts pack

Overview

Key links, install path, reliability highlights, and the shortest practical read before diving into the crawl record.

Self-declaredCLAWHUB

Overview

Executive Summary

Security engineering workflow for OpenClaw privilege governance and hardening. Use for least-privilege execution, approval-first privileged actions, idle tim... Capability contract not published. No trust telemetry is available yet. 552 downloads reported by the source. Last updated 4/15/2026.

No verified compatibility signals552 downloads

Trust score

Unknown

Compatibility

OpenClaw

Freshness

Mar 1, 2026

Vendor

Clawhub

Artifacts

0

Benchmarks

0

Last release

0.1.4

Install & run

Setup Snapshot

clawhub skill install kn76xzywt869tsh3r3tjtk1ybs814s22:cyber-security-engineer
  1. 1

    Install using `clawhub skill install kn76xzywt869tsh3r3tjtk1ybs814s22:cyber-security-engineer` in an isolated environment before connecting it to live workloads.

  2. 2

    No published capability contract is available yet, so validate auth and request/response behavior manually.

  3. 3

    Review the upstream CLAWHUB listing at https://clawhub.ai/FletcherFrimpong/cyber-security-engineer before using production credentials.

Evidence & Timeline

Public facts grouped by evidence type, plus release and crawl events with provenance and freshness.

Self-declaredCLAWHUB

Public facts

Evidence Ledger

Vendor (1)

Vendor

Clawhub

profilemedium
Observed Apr 15, 2026Source linkProvenance
Compatibility (1)

Protocol compatibility

OpenClaw

contractmedium
Observed Apr 15, 2026Source linkProvenance
Release (1)

Latest release

0.1.4

releasemedium
Observed Feb 15, 2026Source linkProvenance
Adoption (1)

Adoption signal

552 downloads

profilemedium
Observed Apr 15, 2026Source linkProvenance
Security (1)

Handshake status

UNKNOWN

trustmedium
Observed unknownSource linkProvenance

Artifacts & Docs

Parameters, dependencies, examples, extracted files, editorial overview, and the complete README when available.

Self-declaredCLAWHUB

Captured outputs

Artifacts Archive

Extracted files

5

Examples

2

Snippets

0

Languages

Unknown

Executable Examples

json

[
  { "port": 22, "protocol": "tcp", "command": "sshd" },
  { "port": 443, "protocol": "tcp", "command": "nginx" }
]

json

[
  { "port": 22, "protocol": "tcp", "command": "sshd" },
  { "port": 443, "protocol": "tcp", "command": "nginx" }
]
Extracted Files

SKILL.md

---
name: cyber-security-engineer
description: Security engineering workflow for OpenClaw privilege governance and hardening. Use for least-privilege execution, approval-first privileged actions, idle timeout controls, port + egress monitoring, and ISO 27001/NIST-aligned compliance reporting with mitigations.
---

# Cyber Security Engineer

## Requirements

**Env vars (optional, but documented):**
- `OPENCLAW_REQUIRE_POLICY_FILES`
- `OPENCLAW_REQUIRE_SESSION_ID`
- `OPENCLAW_TASK_SESSION_ID`
- `OPENCLAW_APPROVAL_TOKEN`
- `OPENCLAW_UNTRUSTED_SOURCE`
- `OPENCLAW_VIOLATION_NOTIFY_CMD`
- `OPENCLAW_VIOLATION_NOTIFY_ALLOWLIST`

**Tools:** `python3` and one of `lsof`, `ss`, or `netstat` for port/egress checks.

**Policy files (admin reviewed):**
- `~/.openclaw/security/approved_ports.json`
- `~/.openclaw/security/command-policy.json`
- `~/.openclaw/security/egress_allowlist.json`
- `~/.openclaw/security/prompt-policy.json`

Implement these controls in every security-sensitive task:

1. Keep default execution in normal (non-root) mode.
2. Request explicit user approval before any elevated command.
3. Scope elevation to the minimum command set required for the active task.
4. Drop elevated state immediately after the privileged command completes.
5. Expire elevated state after 30 idle minutes and require re-approval.
6. Monitor listening network ports and flag insecure or unapproved exposure.
7. Monitor outbound connections and flag destinations not in the egress allowlist.
8. If no approved baseline exists, generate one with `python3 scripts/generate_approved_ports.py`, then review and prune.
9. Benchmark controls against ISO 27001 and NIST and report violations with mitigations.

## Non-Goals (Web Browsing)

- Do not use web browsing / web search as part of this skill. Keep assessments and recommendations based on local host/OpenClaw state and the bundled references in this skill.

## Files To Use

- `references/least-privilege-policy.md`
- `references/port-monitoring-policy.md`
- `references/compliance-controls-map.json`
- `references/approved_ports.template.json`
- `references/command-policy.template.json`
- `references/prompt-policy.template.json`
- `references/egress-allowlist.template.json`
- `scripts/preflight_check.py`
- `scripts/root_session_guard.py`
- `scripts/audit_logger.py`
- `scripts/command_policy.py`
- `scripts/prompt_policy.py`
- `scripts/guarded_privileged_exec.py`
- `scripts/install-openclaw-runtime-hook.sh`
- `scripts/port_monitor.py`
- `scripts/generate_approved_ports.py`
- `scripts/egress_monitor.py`
- `scripts/notify_on_violation.py`
- `scripts/compliance_dashboard.py`
- `scripts/live_assessment.py`

## Behavior

- Never keep root/elevated access open between unrelated tasks.
- Never execute root commands without an explicit approval step in the current flow.
- Enforce command allow/deny policy when configured.
- Require confirmation when untrusted content sources are detected (`OPENCLAW_UNTRUSTED_SOURCE=1` + prompt policy).
- Enfo

_meta.json

{
  "ownerId": "kn76xzywt869tsh3r3tjtk1ybs814s22",
  "slug": "cyber-security-engineer",
  "version": "0.1.4",
  "publishedAt": 1771154770584
}

references/approved_ports.template.json

[
  {
    "port": 18789,
    "protocol": "tcp",
    "command": "node",
    "comment": "OpenClaw gateway (example). Remove if not applicable."
  }
]

references/command-policy.template.json

{
  "allow": [
    "^openclaw\\b",
    "^python3\\b"
  ],
  "deny": [
    "\\brm\\s+-rf\\b",
    "\\bshutdown\\b",
    "\\breboot\\b"
  ]
}

references/compliance-controls-map.json

[
  {
    "check_id": "privilege_approval_required",
    "title": "Approval required before elevated access",
    "iso27001": ["A.5.15", "A.5.18"],
    "nist": ["PR.AA-01", "PR.AA-05"],
    "default_risk": "high",
    "expected_state": "Every privileged action requires explicit user approval."
  },
  {
    "check_id": "least_privilege_enforced",
    "title": "Least privilege execution mode",
    "iso27001": ["A.5.15", "A.5.18"],
    "nist": ["PR.AA-01", "PR.PS-01"],
    "default_risk": "high",
    "expected_state": "Default mode is non-root and elevated rights are scoped and short-lived."
  },
  {
    "check_id": "elevation_timeout_30m",
    "title": "Elevated session idle timeout",
    "iso27001": ["A.8.2", "A.8.15"],
    "nist": ["PR.AA-03", "DE.CM-01"],
    "default_risk": "medium",
    "expected_state": "Elevated session expires after 30 minutes of inactivity."
  },
  {
    "check_id": "audit_logging_privileged_actions",
    "title": "Privileged action audit logging",
    "iso27001": ["A.8.15", "A.8.16"],
    "nist": ["DE.AE-03", "DE.CM-01"],
    "default_risk": "medium",
    "expected_state": "All elevated approvals, commands, and privilege drops are logged."
  },
  {
    "check_id": "open_ports_approved",
    "title": "Open ports baseline approval",
    "iso27001": ["A.8.20", "A.8.21"],
    "nist": ["PR.PS-02", "DE.CM-01"],
    "default_risk": "medium",
    "expected_state": "All listening ports are approved and business-justified."
  },
  {
    "check_id": "insecure_ports_remediated",
    "title": "Insecure ports remediated",
    "iso27001": ["A.8.20", "A.8.21"],
    "nist": ["PR.PS-02", "PR.DS-02"],
    "default_risk": "high",
    "expected_state": "Insecure legacy ports are closed or migrated to secure alternatives."
  },
  {
    "check_id": "channel_allowlist_configured",
    "title": "Channel allowlist configured",
    "iso27001": ["A.5.15", "A.5.16"],
    "nist": ["PR.AA-02"],
    "default_risk": "high",
    "expected_state": "Inbound channels restrict senders via allowlists."
  },
  {
    "check_id": "group_mentions_required",
    "title": "Group mention requirement",
    "iso27001": ["A.5.16"],
    "nist": ["PR.AA-04"],
    "default_risk": "medium",
    "expected_state": "Group chats require explicit mention before agent responds."
  },
  {
    "check_id": "gateway_loopback_only",
    "title": "Gateway bound to loopback",
    "iso27001": ["A.8.9", "A.8.10"],
    "nist": ["PR.IP-01"],
    "default_risk": "high",
    "expected_state": "Gateway runs local/loopback with token auth."
  },
  {
    "check_id": "secrets_permissions_hardened",
    "title": "Secrets and config permissions hardened",
    "iso27001": ["A.8.11"],
    "nist": ["PR.DS-01"],
    "default_risk": "medium",
    "expected_state": "OpenClaw config and secrets are not world/group readable."
  },
  {
    "check_id": "runtime_privilege_hook_installed",
    "title": "Runtime privileged execution hook installed",
    "iso27001": ["A.5.15", "A.5.18"],
    "nist": ["PR.AA-01"]

Editorial read

Docs & README

Docs source

CLAWHUB

Editorial quality

thin

Skill: Cyber Security Engineer Owner: FletcherFrimpong Summary: Security engineering workflow for OpenClaw privilege governance and hardening. Use for least-privilege execution, approval-first privileged actions, idle tim... Tags: compliance:0.1.4, iso27001:0.1.4, latest:0.1.4, nist:0.1.4, security:0.1.4 Version history: v0.1.4 | 2026-02-15T11:26:10.584Z | user Harden notify_on_violation: remove shell execution; requ

Full README

Skill: Cyber Security Engineer

Owner: FletcherFrimpong

Summary: Security engineering workflow for OpenClaw privilege governance and hardening. Use for least-privilege execution, approval-first privileged actions, idle tim...

Tags: compliance:0.1.4, iso27001:0.1.4, latest:0.1.4, nist:0.1.4, security:0.1.4

Version history:

v0.1.4 | 2026-02-15T11:26:10.584Z | user

Harden notify_on_violation: remove shell execution; require allowlisted notifier executable.

v0.1.3 | 2026-02-15T11:12:39.348Z | user

Document requirements and clarify approved-ports baseline generation; minor docs hygiene.

v0.1.2 | 2026-02-15T00:41:32.954Z | user

Patch-6 republish under canonical slug; same contents as [email protected].

v0.1.1 | 2026-02-15T00:27:08.025Z | user

Republish under canonical slug. Same contents as [email protected].

Archive index:

Archive v0.1.4: 27 files, 43319 bytes

Files: agents/openai.yaml (331b), assessments/compliance-dashboard.html (6200b), assessments/compliance-summary.json (14125b), assessments/openclaw-assessment.json (3591b), references/approved_ports.template.json (149b), references/command-policy.template.json (141b), references/compliance-controls-map.json (5491b), references/egress-allowlist.template.json (117b), references/least-privilege-policy.md (1868b), references/port-monitoring-policy.md (1307b), references/prompt-policy.template.json (50b), scripts/audit_logger.py (800b), scripts/auto_invoke_cycle.sh (1444b), scripts/command_policy.py (2089b), scripts/compliance_dashboard.py (11424b), scripts/egress_monitor.py (7931b), scripts/generate_approved_ports.py (3986b), scripts/guarded_privileged_exec.py (8426b), scripts/install-openclaw-runtime-hook.sh (3206b), scripts/live_assessment.py (21630b), scripts/notify_on_violation.py (7041b), scripts/port_monitor.py (10050b), scripts/preflight_check.py (4233b), scripts/prompt_policy.py (726b), scripts/root_session_guard.py (12327b), SKILL.md (3751b), _meta.json (142b)

File v0.1.4:SKILL.md


name: cyber-security-engineer description: Security engineering workflow for OpenClaw privilege governance and hardening. Use for least-privilege execution, approval-first privileged actions, idle timeout controls, port + egress monitoring, and ISO 27001/NIST-aligned compliance reporting with mitigations.

Cyber Security Engineer

Requirements

Env vars (optional, but documented):

  • OPENCLAW_REQUIRE_POLICY_FILES
  • OPENCLAW_REQUIRE_SESSION_ID
  • OPENCLAW_TASK_SESSION_ID
  • OPENCLAW_APPROVAL_TOKEN
  • OPENCLAW_UNTRUSTED_SOURCE
  • OPENCLAW_VIOLATION_NOTIFY_CMD
  • OPENCLAW_VIOLATION_NOTIFY_ALLOWLIST

Tools: python3 and one of lsof, ss, or netstat for port/egress checks.

Policy files (admin reviewed):

  • ~/.openclaw/security/approved_ports.json
  • ~/.openclaw/security/command-policy.json
  • ~/.openclaw/security/egress_allowlist.json
  • ~/.openclaw/security/prompt-policy.json

Implement these controls in every security-sensitive task:

  1. Keep default execution in normal (non-root) mode.
  2. Request explicit user approval before any elevated command.
  3. Scope elevation to the minimum command set required for the active task.
  4. Drop elevated state immediately after the privileged command completes.
  5. Expire elevated state after 30 idle minutes and require re-approval.
  6. Monitor listening network ports and flag insecure or unapproved exposure.
  7. Monitor outbound connections and flag destinations not in the egress allowlist.
  8. If no approved baseline exists, generate one with python3 scripts/generate_approved_ports.py, then review and prune.
  9. Benchmark controls against ISO 27001 and NIST and report violations with mitigations.

Non-Goals (Web Browsing)

  • Do not use web browsing / web search as part of this skill. Keep assessments and recommendations based on local host/OpenClaw state and the bundled references in this skill.

Files To Use

  • references/least-privilege-policy.md
  • references/port-monitoring-policy.md
  • references/compliance-controls-map.json
  • references/approved_ports.template.json
  • references/command-policy.template.json
  • references/prompt-policy.template.json
  • references/egress-allowlist.template.json
  • scripts/preflight_check.py
  • scripts/root_session_guard.py
  • scripts/audit_logger.py
  • scripts/command_policy.py
  • scripts/prompt_policy.py
  • scripts/guarded_privileged_exec.py
  • scripts/install-openclaw-runtime-hook.sh
  • scripts/port_monitor.py
  • scripts/generate_approved_ports.py
  • scripts/egress_monitor.py
  • scripts/notify_on_violation.py
  • scripts/compliance_dashboard.py
  • scripts/live_assessment.py

Behavior

  • Never keep root/elevated access open between unrelated tasks.
  • Never execute root commands without an explicit approval step in the current flow.
  • Enforce command allow/deny policy when configured.
  • Require confirmation when untrusted content sources are detected (OPENCLAW_UNTRUSTED_SOURCE=1 + prompt policy).
  • Enforce task session id scoping when configured (OPENCLAW_REQUIRE_SESSION_ID=1).
  • If timeout is exceeded, force session expiration and approval renewal.
  • Log privileged actions to ~/.openclaw/security/privileged-audit.jsonl (best-effort).
  • Flag listening ports not present in the approved baseline and recommend secure alternatives for insecure ports.
  • Flag outbound destinations not present in the egress allowlist.

Output Contract

When reporting status, include:

  • The specific check_id(s) affected, status, risk, and concise evidence.
  • Concrete mitigations (what to change, where) and any owners/due dates if present.
  • For network findings: port, bind address, process/service, and why it is flagged (unapproved/insecure/public).

File v0.1.4:_meta.json

{ "ownerId": "kn76xzywt869tsh3r3tjtk1ybs814s22", "slug": "cyber-security-engineer", "version": "0.1.4", "publishedAt": 1771154770584 }

File v0.1.4:references/approved_ports.template.json

[ { "port": 18789, "protocol": "tcp", "command": "node", "comment": "OpenClaw gateway (example). Remove if not applicable." } ]

File v0.1.4:references/command-policy.template.json

{ "allow": [ "^openclaw\b", "^python3\b" ], "deny": [ "\brm\s+-rf\b", "\bshutdown\b", "\breboot\b" ] }

File v0.1.4:references/compliance-controls-map.json

[ { "check_id": "privilege_approval_required", "title": "Approval required before elevated access", "iso27001": ["A.5.15", "A.5.18"], "nist": ["PR.AA-01", "PR.AA-05"], "default_risk": "high", "expected_state": "Every privileged action requires explicit user approval." }, { "check_id": "least_privilege_enforced", "title": "Least privilege execution mode", "iso27001": ["A.5.15", "A.5.18"], "nist": ["PR.AA-01", "PR.PS-01"], "default_risk": "high", "expected_state": "Default mode is non-root and elevated rights are scoped and short-lived." }, { "check_id": "elevation_timeout_30m", "title": "Elevated session idle timeout", "iso27001": ["A.8.2", "A.8.15"], "nist": ["PR.AA-03", "DE.CM-01"], "default_risk": "medium", "expected_state": "Elevated session expires after 30 minutes of inactivity." }, { "check_id": "audit_logging_privileged_actions", "title": "Privileged action audit logging", "iso27001": ["A.8.15", "A.8.16"], "nist": ["DE.AE-03", "DE.CM-01"], "default_risk": "medium", "expected_state": "All elevated approvals, commands, and privilege drops are logged." }, { "check_id": "open_ports_approved", "title": "Open ports baseline approval", "iso27001": ["A.8.20", "A.8.21"], "nist": ["PR.PS-02", "DE.CM-01"], "default_risk": "medium", "expected_state": "All listening ports are approved and business-justified." }, { "check_id": "insecure_ports_remediated", "title": "Insecure ports remediated", "iso27001": ["A.8.20", "A.8.21"], "nist": ["PR.PS-02", "PR.DS-02"], "default_risk": "high", "expected_state": "Insecure legacy ports are closed or migrated to secure alternatives." }, { "check_id": "channel_allowlist_configured", "title": "Channel allowlist configured", "iso27001": ["A.5.15", "A.5.16"], "nist": ["PR.AA-02"], "default_risk": "high", "expected_state": "Inbound channels restrict senders via allowlists." }, { "check_id": "group_mentions_required", "title": "Group mention requirement", "iso27001": ["A.5.16"], "nist": ["PR.AA-04"], "default_risk": "medium", "expected_state": "Group chats require explicit mention before agent responds." }, { "check_id": "gateway_loopback_only", "title": "Gateway bound to loopback", "iso27001": ["A.8.9", "A.8.10"], "nist": ["PR.IP-01"], "default_risk": "high", "expected_state": "Gateway runs local/loopback with token auth." }, { "check_id": "secrets_permissions_hardened", "title": "Secrets and config permissions hardened", "iso27001": ["A.8.11"], "nist": ["PR.DS-01"], "default_risk": "medium", "expected_state": "OpenClaw config and secrets are not world/group readable." }, { "check_id": "runtime_privilege_hook_installed", "title": "Runtime privileged execution hook installed", "iso27001": ["A.5.15", "A.5.18"], "nist": ["PR.AA-01"], "default_risk": "high", "expected_state": "Privileged commands are forced through approval guard." }, { "check_id": "alternate_privilege_paths_restricted", "title": "Alternate privilege paths restricted", "iso27001": ["A.5.15"], "nist": ["PR.AA-05"], "default_risk": "medium", "expected_state": "su/doas or other escalation paths are restricted or guarded." }, { "check_id": "backup_configured", "title": "Backup and recovery configured", "iso27001": ["A.8.13"], "nist": ["PR.IP-04"], "default_risk": "low", "expected_state": "Backups of OpenClaw config and audit logs exist." }, { "check_id": "update_hygiene", "title": "Update hygiene", "iso27001": ["A.8.8"], "nist": ["ID.RA-01"], "default_risk": "low", "expected_state": "OpenClaw is updated regularly and version is tracked." }, { "check_id": "prompt_injection_controls", "title": "Prompt injection controls", "iso27001": ["A.5.15", "A.5.18"], "nist": ["PR.AA-01"], "default_risk": "high", "expected_state": "Untrusted content sources require explicit confirmation before privileged execution." }, { "check_id": "command_policy_enforced", "title": "Privileged command policy enforced", "iso27001": ["A.5.15"], "nist": ["PR.AA-05"], "default_risk": "high", "expected_state": "Privileged commands are filtered by allow/deny policy." }, { "check_id": "session_boundary_enforced", "title": "Task session boundary enforced", "iso27001": ["A.5.15"], "nist": ["PR.AA-03"], "default_risk": "medium", "expected_state": "Privileged approvals are scoped to a task session id." }, { "check_id": "multi_factor_approval", "title": "Multi-factor approval for privileged actions", "iso27001": ["A.5.17"], "nist": ["PR.AA-02"], "default_risk": "medium", "expected_state": "Privileged approvals require an additional approval token." }, { "check_id": "egress_allowlist_configured", "title": "Outbound allowlist configured", "iso27001": ["A.8.20"], "nist": ["PR.PS-02"], "default_risk": "medium", "expected_state": "Outbound destinations are allowlisted." }, { "check_id": "egress_connections_approved", "title": "Outbound connections approved", "iso27001": ["A.8.20"], "nist": ["DE.CM-01"], "default_risk": "medium", "expected_state": "No unapproved outbound connections are detected." } ]

File v0.1.4:references/egress-allowlist.template.json

[ { "protocol": "tcp", "host_regex": "^(api\.openai\.com|api\.telegram\.org)$", "port": 443 } ]

File v0.1.4:references/least-privilege-policy.md

Least-Privilege Policy For OpenClaw

Objective

Enforce default non-root execution and explicit approval-first elevation with immediate privilege drop after privileged operations.

Required Controls

  1. Set default execution context to non-root.
  2. Require approval before every privileged command.
  3. Limit privileged commands to a reviewed allowlist (per-task scope).
  4. Log privileged requests, approvals, and execution outcomes.
  5. Drop elevated state immediately after privileged command completion.
  6. Force elevated timeout expiration after 30 idle minutes.

Operational Checks

  1. Verify privileged command is required for task outcome.
  2. Execute privileged work through wrapper:
    • python3 scripts/guarded_privileged_exec.py --reason "required change" --use-sudo -- <command>
  3. If wrapper requests approval, require explicit user consent before command runs.
  4. Execute only the approved privileged command(s):
    • Approval is tied to the exact argv you approved.
    • Any different privileged argv triggers a new approval and allowlist entry.
  5. Confirm wrapper drops privilege immediately after completion.

Control Acceptance Criteria

  1. No privileged command runs without current-task user approval.
  2. Elevated session is not retained after privileged work completes.
  3. Idle elevated session at or above 30 minutes transitions to normal mode.
  4. Session state file records UTC transition/action metadata.

Suggested OpenClaw Config Direction

Configure OpenClaw with strict approval and allowlist behavior:

  • Set execution ask behavior to always prompt.
  • Set execution security mode to allowlist.
  • Restrict elevated tool callers with explicit allowFrom entries.
  • Keep sandboxing enabled for normal operations.

If exact keys differ by version, preserve intent: explicit approval + least privilege + short-lived elevation.

File v0.1.4:references/port-monitoring-policy.md

Port Monitoring Policy For OpenClaw

Objective

Continuously identify listening services, detect insecure ports/protocols, and flag ports not approved by baseline policy.

Baseline File

Use ~/.openclaw/security/approved_ports.json as a JSON array:

[
  { "port": 22, "protocol": "tcp", "command": "sshd" },
  { "port": 443, "protocol": "tcp", "command": "nginx" }
]

command is optional but recommended for tighter control.

Monitoring Command

Run:

python3 scripts/port_monitor.py --json

Required Analyst Actions

  1. Review all unapproved-port findings.
  2. Review all insecure-port findings and propose secure alternatives.
  3. Confirm whether public-bind findings are necessary exposure.
  4. Ask for user approval before any root-level remediation steps.

Insecure Port Guidance

Enforce upgrades where possible:

  1. 80 -> 443 (HTTPS instead of HTTP)
  2. 23 -> 22 (SSH instead of Telnet)
  3. 21 -> 22/990 (SFTP/FTPS instead of FTP)
  4. 110 -> 995 (POP3S)
  5. 143 -> 993 (IMAPS)
  6. 389 -> 636 (LDAPS)

Acceptance Criteria

  1. Every open listening port is either approved or explicitly flagged.
  2. Every insecure port includes a replacement recommendation.
  3. Every externally bound service (*, 0.0.0.0, ::) is justified or marked for restriction.

File v0.1.4:references/prompt-policy.template.json

{ "require_confirmation_for_untrusted": true }

File v0.1.4:assessments/compliance-summary.json

{ "generated_at_utc": "2026-02-14T13:48:28.593079Z", "system": "OpenClaw", "summary": { "status_counts": { "violation": 2, "compliant": 2, "partial": 2 }, "risk_counts": { "high": 3, "medium": 3 }, "violations": [ { "check_id": "privilege_approval_required", "title": "Approval required before elevated access", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.AA-05" ], "expected_state": "Every privileged action requires explicit user approval.", "status": "violation", "risk": "high", "observed_state": "Token auth is configured; explicit privileged command approval policy is not fully visible in runtime config.", "evidence": "openclaw.json and doctor outputs were evaluated for approval-first execution controls.", "gap": "Runtime policy does not yet demonstrate universal approval enforcement for elevated actions.", "mitigation": "Route all privileged tasks through guarded_privileged_exec.py and enforce approval prompts for elevated execution.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "elevation_timeout_30m", "title": "Elevated session idle timeout", "iso27001": [ "A.8.2", "A.8.15" ], "nist": [ "PR.AA-03", "DE.CM-01" ], "expected_state": "Elevated session expires after 30 minutes of inactivity.", "status": "partial", "risk": "medium", "observed_state": "30-minute timeout logic exists in root_session_guard.py.", "evidence": "Timeout guard script is installed with preflight drop logic.", "gap": "Global mandatory enforcement for all elevated paths is not yet guaranteed by runtime policy.", "mitigation": "Invoke guarded_privileged_exec.py for every elevated operation path.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "audit_logging_privileged_actions", "title": "Privileged action audit logging", "iso27001": [ "A.8.15", "A.8.16" ], "nist": [ "DE.AE-03", "DE.CM-01" ], "expected_state": "All elevated approvals, commands, and privilege drops are logged.", "status": "partial", "risk": "medium", "observed_state": "Gateway logs and session transition logs are available.", "evidence": "gateway status reports log paths; root_session_guard records transition metadata.", "gap": "No single correlated privileged action audit timeline is guaranteed.", "mitigation": "Create append-only correlated audit records linking approval, execution, and drop events.", "owner": "SecOps", "due_date": "2026-03-22" }, { "check_id": "open_ports_approved", "title": "Open ports baseline approval", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "DE.CM-01" ], "expected_state": "All listening ports are approved and business-justified.", "status": "violation", "risk": "medium", "observed_state": "Detected 12 listening services with 12 unapproved findings.", "evidence": "port_monitor.py live output evaluated against approved_ports baseline.", "gap": "Baseline missing or incomplete when unapproved findings exist.", "mitigation": "Populate ~/.openclaw/security/approved_ports.json and remove unnecessary listeners.", "owner": "Infrastructure", "due_date": "2026-02-28" } ], "mitigations": [ { "check_id": "privilege_approval_required", "title": "Approval required before elevated access", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.AA-05" ], "expected_state": "Every privileged action requires explicit user approval.", "status": "violation", "risk": "high", "observed_state": "Token auth is configured; explicit privileged command approval policy is not fully visible in runtime config.", "evidence": "openclaw.json and doctor outputs were evaluated for approval-first execution controls.", "gap": "Runtime policy does not yet demonstrate universal approval enforcement for elevated actions.", "mitigation": "Route all privileged tasks through guarded_privileged_exec.py and enforce approval prompts for elevated execution.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "least_privilege_enforced", "title": "Least privilege execution mode", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.PS-01" ], "expected_state": "Default mode is non-root and elevated rights are scoped and short-lived.", "status": "compliant", "risk": "high", "observed_state": "Gateway local/loopback+token controls are present; state integrity warnings may still appear.", "evidence": "openclaw.json has local mode, loopback bind, and token auth; doctor output was checked for integrity warnings.", "gap": "Least-privilege posture is not complete while writable/integrity warnings remain.", "mitigation": "Fix state dir ownership/permissions and enforce command allowlist/approval defaults.", "owner": "Platform Security", "due_date": "2026-03-07" }, { "check_id": "elevation_timeout_30m", "title": "Elevated session idle timeout", "iso27001": [ "A.8.2", "A.8.15" ], "nist": [ "PR.AA-03", "DE.CM-01" ], "expected_state": "Elevated session expires after 30 minutes of inactivity.", "status": "partial", "risk": "medium", "observed_state": "30-minute timeout logic exists in root_session_guard.py.", "evidence": "Timeout guard script is installed with preflight drop logic.", "gap": "Global mandatory enforcement for all elevated paths is not yet guaranteed by runtime policy.", "mitigation": "Invoke guarded_privileged_exec.py for every elevated operation path.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "audit_logging_privileged_actions", "title": "Privileged action audit logging", "iso27001": [ "A.8.15", "A.8.16" ], "nist": [ "DE.AE-03", "DE.CM-01" ], "expected_state": "All elevated approvals, commands, and privilege drops are logged.", "status": "partial", "risk": "medium", "observed_state": "Gateway logs and session transition logs are available.", "evidence": "gateway status reports log paths; root_session_guard records transition metadata.", "gap": "No single correlated privileged action audit timeline is guaranteed.", "mitigation": "Create append-only correlated audit records linking approval, execution, and drop events.", "owner": "SecOps", "due_date": "2026-03-22" }, { "check_id": "open_ports_approved", "title": "Open ports baseline approval", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "DE.CM-01" ], "expected_state": "All listening ports are approved and business-justified.", "status": "violation", "risk": "medium", "observed_state": "Detected 12 listening services with 12 unapproved findings.", "evidence": "port_monitor.py live output evaluated against approved_ports baseline.", "gap": "Baseline missing or incomplete when unapproved findings exist.", "mitigation": "Populate ~/.openclaw/security/approved_ports.json and remove unnecessary listeners.", "owner": "Infrastructure", "due_date": "2026-02-28" }, { "check_id": "insecure_ports_remediated", "title": "Insecure ports remediated", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "PR.DS-02" ], "expected_state": "Insecure legacy ports are closed or migrated to secure alternatives.", "status": "compliant", "risk": "high", "observed_state": "No insecure legacy port findings detected.", "evidence": "Insecure findings count from port_monitor.py: 0.", "gap": "None observed in current snapshot.", "mitigation": "Enforce baseline checks to block insecure service ports.", "owner": "Network Security", "due_date": "2026-04-01" } ] }, "controls": [ { "check_id": "privilege_approval_required", "title": "Approval required before elevated access", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.AA-05" ], "expected_state": "Every privileged action requires explicit user approval.", "status": "violation", "risk": "high", "observed_state": "Token auth is configured; explicit privileged command approval policy is not fully visible in runtime config.", "evidence": "openclaw.json and doctor outputs were evaluated for approval-first execution controls.", "gap": "Runtime policy does not yet demonstrate universal approval enforcement for elevated actions.", "mitigation": "Route all privileged tasks through guarded_privileged_exec.py and enforce approval prompts for elevated execution.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "least_privilege_enforced", "title": "Least privilege execution mode", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.PS-01" ], "expected_state": "Default mode is non-root and elevated rights are scoped and short-lived.", "status": "compliant", "risk": "high", "observed_state": "Gateway local/loopback+token controls are present; state integrity warnings may still appear.", "evidence": "openclaw.json has local mode, loopback bind, and token auth; doctor output was checked for integrity warnings.", "gap": "Least-privilege posture is not complete while writable/integrity warnings remain.", "mitigation": "Fix state dir ownership/permissions and enforce command allowlist/approval defaults.", "owner": "Platform Security", "due_date": "2026-03-07" }, { "check_id": "elevation_timeout_30m", "title": "Elevated session idle timeout", "iso27001": [ "A.8.2", "A.8.15" ], "nist": [ "PR.AA-03", "DE.CM-01" ], "expected_state": "Elevated session expires after 30 minutes of inactivity.", "status": "partial", "risk": "medium", "observed_state": "30-minute timeout logic exists in root_session_guard.py.", "evidence": "Timeout guard script is installed with preflight drop logic.", "gap": "Global mandatory enforcement for all elevated paths is not yet guaranteed by runtime policy.", "mitigation": "Invoke guarded_privileged_exec.py for every elevated operation path.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "audit_logging_privileged_actions", "title": "Privileged action audit logging", "iso27001": [ "A.8.15", "A.8.16" ], "nist": [ "DE.AE-03", "DE.CM-01" ], "expected_state": "All elevated approvals, commands, and privilege drops are logged.", "status": "partial", "risk": "medium", "observed_state": "Gateway logs and session transition logs are available.", "evidence": "gateway status reports log paths; root_session_guard records transition metadata.", "gap": "No single correlated privileged action audit timeline is guaranteed.", "mitigation": "Create append-only correlated audit records linking approval, execution, and drop events.", "owner": "SecOps", "due_date": "2026-03-22" }, { "check_id": "open_ports_approved", "title": "Open ports baseline approval", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "DE.CM-01" ], "expected_state": "All listening ports are approved and business-justified.", "status": "violation", "risk": "medium", "observed_state": "Detected 12 listening services with 12 unapproved findings.", "evidence": "port_monitor.py live output evaluated against approved_ports baseline.", "gap": "Baseline missing or incomplete when unapproved findings exist.", "mitigation": "Populate ~/.openclaw/security/approved_ports.json and remove unnecessary listeners.", "owner": "Infrastructure", "due_date": "2026-02-28" }, { "check_id": "insecure_ports_remediated", "title": "Insecure ports remediated", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "PR.DS-02" ], "expected_state": "Insecure legacy ports are closed or migrated to secure alternatives.", "status": "compliant", "risk": "high", "observed_state": "No insecure legacy port findings detected.", "evidence": "Insecure findings count from port_monitor.py: 0.", "gap": "None observed in current snapshot.", "mitigation": "Enforce baseline checks to block insecure service ports.", "owner": "Network Security", "due_date": "2026-04-01" } ] }

File v0.1.4:assessments/openclaw-assessment.json

{ "metadata": { "system": "OpenClaw", "generated_at_utc": "2026-02-14T13:48:28.559421Z", "frameworks": [ "ISO/IEC 27001:2022", "NIST CSF" ] }, "checks": [ { "check_id": "privilege_approval_required", "status": "violation", "risk": "high", "observed_state": "Token auth is configured; explicit privileged command approval policy is not fully visible in runtime config.", "evidence": "openclaw.json and doctor outputs were evaluated for approval-first execution controls.", "gap": "Runtime policy does not yet demonstrate universal approval enforcement for elevated actions.", "mitigation": "Route all privileged tasks through guarded_privileged_exec.py and enforce approval prompts for elevated execution.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "least_privilege_enforced", "status": "compliant", "risk": "high", "observed_state": "Gateway local/loopback+token controls are present; state integrity warnings may still appear.", "evidence": "openclaw.json has local mode, loopback bind, and token auth; doctor output was checked for integrity warnings.", "gap": "Least-privilege posture is not complete while writable/integrity warnings remain.", "mitigation": "Fix state dir ownership/permissions and enforce command allowlist/approval defaults.", "owner": "Platform Security", "due_date": "2026-03-07" }, { "check_id": "elevation_timeout_30m", "status": "partial", "risk": "medium", "observed_state": "30-minute timeout logic exists in root_session_guard.py.", "evidence": "Timeout guard script is installed with preflight drop logic.", "gap": "Global mandatory enforcement for all elevated paths is not yet guaranteed by runtime policy.", "mitigation": "Invoke guarded_privileged_exec.py for every elevated operation path.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "audit_logging_privileged_actions", "status": "partial", "risk": "medium", "observed_state": "Gateway logs and session transition logs are available.", "evidence": "gateway status reports log paths; root_session_guard records transition metadata.", "gap": "No single correlated privileged action audit timeline is guaranteed.", "mitigation": "Create append-only correlated audit records linking approval, execution, and drop events.", "owner": "SecOps", "due_date": "2026-03-22" }, { "check_id": "open_ports_approved", "status": "violation", "risk": "medium", "observed_state": "Detected 12 listening services with 12 unapproved findings.", "evidence": "port_monitor.py live output evaluated against approved_ports baseline.", "gap": "Baseline missing or incomplete when unapproved findings exist.", "mitigation": "Populate ~/.openclaw/security/approved_ports.json and remove unnecessary listeners.", "owner": "Infrastructure", "due_date": "2026-02-28" }, { "check_id": "insecure_ports_remediated", "status": "compliant", "risk": "high", "observed_state": "No insecure legacy port findings detected.", "evidence": "Insecure findings count from port_monitor.py: 0.", "gap": "None observed in current snapshot.", "mitigation": "Enforce baseline checks to block insecure service ports.", "owner": "Network Security", "due_date": "2026-04-01" } ] }

File v0.1.4:agents/openai.yaml

interface: display_name: "Cyber Security Engineer" short_description: "Least-privilege and elevated access controls" default_prompt: "Use $cyber-security-engineer to enforce approval-first elevation, command policy, and session scoping for OpenClaw. Requires OPENCLAW_* env vars and policy files under ~/.openclaw/security."

Archive v0.1.3: 27 files, 42796 bytes

Files: agents/openai.yaml (331b), assessments/compliance-dashboard.html (6200b), assessments/compliance-summary.json (14125b), assessments/openclaw-assessment.json (3591b), references/approved_ports.template.json (149b), references/command-policy.template.json (141b), references/compliance-controls-map.json (5491b), references/egress-allowlist.template.json (117b), references/least-privilege-policy.md (1868b), references/port-monitoring-policy.md (1307b), references/prompt-policy.template.json (50b), scripts/audit_logger.py (800b), scripts/auto_invoke_cycle.sh (1444b), scripts/command_policy.py (2089b), scripts/compliance_dashboard.py (11424b), scripts/egress_monitor.py (7931b), scripts/generate_approved_ports.py (3986b), scripts/guarded_privileged_exec.py (8426b), scripts/install-openclaw-runtime-hook.sh (3206b), scripts/live_assessment.py (21630b), scripts/notify_on_violation.py (5335b), scripts/port_monitor.py (10050b), scripts/preflight_check.py (4233b), scripts/prompt_policy.py (726b), scripts/root_session_guard.py (12327b), SKILL.md (3711b), _meta.json (142b)

File v0.1.3:SKILL.md


name: cyber-security-engineer description: Security engineering workflow for OpenClaw privilege governance and hardening. Use for least-privilege execution, approval-first privileged actions, idle timeout controls, port + egress monitoring, and ISO 27001/NIST-aligned compliance reporting with mitigations.

Cyber Security Engineer

Requirements

Env vars (optional, but documented):

  • OPENCLAW_REQUIRE_POLICY_FILES
  • OPENCLAW_REQUIRE_SESSION_ID
  • OPENCLAW_TASK_SESSION_ID
  • OPENCLAW_APPROVAL_TOKEN
  • OPENCLAW_UNTRUSTED_SOURCE
  • OPENCLAW_VIOLATION_NOTIFY_CMD

Tools: python3 and one of lsof, ss, or netstat for port/egress checks.

Policy files (admin reviewed):

  • ~/.openclaw/security/approved_ports.json
  • ~/.openclaw/security/command-policy.json
  • ~/.openclaw/security/egress_allowlist.json
  • ~/.openclaw/security/prompt-policy.json

Implement these controls in every security-sensitive task:

  1. Keep default execution in normal (non-root) mode.
  2. Request explicit user approval before any elevated command.
  3. Scope elevation to the minimum command set required for the active task.
  4. Drop elevated state immediately after the privileged command completes.
  5. Expire elevated state after 30 idle minutes and require re-approval.
  6. Monitor listening network ports and flag insecure or unapproved exposure.
  7. Monitor outbound connections and flag destinations not in the egress allowlist.
  8. If no approved baseline exists, generate one with python3 scripts/generate_approved_ports.py, then review and prune.
  9. Benchmark controls against ISO 27001 and NIST and report violations with mitigations.

Non-Goals (Web Browsing)

  • Do not use web browsing / web search as part of this skill. Keep assessments and recommendations based on local host/OpenClaw state and the bundled references in this skill.

Files To Use

  • references/least-privilege-policy.md
  • references/port-monitoring-policy.md
  • references/compliance-controls-map.json
  • references/approved_ports.template.json
  • references/command-policy.template.json
  • references/prompt-policy.template.json
  • references/egress-allowlist.template.json
  • scripts/preflight_check.py
  • scripts/root_session_guard.py
  • scripts/audit_logger.py
  • scripts/command_policy.py
  • scripts/prompt_policy.py
  • scripts/guarded_privileged_exec.py
  • scripts/install-openclaw-runtime-hook.sh
  • scripts/port_monitor.py
  • scripts/generate_approved_ports.py
  • scripts/egress_monitor.py
  • scripts/notify_on_violation.py
  • scripts/compliance_dashboard.py
  • scripts/live_assessment.py

Behavior

  • Never keep root/elevated access open between unrelated tasks.
  • Never execute root commands without an explicit approval step in the current flow.
  • Enforce command allow/deny policy when configured.
  • Require confirmation when untrusted content sources are detected (OPENCLAW_UNTRUSTED_SOURCE=1 + prompt policy).
  • Enforce task session id scoping when configured (OPENCLAW_REQUIRE_SESSION_ID=1).
  • If timeout is exceeded, force session expiration and approval renewal.
  • Log privileged actions to ~/.openclaw/security/privileged-audit.jsonl (best-effort).
  • Flag listening ports not present in the approved baseline and recommend secure alternatives for insecure ports.
  • Flag outbound destinations not present in the egress allowlist.

Output Contract

When reporting status, include:

  • The specific check_id(s) affected, status, risk, and concise evidence.
  • Concrete mitigations (what to change, where) and any owners/due dates if present.
  • For network findings: port, bind address, process/service, and why it is flagged (unapproved/insecure/public).

File v0.1.3:_meta.json

{ "ownerId": "kn76xzywt869tsh3r3tjtk1ybs814s22", "slug": "cyber-security-engineer", "version": "0.1.3", "publishedAt": 1771153959348 }

File v0.1.3:references/approved_ports.template.json

[ { "port": 18789, "protocol": "tcp", "command": "node", "comment": "OpenClaw gateway (example). Remove if not applicable." } ]

File v0.1.3:references/command-policy.template.json

{ "allow": [ "^openclaw\b", "^python3\b" ], "deny": [ "\brm\s+-rf\b", "\bshutdown\b", "\breboot\b" ] }

File v0.1.3:references/compliance-controls-map.json

[ { "check_id": "privilege_approval_required", "title": "Approval required before elevated access", "iso27001": ["A.5.15", "A.5.18"], "nist": ["PR.AA-01", "PR.AA-05"], "default_risk": "high", "expected_state": "Every privileged action requires explicit user approval." }, { "check_id": "least_privilege_enforced", "title": "Least privilege execution mode", "iso27001": ["A.5.15", "A.5.18"], "nist": ["PR.AA-01", "PR.PS-01"], "default_risk": "high", "expected_state": "Default mode is non-root and elevated rights are scoped and short-lived." }, { "check_id": "elevation_timeout_30m", "title": "Elevated session idle timeout", "iso27001": ["A.8.2", "A.8.15"], "nist": ["PR.AA-03", "DE.CM-01"], "default_risk": "medium", "expected_state": "Elevated session expires after 30 minutes of inactivity." }, { "check_id": "audit_logging_privileged_actions", "title": "Privileged action audit logging", "iso27001": ["A.8.15", "A.8.16"], "nist": ["DE.AE-03", "DE.CM-01"], "default_risk": "medium", "expected_state": "All elevated approvals, commands, and privilege drops are logged." }, { "check_id": "open_ports_approved", "title": "Open ports baseline approval", "iso27001": ["A.8.20", "A.8.21"], "nist": ["PR.PS-02", "DE.CM-01"], "default_risk": "medium", "expected_state": "All listening ports are approved and business-justified." }, { "check_id": "insecure_ports_remediated", "title": "Insecure ports remediated", "iso27001": ["A.8.20", "A.8.21"], "nist": ["PR.PS-02", "PR.DS-02"], "default_risk": "high", "expected_state": "Insecure legacy ports are closed or migrated to secure alternatives." }, { "check_id": "channel_allowlist_configured", "title": "Channel allowlist configured", "iso27001": ["A.5.15", "A.5.16"], "nist": ["PR.AA-02"], "default_risk": "high", "expected_state": "Inbound channels restrict senders via allowlists." }, { "check_id": "group_mentions_required", "title": "Group mention requirement", "iso27001": ["A.5.16"], "nist": ["PR.AA-04"], "default_risk": "medium", "expected_state": "Group chats require explicit mention before agent responds." }, { "check_id": "gateway_loopback_only", "title": "Gateway bound to loopback", "iso27001": ["A.8.9", "A.8.10"], "nist": ["PR.IP-01"], "default_risk": "high", "expected_state": "Gateway runs local/loopback with token auth." }, { "check_id": "secrets_permissions_hardened", "title": "Secrets and config permissions hardened", "iso27001": ["A.8.11"], "nist": ["PR.DS-01"], "default_risk": "medium", "expected_state": "OpenClaw config and secrets are not world/group readable." }, { "check_id": "runtime_privilege_hook_installed", "title": "Runtime privileged execution hook installed", "iso27001": ["A.5.15", "A.5.18"], "nist": ["PR.AA-01"], "default_risk": "high", "expected_state": "Privileged commands are forced through approval guard." }, { "check_id": "alternate_privilege_paths_restricted", "title": "Alternate privilege paths restricted", "iso27001": ["A.5.15"], "nist": ["PR.AA-05"], "default_risk": "medium", "expected_state": "su/doas or other escalation paths are restricted or guarded." }, { "check_id": "backup_configured", "title": "Backup and recovery configured", "iso27001": ["A.8.13"], "nist": ["PR.IP-04"], "default_risk": "low", "expected_state": "Backups of OpenClaw config and audit logs exist." }, { "check_id": "update_hygiene", "title": "Update hygiene", "iso27001": ["A.8.8"], "nist": ["ID.RA-01"], "default_risk": "low", "expected_state": "OpenClaw is updated regularly and version is tracked." }, { "check_id": "prompt_injection_controls", "title": "Prompt injection controls", "iso27001": ["A.5.15", "A.5.18"], "nist": ["PR.AA-01"], "default_risk": "high", "expected_state": "Untrusted content sources require explicit confirmation before privileged execution." }, { "check_id": "command_policy_enforced", "title": "Privileged command policy enforced", "iso27001": ["A.5.15"], "nist": ["PR.AA-05"], "default_risk": "high", "expected_state": "Privileged commands are filtered by allow/deny policy." }, { "check_id": "session_boundary_enforced", "title": "Task session boundary enforced", "iso27001": ["A.5.15"], "nist": ["PR.AA-03"], "default_risk": "medium", "expected_state": "Privileged approvals are scoped to a task session id." }, { "check_id": "multi_factor_approval", "title": "Multi-factor approval for privileged actions", "iso27001": ["A.5.17"], "nist": ["PR.AA-02"], "default_risk": "medium", "expected_state": "Privileged approvals require an additional approval token." }, { "check_id": "egress_allowlist_configured", "title": "Outbound allowlist configured", "iso27001": ["A.8.20"], "nist": ["PR.PS-02"], "default_risk": "medium", "expected_state": "Outbound destinations are allowlisted." }, { "check_id": "egress_connections_approved", "title": "Outbound connections approved", "iso27001": ["A.8.20"], "nist": ["DE.CM-01"], "default_risk": "medium", "expected_state": "No unapproved outbound connections are detected." } ]

File v0.1.3:references/egress-allowlist.template.json

[ { "protocol": "tcp", "host_regex": "^(api\.openai\.com|api\.telegram\.org)$", "port": 443 } ]

File v0.1.3:references/least-privilege-policy.md

Least-Privilege Policy For OpenClaw

Objective

Enforce default non-root execution and explicit approval-first elevation with immediate privilege drop after privileged operations.

Required Controls

  1. Set default execution context to non-root.
  2. Require approval before every privileged command.
  3. Limit privileged commands to a reviewed allowlist (per-task scope).
  4. Log privileged requests, approvals, and execution outcomes.
  5. Drop elevated state immediately after privileged command completion.
  6. Force elevated timeout expiration after 30 idle minutes.

Operational Checks

  1. Verify privileged command is required for task outcome.
  2. Execute privileged work through wrapper:
    • python3 scripts/guarded_privileged_exec.py --reason "required change" --use-sudo -- <command>
  3. If wrapper requests approval, require explicit user consent before command runs.
  4. Execute only the approved privileged command(s):
    • Approval is tied to the exact argv you approved.
    • Any different privileged argv triggers a new approval and allowlist entry.
  5. Confirm wrapper drops privilege immediately after completion.

Control Acceptance Criteria

  1. No privileged command runs without current-task user approval.
  2. Elevated session is not retained after privileged work completes.
  3. Idle elevated session at or above 30 minutes transitions to normal mode.
  4. Session state file records UTC transition/action metadata.

Suggested OpenClaw Config Direction

Configure OpenClaw with strict approval and allowlist behavior:

  • Set execution ask behavior to always prompt.
  • Set execution security mode to allowlist.
  • Restrict elevated tool callers with explicit allowFrom entries.
  • Keep sandboxing enabled for normal operations.

If exact keys differ by version, preserve intent: explicit approval + least privilege + short-lived elevation.

File v0.1.3:references/port-monitoring-policy.md

Port Monitoring Policy For OpenClaw

Objective

Continuously identify listening services, detect insecure ports/protocols, and flag ports not approved by baseline policy.

Baseline File

Use ~/.openclaw/security/approved_ports.json as a JSON array:

[
  { "port": 22, "protocol": "tcp", "command": "sshd" },
  { "port": 443, "protocol": "tcp", "command": "nginx" }
]

command is optional but recommended for tighter control.

Monitoring Command

Run:

python3 scripts/port_monitor.py --json

Required Analyst Actions

  1. Review all unapproved-port findings.
  2. Review all insecure-port findings and propose secure alternatives.
  3. Confirm whether public-bind findings are necessary exposure.
  4. Ask for user approval before any root-level remediation steps.

Insecure Port Guidance

Enforce upgrades where possible:

  1. 80 -> 443 (HTTPS instead of HTTP)
  2. 23 -> 22 (SSH instead of Telnet)
  3. 21 -> 22/990 (SFTP/FTPS instead of FTP)
  4. 110 -> 995 (POP3S)
  5. 143 -> 993 (IMAPS)
  6. 389 -> 636 (LDAPS)

Acceptance Criteria

  1. Every open listening port is either approved or explicitly flagged.
  2. Every insecure port includes a replacement recommendation.
  3. Every externally bound service (*, 0.0.0.0, ::) is justified or marked for restriction.

File v0.1.3:references/prompt-policy.template.json

{ "require_confirmation_for_untrusted": true }

File v0.1.3:assessments/compliance-summary.json

{ "generated_at_utc": "2026-02-14T13:48:28.593079Z", "system": "OpenClaw", "summary": { "status_counts": { "violation": 2, "compliant": 2, "partial": 2 }, "risk_counts": { "high": 3, "medium": 3 }, "violations": [ { "check_id": "privilege_approval_required", "title": "Approval required before elevated access", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.AA-05" ], "expected_state": "Every privileged action requires explicit user approval.", "status": "violation", "risk": "high", "observed_state": "Token auth is configured; explicit privileged command approval policy is not fully visible in runtime config.", "evidence": "openclaw.json and doctor outputs were evaluated for approval-first execution controls.", "gap": "Runtime policy does not yet demonstrate universal approval enforcement for elevated actions.", "mitigation": "Route all privileged tasks through guarded_privileged_exec.py and enforce approval prompts for elevated execution.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "elevation_timeout_30m", "title": "Elevated session idle timeout", "iso27001": [ "A.8.2", "A.8.15" ], "nist": [ "PR.AA-03", "DE.CM-01" ], "expected_state": "Elevated session expires after 30 minutes of inactivity.", "status": "partial", "risk": "medium", "observed_state": "30-minute timeout logic exists in root_session_guard.py.", "evidence": "Timeout guard script is installed with preflight drop logic.", "gap": "Global mandatory enforcement for all elevated paths is not yet guaranteed by runtime policy.", "mitigation": "Invoke guarded_privileged_exec.py for every elevated operation path.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "audit_logging_privileged_actions", "title": "Privileged action audit logging", "iso27001": [ "A.8.15", "A.8.16" ], "nist": [ "DE.AE-03", "DE.CM-01" ], "expected_state": "All elevated approvals, commands, and privilege drops are logged.", "status": "partial", "risk": "medium", "observed_state": "Gateway logs and session transition logs are available.", "evidence": "gateway status reports log paths; root_session_guard records transition metadata.", "gap": "No single correlated privileged action audit timeline is guaranteed.", "mitigation": "Create append-only correlated audit records linking approval, execution, and drop events.", "owner": "SecOps", "due_date": "2026-03-22" }, { "check_id": "open_ports_approved", "title": "Open ports baseline approval", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "DE.CM-01" ], "expected_state": "All listening ports are approved and business-justified.", "status": "violation", "risk": "medium", "observed_state": "Detected 12 listening services with 12 unapproved findings.", "evidence": "port_monitor.py live output evaluated against approved_ports baseline.", "gap": "Baseline missing or incomplete when unapproved findings exist.", "mitigation": "Populate ~/.openclaw/security/approved_ports.json and remove unnecessary listeners.", "owner": "Infrastructure", "due_date": "2026-02-28" } ], "mitigations": [ { "check_id": "privilege_approval_required", "title": "Approval required before elevated access", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.AA-05" ], "expected_state": "Every privileged action requires explicit user approval.", "status": "violation", "risk": "high", "observed_state": "Token auth is configured; explicit privileged command approval policy is not fully visible in runtime config.", "evidence": "openclaw.json and doctor outputs were evaluated for approval-first execution controls.", "gap": "Runtime policy does not yet demonstrate universal approval enforcement for elevated actions.", "mitigation": "Route all privileged tasks through guarded_privileged_exec.py and enforce approval prompts for elevated execution.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "least_privilege_enforced", "title": "Least privilege execution mode", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.PS-01" ], "expected_state": "Default mode is non-root and elevated rights are scoped and short-lived.", "status": "compliant", "risk": "high", "observed_state": "Gateway local/loopback+token controls are present; state integrity warnings may still appear.", "evidence": "openclaw.json has local mode, loopback bind, and token auth; doctor output was checked for integrity warnings.", "gap": "Least-privilege posture is not complete while writable/integrity warnings remain.", "mitigation": "Fix state dir ownership/permissions and enforce command allowlist/approval defaults.", "owner": "Platform Security", "due_date": "2026-03-07" }, { "check_id": "elevation_timeout_30m", "title": "Elevated session idle timeout", "iso27001": [ "A.8.2", "A.8.15" ], "nist": [ "PR.AA-03", "DE.CM-01" ], "expected_state": "Elevated session expires after 30 minutes of inactivity.", "status": "partial", "risk": "medium", "observed_state": "30-minute timeout logic exists in root_session_guard.py.", "evidence": "Timeout guard script is installed with preflight drop logic.", "gap": "Global mandatory enforcement for all elevated paths is not yet guaranteed by runtime policy.", "mitigation": "Invoke guarded_privileged_exec.py for every elevated operation path.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "audit_logging_privileged_actions", "title": "Privileged action audit logging", "iso27001": [ "A.8.15", "A.8.16" ], "nist": [ "DE.AE-03", "DE.CM-01" ], "expected_state": "All elevated approvals, commands, and privilege drops are logged.", "status": "partial", "risk": "medium", "observed_state": "Gateway logs and session transition logs are available.", "evidence": "gateway status reports log paths; root_session_guard records transition metadata.", "gap": "No single correlated privileged action audit timeline is guaranteed.", "mitigation": "Create append-only correlated audit records linking approval, execution, and drop events.", "owner": "SecOps", "due_date": "2026-03-22" }, { "check_id": "open_ports_approved", "title": "Open ports baseline approval", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "DE.CM-01" ], "expected_state": "All listening ports are approved and business-justified.", "status": "violation", "risk": "medium", "observed_state": "Detected 12 listening services with 12 unapproved findings.", "evidence": "port_monitor.py live output evaluated against approved_ports baseline.", "gap": "Baseline missing or incomplete when unapproved findings exist.", "mitigation": "Populate ~/.openclaw/security/approved_ports.json and remove unnecessary listeners.", "owner": "Infrastructure", "due_date": "2026-02-28" }, { "check_id": "insecure_ports_remediated", "title": "Insecure ports remediated", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "PR.DS-02" ], "expected_state": "Insecure legacy ports are closed or migrated to secure alternatives.", "status": "compliant", "risk": "high", "observed_state": "No insecure legacy port findings detected.", "evidence": "Insecure findings count from port_monitor.py: 0.", "gap": "None observed in current snapshot.", "mitigation": "Enforce baseline checks to block insecure service ports.", "owner": "Network Security", "due_date": "2026-04-01" } ] }, "controls": [ { "check_id": "privilege_approval_required", "title": "Approval required before elevated access", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.AA-05" ], "expected_state": "Every privileged action requires explicit user approval.", "status": "violation", "risk": "high", "observed_state": "Token auth is configured; explicit privileged command approval policy is not fully visible in runtime config.", "evidence": "openclaw.json and doctor outputs were evaluated for approval-first execution controls.", "gap": "Runtime policy does not yet demonstrate universal approval enforcement for elevated actions.", "mitigation": "Route all privileged tasks through guarded_privileged_exec.py and enforce approval prompts for elevated execution.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "least_privilege_enforced", "title": "Least privilege execution mode", "iso27001": [ "A.5.15", "A.5.18" ], "nist": [ "PR.AA-01", "PR.PS-01" ], "expected_state": "Default mode is non-root and elevated rights are scoped and short-lived.", "status": "compliant", "risk": "high", "observed_state": "Gateway local/loopback+token controls are present; state integrity warnings may still appear.", "evidence": "openclaw.json has local mode, loopback bind, and token auth; doctor output was checked for integrity warnings.", "gap": "Least-privilege posture is not complete while writable/integrity warnings remain.", "mitigation": "Fix state dir ownership/permissions and enforce command allowlist/approval defaults.", "owner": "Platform Security", "due_date": "2026-03-07" }, { "check_id": "elevation_timeout_30m", "title": "Elevated session idle timeout", "iso27001": [ "A.8.2", "A.8.15" ], "nist": [ "PR.AA-03", "DE.CM-01" ], "expected_state": "Elevated session expires after 30 minutes of inactivity.", "status": "partial", "risk": "medium", "observed_state": "30-minute timeout logic exists in root_session_guard.py.", "evidence": "Timeout guard script is installed with preflight drop logic.", "gap": "Global mandatory enforcement for all elevated paths is not yet guaranteed by runtime policy.", "mitigation": "Invoke guarded_privileged_exec.py for every elevated operation path.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "audit_logging_privileged_actions", "title": "Privileged action audit logging", "iso27001": [ "A.8.15", "A.8.16" ], "nist": [ "DE.AE-03", "DE.CM-01" ], "expected_state": "All elevated approvals, commands, and privilege drops are logged.", "status": "partial", "risk": "medium", "observed_state": "Gateway logs and session transition logs are available.", "evidence": "gateway status reports log paths; root_session_guard records transition metadata.", "gap": "No single correlated privileged action audit timeline is guaranteed.", "mitigation": "Create append-only correlated audit records linking approval, execution, and drop events.", "owner": "SecOps", "due_date": "2026-03-22" }, { "check_id": "open_ports_approved", "title": "Open ports baseline approval", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "DE.CM-01" ], "expected_state": "All listening ports are approved and business-justified.", "status": "violation", "risk": "medium", "observed_state": "Detected 12 listening services with 12 unapproved findings.", "evidence": "port_monitor.py live output evaluated against approved_ports baseline.", "gap": "Baseline missing or incomplete when unapproved findings exist.", "mitigation": "Populate ~/.openclaw/security/approved_ports.json and remove unnecessary listeners.", "owner": "Infrastructure", "due_date": "2026-02-28" }, { "check_id": "insecure_ports_remediated", "title": "Insecure ports remediated", "iso27001": [ "A.8.20", "A.8.21" ], "nist": [ "PR.PS-02", "PR.DS-02" ], "expected_state": "Insecure legacy ports are closed or migrated to secure alternatives.", "status": "compliant", "risk": "high", "observed_state": "No insecure legacy port findings detected.", "evidence": "Insecure findings count from port_monitor.py: 0.", "gap": "None observed in current snapshot.", "mitigation": "Enforce baseline checks to block insecure service ports.", "owner": "Network Security", "due_date": "2026-04-01" } ] }

File v0.1.3:assessments/openclaw-assessment.json

{ "metadata": { "system": "OpenClaw", "generated_at_utc": "2026-02-14T13:48:28.559421Z", "frameworks": [ "ISO/IEC 27001:2022", "NIST CSF" ] }, "checks": [ { "check_id": "privilege_approval_required", "status": "violation", "risk": "high", "observed_state": "Token auth is configured; explicit privileged command approval policy is not fully visible in runtime config.", "evidence": "openclaw.json and doctor outputs were evaluated for approval-first execution controls.", "gap": "Runtime policy does not yet demonstrate universal approval enforcement for elevated actions.", "mitigation": "Route all privileged tasks through guarded_privileged_exec.py and enforce approval prompts for elevated execution.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "least_privilege_enforced", "status": "compliant", "risk": "high", "observed_state": "Gateway local/loopback+token controls are present; state integrity warnings may still appear.", "evidence": "openclaw.json has local mode, loopback bind, and token auth; doctor output was checked for integrity warnings.", "gap": "Least-privilege posture is not complete while writable/integrity warnings remain.", "mitigation": "Fix state dir ownership/permissions and enforce command allowlist/approval defaults.", "owner": "Platform Security", "due_date": "2026-03-07" }, { "check_id": "elevation_timeout_30m", "status": "partial", "risk": "medium", "observed_state": "30-minute timeout logic exists in root_session_guard.py.", "evidence": "Timeout guard script is installed with preflight drop logic.", "gap": "Global mandatory enforcement for all elevated paths is not yet guaranteed by runtime policy.", "mitigation": "Invoke guarded_privileged_exec.py for every elevated operation path.", "owner": "Security Engineering", "due_date": "2026-03-15" }, { "check_id": "audit_logging_privileged_actions", "status": "partial", "risk": "medium", "observed_state": "Gateway logs and session transition logs are available.", "evidence": "gateway status reports log paths; root_session_guard records transition metadata.", "gap": "No single correlated privileged action audit timeline is guaranteed.", "mitigation": "Create append-only correlated audit records linking approval, execution, and drop events.", "owner": "SecOps", "due_date": "2026-03-22" }, { "check_id": "open_ports_approved", "status": "violation", "risk": "medium", "observed_state": "Detected 12 listening services with 12 unapproved findings.", "evidence": "port_monitor.py live output evaluated against approved_ports baseline.", "gap": "Baseline missing or incomplete when unapproved findings exist.", "mitigation": "Populate ~/.openclaw/security/approved_ports.json and remove unnecessary listeners.", "owner": "Infrastructure", "due_date": "2026-02-28" }, { "check_id": "insecure_ports_remediated", "status": "compliant", "risk": "high", "observed_state": "No insecure legacy port findings detected.", "evidence": "Insecure findings count from port_monitor.py: 0.", "gap": "None observed in current snapshot.", "mitigation": "Enforce baseline checks to block insecure service ports.", "owner": "Network Security", "due_date": "2026-04-01" } ] }

File v0.1.3:agents/openai.yaml

interface: display_name: "Cyber Security Engineer" short_description: "Least-privilege and elevated access controls" default_prompt: "Use $cyber-security-engineer to enforce approval-first elevation, command policy, and session scoping for OpenClaw. Requires OPENCLAW_* env vars and policy files under ~/.openclaw/security."

API & Reliability

Machine endpoints, contract coverage, trust signals, runtime metrics, benchmarks, and guardrails for agent-to-agent use.

MissingCLAWHUB

Machine interfaces

Contract & API

Contract coverage

Status

missing

Auth

None

Streaming

No

Data region

Unspecified

Protocol support

OpenClaw: self-declared

Requires: none

Forbidden: none

Guardrails

Operational confidence: low

No positive guardrails captured.
Invocation examples
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/contract"
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/trust"

Operational fit

Reliability & Benchmarks

Trust signals

Handshake

UNKNOWN

Confidence

unknown

Attempts 30d

unknown

Fallback rate

unknown

Runtime metrics

Observed P50

unknown

Observed P95

unknown

Rate limit

unknown

Estimated cost

unknown

Do not use if

Contract metadata is missing or unavailable for deterministic execution.
No benchmark suites or observed failure patterns are available.

Machine Appendix

Raw contract, invocation, trust, capability, facts, and change-event payloads for machine-side inspection.

MissingCLAWHUB

Contract JSON

{
  "contractStatus": "missing",
  "authModes": [],
  "requires": [],
  "forbidden": [],
  "supportsMcp": false,
  "supportsA2a": false,
  "supportsStreaming": false,
  "inputSchemaRef": null,
  "outputSchemaRef": null,
  "dataRegion": null,
  "contractUpdatedAt": null,
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Invocation Guide

{
  "preferredApi": {
    "snapshotUrl": "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/snapshot",
    "contractUrl": "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/contract",
    "trustUrl": "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/trust"
  },
  "curlExamples": [
    "curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/snapshot\"",
    "curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/contract\"",
    "curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/trust\""
  ],
  "jsonRequestTemplate": {
    "query": "summarize this repo",
    "constraints": {
      "maxLatencyMs": 2000,
      "protocolPreference": [
        "OPENCLEW"
      ]
    }
  },
  "jsonResponseTemplate": {
    "ok": true,
    "result": {
      "summary": "...",
      "confidence": 0.9
    },
    "meta": {
      "source": "CLAWHUB",
      "generatedAt": "2026-10-09T03:32:16.673Z"
    }
  },
  "retryPolicy": {
    "maxAttempts": 3,
    "backoffMs": [
      500,
      1500,
      3500
    ],
    "retryableConditions": [
      "HTTP_429",
      "HTTP_503",
      "NETWORK_TIMEOUT"
    ]
  }
}

Trust JSON

{
  "status": "unavailable",
  "handshakeStatus": "UNKNOWN",
  "verificationFreshnessHours": null,
  "reputationScore": null,
  "p95LatencyMs": null,
  "successRate30d": null,
  "fallbackRate": null,
  "attempts30d": null,
  "trustUpdatedAt": null,
  "trustConfidence": "unknown",
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Capability Matrix

{
  "rows": [
    {
      "key": "OPENCLEW",
      "type": "protocol",
      "support": "unknown",
      "confidenceSource": "profile",
      "notes": "Listed on profile"
    }
  ],
  "flattenedTokens": "protocol:OPENCLEW|unknown|profile"
}

Facts JSON

[
  {
    "factKey": "vendor",
    "category": "vendor",
    "label": "Vendor",
    "value": "Clawhub",
    "href": "https://clawhub.ai/FletcherFrimpong/cyber-security-engineer",
    "sourceUrl": "https://clawhub.ai/FletcherFrimpong/cyber-security-engineer",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "protocols",
    "category": "compatibility",
    "label": "Protocol compatibility",
    "value": "OpenClaw",
    "href": "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/contract",
    "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/contract",
    "sourceType": "contract",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "traction",
    "category": "adoption",
    "label": "Adoption signal",
    "value": "552 downloads",
    "href": "https://clawhub.ai/FletcherFrimpong/cyber-security-engineer",
    "sourceUrl": "https://clawhub.ai/FletcherFrimpong/cyber-security-engineer",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "latest_release",
    "category": "release",
    "label": "Latest release",
    "value": "0.1.4",
    "href": "https://clawhub.ai/FletcherFrimpong/cyber-security-engineer",
    "sourceUrl": "https://clawhub.ai/FletcherFrimpong/cyber-security-engineer",
    "sourceType": "release",
    "confidence": "medium",
    "observedAt": "2026-02-15T11:26:10.584Z",
    "isPublic": true
  },
  {
    "factKey": "handshake_status",
    "category": "security",
    "label": "Handshake status",
    "value": "UNKNOWN",
    "href": "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/trust",
    "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-fletcherfrimpong-cyber-security-engineer/trust",
    "sourceType": "trust",
    "confidence": "medium",
    "observedAt": null,
    "isPublic": true
  }
]

Change Events JSON

[
  {
    "eventType": "release",
    "title": "Release 0.1.4",
    "description": "Harden notify_on_violation: remove shell execution; require allowlisted notifier executable.",
    "href": "https://clawhub.ai/FletcherFrimpong/cyber-security-engineer",
    "sourceUrl": "https://clawhub.ai/FletcherFrimpong/cyber-security-engineer",
    "sourceType": "release",
    "confidence": "medium",
    "observedAt": "2026-02-15T11:26:10.584Z",
    "isPublic": true
  }
]

Sponsored

Ads related to Cyber Security Engineer and adjacent AI workflows.