feat(scoreboard): add live TUI status board for GOAD engagements#154
Draft
mkultraWasHere wants to merge 1 commit intomainfrom
Draft
feat(scoreboard): add live TUI status board for GOAD engagements#154mkultraWasHere wants to merge 1 commit intomainfrom
mkultraWasHere wants to merge 1 commit intomainfrom
Conversation
Real-time Rich TUI that tracks agent progress against a GOAD AD lab by polling report.jsonl via local file or AWS SSM transport. - Flat module structure (no subpackages) - Answer key generator from GOAD config.json - Two-phase verifier: credentials → inferred hosts/domains/techniques - SSM transport with actionable ConnectionError messages - --restart flag to clear report file before launching - Agent prompt template for JSONL reporting format Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Live scoreboard for GOAD engagements
Added
python -m scoreboard runlaunches a Rich TUI that polls an agent'sreport.jsonland displays real-time progress against 51 objectives (credentials, hosts, domains, attack techniques)python -m scoreboard generate-keybuildsanswer_key.jsonfrom any GOADconfig.json, extracting credentials, hosts, domains, and 20 technique categories (Kerberoast, AS-REP, ADCS ESC variants, delegation, etc.)python -m scoreboard demorenders a sample board with mock findings for quick visual verification--transport local(reads a file on disk) and--transport ssm(reads from an EC2 instance via AWS SSMsend-command)--restartflag deletes the existing report file before launching, so the board starts clean--profileand--regionflags for AWS SSM authenticationConnectionErrorwith actionable messages (expired credentials, invalid instance ID, timeouts) instead of silently returning nothingagent_prompt.mdtemplate for instructing agents to append JSONL findings to/tmp/report.jsonlNotes
rich>=13.0answer_key.jsonis checked in for the default GOAD lab; regenerate withgenerate-keyafter changingconfig.jsonor switching to a variantanswer_key.jsoncontains plaintext passwords by design — it is the scoring key, not a deployed artifactArea
cli/)ansible/)infra/,modules/)packer/,warpgate-templates/)ad/)extensions/)tools/)docs/,README.md, etc.).github/)Related issues
How was this tested?
Checklist
cli/, Ansible syntax checks, etc.).docs/, role README, command help text) where relevant.ad/,ansible/, andextensions/are expected and fine.)--helptext and any docs that reference it.