The DAP Workflow: Stop, Discover, Plan, Execute, Revalidate
Each step of DAP has a specific purpose. Understanding them helps you appreciate why Vex behaves so methodically and why the results are more reliable than what you get from unguided AI assistants.
Step 1: STOP
Before any file or asset operation, Vex pauses to think through the situation. What exactly is the user asking for? What information do I need before I can proceed? Do I already know where the relevant files are, or do I need to find them? What could go wrong? This deliberate pause prevents impulsive actions based on assumptions and guesswork.
Step 2: DISCOVER
Vex uses discovery commands to gather real facts about your project:
workspace.find— Locate files and folders by name patternworkspace.index— Search for C# classes, methods, and fields in the code indexworkspace.diagnose— Validate a file path before doing anything with itobject.find— Search for GameObjects in the current sceneassets.list— List assets by type, path, or file extension
Vex discovers real facts instead of guessing. If Vex needs to modify PlayerController.cs, it finds the actual path first rather than assuming it lives in Assets/Scripts/.
Step 3: PLAN
Vex creates a plan before executing anything. For simple one-step tasks, the plan may just be a mental outline. For complex multi-step tasks, Vex creates a formal workspace.plan with phases, features, and tasks that you can track visually. If workspace.plan is disabled for the project, Vex uses its own planning system instead. Either way, the plan identifies what needs to happen, in what order, and what to verify at each step.
Step 4: EXECUTE (one step at a time)
Vex performs one step and then checks if it succeeded before moving to the next. It never fires off multiple unverified changes in parallel. If the first step fails, Vex stops and addresses the problem rather than blindly pushing forward and making things worse.
Step 5: REVALIDATE
After each step, Vex verifies the result using appropriate commands:
- Created a file? Verify with
file.info - Created an object? Verify with
object.find - Added a component? Verify with
object.info
If verification fails, Vex creates a gap record in workspace.plan or reports the issue and works on a fix. Vex does not push forward with broken results and hope things work out later.
This disciplined approach means fewer bugs, fewer wasted commands, and much more confidence that the results Vex delivers to you actually work correctly.