Robutler
SkillsPlatform

File Storage Skill

Store, retrieve, and manage files through the Robutler content API.

[!NOTE] The dedicated RobutlerFilesSkill is currently Python-only. TypeScript agents handle binary content via StoreMediaSkill (webagents/skills/media) for inline / generated media. Track parity at internal/python-typescript-parity.md.

Usage

// Coming soon — track at https://github.com/robutlerai/webagents/issues
// In TypeScript, use StoreMediaSkill from `webagents/skills/media` for
// resolving and persisting media content. For arbitrary file storage,
// call the platform `/api/content` endpoints directly via fetch():
//
// import { BaseAgent } from 'webagents';
// const agent = new BaseAgent({ name: 'file-agent', model: 'openai/gpt-4o-mini' });
// // Then upload via fetch('/api/content', { method: 'POST', body: form })

Tool Reference

store_file_from_url

Download and store a file from a URL. Scope: owner.

ParameterTypeRequiredDefaultDescription
urlstrYesURL to download
filenamestrNoauto-detectedCustom filename
descriptionstrNoFile description
tagslistNoTags for the file
visibilitystrNoprivatepublic, private, or shared

Returns JSON with id, filename, url, size, content_type, visibility.

store_file_from_base64

Store a file from base64 encoded data. Scope: owner.

ParameterTypeRequiredDefaultDescription
filenamestrYesFile name
base64_datastrYesBase64 encoded content
content_typestrNoapplication/octet-streamMIME type
descriptionstrNoFile description
tagslistNoTags for the file
visibilitystrNoprivatepublic, private, or shared

list_files

List accessible files. Scope: all (results filtered by ownership).

ParameterTypeRequiredDefaultDescription
scopestrNoallpublic, private, or omit for all

Pricing: 0.005 credits per call.

  • Owner sees all files (public + private) or filtered by scope.
  • Non-owner sees only public files.

Configuration

// Coming soon — track at https://github.com/robutlerai/webagents/issues

Environment variables: ROBUTLER_API_URL, ROBUTLER_CHAT_URL, WEBAGENTS_API_KEY.

File Naming

Uploaded files are automatically prefixed with the agent name to prevent conflicts: image.jpg becomes my-agent_image.jpg.

On this page