Skill flagged — review recommended

ClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.

openclaw-knowledge-coach

v1.0.0

Build and operate an OpenClaw-based local knowledge assistant that imports personal/local documents into a knowledge base and creates practice exercises duri...

2· 403· 1 versions· 0 current· 0 all-time· Updated 23h ago· MIT-0

Install

openclaw skills install openclaw-knowledge-coach

OpenClaw Knowledge Coach

Create a local knowledge workflow in OpenClaw where importing knowledge also produces practice material for retention. OpenPraxis is on PyPI: use pip install openpraxis to get the praxis CLI.

CLI First

Use OpenPraxis CLI as the default execution path.

Install from PyPI (recommended):

pip install openpraxis
praxis --help

Or install from source for development:

git clone https://github.com/Sibo-Zhao/OpenPraxis.git
cd OpenPraxis
pip install -e ".[dev]"
praxis --help

Configure provider/model/API key before ingestion/practice:

praxis llm setup
praxis llm show

Use environment variables when needed (higher priority than config file):

export OPENAI_API_KEY="your_key_here"
# or ARK_API_KEY / MOONSHOT_API_KEY / DEEPSEEK_API_KEY based on provider

Core Workflow

  1. Confirm scope and source
  • Confirm knowledge domains, source folders, and accepted file types.
  • Confirm whether to preserve existing metadata (tags, dates, project names).
  1. Define import contract
  • Normalize each source into a record with doc_id, title, source_path, tags, created_at, and content.
  • Split long content into chunks with stable IDs such as doc_id#chunk-001.
  1. Import into OpenClaw
  • Ingest normalized records into the local OpenClaw knowledge base.
  • Keep a deterministic mapping between source file and imported IDs for later updates.
  1. Generate exercises at import time
  • For each chunk, create at least one retrieval exercise.
  • Prefer three exercise types:
    • free-recall: ask the user to explain from memory.
    • qa: ask direct question-answer pairs.
    • application: ask scenario-based transfer questions.
  • Save answer keys and concise grading rubrics.
  1. Build review queue
  • Group exercises by topic and difficulty.
  • Schedule spaced review windows (for example: day 1, day 3, day 7, day 14).
  1. Validate quality
  • Reject exercises that can be answered without the imported knowledge.
  • Reject ambiguous or duplicate questions.
  • Ensure every exercise points back to doc_id and chunk_id.

CLI Command Playbook

Run this sequence when the user asks to import local knowledge and create practice:

  1. Add a local file
praxis add "/absolute/path/to/note.md" --type report
  1. List recent inputs and capture target input_id
praxis list --limit 20
  1. Force-generate a new practice scene for an existing input
praxis practice <input_id>
  1. Submit answer by file (preferred for deterministic runs)
praxis answer <scene_id> --file "/absolute/path/to/answer.md"
  1. Inspect pipeline results and insight cards
praxis show <input_id>
praxis insight <input_id>
  1. Export insights to Markdown/JSON
praxis export --format md --output "/absolute/path/to/insights.md"
praxis export --format json --output "/absolute/path/to/insights.json"

Agent Execution Rules

  • Prefer praxis add for import and initial exercise generation.
  • Parse IDs from CLI output, then chain praxis practice and praxis answer.
  • Use praxis answer --file instead of interactive stdin in automation flows.
  • If duplicate content is skipped, rerun with praxis add ... --force when user wants reprocessing.
  • Use one-shot runtime model override only when requested:
praxis --provider openai --model gpt-4.1-mini add "/absolute/path/to/note.md"
  • For image notes, pass image file path directly to praxis add; OCR extraction is built in.
  • Always finish with praxis show plus praxis insight or praxis export so user gets concrete output artifacts.

Output Contract

When executing tasks with this skill, always provide these outputs:

  • Import summary: files processed, chunks created, failures.
  • Exercise summary: counts by type/topic/difficulty.
  • Review plan: next due batches and estimated workload.
  • Traceability map: source -> doc_id -> chunk_id -> exercise_id.

Exercise Format

Use this compact JSON-like structure per exercise:

{
  "exercise_id": "ex-...",
  "doc_id": "...",
  "chunk_id": "...",
  "type": "free-recall | qa | application",
  "question": "...",
  "answer_key": "...",
  "rubric": ["point 1", "point 2"],
  "difficulty": "easy | medium | hard",
  "next_review": "YYYY-MM-DD"
}

For more generation patterns, read references/exercise-patterns.md.

Version tags

latestvk974ke40263h5pk5mq6kyxvv3n81pzfg