This repository was archived by the owner on Mar 9, 2026. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.windsurfrules
More file actions
179 lines (118 loc) · 4.39 KB
/
Copy path.windsurfrules
File metadata and controls
179 lines (118 loc) · 4.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
# Windsurf Endless - Continuous Conversation Rules
## Available Tools
You have access to the following tools. Use them according to the instructions below:
### Tool 1: vmj_upl_confirm_xjea (Primary Tool)
**Purpose**: Confirm with user before ending or pausing tasks.
**Parameters**:
- `summary` (required): Brief description of what you just completed
- `reason` (optional): Reason for ending or pausing
- `workspace` (optional): Workspace path
**ALWAYS call this tool at the end of EVERY response. No exceptions.**
### Tool 2: vmj_upl_optimize_xjea
**Purpose**: Optimize user prompts to make them clearer and more specific.
**Parameters**:
- `prompt` (required): The original prompt to optimize
- `optimized_prompt` (optional): Your optimized version of the prompt
**Usage**: Call this when user asks to optimize a prompt. After optimization, use vmj_upl_fill_xjea to fill the result into the input box.
### Tool 3: vmj_upl_fill_xjea
**Purpose**: Fill specified content into the custom input box.
**Parameters**:
- `content` (required): The content to fill into the input box
**Usage**: Use this after vmj_upl_optimize_xjea to fill the optimized prompt, or when user asks to fill content into input.
---
## Primary Rule
**ALWAYS call vmj_upl_confirm_xjea at the end of EVERY response. No exceptions.**
## Core Behavior
1. **Complete the task** fully and thoroughly
2. **Call vmj_upl_confirm_xjea** to ask if user wants to continue
3. **Wait patiently** for user response (system will wait up to 24 hours)
4. **Never call vmj_upl_confirm_xjea again** while waiting
## Critical: Wait After Calling
After you call vmj_upl_confirm_xjea:
1. **Your job is done** - You have asked the user
2. **System is waiting** - The dialog box is open
3. **Do NOT call again** - Even if you don't see a response immediately
4. **User may be busy** - They might take minutes, hours, or even a day to respond
### Why You Must Wait
- The system timeout is **24 hours**
- User might be:
- Thinking about what to do next
- Busy with other work
- Taking a break
- Reviewing your code
- **This is completely normal**
### What NOT to Do
- Do NOT call vmj_upl_confirm_xjea again because:
- "No response received"
- "User hasn't replied yet"
- "Waiting too long"
- "Want to check if user is there"
- Do NOT think:
- "Maybe user didn't see it"
- "Should I ask again?"
- "It's been a while, let me check"
**Instead: Trust the system. It's waiting. You wait too.**
## When to Call vmj_upl_confirm_xjea
Call vmj_upl_confirm_xjea in these situations:
### 1. Task Completed
```
Task completed successfully.
[Call vmj_upl_confirm_xjea with summary: "Task completed"]
```
### 2. User Cancelled Command (CRITICAL)
**When user cancels your command, IMMEDIATELY call vmj_upl_confirm_xjea.**
This means:
- User stopped your operation
- Something is wrong with your approach
- You need to ask what went wrong
### 3. Feeling Confused or Uncertain (IMPORTANT)
**When you don't know what to do, ASK instead of guessing.**
Call vmj_upl_confirm_xjea when:
- You're not sure which approach to take
- The requirement is ambiguous
- You're about to make a risky decision
- Multiple options exist and you can't decide
### 4. Need User Decision
```
Found two approaches, need user to choose.
[Call vmj_upl_confirm_xjea with summary: "Need user decision on approach"]
```
### 5. Encountered Error
```
Error: Cannot connect to database.
[Call vmj_upl_confirm_xjea with summary: "Error encountered - need guidance"]
```
## Tool Call Format
Always include the summary parameter:
```json
{
"summary": "Brief description of what you just completed"
}
```
## Response Pattern
Every response should end with:
```
[Summary of work done]
[Call vmj_upl_confirm_xjea]
```
## After User Responds
When user responds to vmj_upl_confirm_xjea:
### If should_continue = true
- User wants to continue
- Check if they provided new instruction
- Continue working based on their input
### If should_continue = false
- User wants to end conversation
- Stop immediately
- Do not do anything more
## System Configuration
- **Timeout**: 24 hours (86400000 ms)
- **Your role**: Call once, then wait
- **System's role**: Handle the waiting and timeout
- **User's role**: Respond when ready
## Summary
1. Complete task
2. Call vmj_upl_confirm_xjea (once)
3. Wait (system handles this)
4. Respond to user's choice
**The key is: Call once, wait forever (up to 24 hours). Never call twice.**