File Upload
An enhanced chat interface system that transforms traditional text conversations into structured, command-driven interactions. Enables precise agent delegation, context management, and tool execution through intuitive command syntax (@, +, /).
Preview

Command Syntax
- @agent - Delegate tasks to specific agents
- +file - Add files and context to conversations
- /tool - Force execution of specific tools
Installation
Integration & Configuration
Installation
Instructions
# Initialize HAX in your project agntcy-hax init # Add the file upload system agntcy-hax add composer file-upload
Usage
The file upload system integrates with chat interfaces to provide seamless file sharing capabilities with AI agents.
Component Setup
Setup
import { useFileUploadAction, FilePickerInput, DragAndDropZone } from "@/hax/composer/file-upload";export function ChatWithFileUpload() {const [artifacts, setArtifacts] = useState([]);// Register file upload actions for AI agentsuseFileUploadAction({addOrUpdateArtifact: (type, data) => {setArtifacts(prev => [...prev, { type, data }]);}});return (<div className="chat-interface"><FilePickerInputonFileSelection={handleFiles}dragAndDropEnabled={true}/>{/* Chat messages */}</div>);}
File Upload
An enhanced chat interface system that transforms traditional text conversations into structured, command-driven interactions. Enables precise agent delegation, context management, and tool execution through intuitive command syntax (@, +, /).
Preview

Command Syntax
- @agent - Delegate tasks to specific agents
- +file - Add files and context to conversations
- /tool - Force execution of specific tools
Installation
Integration & Configuration
Installation
Instructions
# Initialize HAX in your project agntcy-hax init # Add the file upload system agntcy-hax add composer file-upload
Usage
The file upload system integrates with chat interfaces to provide seamless file sharing capabilities with AI agents.
Component Setup
Setup
import { useFileUploadAction, FilePickerInput, DragAndDropZone } from "@/hax/composer/file-upload";export function ChatWithFileUpload() {const [artifacts, setArtifacts] = useState([]);// Register file upload actions for AI agentsuseFileUploadAction({addOrUpdateArtifact: (type, data) => {setArtifacts(prev => [...prev, { type, data }]);}});return (<div className="chat-interface"><FilePickerInputonFileSelection={handleFiles}dragAndDropEnabled={true}/>{/* Chat messages */}</div>);}