✓ Verified 💻 Development ✓ Enhanced Data

Memos

This skill provides a simple interface to the Memos API (https://usememos.com/docs/api)

Rating
4.5 (372 reviews)
Downloads
49,855 downloads
Version
1.0.0

Overview

This skill provides a simple interface to the Memos API (https://usememos.com/docs/api)

Complete Documentation

View Source →

SKILL.md for the Memos skill

Purpose

This skill provides a simple interface to the Memos API (https://usememos.com/docs/api). It lets you create, read, delete, and list memos from OpenClaw.

How it works

  • The skill is implemented in Python and uses the requests library.
  • It requires two environment variables:
  • MEMOS_URLREQUIRED. Base URL of your Memos instance (e.g., https://demo.usememos.com).
  • MEMOS_TOKENREQUIRED. Personal access token for authentication.
  • If either MEMOS_URL or MEMOS_TOKEN is not set, the skill will abort with a clear error.

Commands

CommandDescriptionUsage examplecd
create [visibility]Create a new memo. visibility defaults to PUBLIC (options: PRIVATE, PROTECTED, PUBLIC). The tag #openclaw is appended automatically.openclaw skill-run create "Hello world" "PUBLIC"
get Retrieve a memo by its ID. ID can be in format memos/123 or just 123.openclaw skill-run get 123
delete [force]Delete a memo. Optional force (true/false) will delete even if it has associated data.openclaw skill-run delete 123 true
list [pageSize]List memos with pagination. pageSize defaults to 20 (max 1000).openclaw skill-run list 50

Direct Python Usage

You can also run the commands directly with Python:

bash
# Create a memo
python3 skills/memos/memos.py create "My memo content" "PUBLIC"

# Get a memo by ID
python3 skills/memos/memos.py get j9THXDmYtueosTTeHcC5NA

# Delete a memo
python3 skills/memos/memos.py delete j9THXDmYtueosTTeHcC5NA

# Delete with force
python3 skills/memos/memos.py delete j9THXDmYtueosTTeHcC5NA true

# List memos (default 20)
python3 skills/memos/memos.py list

# List with custom page size
python3 skills/memos/memos.py list 50

All commands return JSON output on success and JSON error messages on stderr when errors occur.

Referencing Memos in OpenClaw

When you create or retrieve a memo, the API returns a memo object with a uid field. To reference a memo in OpenClaw's output, format it as a markdown link:

markdown
[memo description](https://demo.usememos.com/memos/{uid})

Example: If the API returns {"uid": "ABC123xyz", "name": "memos/ABC123xyz", ...}, reference it as:

markdown
Created [your memo](https://demo.usememos.com/memos/ABC123xyz)

The URL format is: {MEMOS_URL}/memos/{uid} where uid is extracted from the response.

Error handling

The skill includes comprehensive error handling:

  • API Errors: Returns detailed error messages including HTTP status codes and API response details
  • Network Errors: Handles timeouts (30s default) and connection failures
  • Validation: Validates parameters before making API calls (e.g., visibility options, pageSize range)
  • Exit codes: Returns 0 on success, 1 on error when run from command line
  • Error output: All errors are output as JSON to stderr for easy parsing
Example error responses:

json
{
  "error": "Memos API Error",
  "message": "HTTP 404: Not Found - Memo not found",
  "status_code": 404
}

Extending the skill

  • Add new commands by following the pattern of existing ones.
  • If the Memos API adds new endpoints, you can create corresponding functions.

NOTE: This skill is meant for personal use; never share your MEMOS_TOKEN publicly.

Installation

Terminal bash

openclaw install memos
    
Copied!

💻Code Examples

python3 skills/memos/memos.py list 50

python3-skillsmemosmemospy-list-50.txt
All commands return JSON output on success and JSON error messages on stderr when errors occur.

## Referencing Memos in OpenClaw

When you create or retrieve a memo, the API returns a memo object with a `uid` field. To reference a memo in OpenClaw's output, format it as a markdown link:

[memo description](https://demo.usememos.com/memos/{uid})

memo-descriptionhttpsdemousememoscommemosuid.txt
**Example:**
If the API returns `{"uid": "ABC123xyz", "name": "memos/ABC123xyz", ...}`, reference it as:

Created [your memo](https://demo.usememos.com/memos/ABC123xyz)

created-your-memohttpsdemousememoscommemosabc123xyz.txt
The URL format is: `{MEMOS_URL}/memos/{uid}` where `uid` is extracted from the response.

## Error handling

The skill includes comprehensive error handling:

- **API Errors**: Returns detailed error messages including HTTP status codes and API response details
- **Network Errors**: Handles timeouts (30s default) and connection failures
- **Validation**: Validates parameters before making API calls (e.g., visibility options, pageSize range)
- **Exit codes**: Returns 0 on success, 1 on error when run from command line
- **Error output**: All errors are output as JSON to stderr for easy parsing

Example error responses:
example.sh
# Create a memo
python3 skills/memos/memos.py create "My memo content" "PUBLIC"

# Get a memo by ID
python3 skills/memos/memos.py get j9THXDmYtueosTTeHcC5NA

# Delete a memo
python3 skills/memos/memos.py delete j9THXDmYtueosTTeHcC5NA

# Delete with force
python3 skills/memos/memos.py delete j9THXDmYtueosTTeHcC5NA true

# List memos (default 20)
python3 skills/memos/memos.py list

# List with custom page size
python3 skills/memos/memos.py list 50
example.json
{
  "error": "Memos API Error",
  "message": "HTTP 404: Not Found - Memo not found",
  "status_code": 404
}

Tags

#coding_agents-and-ides #api

Quick Info

Category Development
Model Claude 3.5
Complexity One-Click
Author fty4
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install memos