Sandboxed File System

Introduction

In BrainSoup, the Sandboxed File System is a dedicated space within each chat room of BrainSoup. It allows both users and agents to share, modify, and interact with files securely. This functionality is crucial for tasks that require collaborative editing or access to specific documents without compromising the safety of the overall system. This system not only fosters a secure environment for file manipulation but also paves the way for advanced human/AI and AI/AI collaboration.

Each chat room is equipped with its own folder located within the broader SandboxedFileSystem directory of BrainSoup. These folders are uniquely identified by the chat room ID, ensuring a tidy and organized structure that mirrors the chat rooms' setup.

Accessing the Sandboxed File System

BrainSoup seamlessly integrates access to the Sandboxed File System through a compact file explorer embedded in the bottom right corner of its interface. This explorer supports intuitive actions such as drag-and-drop for files, offering an effortless way to manage documents within each chat room's sandboxed space.

Tip: You can also open the Sandboxed File System in your operating system's file explorer by clicking the Open Directory button, on the top of the in-app file explorer. This feature provides a familiar environment and can be particularly useful for tasks that require more advanced file management.

Choosing a Custom Location

For those who require customization, BrainSoup offers the flexibility to choose a personalized location for a chat room's Sandboxed File System. This is achieved through chat room settings, where specifying a custom folder path automatically creates a symbolic link in place of the standard directory. This feature is especially useful for integrating with existing file structures or when working on shared projects.

Enabling Agents to Access the Sandboxed File System

The FileSystem Tools

To engage with the Sandboxed File System, agents must be granted access to at least one of the following tools:

  • FileSystemRead: Allows reading files within the sandboxed environment.
  • FileSystemWrite: Enables creating, modifying, and deleting files within the sandboxed environment.
  • FileSystemExecute: Grants the ability to execute programs or commands within the sandboxed environment.

These tools define the scope of actions an agent can perform. Despite these capabilities, security remains uncompromised. Agents are confined to their respective folders within the Sandboxed File System, eliminating any risk to other system areas.

The FileSystem Context

Optionally, agents can be subscribed to the FileSystem context to enhance their awareness of file system content. This subscription enables more responsive and informed interactions. Please note that for large directories, subscribing to this context may consume a significant amount of the agent's working memory, impacting performance and usage costs.

The FileSystem Events

To enable agents to react to file system changes, BrainSoup provides the following events that to which chat rooms can subscribe:

  • FileSystem.Created: Triggered when a file or directory is created within the sandboxed environment.
  • FileSystem.Deleted: Triggered when a file or directory is deleted within the sandboxed environment.
  • FileSystem.Renamed: Triggered when a file or directory is renamed within the sandboxed environment.
  • FileSystem.Changed: Triggered when a file is modified within the sandboxed environment.

Conclusion

The Sandboxed File System exemplifies BrainSoup's commitment to creating a versatile platform where collaboration between humans and artificial intelligence can flourish safely and efficiently. By providing a structured yet flexible environment for file management, BrainSoup sets new standards in how we interact with digital workspaces. Whether it's through enhancing productivity or safeguarding data integrity, this feature stands as a testament to innovative collaboration solutions.