@mindstudio-ai/remy 0.1.55 → 0.1.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
---
|
|
2
|
+
trigger: reviseFromComments
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
This is an automated message triggered by the user pressing "Send Revision Requests to Agent" in the spec editor. They are currently editing the {{path}} file, and have added one or more comments to highlighted text. Please review each comment and react accordingly. The user can not see this message, so keep that in mind when responding.
|
|
6
|
+
|
|
7
|
+
<user_comments>
|
|
8
|
+
{{comments}}
|
|
9
|
+
</user_comments>
|
package/dist/headless.js
CHANGED
|
@@ -5069,8 +5069,6 @@ async function runTurn(params) {
|
|
|
5069
5069
|
settle = (result, isError) => res({ id: tc.id, result, isError });
|
|
5070
5070
|
});
|
|
5071
5071
|
let toolAbort = new AbortController();
|
|
5072
|
-
const cascadeAbort = () => toolAbort.abort();
|
|
5073
|
-
signal?.addEventListener("abort", cascadeAbort, { once: true });
|
|
5074
5072
|
let settled = false;
|
|
5075
5073
|
const safeSettle = (result, isError) => {
|
|
5076
5074
|
if (settled) {
|
|
@@ -5080,6 +5078,11 @@ async function runTurn(params) {
|
|
|
5080
5078
|
signal?.removeEventListener("abort", cascadeAbort);
|
|
5081
5079
|
settle(result, isError);
|
|
5082
5080
|
};
|
|
5081
|
+
const cascadeAbort = () => {
|
|
5082
|
+
toolAbort.abort();
|
|
5083
|
+
safeSettle("Error: cancelled", true);
|
|
5084
|
+
};
|
|
5085
|
+
signal?.addEventListener("abort", cascadeAbort, { once: true });
|
|
5083
5086
|
const run = async (input) => {
|
|
5084
5087
|
try {
|
|
5085
5088
|
let result;
|
|
@@ -5292,7 +5295,8 @@ function resolveAction(text) {
|
|
|
5292
5295
|
let body = readAsset("automatedActions", `${triggerName}.md`);
|
|
5293
5296
|
body = body.replace(/^---[\s\S]*?---\s*/, "");
|
|
5294
5297
|
for (const [key, value] of Object.entries(params)) {
|
|
5295
|
-
|
|
5298
|
+
const str = typeof value === "string" ? value : JSON.stringify(value);
|
|
5299
|
+
body = body.replaceAll(`{{${key}}}`, str);
|
|
5296
5300
|
}
|
|
5297
5301
|
return `@@automated::${triggerName}@@
|
|
5298
5302
|
${body}`;
|
package/dist/index.js
CHANGED
|
@@ -5132,8 +5132,6 @@ async function runTurn(params) {
|
|
|
5132
5132
|
settle = (result, isError) => res({ id: tc.id, result, isError });
|
|
5133
5133
|
});
|
|
5134
5134
|
let toolAbort = new AbortController();
|
|
5135
|
-
const cascadeAbort = () => toolAbort.abort();
|
|
5136
|
-
signal?.addEventListener("abort", cascadeAbort, { once: true });
|
|
5137
5135
|
let settled = false;
|
|
5138
5136
|
const safeSettle = (result, isError) => {
|
|
5139
5137
|
if (settled) {
|
|
@@ -5143,6 +5141,11 @@ async function runTurn(params) {
|
|
|
5143
5141
|
signal?.removeEventListener("abort", cascadeAbort);
|
|
5144
5142
|
settle(result, isError);
|
|
5145
5143
|
};
|
|
5144
|
+
const cascadeAbort = () => {
|
|
5145
|
+
toolAbort.abort();
|
|
5146
|
+
safeSettle("Error: cancelled", true);
|
|
5147
|
+
};
|
|
5148
|
+
signal?.addEventListener("abort", cascadeAbort, { once: true });
|
|
5146
5149
|
const run = async (input) => {
|
|
5147
5150
|
try {
|
|
5148
5151
|
let result;
|
|
@@ -5891,7 +5894,8 @@ function resolveAction(text) {
|
|
|
5891
5894
|
let body = readAsset("automatedActions", `${triggerName}.md`);
|
|
5892
5895
|
body = body.replace(/^---[\s\S]*?---\s*/, "");
|
|
5893
5896
|
for (const [key, value] of Object.entries(params)) {
|
|
5894
|
-
|
|
5897
|
+
const str = typeof value === "string" ? value : JSON.stringify(value);
|
|
5898
|
+
body = body.replaceAll(`{{${key}}}`, str);
|
|
5895
5899
|
}
|
|
5896
5900
|
return `@@automated::${triggerName}@@
|
|
5897
5901
|
${body}`;
|
|
@@ -1,29 +1,49 @@
|
|
|
1
1
|
## Layout Guidelines
|
|
2
2
|
|
|
3
|
-
Layout
|
|
3
|
+
Layout has two layers: the spatial architecture (how the viewport is divided into functional regions) and the visual composition (how those regions look and feel). Get the architecture right first, then make it beautiful.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
### Spatial Architecture
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Before deciding component styles, decide how the screen is organized. These are structural decisions that shape everything else.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
**Viewport regions.** Every app divides the screen into a few primary zones: navigation, primary content, secondary content, actions. Name them. Be explicit about what the regions are and how they relate to each other.
|
|
10
|
+
|
|
11
|
+
**Fixed vs. fluid.** Decide what's nailed to the viewport and what scrolls with content. Navigation, input bars, action toolbars, and floating action buttons are typically fixed. Content areas scroll. Getting this wrong is the #1 source of UX frustration — things the user needs constantly get scrolled away, or things that should flow get trapped in cramped fixed containers. State this explicitly in your layout spec.
|
|
12
|
+
|
|
13
|
+
**Density.** Information density is a design decision, not an accident. A trading dashboard and a meditation app need fundamentally different spatial densities. Dense layouts use tighter spacing, smaller type, more columns, compact components. Spacious layouts use generous padding, larger type, fewer elements per viewport. Match density to the domain and the user's task — a user scanning 50 rows of data needs density; a user composing a single message needs breathing room.
|
|
14
|
+
|
|
15
|
+
**Scroll strategy.** Where does scrolling happen? Specify this. Also make any necessary decisions relating infinite scroll vs. pagination vs. load-more for lists. Sticky headers within scroll regions. Whether scroll position resets on navigation.
|
|
16
|
+
|
|
17
|
+
**Navigation pattern.** How does the user move between sections? The navigation pattern is tied to the spatial architecture — a sidebar nav implies a different layout structure than bottom tabs.
|
|
18
|
+
|
|
19
|
+
### Visual Composition
|
|
20
|
+
|
|
21
|
+
With the spatial architecture established, make it visually compelling. This is where the layout goes from functional to distinctive.
|
|
22
|
+
|
|
23
|
+
Layout is where interfaces fail most visibly. Generic patterns like centered content, three equal columns, card grids, symmetric everything feel tired and bland. Fight the use of generic layouts actively. Source layout inspiration from <visual_design_references> — these sites were hand-picked because they are doing something compelling.
|
|
24
|
+
|
|
25
|
+
If the design calls for it, take risks and be bold. It might not always work out and that's okay — the user always has the opportunity to refine.
|
|
26
|
+
|
|
27
|
+
#### Things that make layouts interesting
|
|
10
28
|
- Asymmetry — varied column widths, off-center compositions
|
|
11
29
|
- Scale contrast — one very large element next to several small ones
|
|
12
30
|
- Creative negative space — intentional emptiness that creates tension and focus
|
|
13
31
|
- Full-bleed elements — images, colors, or sections that break the grid
|
|
14
32
|
- Varied density — some sections spacious, others information-dense
|
|
15
|
-
- Unexpected compositions —
|
|
33
|
+
- Unexpected compositions — CSS transformations in 3D space, skewed perspective tricks
|
|
16
34
|
|
|
17
|
-
|
|
35
|
+
#### Anti-patterns to avoid
|
|
18
36
|
- Three equal boxes with icons
|
|
19
37
|
- Centered hero with subtitle and CTA button (generic landing page)
|
|
20
38
|
- Uniform card grids with equal spacing
|
|
21
39
|
- Everything centered, everything symmetric
|
|
22
|
-
- "1 2 3" steps in boxes and other
|
|
40
|
+
- "1 2 3" steps in boxes and other cliche landing page patterns
|
|
23
41
|
- Narrow content columns with empty gutters on wide screens
|
|
24
42
|
|
|
25
43
|
### Backgrounds
|
|
44
|
+
|
|
26
45
|
Backgrounds create atmosphere. Solid white or solid gray is the safe default and the enemy of distinctiveness. Layer subtle gradients, use warm or cool tints, add geometric patterns or contextual textures. The background sets the mood before the user reads a single word.
|
|
27
46
|
|
|
28
47
|
### Output
|
|
29
|
-
|
|
48
|
+
|
|
49
|
+
When proposing layouts, describe both layers: the spatial architecture (regions, fixed vs. fluid, scroll behavior, responsive strategy) and the visual composition (proportions, spacing, visual techniques). Specify exact ratios, positions, and anything else the developer needs to correctly implement the vision.
|
package/package.json
CHANGED
|
File without changes
|