# Send Endpoints to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "endpoints",
    "name": "Endpoints",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/adamkristopher/endpoints",
    "canonicalUrl": "https://clawhub.ai/adamkristopher/endpoints",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/endpoints",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=endpoints",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "references/api-reference.md",
      "scripts/package-lock.json",
      "scripts/package.json",
      "scripts/src/index.ts",
      "scripts/tsconfig.json"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "endpoints",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-02T22:02:52.686Z",
      "expiresAt": "2026-05-09T22:02:52.686Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=endpoints",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=endpoints",
        "contentDisposition": "attachment; filename=\"endpoints-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "endpoints"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/endpoints"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/endpoints",
    "downloadUrl": "https://openagent3.xyz/downloads/endpoints",
    "agentUrl": "https://openagent3.xyz/skills/endpoints/agent",
    "manifestUrl": "https://openagent3.xyz/skills/endpoints/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/endpoints/agent.md"
  }
}
```
## Documentation

### Setup

Install dependencies:

cd scripts && npm install

Configure credentials by creating a .env file in the project root:

ENDPOINTS_API_URL=https://endpoints.work
ENDPOINTS_API_KEY=ep_your_api_key_here

Prerequisites: An Endpoints account with an API key. Generate your API key from the API Keys page.

### Quick Start

User saysFunction to call"List my endpoints"listEndpoints()"Show endpoint details for /job-tracker/january"getEndpoint('/job-tracker/january')"Scan this document"scanFile('/path/to/file.pdf', 'job tracker')"Scan this text"scanText('Meeting notes...', 'meeting tracker')"Create an endpoint for receipts"createEndpoint('/receipts/2026')"Delete the old endpoint"deleteEndpoint('/category/slug')"Remove that item"deleteItem('abc12345')"Get the file URL"getFileUrl('userid/path/file.pdf')"Check my usage"getStats()

Execute functions by importing from scripts/src/index.ts:

import { listEndpoints, scanText, getStats } from './scripts/src/index.js';

const categories = await listEndpoints();
const result = await scanText('Meeting with John about Q1 goals', 'meeting tracker');
const stats = await getStats();

Or run directly with tsx:

npx tsx scripts/src/index.ts

### Workflow Pattern

Every analysis follows three phases:

### 1. Analyze

Run API functions. Each call hits the Endpoints API and returns structured data.

### 2. Auto-Save

All results automatically save as JSON files to results/{category}/. File naming patterns:

Named results: {sanitized_name}.json
Auto-generated: YYYYMMDD_HHMMSS__{operation}.json

### 3. Summarize

After analysis, read the saved JSON files and create a markdown summary in results/summaries/ with data tables, insights, and extracted entities.

### High-Level Functions

FunctionPurposeWhat it returnslistEndpoints()Get all endpoints by categoryTree structure with categories and endpointsgetEndpoint(path)Get endpoint detailsFull metadata (old + new items)scanText(text, prompt)Scan text with AIExtracted entities and endpoint pathscanFile(filePath, prompt)Scan file with AIExtracted entities and endpoint pathgetStats()Get usage statisticsParses used, limits, storage

### Individual API Functions

For granular control, import specific functions. See references/api-reference.md for the complete list with parameters, types, and examples.

### Endpoint Functions

FunctionPurposelistEndpoints()List all endpoints organized by categorygetEndpoint(path)Get full endpoint details with metadatacreateEndpoint(path)Create a new empty endpointdeleteEndpoint(path)Delete endpoint and all associated files

### Scanning Functions

FunctionPurposescanText(text, prompt)Scan text content with AI extractionscanFile(filePath, prompt)Scan file (PDF, images, docs) with AI

### Item Functions

FunctionPurposedeleteItem(itemId)Delete a single item by its 8-char ID

### File Functions

FunctionPurposegetFileUrl(key)Get presigned S3 URL for a file

### Billing Functions

FunctionPurposegetStats()Get usage stats (parses, storage, tier)

### Living JSON Pattern

Endpoints use the Living JSON pattern for document history:

{
  endpoint: { path, category, slug },
  metadata: {
    oldMetadata: { ... },  // Historical items
    newMetadata: { ... }   // Recent items
  }
}

### Metadata Item

Each item has:

8-character ID - Unique identifier (e.g., abc12345)
summary - AI-generated description
entities - Extracted entities (people, companies, dates)
filePath - S3 URL if file was uploaded
fileType - MIME type
originalText - Source text

### Error Handling

StatusMeaning401Invalid or missing API key404Endpoint or item not found409Endpoint already exists429Usage limit exceeded

### List and Inspect

// Get all endpoints
const { categories } = await listEndpoints();
console.log(\`Found ${categories.length} categories\`);

// Inspect specific endpoint
const details = await getEndpoint('/job-tracker/january');
console.log(\`Total items: ${details.totalItems}\`);

### Scan Documents

// Scan text content
const result = await scanText(
  'Email from John Smith at Acme Corp about the Q1 contract renewal',
  'business contacts'
);
console.log(\`Created endpoint: ${result.endpoint.path}\`);

// Scan a PDF file
const fileResult = await scanFile('./invoice.pdf', 'invoice tracker');
console.log(\`Extracted ${fileResult.entriesAdded} items\`);

### Check Usage

const stats = await getStats();
console.log(\`Parses: ${stats.parsesUsed}/${stats.parsesLimit}\`);
console.log(\`Storage: ${stats.storageUsed} bytes\`);
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: adamkristopher
- Version: 1.0.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-02T22:02:52.686Z
- Expires at: 2026-05-09T22:02:52.686Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/endpoints)
- [Send to Agent page](https://openagent3.xyz/skills/endpoints/agent)
- [JSON manifest](https://openagent3.xyz/skills/endpoints/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/endpoints/agent.md)
- [Download page](https://openagent3.xyz/downloads/endpoints)