agentsclimarketplace

Rag sync

Skill butchokoy25/lightrag-claude-skills/skills/rag-sync

End-of-session review and sync of learnings to the personal LightRAG knowledge graphFrom its SKILL.md

Install
npx -y skills add butchokoy25/lightrag-claude-skills --skill rag-sync

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

4 things to look at

  • reads credentialsReads from 1 credential source: `LIGHTRAG_SERVER_URL`.
  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 1 command, including `node -e " const BASE = process.env.LIGHTRAG_SERVER_URL || 'http://YOUR_LIGHTRAG_HOST:YOUR_PERSONAL_PORT'; (async () => { const auth = await fetch(BASE + '/auth-status').then(r => r.json()); const `.
  • fetches URLsInstructs the agent to fetch 2 URLs, including BASE + '/auth-status' and 1 more.

SKILL.md

3.0 KB, 728 tokens by cl100k_base, as published. Nobody here has run it

RAG Sync — End-of-Session Personal Memory Sync

Review what happened this session and push non-obvious learnings to your personal LightRAG knowledge graph. Run before ending a productive session.

Workflow

Step 1: Review the session

Scan the conversation for items worth persisting. Look for:

  • Decisions — architecture choices, tool selections, approach changes
  • User corrections — "don't do X", "always do Y", preference changes
  • Config changes — new env vars, port changes, server settings
  • Project updates — status changes, new goals, deadline shifts
  • Debugging insights — root causes found, non-obvious fixes
  • New relationships — connections between systems, people, or projects

Step 2: Filter ruthlessly

Remove anything that:

  • Is already in the codebase (code, comments, configs)
  • Is in git history (commits, diffs, blame)
  • Was already stored via /rag-remember this session
  • Is ephemeral (task progress, temp files, current branch state)
  • Is a duplicate of something already in the knowledge graph

Step 3: Format entries

Format each item using the /rag-remember format:

[TYPE] Title — YYYY-MM-DD

What: ...
Why: ...
Files: ... (if applicable)

Step 4: Confirm with user

Present the list of items to store. Example:

Ready to sync 3 items to personal memory:

  1. [DECISION] Switched auth from JWT to session tokens — 2026-04-01
  2. [FEEDBACK] User prefers single bundled PRs for refactors
  3. [CONFIG] LightRAG project instance moved to port 9625

Proceed? (y/n)

Wait for user confirmation before inserting.

Step 5: Insert each item

node -e "
const BASE = process.env.LIGHTRAG_SERVER_URL || 'http://YOUR_LIGHTRAG_HOST:YOUR_PERSONAL_PORT';
(async () => {
  const auth = await fetch(BASE + '/auth-status').then(r => r.json());
  const token = auth.access_token;
  const res = await fetch(BASE + '/documents/text', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer ' + token
    },
    body: JSON.stringify({
      file_source: 'DESCRIPTION_HERE',
      text: 'CONTENT_HERE'
    })
  });
  console.log('Status:', res.status);
})();
"

Step 6: Report

Summarize what was synced:

Synced 3 items to personal LightRAG.

Quality bar

Only store things that would save 5+ minutes in a future session.

Good examples:

  • "The user's Mac Mini SSH requires BindAddress because Tailscale hijacks outbound sockets"
  • "User prefers integration tests over mocked tests after a prod migration incident"

Bad examples:

  • "Ran npm install successfully"
  • "Fixed a typo in line 42 of app.js"
  • "The build passed"

Infrastructure

  • Server: YOUR_LIGHTRAG_HOST:YOUR_PERSONAL_PORT
  • Auth: Bearer token from /auth-status (guest/disabled mode)
  • Env var: LIGHTRAG_SERVER_URL

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.