-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Labels
enhancementNew feature or requestNew feature or request
Description
What problem does this solve?
The plan is currently one memory item that is broken into a handful of phases. This makes it difficult to track more than a few vulns. The agent focuses on vulns that fit into context and then finishes.
Proposed solution
Add the concept of a task: [TASK] with properties:
- title
- catergory=task
- phase=N (based on execution prompt)
- status one of active | pending | done | partial_failure (stuck, need different capability) | blocked (dependency failed)
One task is active at a time. When a task is done, partial_failure or blocked, the next pending task is made active and worked upon.
Add a new task when:
- An area of the target needs to be explored, new DISCOVERY task.
- Vulnerability is found, add HYPOTHESIS task. Possibly a vulnerability should be split into phases, so one task per (vuln,phase) tuple.
- Tasks are processed only when the phase matches so that budget/check point rules are followed.
- Tasks must be based on execution prompt phases, following module intent.
When starting a new operation, current pending tasks will be considered.
Example:
- DISCOVERY reveals possible injection points: add a task for sqli HYPOTHESIS, phase 2
- HYPOTHESIS sqli phase 2 add VALIDATION task phase 3
- VALIDATION done, add FINDING
- CHAINING phase 4 adds task for each possible chain of FINDINGS
Alternatives considered
No response
Which area does this affect?
Agent/Tools
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request