Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Agent Memory Protocol

v1.0.1

Agent memory management protocol. Activate for any memory read, write, or update operation. Defines six-category write spec, L0 sync rules, and dedup strategy.

0· 89·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for ottoprua/agent-memory-protocol.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Agent Memory Protocol" (ottoprua/agent-memory-protocol) from ClawHub.
Skill page: https://clawhub.ai/ottoprua/agent-memory-protocol
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install agent-memory-protocol

ClawHub CLI

Package manager switcher

npx clawhub@latest install agent-memory-protocol
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
Name and description (agent memory management) align with the SKILL.md: it defines where/how agents should write and how to retrieve memory. The use of qmd (indexing) and a local summarizer (LosslessClaw) is consistent with the stated purpose.
!
Instruction Scope
The SKILL.md directs agents to create and update many local files (memory/, blackboard/, L0/L1/L2 files) and to read/write conversation summaries from ~/.openclaw/lcm.db. The skill does not declare these config paths in the metadata, yet its runtime instructions assume filesystem access and modification of user / agent data. It also calls for automatic, real-time updates on events (e.g., immediate updates on project deadlines), which grants broad discretion to write persistent user data. No steps instruct explicit consent checks or protection of sensitive fields.
Install Mechanism
The skill is instruction-only (no install spec) — lowest install risk. It recommends installing third-party tools (qmd via bun/npm and LosslessClaw via openclaw plugin) from public package names or GitHub. Those are sensible for the purpose but are external dependencies you should verify come from trusted maintainers before installing.
!
Credentials
Requires no environment variables or declared config paths, yet the instructions assume access to specific filesystem locations (memory/, blackboard/, and ~/.openclaw/lcm.db) and agent config (openclaw.json). The lack of declared required config paths / permissions is an incoherence — the skill will need read/write filesystem privileges to be useful, and this is not surfaced in metadata. The skill would cause agents to persist potentially sensitive user/profile data to disk; ensure this is acceptable for your environment.
Persistence & Privilege
always:false (not auto-forced) and disable-model-invocation:false (normal). The SKILL.md labels the protocol 'All-Agent Protocol' (applies to all agents), which conflicts with not being always-enabled — clarify whether you must enable it broadly or keep it manual. No instructions modify other skills' configs, but it does advise editing openclaw.json to integrate qmd/lossless-claw which affects agent behavior.
What to consider before installing
This skill appears to be a legitimate protocol for organizing agent memory, but it assumes the agent can read/write local files and modify OpenClaw configuration even though the skill metadata doesn't declare required config paths or permissions. Before installing: 1) Verify the skill's source/provenance (GitHub repo, maintainer identity) and review the README/MEMORY-STACK files in that repo. 2) Confirm you are comfortable with agents writing persistent user data to memory/ and blackboard/ and storing compressed conversation summaries in ~/.openclaw/lcm.db (audit, encryption, backup policies). 3) If you prefer stricter controls, keep the skill user-invocable only (do not mark always:true) and limit agent autonomous invocation until you vet behavior. 4) Only install qmd and LosslessClaw from trusted package/repo URLs and review their code. 5) Consider running the skill in a sandboxed agent or workspace first and audit what files it creates/updates. If you want, request provenance (repository URL and maintainer contact) and a short changelog before proceeding — that would raise confidence.

Like a lobster shell, security has layers — review code before you run it.

latestvk97adh5183f8swjdskgkfdd2q183yqka
89downloads
0stars
2versions
Updated 3w ago
v1.0.1
MIT-0

Memory Manager Skill

⚠️ All-Agent Protocol: This protocol applies to all agents in the system. Any agent completing a subtask that produces persistable information must write it according to this spec. Do not create memory files outside this structure.


When to Trigger

  • Before a conversation ends and new information needs storing
  • When the user says "remember", "update memory", or similar
  • When existing memory needs correction
  • After completing a new type of task (new case)
  • Real-time trigger during conversation:
    • Project deadline changes → immediately update blackboard/projects/<id>.md + blackboard/REGISTRY.md (SSOT)
    • Progress milestone completed → immediately update the corresponding Blackboard project card
    • Habit / preference changes → immediately update preferences/
    • Person / tool info changes → immediately update entities/
    • No need to wait for end of conversation or explicit instruction

