knowledge-management

Organize and classify OpenClaw knowledge entries into local folders by content type (Research, Decision, Insight, Lesson, Pattern, Project, Reference, Tutorial).

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "knowledge-management" with this command: npx skills add ClaireAICodes/knowledge-management

Knowledge Management Skill (Local Storage)

Organize your OpenClaw memory files into a structured local knowledge base. Automatically parses MEMORY.md and daily memory files, classifies entries by content type, and stores each as a timestamped markdown file in the appropriate folder.

Available Tools

Core Commands

  • km sync [options] - Sync memory entries to local files
  • km classify [options] - Parse and classify without storing (JSON output)
  • km summarize [options] - Generate index files for each content type
  • km cleanup [options] - Remove orphaned files
  • km list_types - List all available content types

Setup

No API keys needed! The skill uses two locations:

  • Input Workspace: Where MEMORY.md and memory/ daily files are read from.
  • Output Directory: Where organized folders (Research/, Decision/, etc.) are written.

Both are detected automatically:

Input Workspace (source files)

  1. OPENCLAWORKSPACE environment variable
  2. --workspace <path> CLI argument
  3. Current working directory (if it contains MEMORY.md)
  4. Default: ~/.openclaw/workspace

Output Directory (organized files)

  1. --output-dir <path> CLI argument (relative to workspace or absolute)
  2. Default: <workspace>/memory/KM

The skill will create the output directory and all content-type folders automatically.

If you want to pre-create:

mkdir -p ~/.openclaw/workspace/memory/KM/{Research,Decision,Insight,Lesson,Pattern,Project,Reference,Tutorial}

Usage Examples

Default locations (input at workspace root, output in memory/KM)

# From any directory (workspace auto-detected)
km sync --days_back 7 --cleanup

Custom input workspace and output directory

km sync --workspace /custom/input/workspace --output-dir /custom/output/KM --days_back 7

Using environment variables

export OPENCLAWORKSPACE=/custom/input/workspace
km sync --output-dir /custom/output/KM --days_back 7

Dry run (preview only)

km sync --dry_run --days_back 1

Classify entries and export JSON

km classify --days_back 3 > entries.json

Generate index files (default: output directory)

km summarize
# or specify different location
km summarize --output_dir ~/some/other/folder

Preview orphan cleanup

km cleanup --dry_run

List content types

km list_types

Storage Structure

Assuming default configuration:

  • Input workspace: ~/.openclaw/workspace
  • Output directory: ~/.openclaw/workspace/memory/KM
~/.openclaw/workspace/
├── MEMORY.md                (source file - you edit this)
├── memory/                  (daily memory files)
│   ├── 2025-02-11.md
│   ├── 2025-02-12.md
│   └── ...
└── memory/KM/               (organized output by the skill)
    ├── local-sync-state.json
    ├── local-sync-log.md
    ├── Research/
    │   ├── 20260215T1448_Title_Here_HASH.md
    │   └── ...
    ├── Decision/
    ├── Insight/
    ├── Lesson/
    ├── Pattern/
    ├── Project/
    ├── Reference/
    ├── Tutorial/
    ├── Research_Index.md
    ├── Decision_Index.md
    └── ... (other index files)

File Naming

Format: YYYYMMDDTHHMM_Title_With_Underscores_8CHARHASH.md

The 8-character content hash suffix prevents filename collisions when titles are identical but content differs.

File Content (YAML Frontmatter)

---
title: "Protocol Name"
content_type: "Research"
domain: "OpenClaw"
certainty: "Verified"
impact: "Medium"
confidence_score: 8
tags: ["AI", "Automation"]
source: "MEMORY.md"
source_file: "MEMORY.md"
date: "2026-02-11"
content_hash: "e4b30e75d0f5a662"
---

Entry body content starts here...

How It Works

  1. Parses MEMORY.md and recent daily memory/*.md files
  2. Classifies each entry (content type, domain, certainty, impact, tags, confidence)
  3. Computes content hash for deduplication
  4. Checks sync state (memory/local-sync-state.json) to skip already synced entries
  5. Writes to appropriate folder with timestamp + hash filename
  6. Updates state mapping (hash → filepath)
  7. Optional cleanup removes files not in state

Classification Logic

  • Content Type: Keyword matching (Research, Lesson, Decision, Pattern, Tutorial, Reference, Insight)
  • Domain: Contextual inference (AI Models, OpenClaw, Cost, Trading, etc.)
  • Certainty: Based on language (Verified, Likely, Speculative, Opinion)
  • Impact: Importance indicators (High, Medium, Low, Negligible)
  • Tags: Auto-extracted from predefined keyword map
  • Confidence Score: 1–10 heuristic (source credibility, length, data mentions)

Customize by editing the EntryClassifier class in index-local.js.

State Management

memory/local-sync-state.json maps content hashes to file paths:

{
  "e4b30e75d0f5a662": "/path/to/Research/202602151440_Title_e4b30e75.md"
}

This enables idempotent syncs and fast duplicate detection.

Do not edit manually unless recovering from corruption.

Cron Integration

Automate daily syncs:

openclaw cron add \
  --name "Daily Knowledge Sync" \
  --cron "0 5 * * *" \
  --tz "Asia/Singapore" \
  --session isolated \
  --message "km sync --days_back 7"

Note: By default, the skill reads MEMORY.md from ~/.openclaw/workspace and writes organized files to ~/.openclaw/workspace/memory/KM. Use --workspace or --output-dir to customize these locations.

Troubleshooting

"km: command not found"

  • Run npm link in the skill directory, or add ~/workspace/bin to PATH.

No entries found

  • Ensure MEMORY.md uses ## section headers and ### entry titles within recognized sections.

Files not created

  • Check write permissions; run with --verbose.

Old entries not syncing

  • They may already be in state. Clear memory/KM/local-sync-state.json to force re-sync (caution: may duplicate files).

Duplicate files

  • Run km cleanup to remove orphans, then km sync to create missing files.

Version: 2.0.0 Changed: 2026-02-15 — Switched from Notion to local storage, added hash suffixes for uniqueness. Author: Claire (OpenClaw Agent) License: MIT

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Research

Arxiv Reader

Read and analyze arXiv papers by fetching LaTeX source, listing sections, or extracting abstracts

Registry SourceRecently Updated
067
Profile unavailable
Research

Ai Task Hub

AI task hub for image analysis, background removal, speech-to-text, text-to-speech, markdown conversion, points balance/ledger lookup, and async execute/poll...

Registry SourceRecently Updated
1205
Profile unavailable
Research

Hugging Face Papers

Browse trending papers, search by keyword, and get paper details from Hugging Face Papers

Registry SourceRecently Updated
013
Profile unavailable