feat(custom-blocks): add deploy_custom_block copilot tool#5532
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
PR SummaryMedium Risk Overview Introduces Syncs the generated tool catalog/schemas for Reviewed by Cursor Bugbot for commit 9e9abd0. Bugbot is set up for automated code reviews on this repo. Configure here. |
Greptile SummaryThis PR adds copilot support for deploying workflows as custom blocks. The main changes are:
Confidence Score: 5/5This looks safe to merge.
Important Files Changed
Reviews (5): Last reviewed commit: "fix(custom-blocks): enterprise gate appl..." | Re-trigger Greptile |
2f03767 to
0239a78
Compare
|
|
@greptile review |
|
@greptile review |
|
@greptile review |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 0b2184b. Configure here.
|
@greptile review |
1ef3e8d to
160c866
Compare
… bounds, whitespace name
160c866 to
9e9abd0
Compare

Summary
deploy_custom_blockcopilot tool handler: the deploy agent can publish a deployed workflow as an org-wide custom block, update it in place (re-deploy upserts), or unpublish withaction: undeployensureWorkflowAccess(denied → clean "requires admin permission" message),deploy-as-blockflag, enterprise plan; audit events recorded withsource: copiloticonUrlaccepts a workspace file VFS path (files/icon.png) — bytes are copied into the publicworkspace-logoscontext (key prefixed so the serve route treats it as public) so the icon renders org-wide; external URLs pass throughcomputeWorkspaceEntitlements(workspaceId, userId)(flag + enterprise →['custom-blocks'], 5s promise cache) sent asentitlementsin every mothership payload — interactive chat (both branches),/api/mothership/execute(executor block + scheduled tasks), and the inbox executor. The Go side hides the custom-block tool/prompt/skill entirely when absent; fail-closedeligibleOrgForWorkspacenow takes an optionaluserIdso per-user flag targeting matches the REST routesDeployCustomBlock; regen formatting churn intool-schemas-v1.tsis from the current generator)getCustomBlockWithInputsByWorkflowIdoperation + shared row-hydration helperCompanion PR simstudioai/mothership#346 adds the tool definition, deploy agent wiring, entitlement gating, prompts, and skill — this handler is inert until that ships.
Type of Change
Testing
Tested manually end-to-end via Chat (published a block with a generated icon, verified render + upsert). 15 handler tests incl. icon ingestion + permission errors, payload pass-through tests. lint, type-check, and check:api-validation:strict pass.
Checklist
Companion: simstudioai/mothership#346