Skip to content
Back to skills

Create Remember

ASecurity

Save a casual fact to universal-memory. /remember <text> POSTs the fact to the running UM server; no file written, no git repo required. /remember --help shows usage.

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 26, 2026
ai-agentspythonshellbashgit

Works with

  • cli

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned September 26, 2026

npx -y skills add goldenwo/universal-memory --skill create-remember --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Create Remember?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Create Remember
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/goldenwo-create-remember/badge)](https://www.skillsdirectory.com/skills/goldenwo-create-remember)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: create-remember
description: Save a casual fact to universal-memory. /remember <text> POSTs the fact to the running UM server; no file written, no git repo required. /remember --help shows usage.
---

# /remember — casual fact capture skill

You (the LLM running this skill) are responsible for parsing the user's
`ARGUMENTS:` line and dispatching to a bash helper that does the
sanitization, payload assembly, and HTTP POST. **Do not assemble the
JSON payload yourself, do not curl the server yourself** — call the
helper for everything.

## Step 1 — parse the ARGUMENTS line

The `ARGUMENTS:` line contains the user's input after `/remember`.
Examples:

| ARGUMENTS                            | What the user typed                          |
|--------------------------------------|----------------------------------------------|
| `Bought milk on Tuesday`             | `/remember Bought milk on Tuesday`           |
| `"Quoted multi-word fact"`           | `/remember "Quoted multi-word fact"`         |
| `--help`                             | `/remember --help`                           |
| `-- --literal flag-like text`        | `/remember -- --literal flag-like text`      |
| (empty)                              | `/remember`                                  |

Apply these rules **in this exact order**:

1. **`--help` or `-h`** appears anywhere in args, OR args is empty →
   invoke `create-remember.sh help`. (The bare `/remember` form falls
   here; users without an explicit text are asking what the command
   does.)
2. **POSIX `--` end-of-flags terminator:** anything after `--` is
   treated as text content with no flag interpretation. `/remember --
   --literal text` → text is `--literal text`.
3. **Unknown flags** (`--foo` other than `--help`/`-h`) anywhere in
   args → reply with `unknown flag: <flag> (recognized: --help)` and
   STOP — do NOT invoke the helper.
4. **Remaining tokens form the text.** Whitespace-join them. Strip
   surrounding shell-quote characters if the args came pre-quoted.

## Step 2 — invoke the helper via Bash tool

The helper lives at `~/.claude/skills/create-remember/create-remember.sh`.
Use the Bash tool with the structured CLI form:

- **Help:** `bash ~/.claude/skills/create-remember/create-remember.sh help`
- **Remember:** `bash ~/.claude/skills/create-remember/create-remember.sh remember --text "<text>"`

Pass the joined text as a single quoted argument to `--text`. Never
forward a bare `--` separator to the helper; the LLM is the
end-of-flags parser, not the helper.

## Step 3 — surface the helper's output verbatim

The helper prints either a 2-line success block, a single WARNING
line (warn-only path on transient/auth failure), OR an error message
on hard fail (stderr). Whatever the helper prints, surface it to the
user as your assistant message body — **do not add commentary,
summaries, "Done!" lines, or restated context**. The helper output IS
the user-facing message.

Exit-code conventions (same as `/adr`):
- 0 → success (line-1 + line-2) OR warn-only (single WARNING line)
- 64 → usage error (unknown flag, missing `--text`, oversized text)
- 65 → input validation failed (empty after sanitization, bidi reject,
  HTTP 400/422 from server)
- 70 → internal error (e.g. python3 not installed and no
  `UM_CODEPOINT_TOOL` override)

## Notes for special cases

- **User typed only `/remember`** (no args, no flags) → invoke help.
  The user is asking what the command does.
- **Text contains shell metacharacters** (backticks, dollar signs,
  pipe, etc.) → still pass as a single quoted argument; the helper's
  bash sanitization + `_json_escape` handles it. Never expand or
  evaluate the text.
- **Long text** → if the LLM sees the user pasted a giant blob (e.g.
  > 1KB), still forward it as-is; the helper will hard-fail with exit
  64 at the 4096-codepoint limit, and the user gets a clear "split
  into multiple /remember calls" message.
- **Server unreachable / 401 / 429 / 5xx** → helper emits warn-only
  (exit 0, single WARNING line). The WARNING line includes the
  sanitized text preview so the operator can re-run verbatim after
  fixing the issue.

Files in this skill

  • create-remember.sh16.6 KB
  • create-remember.test.sh28.5 KB
  • skill.md4.1 KB

Attribution

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

Loading comments…