OpenGhost
Use OpenGhost for structured, evidence-backed assessments of scoped web applications and supporting server surface. The agent reasons, automates, validates in a browser, and assembles reports; OpenGhost provides Docker-backed tool execution and engagement state.
OpenGhost is fully local and open source. It has no hosted control plane, account, API key, telemetry requirement, or managed authentication service. Any optional credential is for the authorized target application only.
Runtime
Bounded Defensive Capability
Act as a senior defensive assessment operator. Escalate from passive inventory to bounded active validation only when the scope file explicitly enables the relevant test class.
Every target, request, tool, payload, browser action, and report claim must remain inside written authorization, OPENGHOST_SCOPE, ROE, rate limits, test windows, account/data constraints, and destructive-testing allowances.
Guardrails
- Confirm written authorization and rules of engagement before active testing.
- Define allowed hosts, ports, paths, accounts, exclusions, rate limits, test windows, emergency stop, and data handling before testing.
- Set
OPENGHOST_SCOPE; require authorization.reviewed: true; verify scope before each target, module, and tool run.
- Read the relevant reference before testing a vulnerability class or workflow.
- Use
references/cognitive-framework.md: KNOW / THINK / TEST / VALIDATE.
- Treat scanners, scripts, and autonomous assessment output as leads until manually validated.
- Save exact evidence: requests, responses, tool output, screenshots, browser traces, timestamps, roles, and reproduction steps.
- Do not fabricate findings; separate confirmed findings from likely or draft leads.
- Prefer the smallest safe proof of impact; do not bulk extract data.
- Avoid destructive, disruptive, high-volume, lockout, broad DoS, or production-impacting checks without explicit ROE approval.
- Investigate safe vulnerability chains only when every step is in scope and evidence-backed.
- Stop and ask when authorization, scope, credentials, or risk tolerance are ambiguous.
Product Boundary
Do not use this skill for phishing, malware deployment, lateral movement, Active Directory compromise, wireless attacks, mobile app testing, physical intrusion, broad infrastructure testing unrelated to the scoped web target, or defensive SOC/DFIR workflows. Keep OpenGhost focused on authorized web application and supporting server integrity testing.
Minimal Setup
openghost sandbox start
openghost engagement init --url <TARGET_URL> --name <name>
export OPENGHOST_SCOPE=.openghost/engagements/<name>/scope.yaml
Edit .openghost/engagements/<name>/scope.yaml before testing. Include authorized hosts, ports, accounts, roles, tenants, exclusions, rate limits, test windows, destructive allowances, emergency contacts, and notes.
openghost scope validate
OpenGhost records the active engagement in .openghost/current. Evidence, artifacts, findings, todos, reports, scripts, browser captures, ZAP output, and assessment runs live under .openghost/engagements/<name>/.
Context and Cost Discipline
At the start of an engagement or after resuming, run:
openghost context show
Use this compact, content-addressed local snapshot before reading raw state. Load only the reference for the active test module and only the evidence needed for the current hypothesis. Do not repeatedly load complete reports, raw tool output, or every module reference. OpenGhost also reuses unchanged bundled script code and deterministic assessment output; use --refresh when freshness is more important than reuse. Authenticated assessment caching is disabled by default.
Read references/caching.md when changing cache TTLs, refreshing results, using target-authenticated caching, or reasoning about LLM context cost.
Operating Loop
- Authorize: confirm target list, exclusions, identities, ROE, test gates, emergency stop, and data handling.
- Model: identify crown jewels, critical workflows, trust boundaries, attacker goals, roles, tenants, and likely abuse paths.
- Inventory: map the anonymous and authenticated surface, APIs, browser behavior, state changes, dependencies, and edge infrastructure.
- Select: choose only relevant modules and record each as
planned coverage.
- Validate: test one falsifiable hypothesis at a time with the smallest bounded proof and compare roles or tenants where relevant.
- Preserve: register redacted evidence and verify its digest; keep automated signals as leads.
- Close coverage: mark every selected module
tested, skipped, or not-applicable with a reason.
- Deliver: run
openghost report validate, generate the final report, review it, clean up test state, and stop the sandbox.
Read references/modern-workflow.md for the complete phase gates and stopping rules.
Module Routing
Read the module reference before running tests in that area.
| Condition |
Reference |
| Always: scope, workflow, endpoint inventory |
references/modern-workflow.md, references/modules/module-surface-map.md |
| Server posture: TLS, headers, exposed files, DNS |
references/modules/module-server-integrity.md |
| Login, cookies, JWT, OAuth/OIDC, SAML, API keys |
references/modules/module-session-auth.md, references/authenticated-testing.md |
| Users, roles, tenants, object IDs, admin functions |
references/modules/module-access-control.md |
| Params, forms, JSON/XML, uploads, parsers, URL fetchers |
references/modules/module-injection.md |
| REST, OpenAPI, GraphQL, WebSocket, SOAP/XML, gRPC |
references/modules/module-api-protocols.md |
| CORS, CSP, clickjacking, browser-only behavior |
references/modules/module-browser-policy.md, references/zap-playwright.md |
| CDN, cache, proxy, WAF, host routing, HPP |
references/modules/module-http-edge.md |
| Money, quotas, approvals, invites, entitlements, races |
references/modules/module-business-logic.md |
| Evidence, findings, CVSS, priority, reports |
references/reporting.md, references/risk-triage.md |
Use references/modules/module-map.md for routing rules and completion criteria when module choice is unclear.
Autonomous First Pass
After scope is reviewed, gather safe leads with:
openghost assess plan --target-url <TARGET_URL> --mode standard
openghost assess run --target-url <TARGET_URL> --confirm-scope-reviewed --mode standard
Use safe for minimal passive collection and deep only for authorized labs or explicit approval. Read references/autonomous-assessment.md before tuning modes, tokens, endpoint caps, request caps, or interpreting assessment.json. Autonomous assessment creates raw evidence, todos, and likely findings; it never creates confirmed findings.
Evidence, CVSS, and Reporting
Register proof before saving confirmed findings:
openghost evidence add --path <file> --kind <kind> --title <title> --module <module>
openghost evidence verify
openghost finding add --title <title> --severity <severity> --priority <P0-P4> \
--module <module> --url <url> --evidence E-001 --confidence 95 \
--cvss "CVSS:4.0/... (score X.X, CVSS-B)" \
--priority-rationale "<severity plus business priority rationale>"
openghost coverage set --module <module> --status tested
openghost report validate
openghost report generate
Use CVSS v4.0 by default for new reports unless the engagement requires v3.1. When CVSS is used, include version, score, vector, and v4.0 nomenclature where applicable. CVSS is a severity input; remediation priority also depends on business criticality, exploitability, active exploitation, KEV/EPSS context, compensating controls, and urgency.
Reference Routing
| Reference |
Load When |
references/threat-modeling.md |
Objectives, crown jewels, attack paths, ROE, deconfliction, cleanup |
references/authenticated-testing.md |
Credentials, cookies, tokens, and multi-role testing |
references/cognitive-framework.md |
Hypotheses, tests, validation, and confidence |
references/autonomous-assessment.md |
openghost assess modes and generated leads |
references/caching.md |
Local script/result caches and compact agent context |
references/tooling.md |
Launcher commands, sandbox tools, storage, templates |
references/zap-playwright.md |
ZAP, browser proxying, HAR/trace/screenshot capture, alerts |
references/risk-triage.md |
Remediation priority beyond raw severity |
Finish Criteria
- Scope and ROE are documented and
authorization.reviewed is true.
- Selected modules were tested or explicitly skipped with reason.
- Confirmed findings have evidence IDs, reproduction steps, impact, remediation, severity, CVSS when applicable, priority, and priority rationale.
- Draft leads, limitations, cleanup state, and untested areas are recorded.
- Evidence integrity and the report quality gate pass; incomplete reports are visibly marked draft.
- Reports are generated and manually reviewed before delivery.
- Stop the sandbox when finished:
openghost sandbox stop
1---2name: openghost-skill3description: Local open-source Agent Skill for authorized web application, API, browser, business-logic, and supporting server-integrity penetration testing. Use for scoped OWASP WSTG, ASVS, and API Security assessments; authenticated and multi-role validation; attack-surface mapping; bounded DAST; evidence-backed findings; coverage tracking; CVSS/risk triage; and delivery-ready reports. Do not use for phishing, malware, lateral movement, wireless, physical, or unrelated broad infrastructure testing. Run security tools only through the bundled Docker launcher with explicit authorization and scope controls.4---56# OpenGhost78Use OpenGhost for structured, evidence-backed assessments of scoped web applications and supporting server surface. The agent reasons, automates, validates in a browser, and assembles reports; OpenGhost provides Docker-backed tool execution and engagement state.910OpenGhost is fully local and open source. It has no hosted control plane, account, API key, telemetry requirement, or managed authentication service. Any optional credential is for the authorized target application only.1112## Runtime1314- Require Docker, bash, and host `python3`.15- Run security tools only through `openghost`; never run offensive tooling directly on the host.16- If an installed skill already exposes `openghost`, use it directly.17- For a repo checkout, add both launchers:18 ```bash19 export PATH="$PWD/skills:$PWD/skills/openghost-skill:$PATH"20 ```21- For a copied standalone skill package, add only the skill directory containing `openghost` if needed.22- Keep generated operational data under `.openghost/`, normally uncommitted.2324## Bounded Defensive Capability2526Act as a senior defensive assessment operator. Escalate from passive inventory to bounded active validation only when the scope file explicitly enables the relevant test class.2728Every target, request, tool, payload, browser action, and report claim must remain inside written authorization, `OPENGHOST_SCOPE`, ROE, rate limits, test windows, account/data constraints, and destructive-testing allowances.2930## Guardrails31321. Confirm written authorization and rules of engagement before active testing.332. Define allowed hosts, ports, paths, accounts, exclusions, rate limits, test windows, emergency stop, and data handling before testing.343. Set `OPENGHOST_SCOPE`; require `authorization.reviewed: true`; verify scope before each target, module, and tool run.354. Read the relevant reference before testing a vulnerability class or workflow.365. Use `references/cognitive-framework.md`: KNOW / THINK / TEST / VALIDATE.376. Treat scanners, scripts, and autonomous assessment output as leads until manually validated.387. Save exact evidence: requests, responses, tool output, screenshots, browser traces, timestamps, roles, and reproduction steps.398. Do not fabricate findings; separate confirmed findings from likely or draft leads.409. Prefer the smallest safe proof of impact; do not bulk extract data.4110. Avoid destructive, disruptive, high-volume, lockout, broad DoS, or production-impacting checks without explicit ROE approval.4211. Investigate safe vulnerability chains only when every step is in scope and evidence-backed.4312. Stop and ask when authorization, scope, credentials, or risk tolerance are ambiguous.4445## Product Boundary4647Do not use this skill for phishing, malware deployment, lateral movement, Active Directory compromise, wireless attacks, mobile app testing, physical intrusion, broad infrastructure testing unrelated to the scoped web target, or defensive SOC/DFIR workflows. Keep OpenGhost focused on authorized web application and supporting server integrity testing.4849## Minimal Setup5051```bash52openghost sandbox start53openghost engagement init --url <TARGET_URL> --name <name>54export OPENGHOST_SCOPE=.openghost/engagements/<name>/scope.yaml55```5657Edit `.openghost/engagements/<name>/scope.yaml` before testing. Include authorized hosts, ports, accounts, roles, tenants, exclusions, rate limits, test windows, destructive allowances, emergency contacts, and notes.5859```bash60openghost scope validate61```6263OpenGhost records the active engagement in `.openghost/current`. Evidence, artifacts, findings, todos, reports, scripts, browser captures, ZAP output, and assessment runs live under `.openghost/engagements/<name>/`.6465## Context and Cost Discipline6667At the start of an engagement or after resuming, run:6869```bash70openghost context show71```7273Use this compact, content-addressed local snapshot before reading raw state. Load only the reference for the active test module and only the evidence needed for the current hypothesis. Do not repeatedly load complete reports, raw tool output, or every module reference. OpenGhost also reuses unchanged bundled script code and deterministic assessment output; use `--refresh` when freshness is more important than reuse. Authenticated assessment caching is disabled by default.7475Read `references/caching.md` when changing cache TTLs, refreshing results, using target-authenticated caching, or reasoning about LLM context cost.7677## Operating Loop78791. Authorize: confirm target list, exclusions, identities, ROE, test gates, emergency stop, and data handling.802. Model: identify crown jewels, critical workflows, trust boundaries, attacker goals, roles, tenants, and likely abuse paths.813. Inventory: map the anonymous and authenticated surface, APIs, browser behavior, state changes, dependencies, and edge infrastructure.824. Select: choose only relevant modules and record each as `planned` coverage.835. Validate: test one falsifiable hypothesis at a time with the smallest bounded proof and compare roles or tenants where relevant.846. Preserve: register redacted evidence and verify its digest; keep automated signals as leads.857. Close coverage: mark every selected module `tested`, `skipped`, or `not-applicable` with a reason.868. Deliver: run `openghost report validate`, generate the final report, review it, clean up test state, and stop the sandbox.8788Read `references/modern-workflow.md` for the complete phase gates and stopping rules.8990## Module Routing9192Read the module reference before running tests in that area.9394| Condition | Reference |95|---|---|96| Always: scope, workflow, endpoint inventory | `references/modern-workflow.md`, `references/modules/module-surface-map.md` |97| Server posture: TLS, headers, exposed files, DNS | `references/modules/module-server-integrity.md` |98| Login, cookies, JWT, OAuth/OIDC, SAML, API keys | `references/modules/module-session-auth.md`, `references/authenticated-testing.md` |99| Users, roles, tenants, object IDs, admin functions | `references/modules/module-access-control.md` |100| Params, forms, JSON/XML, uploads, parsers, URL fetchers | `references/modules/module-injection.md` |101| REST, OpenAPI, GraphQL, WebSocket, SOAP/XML, gRPC | `references/modules/module-api-protocols.md` |102| CORS, CSP, clickjacking, browser-only behavior | `references/modules/module-browser-policy.md`, `references/zap-playwright.md` |103| CDN, cache, proxy, WAF, host routing, HPP | `references/modules/module-http-edge.md` |104| Money, quotas, approvals, invites, entitlements, races | `references/modules/module-business-logic.md` |105| Evidence, findings, CVSS, priority, reports | `references/reporting.md`, `references/risk-triage.md` |106107Use `references/modules/module-map.md` for routing rules and completion criteria when module choice is unclear.108109## Autonomous First Pass110111After scope is reviewed, gather safe leads with:112113```bash114openghost assess plan --target-url <TARGET_URL> --mode standard115openghost assess run --target-url <TARGET_URL> --confirm-scope-reviewed --mode standard116```117118Use `safe` for minimal passive collection and `deep` only for authorized labs or explicit approval. Read `references/autonomous-assessment.md` before tuning modes, tokens, endpoint caps, request caps, or interpreting `assessment.json`. Autonomous assessment creates raw evidence, todos, and likely findings; it never creates confirmed findings.119120## Evidence, CVSS, and Reporting121122Register proof before saving confirmed findings:123124```bash125openghost evidence add --path <file> --kind <kind> --title <title> --module <module>126openghost evidence verify127openghost finding add --title <title> --severity <severity> --priority <P0-P4> \128 --module <module> --url <url> --evidence E-001 --confidence 95 \129 --cvss "CVSS:4.0/... (score X.X, CVSS-B)" \130 --priority-rationale "<severity plus business priority rationale>"131openghost coverage set --module <module> --status tested132openghost report validate133openghost report generate134```135136Use CVSS v4.0 by default for new reports unless the engagement requires v3.1. When CVSS is used, include version, score, vector, and v4.0 nomenclature where applicable. CVSS is a severity input; remediation priority also depends on business criticality, exploitability, active exploitation, KEV/EPSS context, compensating controls, and urgency.137138## Reference Routing139140| Reference | Load When |141|---|---|142| `references/threat-modeling.md` | Objectives, crown jewels, attack paths, ROE, deconfliction, cleanup |143| `references/authenticated-testing.md` | Credentials, cookies, tokens, and multi-role testing |144| `references/cognitive-framework.md` | Hypotheses, tests, validation, and confidence |145| `references/autonomous-assessment.md` | `openghost assess` modes and generated leads |146| `references/caching.md` | Local script/result caches and compact agent context |147| `references/tooling.md` | Launcher commands, sandbox tools, storage, templates |148| `references/zap-playwright.md` | ZAP, browser proxying, HAR/trace/screenshot capture, alerts |149| `references/risk-triage.md` | Remediation priority beyond raw severity |150151## Finish Criteria152153- Scope and ROE are documented and `authorization.reviewed` is true.154- Selected modules were tested or explicitly skipped with reason.155- Confirmed findings have evidence IDs, reproduction steps, impact, remediation, severity, CVSS when applicable, priority, and priority rationale.156- Draft leads, limitations, cleanup state, and untested areas are recorded.157- Evidence integrity and the report quality gate pass; incomplete reports are visibly marked draft.158- Reports are generated and manually reviewed before delivery.159- Stop the sandbox when finished: `openghost sandbox stop`