docs(skills): correct gogo/scan port presets (top100/top1000 invalid) - #94
Merged
Conversation
gogo `-p` presets are top1/top2/top3 (default top1). An unknown name like
top100/top1000 is not a preset: ChoicePort returns it as a literal port, so
gogo runs net.LookupPort("tcp","top100") -> "unknown port" and scans only 1
port. Update gogo.md and scan.md to use real presets and document every
accepted `-p` form. `all` and `-` are unchanged (both valid).
Co-Authored-By: Claude Opus 5 (1M context) <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.
Problem
The
gogoandscanplaybooks tell the agent to use-p top100/--ports top1000, but gogo has notop100/top1000preset. Its port presets aretop1/top2/top3(defaulttop1; seecore/options.goandpkg/config.go).When an unknown name is passed,
PortPreset.ChoicePort(chainreactors/utilsport.go) falls through toreturn []string{portname}, so gogo treatstop100as a literal port, runsnet.LookupPort("tcp", "top100")→unknown port, and scans only 1 port:Hit in production: an agent followed
gogo.md's-p top100and unknowingly scanned a single port instead of the intended set.Fix
gogo.md:-p top100→-p top2; rewrite the-pnote to list the real accepted forms (top1/top2/top3,all,-, ranges, explicit ports) and warn that unknown names fail withunknown port.scan.md:--ports top1000→--ports top3(--portsis forwarded straight to gogo, so the same constraint applies).alland-are left unchanged — both are valid (ChoicePortspecial-casesall;-expands to1-65535).Docs-only; no code changes.
🤖 Generated with Claude Code