agentleFS
jtsang4jtsang4/efficient-coding/skills/see/SKILL.md

see

Skill2 starsChanged 2 months agoMITView on GitHub

S.EE (SEE) platform API integration for short URL management, text sharing, and file sharing.

  • Reads credentials
  • Sends data out

6 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 3 are distinctive, and 4 are very specific to this project.

  • 0

    Common

    Most of the 4 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    All API requests require an access token in the Authorization header:

    line 12
  2. Very specific:

    Read the .env file in this skill's directory (look for SEE_API_KEY=...)

    line 19
  3. Very specific:

    Check the $SEE_API_KEY environment variable

    line 20
  4. Distinctive:

    If neither exists, ask the user for their API key

    line 21
  5. Distinctive:

    All responses follow a standard JSON structure:

    line 27
  6. Very specific:

    All four fields (domain, slug, target_url, title) are required.

    line 112
  7. Distinctive:

    All four fields are required.

    line 179

“Common” is measured: kept by at least 6 in 10 of the 4 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

S.EE API Skill

S.EE is a URL shortening and content sharing platform with three core services: short URL management, text sharing (code snippets, notes, markdown), and file sharing. Use the following API specifications to call the S.EE REST API on behalf of the user.

Authentication

All API requests require an access token in the Authorization header:

Authorization: Bearer YOUR_ACCESS_TOKEN

Resolve the API key in this order:

  1. Read the .env file in this skill's directory (look for SEE_API_KEY=...)
  2. Check the $SEE_API_KEY environment variable
  3. If neither exists, ask the user for their API key

Base URL: https://s.ee/api/v1

Response Format

All responses follow a standard JSON structure:

{
  "code": 200,
  "message": "success",
  "data": { ... }
}
  • code 200 = success
  • code 400 = invalid request parameters
  • code 401 = missing or expired API key
  • code 500 = server error

Quick Reference: All Endpoints

CategoryOperationMethodPath
Short URLsCreatePOST/shorten
Short URLsCreate (Simple)GET/shorten
Short URLsUpdatePUT/shorten
Short URLsDeleteDELETE/shorten
Short URLsGet DomainsGET/domains
Short URLsVisit StatsGET/link/visit-stat
TextCreatePOST/text
TextUpdatePUT/text
TextDeleteDELETE/text
TextGet DomainsGET/text/domains
FileUploadPOST/file/upload
FileHistoryGET/files
FilePrivate Download URLGET/file/private/download-url
FileDeleteGET/file/delete/{hash}
FileGet DomainsGET/file/domains
GeneralGet TagsGET/tags
GeneralGet UsageGET/usage

For detailed parameter specifications of each endpoint, read references/api-details.md.


Short URLs

Create Short URL

curl -X POST "https://s.ee/api/v1/shorten" \
  -H "Authorization: Bearer $SEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "target_url": "https://example.com/long-url",
    "domain": "s.ee"
  }'

Required fields: target_url, domain (default: "s.ee")

Optional fields: custom_slug, title, password (3-32 chars), expire_at (unix timestamp), expiration_redirect_url, tag_ids (array of integers)

Response returns short_url, slug, and custom_slug.

Create Short URL (Simple Mode)

A GET-based alternative using query parameters -- good for bookmarklets or quick one-liners:

curl "https://s.ee/api/v1/shorten?signature=YOUR_API_KEY&url=https://example.com&json=true"

Note: In simple mode, the API key goes in the signature query parameter (not the Authorization header). Set json=true for JSON response; otherwise returns plain text.

Update Short URL

curl -X PUT "https://s.ee/api/v1/shorten" \
  -H "Authorization: Bearer $SEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "s.ee",
    "slug": "abc123",
    "target_url": "https://new-destination.com",
    "title": "Updated Title"
  }'

All four fields (domain, slug, target_url, title) are required.

Delete Short URL

curl -X DELETE "https://s.ee/api/v1/shorten" \
  -H "Authorization: Bearer $SEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "s.ee",
    "slug": "abc123"
  }'

This is permanent and cannot be undone.

Get Link Visit Statistics

curl "https://s.ee/api/v1/link/visit-stat?domain=s.ee&slug=abc123&period=totally" \
  -H "Authorization: Bearer $SEE_API_KEY"

period options: daily (today), monthly (this month), totally (all-time, default)

Returns visit_count.


Text Sharing

Text sharing supports three content formats: plain_text, source_code (with syntax highlighting), and markdown.

Create Text Sharing

curl -X POST "https://s.ee/api/v1/text" \
  -H "Authorization: Bearer $SEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "My Code Snippet",
    "content": "console.log(\"Hello, World!\");",
    "text_type": "source_code",
    "domain": "fs.to"
  }'

Required: title, content (up to 2MB)

Optional: domain (default: "fs.to"), text_type (plain_text/source_code/markdown), custom_slug, password (3-32 chars), expire_at, tag_ids (max 5 tags)

Response returns short_url, slug, custom_slug.

Update Text Sharing

curl -X PUT "https://s.ee/api/v1/text" \
  -H "Authorization: Bearer $SEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "fs.to",
    "slug": "abc123",
    "title": "Updated Title",
    "content": "Updated content here"
  }'

All four fields are required.

Delete Text Sharing

curl -X DELETE "https://s.ee/api/v1/text" \
  -H "Authorization: Bearer $SEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "fs.to",
    "slug": "abc123"
  }'

File Sharing

Upload File

curl -X POST "https://s.ee/api/v1/file/upload" \
  -H "Authorization: Bearer $SEE_API_KEY" \
  -F "file=@/path/to/file.png" \
  -F "domain=fs.to"

Required: file (the file to upload)

Optional: domain, custom_slug, is_private (0=public, 1=private; default 0)

Response includes: file_id, url (direct access URL), page (web page URL), hash (delete key), delete (delete URL), filename, size, width/height (for images).

Get File Upload History

curl "https://s.ee/api/v1/files?page=1" \
  -H "Authorization: Bearer $SEE_API_KEY"

Returns 30 files per page, sorted by creation time descending.

Get Private File Download URL

curl "https://s.ee/api/v1/file/private/download-url?file_id=12345" \
  -H "Authorization: Bearer $SEE_API_KEY"

Returns a temporary download URL valid for 1 hour.

Delete File

curl "https://s.ee/api/v1/file/delete/DELETE_HASH_HERE" \
  -H "Authorization: Bearer $SEE_API_KEY"

Note: this uses a GET request with the delete hash in the URL path.


Domains, Tags, and Usage

Get Available Domains

# For short URLs
curl "https://s.ee/api/v1/domains" -H "Authorization: Bearer $SEE_API_KEY"

# For text sharing
curl "https://s.ee/api/v1/text/domains" -H "Authorization: Bearer $SEE_API_KEY"

# For file sharing
curl "https://s.ee/api/v1/file/domains" -H "Authorization: Bearer $SEE_API_KEY"

Query domains only if the user specifies a non-default domain or wants to see what's available.

Get Tags

curl "https://s.ee/api/v1/tags" -H "Authorization: Bearer $SEE_API_KEY"

Returns tag id and name. Use tag IDs when creating short URLs or text shares.

Get Usage

curl "https://s.ee/api/v1/usage" -H "Authorization: Bearer $SEE_API_KEY"

Shows daily/monthly limits and current usage for: API calls, link creation, text shares, file uploads, QR codes, and storage.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.