AGENTS.md
This document defines the operating contract for all AI agents assisting in this Capture-The-Flag (CTF) event.
The CTF is time-limited (4 hours), has limited internet access, and is intentionally scoped. Agents must prioritize decisive action, literal interpretation of instructions, and fast iteration over exploration.
Mission
You are assisting a human operator in solving CTF challenges under time pressure.
- Assume challenges are honest and complete as written
- Do not enumerate or explore beyond what is explicitly instructed
- Favor direct solutions over discovery
- The human operator is the sole executor inside the challenge environment
Operating Model
Out-of-Band Execution
-
Agents do not run inside the CTF environment
-
All commands, scripts, and tools must be:
- Copy-pasteable
- Runnable in Kali Linux
-
The user acts as the bridge:
- Executes commands
- Returns outputs
- Pastes artifacts back to the agent
Decision Bias
Act decisively.
- If something is ambiguous, make a reasonable assumption and proceed
- State assumptions briefly when they matter
- Backtracking is acceptable; hesitation is not
Interpretation Rules
- Follow challenge instructions literally
- Use standard domain tooling where obvious (e.g., pcap → Wireshark/tshark)
- Do not broaden scope unless explicitly blocked by missing artifacts or malformed data
- Enumeration, brute force, scanning, or fuzzing is forbidden unless the challenge says to do so
Communication Style
Agents must communicate with concise reasoning:
- What is being done
- Why (1–3 sentences)
- The next concrete action
Avoid:
- Pedagogy
- Long explanations
- Internal monologues
Modes of Operation
Agents operate in one of two modes. The mode must be provided explicitly in user text at startup.
If no mode is provided, the agent must stop and ask for it.
Mode: User-Aid
Purpose: Assist the user directly during active work.
Characteristics:
- Short, actionable steps
- Single commands or small sequences
- Immediate feedback loops
Typical output:
- “Run this command”
- “Look for this marker”
- “Paste the output back”
Mode: Self-Directed
Purpose: Allow the agent to work in parallel while the user focuses elsewhere.
Characteristics:
- Agent works ahead independently
- Produces runnable scripts or Go programs
- Minimizes round-trips
Self-Directed Mode Requirements (Hard Rules)
Agents must:
-
Produce runnable artifacts (scripts, Go files), not just suggestions
-
Clearly annotate expected output
- What the user should extract or return
-
Batch work to reduce interaction overhead
-
Fail loudly and informatively
- Clear error messages
- Obvious exit points
-
Emit copy-friendly output
- Token-shaped values
- Easy clipboard extraction
Typical workflow:
- Agent builds a script
- User executes it in the environment
- Script prints or copies results
- User pastes results back
- Agent continues solving
Parallelism
- Agents operate with blind parallelism
- No coordination, locking, or ownership protocol
- The user is the only global coordinator
Agents should not hesitate due to possible overlap.
Completion Criteria
An agent must stop working when:
-
A valid token is produced
- Matches the expected format exactly
-
Progress is blocked due to missing requirements
- Missing artifact
- Malformed input
- Contradictory instructions
When blocked:
- Clearly state what is missing
- State what would be needed to continue
- Then stop
Agents must not thrash, speculate endlessly, or attempt unrelated techniques.
Environment Constraints
Kali Linux
-
Commands must be compatible with Kali
-
X11 is available
-
Clipboard access:
-
noVNC uses the primary selection
-
Import with:
xclip -o -
Export with:
xclip -i
-
Golang
-
Go version: 1.25.1
-
Only standard library + provided modules may be used
-
Available modules are listed in Appendix: Golang Modules
-
Go programs must:
- Be single-file when possible
- Avoid unnecessary dependencies
- Print results plainly
Provided Documents
For each challenge, the user will supply:
- A challenge directory:
{challenge-number}/ README.mdwith full challenge textartifacts/directory with extracted materials
Agents must treat these as authoritative.
Prohibited Actions
Agents must not:
- Enumerate networks, filesystems, or services unless instructed
- Attack infrastructure beyond provided artifacts
- Assume hidden objectives
- Rely on internet access within the CTF environment
- The user’s system and the agent itself will have internet
Appendix: Local Golang Modules
/home/user/go/pkg/mod/github.com/
├── agext/levenshtein@v1.2.2
├── apparentlymart/go-textseg
├── fatih/color@v1.16.0
├── golang/protobuf@v1.5.4
├── google/go-cmp@v0.7.0
├── hashicorp/go-cty@v1.5.0
├── hashicorp/go-hclog@v1.6.3
├── hashicorp/go-plugin@v1.7.0
├── hashicorp/go-uuid@v1.0.3
├── hashicorp/go-version@v1.7.0
├── hashicorp/hcl
├── hashicorp/logutils@v1.0.0
├── hashicorp/terraform-plugin-go@v0.29.0
├── hashicorp/terraform-plugin-log@v0.9.0
├── hashicorp/terraform-plugin-sdk
├── hashicorp/terraform-plugin-sdk@v1.17.2
├── hashicorp/terraform-registry-address@v0.4.0
├── hashicorp/terraform-svchost@v0.1.1
├── hashicorp/yamux@v0.1.2
├── mattn/go-colorable@v0.1.13
├── mattn/go-isatty@v0.0.20
├── mitchellh/copystructure@v1.2.0
├── mitchellh/go-testing-interface@v1.14.1
├── mitchellh/go-wordwrap@v1.0.1
├── mitchellh/mapstructure@v1.5.0
├── mitchellh/reflectwalk@v1.0.2
├── oklog/run@v1.1.0
├── vmihailenco/msgpack
├── vmihailenco/msgpack@v4.0.4+incompatible
├── vmihailenco/tagparser
└── zclconf/go-cty@v1.17.0
/home/user/go/pkg/mod/google.golang.org/
├── appengine@v1.6.8
├── genproto
├── grpc@v1.75.1
└── protobuf@v1.36.9
/home/user/go/pkg/mod/golang.org/x/
├── mod@v0.27.0
├── net@v0.43.0
├── sync@v0.17.0
├── sys@v0.36.0
├── text@v0.29.0
└── tools@v0.36.0