You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-`.prettierrc` — Formatting configuration with Svelte and Tailwind plugins.
68
70
69
71
## Key Architectural Patterns
70
72
- MutationObserver + URL whitelist for single‑page routing, with idempotent attachment via classes.
71
73
- Provider pattern for emote sources; one interface, multiple platform implementations.
72
74
- Svelte 5 runes for state; stores as lightweight classes with `$state` fields.
73
75
- WXT UI mounting into shadow roots; CSS injected via dedicated helper and `cssInjectionMode: 'ui'`.
74
76
- Request de‑duplication and Promise‑based caching to minimize redundant network calls.
77
+
- Class-based data models (e.g., `Emote`, `ChatPronoun`) with constructor-based initialization.
78
+
- Content script orchestration through entrypoint modules that handle feature-specific logic.
79
+
- Extension supports both Manifest V3 (Chromium) and Manifest V2 (Firefox) with different permission models.
75
80
76
81
<answer-structure>
77
-
## Presenting your work and final message
82
+
## MANDATORY Answer Format
78
83
79
-
**IMPORTANT:** You always need to follow the final answer formatting guidelines when you are presenting your work and final message!
84
+
**CRITICAL:** You MUST follow these exact formatting rules for ALL responses. No exceptions.
80
85
81
-
Your final message should read naturally, like an update from a concise teammate. For casual conversation, brainstorming tasks, or quick questions from the user, respond in a friendly, conversational tone. You should ask questions, suggest ideas, and adapt to the user’s style. If you've finished a large amount of work, when describing what you've done to the user, you should follow the final answer formatting guidelines to communicate substantive changes. You don't need to add structured formatting for one-word answers, greetings, or purely conversational exchanges.
82
-
83
-
You can skip heavy formatting for single, simple actions or confirmations. In these cases, respond in plain sentences with any relevant next step or quick option. Reserve multi-section structured responses for results that need grouping or explanation.
84
-
85
-
The user is working on the same computer as you, and has access to your work. As such there's no need to show the full contents of large files you have already written unless the user explicitly asks for them. Similarly, if you've created or modified files using `apply_patch`, there's no need to tell users to "save the file" or "copy the code into a file"—just reference the file path.
86
-
87
-
ALWAYS end your response with a task-related follow-up question or suggestion. Focus on logical next steps for the feature or problem domain—such as extending functionality, handling edge cases, reviewing related code, or exploring alternative approaches. **NEVER** suggest procedural actions like running tests, committing changes, or building the project. Frame it as a thoughtful continuation of the work rather than leaving the conversation hanging.
88
-
89
-
Brevity is very important as a default. You should be very concise (i.e. no more than 10 lines), but can relax this requirement for tasks where additional detail and comprehensiveness is important for the user's understanding.
90
-
91
-
### Final answer structure and style guidelines
92
-
93
-
You are producing plain text that will later be styled by the CLI. Follow these rules exactly. Formatting should make results easy to scan, but not feel mechanical. Use judgment to decide how much structure adds value.
94
-
95
-
**Section Headers**
96
-
97
-
- Use only when they improve clarity — they are not mandatory for every answer.
98
-
- Choose descriptive names that fit the content
99
-
- Keep headers short (1–3 words) and in `**Title Case**`. Always start headers with `**` and end with `**`
100
-
- Leave no blank line before the first bullet under a header.
101
-
- Section headers should only be used where they genuinely improve scanability; avoid fragmenting the answer.
102
-
103
-
**Bullets**
104
-
105
-
- Use `-` followed by a space for every bullet.
106
-
- Merge related points when possible; avoid a bullet for every trivial detail.
107
-
- Keep bullets to one line unless breaking for clarity is unavoidable.
108
-
- Group into short lists (4–6 bullets) ordered by importance.
109
-
- Use consistent keyword phrasing and formatting across sections.
110
-
111
-
**Monospace**
112
-
113
-
- Wrap all commands, file paths, env vars, and code identifiers in backticks (`` `...` ``).
114
-
- Apply to inline examples and to bullet keywords if the keyword itself is a literal file/command.
115
-
- Never mix monospace and bold markers; choose one based on whether it’s a keyword (`**`) or inline code/path (`` ` ``).
116
-
117
-
**File References**
118
-
When referencing files in your response, make sure to include the relevant start line and always follow the below rules:
119
-
120
-
- Use inline code to make file paths clickable.
121
-
- Each reference should have a stand alone path. Even if it's the same file.
122
-
- Accepted: absolute, workspace‑relative, a/ or b/ diff prefixes, or bare filename/suffix.
123
-
- Line/column (1‑based, optional): :line[:column] or #Lline[Ccolumn] (column defaults to 1).
124
-
- Do not use URIs like file://, vscode://, or https://.
- Don’t cram unrelated keywords into a single bullet; split for clarity.
151
-
- Don’t let keyword lists run long — wrap or reformat for scanability.
152
-
153
-
Generally, ensure your final answers adapt their shape and depth to the request. For example, answers to code explanations should have a precise, structured explanation with code references that answer the question directly. For tasks with a simple implementation, lead with the outcome and supplement only with what's needed for clarity. Larger changes can be presented as a logical walkthrough of your approach, grouping related steps, explaining rationale where it adds value, and highlighting next actions to accelerate the user. Your answers should provide the right level of detail while being easily scannable.
154
-
155
-
For casual greetings, acknowledgements, or other one-off conversational messages that are not delivering substantive information or structured results, respond naturally without section headers or bullet formatting.
156
-
157
-
### Example Final Answer
158
-
159
-
Here's an example of a well-structured final answer for a complex, multi-step task:
86
+
**ABSOLUTE Requirements:**
87
+
- ALWAYS use the exact structure below
88
+
- NEVER deviate from the specified format
89
+
- ALWAYS end with a task-related follow-up question
Should I implement error handling for this next? {task_related_follow_up_question_about_extending_or_exploring_the_feature}
113
+
{task_related_follow_up_question}
193
114
```
194
115
195
-
This example demonstrates:
196
-
197
-
- Opening with the outcome and what was accomplished
198
-
-**What I Changed**: High-level summary and approach details
199
-
-**Key Files**: Organized list of file changes with brief descriptions
200
-
-**Implementation Details**: Technical approach and patterns (when relevant)
201
-
-**Validation**: Proof that checks pass
202
-
- Closing with a task-related follow-up question (**NEVER** about tests/commits/builds)
203
-
204
-
Adapt sections based on task complexity. Simple tasks need fewer sections; complex refactors benefit from all sections. ALWAYS include a follow-up question at the end that explores the feature domain, edge cases, or logical extensions—never procedural steps.
205
-
116
+
**NON-NEGOTIABLE Formatting Rules:**
117
+
- Headers: EXACTLY `**Title Case**` (1-3 words only)
118
+
- Bullets: ALWAYS start with `- ` (dash, space)
119
+
- Monospace: ALWAYS use backticks for commands, paths, code
120
+
- File references: ALWAYS use `path:line` format
121
+
- NEVER use conversational tone outside the follow-up question
122
+
- NEVER mention saving files or copying code
123
+
- NEVER suggest procedural actions (tests, commits, builds)
124
+
125
+
**MANDATORY Follow-up Questions:**
126
+
- MUST relate to extending functionality
127
+
- MUST explore edge cases or alternatives
128
+
- MUST be task-related (never procedural)
129
+
130
+
**NO EXCEPTIONS** to these rules regardless of request type, complexity, or perceived user intent.
0 commit comments