mirror of
https://github.com/mblanke/Goose-Core.git
synced 2026-03-01 14:10:22 -05:00
1.5 KiB
1.5 KiB
Platform Architecture (Conceptual)
This document describes how GooseStrike, ThreatHunt, and goose-core relate at a high level. It is conceptual by design and avoids implementation detail.
High-Level Components
goose-core (Shared)
- Defines shared terminology, contracts, and UX patterns
- Owns meaning, not behavior
- Changes infrequently
ThreatHunt (Analysis Engine)
- Ingests exported data (CSV artifacts)
- Normalizes and enriches data
- Produces analytical Findings
- Never executes actions
GooseStrike (Orchestration Engine)
- Accepts analyst intent
- Plans and coordinates actions
- Executes tools and workflows
- Consumes Findings as input
Data Flow (Primary)
- Data is collected externally (e.g., Velociraptor)
- Data is exported and uploaded into ThreatHunt
- ThreatHunt analyzes data and produces Findings
- Findings conform to shared contracts (goose-core)
- Findings may be consumed by GooseStrike
- GooseStrike plans and executes actions
- Execution produces additional Findings
Control Flow (Primary)
- ThreatHunt is analyst-driven and exploratory
- GooseStrike is intent-driven and controlled
- goose-core enforces shared meaning across both
Key Boundaries
- No direct database sharing between applications
- No direct execution from ThreatHunt
- No analysis logic inside GooseStrike
- Shared concepts are defined once in goose-core
Design Intent
- Loose coupling
- Clear ownership
- Shared analyst experience
- Independent evolution of capabilities