|
1 | 1 | --- |
2 | | -description: Answer a quick side question without interrupting or losing context from the current task. Resume work automatically after answering. |
| 2 | +description: Responde a una pregunta secundaria rápida sin interrumpir ni perder el contexto de la tarea actual. Reanuda el trabajo automáticamente tras responder. |
3 | 3 | --- |
4 | 4 |
|
5 | | -# Aside Command |
| 5 | +# Comando Aside |
6 | 6 |
|
7 | | -Ask a question mid-task and get an immediate, focused answer — then continue right where you left off. The current task, files, and context are never modified. |
| 7 | +Haz una pregunta a mitad de la tarea y obtén una respuesta inmediata y enfocada — luego continúa justo donde lo dejaste. La tarea activa, los archivos y el contexto nunca se modifican. |
8 | 8 |
|
9 | | -## When to Use |
| 9 | +## Cuándo Usar |
10 | 10 |
|
11 | | -- You're curious about something while Claude is working and don't want to lose momentum |
12 | | -- You need a quick explanation of code Claude is currently editing |
13 | | -- You want a second opinion or clarification on a decision without derailing the task |
14 | | -- You need to understand an error, concept, or pattern before Claude proceeds |
15 | | -- You want to ask something unrelated to the current task without starting a new session |
| 11 | +- Sientes curiosidad por algo mientras Claude trabaja y no quieres perder impulso |
| 12 | +- Necesitas una explicación rápida del código que Claude está editando actualmente |
| 13 | +- Quieres una segunda opinión o aclaración sobre una decisión sin descarrilar la tarea |
| 14 | +- Necesitas entender un error, concepto o patrón antes de que Claude continúe |
| 15 | +- Deseas preguntar algo no relacionado con la tarea actual sin iniciar una nueva sesión |
16 | 16 |
|
17 | | -## Usage |
| 17 | +## Uso |
18 | 18 |
|
19 | 19 | ``` |
20 | | -/aside <your question> |
21 | | -/aside what does this function actually return? |
22 | | -/aside is this pattern thread-safe? |
23 | | -/aside why are we using X instead of Y here? |
24 | | -/aside what's the difference between foo() and bar()? |
25 | | -/aside should we be worried about the N+1 query we just added? |
| 20 | +/aside <tu pregunta> |
| 21 | +/aside ¿qué retorna realmente esta función? |
| 22 | +/aside ¿este patrón es seguro para hilos (thread-safe)? |
| 23 | +/aside ¿por qué usamos X en lugar de Y aquí? |
| 24 | +/aside ¿cuál es la diferencia entre foo() y bar()? |
| 25 | +/aside ¿deberíamos preocuparnos por la consulta N+1 que acabamos de agregar? |
26 | 26 | ``` |
27 | 27 |
|
28 | | -## Process |
| 28 | +## Proceso |
29 | 29 |
|
30 | | -### Step 1: Freeze the current task state |
| 30 | +### Paso 1: Congelar el estado de la tarea actual |
31 | 31 |
|
32 | | -Before answering anything, mentally note: |
33 | | -- What is the active task? (what file, feature, or problem was being worked on) |
34 | | -- What step was in progress at the moment `/aside` was invoked? |
35 | | -- What was about to happen next? |
| 32 | +Antes de responder nada, tomar nota mentalmente de: |
| 33 | +- ¿Cuál es la tarea activa? (en qué archivo, funcionalidad o problema se estaba trabajando) |
| 34 | +- ¿Qué paso estaba en progreso en el momento en que se invocó `/aside`? |
| 35 | +- ¿Qué estaba a punto de ocurrir a continuación? |
36 | 36 |
|
37 | | -Do NOT touch, edit, create, or delete any files during the aside. |
| 37 | +NO tocar, editar, crear ni eliminar ningún archivo durante el aside. |
38 | 38 |
|
39 | | -### Step 2: Answer the question directly |
| 39 | +### Paso 2: Responder la pregunta directamente |
40 | 40 |
|
41 | | -Answer the question in the most concise form that is still complete and useful. |
| 41 | +Responder la pregunta de la forma más concisa que siga siendo completa y útil. |
42 | 42 |
|
43 | | -- Lead with the answer, not the reasoning |
44 | | -- Keep it short — if a full explanation is needed, offer to go deeper after the task |
45 | | -- If the question is about the current file or code being worked on, reference it precisely (file path and line number if relevant) |
46 | | -- If answering requires reading a file, read it — but read only, never write |
| 43 | +- Empezar con la respuesta directa, no con el razonamiento |
| 44 | +- Mantenerlo breve — si se necesita una explicación completa, ofrecer profundizar tras la tarea |
| 45 | +- Si la pregunta es sobre el archivo o código actual sobre el que se trabaja, referenciarlo con precisión (ruta del archivo y número de línea si es relevante) |
| 46 | +- Si para responder se requiere leer un archivo, leerlo — pero solo lectura, nunca escritura |
47 | 47 |
|
48 | | -Format the response as: |
| 48 | +Formatear la respuesta como: |
49 | 49 |
|
50 | 50 | ``` |
51 | | -ASIDE: [restate the question briefly] |
| 51 | +ASIDE: [replantear la pregunta brevemente] |
52 | 52 |
|
53 | | -[Your answer here] |
| 53 | +[Tu respuesta aquí] |
54 | 54 |
|
55 | | -— Back to task: [one-line description of what was being done] |
| 55 | +— De vuelta a la tarea: [descripción de una línea de lo que se estaba haciendo] |
56 | 56 | ``` |
57 | 57 |
|
58 | | -### Step 3: Resume the main task |
| 58 | +### Paso 3: Reanudar la tarea principal |
59 | 59 |
|
60 | | -After delivering the answer, immediately continue the active task from the exact point it was paused. Do not ask for permission to resume unless the aside answer revealed a blocker or a reason to reconsider the current approach (see Edge Cases). |
| 60 | +Tras entregar la respuesta, continuar inmediatamente la tarea activa desde el punto exacto en que se pausó. No pedir permiso para reanudar a menos que la respuesta del aside haya revelado un bloqueo o un motivo para reconsiderar el enfoque actual (ver Casos Límite). |
61 | 61 |
|
62 | 62 | --- |
63 | 63 |
|
64 | | -## Edge Cases |
| 64 | +## Casos Límite |
65 | 65 |
|
66 | | -**No question provided (`/aside` with nothing after it):** |
67 | | -Respond: |
| 66 | +**No se proporciona pregunta (`/aside` sin texto posterior):** |
| 67 | +Responder: |
68 | 68 | ``` |
69 | | -ASIDE: no question provided |
| 69 | +ASIDE: no se proporcionó ninguna pregunta |
70 | 70 |
|
71 | | -What would you like to know? (ask your question and I'll answer without losing the current task context) |
| 71 | +¿Qué te gustaría saber? (haz tu pregunta y responderé sin perder el contexto de la tarea actual) |
72 | 72 |
|
73 | | -— Back to task: [one-line description of what was being done] |
| 73 | +— De vuelta a la tarea: [descripción de una línea de lo que se estaba haciendo] |
74 | 74 | ``` |
75 | 75 |
|
76 | | -**Question reveals a potential problem with the current task:** |
77 | | -Flag it clearly before resuming: |
| 76 | +**La pregunta revela un problema potencial con la tarea actual:** |
| 77 | +Marcarlo con claridad antes de reanudar: |
78 | 78 | ``` |
79 | | -ASIDE: [answer] |
| 79 | +ASIDE: [respuesta] |
80 | 80 |
|
81 | | -WARNING: Note: This answer suggests [issue] with the current approach. Want to address this before continuing, or proceed as planned? |
| 81 | +WARNING: Nota: Esta respuesta sugiere [problema] con el enfoque actual. ¿Deseas resolver esto antes de continuar o procedemos según lo planeado? |
82 | 82 | ``` |
83 | | -Wait for the user's decision before resuming. |
| 83 | +Esperar la decisión del usuario antes de reanudar. |
84 | 84 |
|
85 | | -**Question is actually a task redirect (not a side question):** |
86 | | -If the question implies changing what is being built (e.g., `/aside actually, let's use Redis instead`), clarify: |
| 85 | +**La pregunta es en realidad un cambio de rumbo en la tarea (no una duda secundaria):** |
| 86 | +Si la pregunta implica cambiar lo que se está construyendo (p. ej., `/aside en realidad usemos Redis en su lugar`), clarificar: |
87 | 87 | ``` |
88 | | -ASIDE: That sounds like a direction change, not just a side question. |
89 | | -Do you want to: |
90 | | - (a) Answer this as information only and keep the current plan |
91 | | - (b) Pause the current task and change approach |
| 88 | +ASIDE: Eso parece un cambio de rumbo, no solo una pregunta secundaria. |
| 89 | +¿Deseas: |
| 90 | + (a) Responder esto como información únicamente y mantener el plan actual |
| 91 | + (b) Pausar la tarea actual y cambiar de enfoque |
92 | 92 | ``` |
93 | | -Wait for the user's answer — do not make assumptions. |
| 93 | +Esperar la respuesta del usuario — no hacer suposiciones. |
94 | 94 |
|
95 | | -**Question is about the currently open file or code:** |
96 | | -Answer from the live context. If the file was read earlier in the session, reference it directly. If not, read it now (read-only) and answer with a file:line reference. |
| 95 | +**La pregunta es sobre el archivo o código actualmente abierto:** |
| 96 | +Responder a partir del contexto en vivo. Si el archivo se leyó antes en la sesión, referenciarlo directamente. Si no, leerlo ahora (solo lectura) y responder con una referencia archivo:línea. |
97 | 97 |
|
98 | | -**No active task (nothing in progress when `/aside` is invoked):** |
99 | | -Still use the standard wrapper so the response shape stays consistent: |
| 98 | +**No hay tarea activa (nada en progreso al invocar `/aside`):** |
| 99 | +Utilizar de todos modos la plantilla estándar para mantener la consistencia: |
100 | 100 | ``` |
101 | | -ASIDE: [restate the question briefly] |
| 101 | +ASIDE: [replantear la pregunta brevemente] |
102 | 102 |
|
103 | | -[Your answer here] |
| 103 | +[Tu respuesta aquí] |
104 | 104 |
|
105 | | -— Back to task: no active task to resume |
| 105 | +— De vuelta a la tarea: no hay tarea activa para reanudar |
106 | 106 | ``` |
107 | 107 |
|
108 | | -**Question requires a long answer:** |
109 | | -Give the essential answer concisely, then offer: |
| 108 | +**La pregunta requiere una respuesta extensa:** |
| 109 | +Dar la respuesta esencial de manera concisa y luego ofrecer: |
110 | 110 | ``` |
111 | | -That's the short version. Want a deeper explanation after we finish [current task]? |
| 111 | +Esa es la versión corta. ¿Deseas una explicación más detallada después de terminar [tarea actual]? |
112 | 112 | ``` |
113 | 113 |
|
114 | | -**Multiple `/aside` questions in a row:** |
115 | | -Answer each one in sequence. After the last answer, resume the main task. Do not lose task state across a chain of asides. |
| 114 | +**Múltiples preguntas `/aside` consecutivas:** |
| 115 | +Responder cada una en secuencia. Tras la última respuesta, reanudar la tarea principal. No perder el estado de la tarea a través de una cadena de asides. |
116 | 116 |
|
117 | | -**Aside answer implies a code change is needed:** |
118 | | -Note the change needed but do not make it during the aside: |
| 117 | +**La respuesta del aside implica que se necesita un cambio de código:** |
| 118 | +Anotar el cambio necesario pero no realizarlo durante el aside: |
119 | 119 | ``` |
120 | | -ASIDE: [answer] |
| 120 | +ASIDE: [respuesta] |
121 | 121 |
|
122 | | - Worth fixing: [what should be changed]. I'll flag this after the current task unless you want to address it now. |
| 122 | + Vale la pena corregir: [qué debería cambiarse]. Lo marcaré después de la tarea actual a menos que desees abordarlo ahora. |
123 | 123 | ``` |
124 | 124 |
|
125 | | -**Question is ambiguous or too vague:** |
126 | | -Ask one clarifying question — the shortest question that gets the information needed to answer. Do not ask multiple questions. |
| 125 | +**La pregunta es ambigua o demasiado vaga:** |
| 126 | +Hacer una sola pregunta de aclaración — la más breve posible para obtener la información necesaria para responder. No hacer preguntas múltiples. |
127 | 127 |
|
128 | 128 | --- |
129 | 129 |
|
130 | | -## Example Output |
| 130 | +## Ejemplo de Salida |
131 | 131 |
|
132 | 132 | ``` |
133 | | -User: /aside what does fetchWithRetry() actually do? |
| 133 | +Usuario: /aside ¿qué hace realmente fetchWithRetry()? |
134 | 134 |
|
135 | | -ASIDE: what does fetchWithRetry() do? |
| 135 | +ASIDE: ¿qué hace fetchWithRetry()? |
136 | 136 |
|
137 | | -fetchWithRetry() (src/api/retry.ts:12) attempts the request up to 3 times with |
138 | | -exponential backoff (250ms → 500ms → 1s). It only retries on 5xx responses and |
139 | | -network errors — 4xx errors are treated as final and not retried. |
| 137 | +fetchWithRetry() (src/api/retry.ts:12) intenta la petición hasta 3 veces con |
| 138 | +retroceso exponencial (exponential backoff: 250ms → 500ms → 1s). Solo reintenta ante |
| 139 | +respuestas 5xx y errores de red — los errores 4xx se tratan como definitivos y no se reintentan. |
140 | 140 |
|
141 | | -— Back to task: refactoring the auth middleware in src/middleware/auth.ts |
| 141 | +— De vuelta a la tarea: refactorizando el middleware de autenticación en src/middleware/auth.ts |
142 | 142 | ``` |
143 | 143 |
|
144 | 144 | ``` |
145 | | -User: /aside is the approach we're taking thread-safe? |
| 145 | +Usuario: /aside ¿el enfoque que estamos usando es seguro para hilos? |
146 | 146 |
|
147 | | -ASIDE: is the current approach thread-safe? |
| 147 | +ASIDE: ¿el enfoque actual es seguro para hilos (thread-safe)? |
148 | 148 |
|
149 | | -No — the shared cache object in src/cache/store.ts:34 is mutated without locking. |
150 | | -Under concurrent requests this is a race condition. It's low risk in a single-process |
151 | | -Node.js server but would be a real problem with worker threads or clustering. |
| 149 | +No — el objeto de caché compartido en src/cache/store.ts:34 se muta sin bloqueo (locking). |
| 150 | +Bajo peticiones concurrentes esto genera una condición de carrera. Es de bajo riesgo en un servidor |
| 151 | +Node.js de proceso único, pero sería un problema real con worker threads o en modo clúster. |
152 | 152 |
|
153 | | -WARNING: Note: This could affect the feature we're building. Want to address this now or continue and fix it in a follow-up? |
| 153 | +WARNING: Nota: Esto podría afectar la funcionalidad que estamos construyendo. ¿Deseas abordar esto ahora o continuar y solucionarlo en una tarea posterior? |
154 | 154 | ``` |
155 | 155 |
|
156 | 156 | --- |
157 | 157 |
|
158 | | -## Notes |
| 158 | +## Notas |
159 | 159 |
|
160 | | -- Never modify files during an aside — read-only access only |
161 | | -- The aside is a conversation pause, not a new task — the original task must always resume |
162 | | -- Keep answers focused: the goal is to unblock the user quickly, not to deliver a lecture |
163 | | -- If an aside sparks a larger discussion, finish the current task first unless the aside reveals a blocker |
164 | | -- Asides are not saved to session files unless explicitly relevant to the task outcome |
| 160 | +- Nunca modificar archivos durante un aside — solo acceso de lectura |
| 161 | +- El aside es una pausa en la conversación, no una tarea nueva — la tarea original siempre debe reanudarse |
| 162 | +- Mantener las respuestas enfocadas: el objetivo es desbloquear al usuario rápidamente, no dar una conferencia |
| 163 | +- Si un aside desata un debate más amplio, terminar la tarea actual primero a menos que el aside revele un bloqueo crítico |
| 164 | +- Los asides no se guardan en archivos de sesión a menos que sean explícitamente relevantes para el resultado de la tarea |
0 commit comments