-
Notifications
You must be signed in to change notification settings - Fork 3.1k
fix(tools): fixed tool outputs #2534
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
Greptile SummaryThis PR standardizes and improves tool output schemas across Intercom, Pinecone, Supabase, and Typeform integrations by flattening the output structure and providing detailed type definitions for better discoverability and usability. Major Changes:
All changes maintain backward compatibility in response structure while improving the output schema definitions for better developer experience. Confidence Score: 5/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant User
participant Block
participant ToolExecutor
participant Tool
participant API
User->>Block: Configure tool parameters
Block->>ToolExecutor: Execute tool with params
alt OAuth Required (e.g., Intercom, Salesforce)
ToolExecutor->>ToolExecutor: Get access token from auth
Note over ToolExecutor: For Salesforce: Extract instanceUrl from scope
ToolExecutor->>ToolExecutor: Add accessToken/instanceUrl to params
end
ToolExecutor->>Tool: Call tool.request with params
Tool->>Tool: Build URL, headers, body
Tool->>API: HTTP Request (GET/POST/PATCH/DELETE)
alt Success Response
API-->>Tool: 200/201/204 Response
Tool->>Tool: transformResponse()
alt Pinecone Upsert
Note over Tool: Returns 201 with empty body<br/>Return {statusText: "Created"}
else Typeform Update
Note over Tool: May return 204 or empty body<br/>Return {message: "success"}
else Intercom Operations
Note over Tool: Parse JSON response<br/>Return detailed typed objects
else Supabase Storage
Note over Tool: Construct path from fileName + path<br/>Return upload results
end
Tool-->>ToolExecutor: {success: true, output: {...}}
else Error Response
API-->>Tool: 4xx/5xx Response
Tool->>Tool: handleError()
Tool-->>ToolExecutor: {success: false, error: "..."}
end
ToolExecutor-->>Block: Flattened output structure
Note over Block: outputs config describes<br/>top-level fields in output object
Block-->>User: Display results with typed fields
|
c4c84f8 to
7a41917
Compare
Summary
Fixed various tool outputs
Type of Change
Testing
Tested manually
Checklist