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
Copy file name to clipboardExpand all lines: .agents/skills/validate-integration/SKILL.md
+4-5Lines changed: 4 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -102,8 +102,8 @@ For **every** tool file, check:
102
102
-[ ] No fields are missing that the API provides and users would commonly need
103
103
-[ ] No phantom fields defined that the API doesn't return
104
104
-[ ]`optional: true` is set on fields that may not exist in all responses
105
-
-[ ] When using `type: 'json'` and the shape is known, `properties` defines the inner fields
106
-
-[ ] When using `type: 'array'`, `items` defines the item structure with `properties`
105
+
-[ ] When using `type: 'json'` and the shape is known, `properties` defines the inner fields (tool outputs only — block outputs do not support `properties`)
106
+
-[ ] When using `type: 'array'`, `items` defines the item structure with `properties` (tool outputs only)
107
107
-[ ] Field descriptions are accurate and helpful
108
108
109
109
### Types (types.ts)
@@ -190,9 +190,8 @@ For **each tool** in `tools.access`:
190
190
### Block Outputs
191
191
-[ ] Outputs cover the key fields returned by ALL tools (not just one operation)
192
192
-[ ] Output types are correct (`'string'`, `'number'`, `'boolean'`, `'json'`)
193
-
-[ ]`type: 'json'` outputs either:
194
-
- Describe inner fields in the description string (GOOD): `'User profile (id, name, username, bio)'`
-[ ]`type: 'json'` outputs describe inner fields in the description string: `'User profile (id, name, username, bio)'` or `'[{address, status, type}]'` for arrays
194
+
-[ ]**Do NOT add a `properties: {...}` field on block outputs.** Block-level `OutputFieldDefinition` (from `@sim/workflow-types/blocks`) only accepts `{ type, description?, condition?, hiddenFromDisplay? }`. Nested `properties` is a tool-level construct (`OutputProperty`) — adding it to a block output will fail TypeScript at build time
196
195
-[ ] No opaque `type: 'json'` with vague descriptions like `'Response data'`
197
196
-[ ] Outputs that only appear for certain operations use `condition` if supported, or document which operations return them
Copy file name to clipboardExpand all lines: .claude/commands/validate-integration.md
+4-5Lines changed: 4 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -87,8 +87,8 @@ For **every** tool file, check:
87
87
-[ ] No fields are missing that the API provides and users would commonly need
88
88
-[ ] No phantom fields defined that the API doesn't return
89
89
-[ ]`optional: true` is set on fields that may not exist in all responses
90
-
-[ ] When using `type: 'json'` and the shape is known, `properties` defines the inner fields
91
-
-[ ] When using `type: 'array'`, `items` defines the item structure with `properties`
90
+
-[ ] When using `type: 'json'` and the shape is known, `properties` defines the inner fields (tool outputs only — block outputs do not support `properties`)
91
+
-[ ] When using `type: 'array'`, `items` defines the item structure with `properties` (tool outputs only)
92
92
-[ ] Field descriptions are accurate and helpful
93
93
94
94
### Types (types.ts)
@@ -175,9 +175,8 @@ For **each tool** in `tools.access`:
175
175
### Block Outputs
176
176
-[ ] Outputs cover the key fields returned by ALL tools (not just one operation)
177
177
-[ ] Output types are correct (`'string'`, `'number'`, `'boolean'`, `'json'`)
178
-
-[ ]`type: 'json'` outputs either:
179
-
- Describe inner fields in the description string (GOOD): `'User profile (id, name, username, bio)'`
-[ ]`type: 'json'` outputs describe inner fields in the description string: `'User profile (id, name, username, bio)'` or `'[{address, status, type}]'` for arrays
179
+
-[ ]**Do NOT add a `properties: {...}` field on block outputs.** Block-level `OutputFieldDefinition` (from `@sim/workflow-types/blocks`) only accepts `{ type, description?, condition?, hiddenFromDisplay? }`. Nested `properties` is a tool-level construct (`OutputProperty`) — adding it to a block output will fail TypeScript at build time
181
180
-[ ] No opaque `type: 'json'` with vague descriptions like `'Response data'`
182
181
-[ ] Outputs that only appear for certain operations use `condition` if supported, or document which operations return them
Copy file name to clipboardExpand all lines: .cursor/commands/validate-integration.md
+4-5Lines changed: 4 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -82,8 +82,8 @@ For **every** tool file, check:
82
82
-[ ] No fields are missing that the API provides and users would commonly need
83
83
-[ ] No phantom fields defined that the API doesn't return
84
84
-[ ]`optional: true` is set on fields that may not exist in all responses
85
-
-[ ] When using `type: 'json'` and the shape is known, `properties` defines the inner fields
86
-
-[ ] When using `type: 'array'`, `items` defines the item structure with `properties`
85
+
-[ ] When using `type: 'json'` and the shape is known, `properties` defines the inner fields (tool outputs only — block outputs do not support `properties`)
86
+
-[ ] When using `type: 'array'`, `items` defines the item structure with `properties` (tool outputs only)
87
87
-[ ] Field descriptions are accurate and helpful
88
88
89
89
### Types (types.ts)
@@ -170,9 +170,8 @@ For **each tool** in `tools.access`:
170
170
### Block Outputs
171
171
-[ ] Outputs cover the key fields returned by ALL tools (not just one operation)
172
172
-[ ] Output types are correct (`'string'`, `'number'`, `'boolean'`, `'json'`)
173
-
-[ ]`type: 'json'` outputs either:
174
-
- Describe inner fields in the description string (GOOD): `'User profile (id, name, username, bio)'`
-[ ]`type: 'json'` outputs describe inner fields in the description string: `'User profile (id, name, username, bio)'` or `'[{address, status, type}]'` for arrays
174
+
-[ ]**Do NOT add a `properties: {...}` field on block outputs.** Block-level `OutputFieldDefinition` (from `@sim/workflow-types/blocks`) only accepts `{ type, description?, condition?, hiddenFromDisplay? }`. Nested `properties` is a tool-level construct (`OutputProperty`) — adding it to a block output will fail TypeScript at build time
176
175
-[ ] No opaque `type: 'json'` with vague descriptions like `'Response data'`
177
176
-[ ] Outputs that only appear for certain operations use `condition` if supported, or document which operations return them
0 commit comments