pma-mem
Original:🇺🇸 English
Translated
Operate a Memos instance over its REST API. Use when the user wants to create, search, update, or delete memos, manage tags, attachments, or user settings through a reachable Memos server.
35installs
Sourcezzci/skills
Added on
NPX Install
npx skill4agent add zzci/skills pma-memTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Memos
Operate Memos by sending HTTP requests to (default ).
Authenticate with a Personal Access Token stored in .
$MEMOS_URLhttp://memos:5230$MEMOS_TOKENKeep this entry file small. Load only the references needed for the current turn.
Always-On Rules
- Confirm and
$MEMOS_URLbefore making any request. If missing, ask the user for them.$MEMOS_TOKEN - Prefer piped to
curl -sso results are easy to inspect.jq - All authenticated requests must include .
-H "Authorization: Bearer $MEMOS_TOKEN" - API base path is . There is no v2 API.
/api/v1/ - PATCH requests use as a query parameter, not in the body.
updateMask - Resource names follow format (e.g.
{collection}/{id},memos/abc123).users/roy - Pagination uses +
pageSize/pageToken.nextPageToken - Error responses are gRPC-style: .
{"code": N, "message": "...", "details": []} - Memo visibility values: ,
PRIVATE(logged-in users),PROTECTED.PUBLIC - Memo state values: ,
NORMAL.ARCHIVED
Quick Start
bash
# Health check (no auth needed)
curl -s "$MEMOS_URL/api/v1/instance/profile" | jq
# List memos
curl -s -H "Authorization: Bearer $MEMOS_TOKEN" \
"$MEMOS_URL/api/v1/memos?pageSize=10" | jq
# Create memo
curl -s -X POST -H "Authorization: Bearer $MEMOS_TOKEN" \
-H 'Content-Type: application/json' \
"$MEMOS_URL/api/v1/memos" \
-d '{"content":"Hello from CLI","visibility":"PRIVATE"}' | jq
# Search memos by content filter
curl -s -H "Authorization: Bearer $MEMOS_TOKEN" \
"$MEMOS_URL/api/v1/memos?filter=content.contains(\"keyword\")" | jq
# Update memo content
curl -s -X PATCH -H "Authorization: Bearer $MEMOS_TOKEN" \
-H 'Content-Type: application/json' \
"$MEMOS_URL/api/v1/memos/{uid}?updateMask=content" \
-d '{"content":"Updated content"}' | jq
# Delete memo
curl -s -X DELETE -H "Authorization: Bearer $MEMOS_TOKEN" \
"$MEMOS_URL/api/v1/memos/{uid}" | jq
# Archive memo
curl -s -X PATCH -H "Authorization: Bearer $MEMOS_TOKEN" \
-H 'Content-Type: application/json' \
"$MEMOS_URL/api/v1/memos/{uid}?updateMask=state" \
-d '{"state":"ARCHIVED"}' | jqReference Packs
Load only what the current task needs:
- Full API endpoint reference: MemoService, UserService, AttachmentService, InstanceService, AuthService, ShortcutService.
references/rest-api.md - Common workflows: bulk operations, tag management, memo relations, comments, reactions, search patterns, and attachment handling.
references/workflows.md
Quick Routing
Choose references by intent:
- Single memo CRUD or API details: load .
references/rest-api.md - Bulk operations, search, tag workflows, or attachments: load .
references/workflows.md - Full understanding of all endpoints: load both.