Skip to main content
Coding Agents & IDEsDocumentedScanned

file-links-tool

Securely upload files from your private AI workspace and provide your owner with a direct download.

Share:

Installation

npx clawhub@latest install file-links-tool

View the full skill documentation and source below.

Documentation

Agent-to-Owner File Bridge

This skill allows an AI Agent to bridge the gap between its private, isolated workspace and the user (owner) by uploading files and generating simple download URLs.

πŸ›  Prerequisites & Setup

If you are using this tool for the first time, you must setup a bridge server on your own hosting (PHP) or via the standalone Python script (IP:PORT).

GitHub Repository: []()

Setup Instructions:

  • Clone the repository to your host.

  • Follow the instructions in the README.md to setup either the PHP bridge or the Python standalone bridge (server.py).

  • Set your API_KEY in the .env file on your server.

  • Provide the AI Agent with your Server URL and API Key.

  • πŸ€– Instructions for AI Agent

    When the user requests to upload or share a file:

  • Check for Bridge: Determine if a File Bridge is already configured.

  • Onboarding (The "Smart Choice"): If no bridge exists, ask the user exactly one question:

  • > "I can help you share files. How would you like to handle the hosting?
    > 1. Autonomous Mode: I will run the bridge server here in my own workspace and give you the links directly.
    > 2. Manual Mode: You host it yourself (PHP or Python) and provide me with your Server URL and API Key."

  • Execution - Autonomous Mode:

  • - Clone/Copy server.py from [this repo]().
    - Generate a secure API_KEY and save it in a .env file.
    - Run the server (e.g., python server.py).
    - Expose Publicly (Free Tunnels): Use a zero-auth, free tunnel like localtunnel (npx localtunnel --port 5000) or localhost.run (ssh -R 80:localhost:5000 localhost.run).
    - Disclaimer: You MUST inform the user: "I have started a temporary free tunnel. This link will expire once my session ends or the tunnel closes."
    - Store the resulting URL and Key for future use.

  • Execution - Manual Mode:

  • - Wait for the user to provide the SERVER_URL and API_KEY.

  • Perform Upload:

  • - Use POST / on the server URL with the X-API-Key header.
    - Send the file as multipart form-data.
    - Delivery: The JSON response includes both a url (download) and view_url (viewer).
    - Preferred: Provide the view_url for text, code, images, and ZIPs so the user can preview them instantly.
    - Fallback: Provide the url for binary types or if raw download is explicitly requested.


    πŸ“‹ API Spec Reference

    EndpointMethodAction
    :---:---:---
    /POSTUpload a file (Form data: file)
    /?action=listGETList all uploaded files
    /?action=view&file=...GETRich content viewer (Supports ZIP deep-linking via &inner_file=...)
    /?action=deletePOSTBatch delete (JSON: {"files": ["name..."]})