Claude 24f816b6a3
Consolidate 22 sibling repos into layered organism structure
Place useful parts of the surrounding repos into sica-fondt by layer, per the
body model (Ada = membrane; brain/endocrine/capabilities/knowledge non-Ada):

- brain/        LLM reasoning + providers (dapr, hermes, MoMoA)
- capabilities/ REPRAG sidecars: hermes tools/skills, dapr tools, parallel
                dispatch, A51 channels, and the OSINT cluster
- knowledge/    LORAG corpus: 754 cyber-skills, agency personas, secure-coding,
                MITRE ATT&CK data
- reference/    defensive threat-reference (C3, shhbruh doc) + AdaYaml parser

License handling: AGPL sources (worldosint, advanced_evolution, mercury,
Reticulum) and GPL DeTTECT are SPEC-only clean-room/port descriptions — no
copyleft code copied. MIT/Apache/data parts copied as working trees.

Safety: shhbruh escape/persistence material and C3 covert-C2 kept as reference
only, not wired into the running organism. See CONSOLIDATION.md.

https://claude.ai/code/session_01UehUqEXXJJCsHoA4voCU5c
2026-06-10 06:53:01 +00:00

60 lines
1.7 KiB
Markdown

# API Reference: XM Cyber Attack Path Analysis Agent
## Dependencies
| Library | Version | Purpose |
|---------|---------|---------|
| requests | >=2.28 | HTTP client for XM Cyber REST API |
## CLI Usage
```bash
python scripts/agent.py \
--url https://xmcyber.example.com \
--api-key YOUR_API_KEY \
--output-dir /reports/ \
--output attack_path_report.json
```
## Functions
### `XMCyberClient(base_url, api_key)`
Client class with Bearer token auth for the XM Cyber API.
### `get_scenarios() -> list`
GET `/api/v1/scenarios` - Lists all attack simulation scenarios.
### `get_attack_paths(scenario_id) -> list`
GET `/api/v1/scenarios/{id}/attack-paths` - Returns attack paths for a scenario.
### `get_choke_points(scenario_id) -> list`
GET `/api/v1/scenarios/{id}/choke-points` - Returns points where attack paths converge.
### `get_critical_assets() -> list`
GET `/api/v1/critical-assets` - Lists defined critical business assets.
### `get_entities_at_risk(scenario_id) -> list`
GET `/api/v1/scenarios/{id}/entities-at-risk` - Entities reachable via attack paths.
### `get_remediation_actions(scenario_id) -> list`
GET `/api/v1/scenarios/{id}/remediations` - Prioritized fix recommendations.
### `analyze_choke_points(choke_points) -> dict`
Ranks choke points by paths_through count, returns top 10.
### `compute_risk_score(attack_paths, critical_assets) -> dict`
Calculates critical asset exposure percentage from reachable targets.
## Output Schema
```json
{
"scenarios": [{
"name": "Full Environment",
"attack_paths": 1234,
"choke_point_analysis": {"total_choke_points": 45, "top_choke_points": []},
"risk_score": {"critical_asset_exposure_pct": 67.5}
}]
}
```