Three-Layer Density Structure

LayerFilePurposeUpdate Frequency
L0MEMORY.mdMinimal index, 1-3 sentences per category + path pointersOnly on structural changes
L1memory/INDEX.mdCategory overview navigation, ~500-1000 wordsWhen L2 file structure changes
L2memory/user/ memory/agent/Full details, read on demandDay-to-day maintenance

Retrieval order: Read L0 (MEMORY.md) to locate category → memory_get the relevant L2 → use memory_search for full-text search when uncertain.


Directory Structure (L2)

memory/
├── INDEX.md                    ← L1 navigation
├── user/
│   ├── profile.md              # Basic info (appendable)
│   ├── preferences/            # Preferences (appendable)
│   │   ├── learning.md
│   │   ├── lifestyle.md
│   │   ├── tech.md
│   │   └── communication.md
│   ├── entities/               # Entities (updatable)
│   │   ├── tools.md
│   │   └── people.md
│   └── events/                 # Events (append-only)
│       └── YYYY-MM-event-name.md
└── agent/
    ├── cases/                  # Cases (append-only)
    │   └── case-name.md
    └── patterns/               # Patterns (appendable)
        ├── task-delegation.md
        ├── config-backup.md
        └── memory-write.md

Classification Decision Flow

New information → determine type
  ├── User identity/background/data change → user/profile.md
  ├── User preferences/habits/style → user/preferences/[topic].md
  ├── Project/tool/person info → user/entities/[type].md
  ├── Key decisions/milestones/irreversible events → user/events/YYYY-MM-[name].md (new file)
  ├── First time handling a new task type → agent/cases/[name].md (new file)
  └── Reusable processing pattern discovered → agent/patterns/[name].md

Write Specification

Format Standards

  • Each file has # Title + structured content
  • Appended content is date-stamped: _Updated: YYYY-MM-DD_
  • No stream-of-consciousness; write conclusions only

Integration Pattern for New Knowledge / Rules / Skills

When receiving new knowledge, rules, or a skill, do not just stack it on top — follow this flow:

1. Search for existing similar content (memory_search / read relevant skill or pattern files)
2. Compare differences, derive the better conclusion (dedup, absorb, correct)
3. Update the complete content in the authoritative source file
4. Other files referencing that content become pointer-style, not independently maintained

Store details in one place only. Other files use "see X" pointers to avoid future drift.

See memory/agent/patterns/memory-write.md → "Integration pattern for new knowledge/rules"


Cascade Update Rules (Mandatory)

Any change involving the following must check and sync all referencing L1/L2 source files after writing today's memory:

  • Agent config / model assignment
  • Toolchain / channel changes
  • Project status / deadlines
  • Protocol rule changes

How: When unsure which files are affected, use memory_search on keywords and verify each one. Today's event log (memory/YYYY-MM-DD.md) cannot replace source file updates — it is a log, not the source of truth.


Dedup Strategy

SituationAction
Exact duplicate of existingSkip, do not write
Update to existing infoAppend to end of file with date stamp
Conflicts with existingAdd "updated" note after existing entry, append new version
Entirely new infoCreate new file or append to appropriate category
events / casesAlways create new file, never modify existing

Prohibited Actions

  • ⚠️ The memory/ root dir may hold current-week session logs (≤7 days); crontab auto-archives to memory/archive/YYYY-MM/ on the 1st of each month. Non-log files (profile/preferences/entities/events/cases/patterns) must go in their L2 category directories
  • ❌ Do not write stream-of-consciousness directly to MEMORY.md
  • ❌ Do not modify existing files under events/ or cases/

L0 Sync Rules (MEMORY.md)

MEMORY.md is the L0 index; keep it under 30 lines.

When to update MEMORY.md:

  1. New events or cases file added → add a one-line pointer in the relevant block
  2. Key patterns have major changes → update the summary sentence
  3. User basic info has major changes → update the user block

When MEMORY.md does not need updating:

  • Small amount of info appended to an existing file
  • Routine entities data updates (project progress, etc.)

L0 summary format:

- **[keyword]**: [one-sentence summary] → `memory/path`

