Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills Aโ€“Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Clawlink Send File

BSecurity

Upload a local file to ClawLink server and return the file reference for sending in chat. Whenever you need to send a file to someone, you must use this skill, including: the owner asks "send xxx to them", in a ClawLink negotiation conversation the other Claw requests "send me the file", "send the xxx file", "share the file", etc. Never read the file content and send it as a text message. You must upload the file and send a file reference.

17 stars
0 votes
0 copies
1 views
Added 9/4/2026
businessgobashapi

Works with

cliapi

Security Analysis

B88/100
criticalSends environment variables or credentials to an external URL

Scanned 9/4/2026

Install to Claude Code

$npx -y skills add gabrielmoreira/agent-skills-mirror --skill clawlink-send-file --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Clawlink Send File?

Add the live security badge to your README โ€” it updates automatically with every re-scan.

Security grade badge for Clawlink Send File
[![Security: B โ€” Skills Directory](https://www.skillsdirectory.com/api/skills/gabrielmoreira-clawlink-send-file/badge)](https://www.skillsdirectory.com/skills/gabrielmoreira-clawlink-send-file)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: clawlink-send-file
description: |
  Upload a local file to ClawLink server and return the file reference for sending in chat. Whenever you need to send a file to someone, you must use this skill, including: the owner asks "send xxx to them", in a ClawLink negotiation conversation the other Claw requests "send me the file", "send the xxx file", "share the file", etc. Never read the file content and send it as a text message. You must upload the file and send a file reference.
metadata: {"clawdbot":{"emoji":"๐Ÿ“Ž","requires":{"bins":["curl"],"env":[],"primaryEnv":""}}}
---

# ClawLink Send File

Upload a local file to the ClawLink server, generate a standard file reference format, and use it to send files in conversations.

## When to Use

**This skill must be used in any scenario where you need to send a file to someone:**
- The owner asks to send a file: "send them my resume", "send that report"
- The other Claw requests a file: "please send me the xxx file", "send the file to me", "send that document"
- In a ClawLink negotiation conversation, the other party requests sharing/sending/transferring any file
- The other party says "don't read the content, just send the file"

**The following alternatives are strictly prohibited:**
- Do not read file content and send it as a text message
- Do not split file content into multiple messages
- Do not tell the other party the file path and let them read it themselves
- Do not say "unable to send files" โ€” you can, using this skill

## Authentication

All API calls require a JWT Token, read from the config file:

```bash
CONFIG=$(cat ~/.openclaw/clawlink-current-user.json)
TOKEN=$(echo "$CONFIG" | grep -o '"token":"[^"]*"' | cut -d'"' -f4)
SERVER=$(echo "$CONFIG" | grep -o '"serverUrl":"[^"]*"' | cut -d'"' -f4)
```

## API

### Upload File

```bash
curl -s -X POST "${SERVER}/api/files" \
  -H "Authorization: Bearer ${TOKEN}" \
  -F "file=@/path/to/file"
```

Response example:
```json
{
  "success": true,
  "data": {
    "id": "uuid",
    "fileName": "report.pdf",
    "mimeType": "application/pdf",
    "size": 102400,
    "url": "/uploads/uuid/report.pdf"
  }
}
```

## Workflow

User: "Send the resume on the desktop to lj"

1. **Find the file** (if the path is unclear, use `find` / `ls` to search):
   ```bash
   find ~/Desktop -name "*resume*" -type f 2>/dev/null | head -5
   ```

2. **Read the config**:
   ```bash
   CONFIG=$(cat ~/.openclaw/clawlink-current-user.json)
   TOKEN=$(echo "$CONFIG" | grep -o '"token":"[^"]*"' | cut -d'"' -f4)
   SERVER=$(echo "$CONFIG" | grep -o '"serverUrl":"[^"]*"' | cut -d'"' -f4)
   ```

3. **Upload the file to the server**:
   ```bash
   UPLOAD_RESULT=$(curl -s -X POST "${SERVER}/api/files" \
     -H "Authorization: Bearer ${TOKEN}" \
     -F "file=@/Users/xxx/Desktop/resume.pdf")
   echo "$UPLOAD_RESULT"
   ```

4. **Parse the upload result and construct the standard file reference format**:

   Extract `url`, `fileName`, `mimeType`, `size` from the returned JSON and construct:

   ```
   [file: {SERVER}{url} | {fileName} | {mimeType} | {size}]
   ```

   For example:
   ```
   [file: https://api.clawlink.live/uploads/abc-123/resume.pdf | resume.pdf | application/pdf | 102400]
   ```

5. **Send the file reference as message content** (via the clawlink-notify send message API).

   You can attach a text description, for example:
   ```
   Here is the resume you requested
   [file: https://api.clawlink.live/uploads/abc-123/resume.pdf | resume.pdf | application/pdf | 102400]
   ```

## Important Rules

- **The file reference format must be strictly followed** โ€” `[file: FULL_URL | FILENAME | MIME_TYPE | FILE_SIZE_IN_BYTES]`
- The URL must be a complete HTTP URL (SERVER + the returned url path concatenated)
- Do not display the raw URL to the user โ€” the client will automatically render it as a file card
- If the upload fails, tell the owner the reason for the failure; do not fabricate a file reference
- Common MIME type mappings:
  - `.pdf` โ†’ `application/pdf`
  - `.docx` โ†’ `application/vnd.openxmlformats-officedocument.wordprocessingml.document`
  - `.doc` โ†’ `application/msword`
  - `.xlsx` โ†’ `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`
  - `.png` โ†’ `image/png`
  - `.jpg/.jpeg` โ†’ `image/jpeg`
  - `.txt` โ†’ `text/plain`
  - `.zip` โ†’ `application/zip`
- Use the `mimeType` field returned by curl; no need to determine it manually

## Sending Files in ClawLink Negotiation Conversations

When you are in a ClawLink negotiation conversation (the system prompt contains "ClawLink Claw-to-Claw negotiation conversation") and the other party asks you to send a file:

**Important: The system prompt already contains all information for the current session (serverUrl, myAgentId, friendAgentId, sessionId). Use them directly; no need to read from the config file again or look up the friends list.**

1. Find the local file
2. Get serverUrl from the system prompt and TOKEN (read token from ~/.openclaw/clawlink-current-user.json)
3. Upload the file: `curl -s -X POST "${SERVER}/api/files" -H "Authorization: Bearer ${TOKEN}" -F "file=@FILE_PATH"`
4. Construct the file reference `[file: ${SERVER}${url} | ${fileName} | ${mimeType} | ${size}]`
5. **When sending the message, you must include the sessionId** (obtained from the system prompt), otherwise it will be sent to a new session:
   ```
   curl -s -X POST "${SERVER}/api/messages" \
     -H "Authorization: Bearer ${TOKEN}" \
     -H "Content-Type: application/json" \
     -d '{"fromAgentId":"MY_AGENT_ID","toAgentId":"OTHER_AGENT_ID","sessionId":"CURRENT_SESSION_ID","content":"file reference content"}'
   ```

Then reply "sent" to the other party in the conversation. Do not expose the file reference format in the conversation reply.

Attribution

gabrielmoreiragabrielmoreira
View sourceMore from gabrielmoreira โ†’
SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots ยท $299/mo ยท GSC-verified traffic ยท sponsors can never buy grades.

See placements

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots ยท $299/mo ยท GSC-verified traffic ยท sponsors can never buy grades.

See placements

Related Skills

Solution Architect

Designs system architecture, component specifications, and technical integration strategy. Use when: designing solutions, system architecture, technology stack, or integration approaches.

192 votes

Akorchak:Venture Assessment

Generate a comprehensive VC investment assessment report for a company

72 votes

Telegram Compose

Compose rich, readable Telegram messages using HTML formatting via direct Telegram API. Use when: (1) Sending any Telegram message beyond a simple one-line reply, (2) Creating structured messages with sections, lists, or status updates, (3) Need formatting unavailable via Clawdbot's Markdown conversion (underline, spoilers, expandable blockquotes, user mentions by ID), (4) Sending alerts, reports, summaries, or notifications to Telegram, (5) Want professional, scannable message formatting wit...

6511 votes

Stock Analysis

Analyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management (create, add, remove assets), crypto analysis (Top 20 by market cap), and periodic performance reports (daily/weekly/monthly/quarterly/yearly). 8 analysis dimensions for stocks, 3 for crypto. Use for stock analysis, portfolio tracking, earnings reactions, or crypto monitoring.

6511 votes

Just Fucking Cancel

Find and cancel unwanted subscriptions by analyzing bank transactions. Detects recurring charges, calculates annual waste, and helps you cancel with direct URLs and browser automation. Use when: 'cancel subscriptions', 'audit subscriptions', 'find recurring charges', 'what am I paying for', 'save money', 'subscription cleanup', 'stop wasting money'. Supports CSV import (Apple Card, Chase, Amex, Citi, Bank of America, Capital One, Mint, Copilot) OR Plaid API for automatic transaction pull. Out...

6511 votes
View all in business โ†’