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
feat: add Material URL proxy for unified presigned URL replacement
Replace direct S3 presigned URLs with Redis-backed material URLs that
proxy file downloads through the API server. This restores protocol
compatibility for encrypted projects (which previously returned null
for public_url) while also unifying the URL format for non-encrypted
projects.
- Add MaterialService (token generation, Redis storage, S3 download+decrypt)
- Add GET /api/v1/material/:token endpoint (public, no auth required)
- Update ArtifactHandler.GetArtifact to always return material URLs
- Update SessionService.GetMessages to use material URLs for assets
- Update AgentSkillsService.GetFile to use material URLs for binary files
- Revert docs/SDK changes that were workarounds for missing public_url
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
When **envelope encryption** is enabled on the project, presigned URLs cannot be generated because files are encrypted at rest with a per-project key. In this case the tool returns a message directing the LLM to use the API download endpoint instead.
Copy file name to clipboardExpand all lines: docs/content/docs/(guides)/tool/(features)/skill_tools.mdx
-4Lines changed: 0 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -133,10 +133,6 @@ Returns: Skill ID, description, and file index with MIME types.
133
133
134
134
Returns: File content (text) or presigned URL (binary).
135
135
136
-
<Note>
137
-
When **envelope encryption** is enabled, binary files are returned as base64-encoded content (`raw_content` field) instead of a presigned URL, since encrypted objects cannot be served directly from S3. The tool presents the content inline to the LLM regardless of delivery method.
138
-
</Note>
139
-
140
136
<Warning>
141
137
**Read-only:** These tools can only read skill content. To execute skill scripts, use [Sandbox Tools](/tool/bash_tools#mounting-agent-skills).
0 commit comments