L1 Sync Rules (memory/INDEX.md)

When to update INDEX.md:

  1. New L2 file added (new case / event / pattern) → add a row in the corresponding table
  2. A file's topic has major changes → update the corresponding summary column
  3. Old-format file officially migrated → remove from "to-migrate" list

Topic Archive & Compression Protocol

When to Trigger Archival

TriggerAction
User says "done / finished / next"Immediately generate topic summary, write to appropriate category
Conversation > 30 turns / tool calls > 40Compress closed topics, free context
New session starts (/new triggered)Archive previous session's open items to corresponding Blackboard project card

Compression Summary Format (3-line principle)

Write completed topics in the following format — do not retain raw conversation:

## [YYYY-MM-DD] Topic Title
Status: ✅ Done / 🔄 In Progress / ⏸️ Pending
Key points: [1-2 sentences of core content or decision]
Decision: [key decision, omit if none]
Follow-up: [only incomplete items; omit if done]
→ Details: [path to detail file if any, otherwise omit]

Tiered Storage Rules

  • Completed topics → write summary (3-5 lines) + status: done, do not retain details
  • In-progress tasks → update blackboard/projects/<id>.md + one-line progress in blackboard/REGISTRY.md
  • Key decisions / irreversible events → write to memory/user/events/ (permanent)
  • Reusable patterns → write to memory/agent/patterns/ (permanent)

Session Reflection

At session end (/new, idle reset, or user actively switches), if the session contained any of the following, extract one pattern:

TriggerReflection contentWrite to
User corrected a behavior"Next time X occurs, do Y"memory/agent/patterns/ or .learnings/
A plan failed and was replaced"Plan X failed because A; switched to Y"memory/agent/patterns/
Discovered a hidden tool/config gotcha"When using X, watch out for Y"memory/agent/patterns/ or TOOLS.md
Found a better approach than what docs say"Better approach for X is Y"memory/agent/patterns/

Format:

## [YYYY-MM-DD] Title
- **Trigger**: what situation was encountered
- **Lesson**: one-sentence conclusion
- **Next time**: specific action guidance

When reflection is NOT needed: pure execution tasks, no corrections, no surprises, routine CRUD.

Relationship to Instinct: Reflection written to patterns/ is low-barrier recording. When the same entry is triggered ≥3 times, promote to a YAML instinct in .learnings/instincts/ (see AGENTS.md §4).


Context Pressure Management (Memory Flush Protocol)

Run session_status to monitor context usage; proactively write to memory at these thresholds:

Context %Action
< 50%Normal operation, write on decision
50–70%Alert state, write key points after each important exchange
70–85%Active flush, immediately write important content to memory
> 85%Emergency flush, stop and write a full context summary before continuing

Must-flush content: decisions made and rationale, pending items and owners, unresolved problem threads.

Flush Checklist (check each item to prevent omissions)

At session end, before compaction, or when user says "done / next" — scan each item:

#CheckWrite targetTrigger words
1User preference changed? (taste/habit/tool choice)memory/user/preferences/"I prefer…" "stop doing…" "switch to…"
2Project progress advanced?blackboard/projects/<id>.md + REGISTRYdone/blocked/delayed/milestone
3New decision made?Project card "conclusions" or memory/user/events/"decided…" "confirmed…" "not doing"
4Person/entity info updated?memory/user/entities/new contact / tool change / account info
5Reusable pattern discovered?memory/agent/patterns/gotcha / detour / better solution
6User corrected something?.learnings/LEARNINGS.mdexplicit correction / dissatisfied / redo

How: Don't need all to fire. Scan the conversation quickly, write what hit, skip what didn't. Takes 3 seconds — don't skip it.


Sub-Agent Write Rules

When any sub-agent completes a task with persistable information:

  1. Blackboard project state: update project card + corresponding REGISTRY row directly (spec → blackboard/_schema.md). No need for grep-level cascade checks; the orchestrating agent handles that.
  2. Memory-type info: write to the appropriate L2 file per this protocol, note _Written by: [agent name] YYYY-MM-DD_ at the end
  3. Notify the orchestrating agent after writing; it syncs L0/L1 indexes as needed

Comments

Loading comments...