Batch-sync this session's learnings, insights.json entries, and campaign history into the persistent memory layer — incremental from the last checkpoint so repeat runs are fast and idempotent — and…

MITAuto-check passedAgent Workflows

Install Sync Memory

skills CLI
$ npx skills add indranilbanerjee/digital-marketing-pro --skill sync-memory -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install indranilbanerjee/digital-marketing-pro sync-memory --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/indranilbanerjee/digital-marketing-pro.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/sync-memory .claude/skills/sync-memory && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
sync-memory
GitHub stars
854
Used in
1 other repo
Token cost
~2.3k tokens
SKILL.md length
1,126 words
Files
1
Skills in repo
162
Repo updated
First seen
Licence
MIT

At a glance

Batch-sync this session's learnings, insights.json entries, and campaign history into the persistent memory layer — incremental from the last checkpoint so repeat runs are fast and idempotent — and…

  • Works in 9 steps: Load brand context: Read… → Load sync state: Run python… → Gather syncable items: Load… → …
  • /digital-marketing-pro:sync-memory
  • SKILL.md covers Purpose, Input Required, Process and Output, plus 1 more section
  • Calls python

What it does

Sync Memory is an agent skill from indranilbanerjee/digital-marketing-pro. Batch-sync this session's learnings, insights.json entries, and campaign history into the persistent memory layer — incremental from the last checkpoint so repeat runs are fast and idempotent — and report exactly what was synced, skipped, or failed. Triggers on "/digital-marketing-pro:sync-memory", "save what we learned this session", "sync insights to memory", "persist campaign learnings before I close", "did my session learnings get saved". Stores via a connected vector-DB MCP when one exists, otherwise the…

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering Agent memory. It works with Model Context Protocol. The repository describes itself as: An open-source AI marketing operating system for strategy, SEO, AEO/GEO, paid media, content, CRM, and analytics - grounded in brand context, human approval, and verifiable… The licence is MIT.

When your agent uses it

  • /digital-marketing-pro:sync-memory
  • Save what we learned this session
  • Sync insights to memory
  • Persist campaign learnings before I close

Example prompts

  • “/digital-marketing-pro:sync-memory”
  • “save what we learned this session”
  • “sync insights to memory”
  • “/sync-memory”

Requirements

  • Python 3

Workflow steps

9 steps, taken from the first numbered list in SKILL.md.

  1. Load brand context: Read ~/.claude-marketing/brands/_active-brand.json for the active slug, then load…
  2. Load sync state: Run python "${CLAUDE_PLUGIN_ROOT}/scripts/memory-manager.py" --brand {slug} --action sync-insights to load the last sync…
  3. Gather syncable items: Load insights.json entries, campaign data from campaigns/, and session learnings accumulated in the current working…
  4. Identify new and modified items: Diff the candidate set against the sync checkpoint. Generate content hashes (SHA-256) for each candidate…
  5. Prepare storage payloads: For each new or modified item, run memory-manager.py --action prepare-store to structure the metadata payload…
  6. Check configured memory services: Run python "${CLAUDE_PLUGIN_ROOT}/scripts/memory-manager.py" --brand {slug} --action get-memory-status…
  7. Execute batch storage: Store each prepared item via the connected vector-DB MCP (e.g. Pinecone) if one is connected; otherwise persist to…
  8. Update sync state: After all items are processed, update _last_sync.json with the new checkpoint timestamp, cumulative items synced, items…
  9. Report sync summary: Present the complete sync report with actionable details — what was synced, what was skipped and why, what failed and…

What it can do on your machine

Read from SKILL.md and the folder at commit 3343924. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Sync Memory loads about 2.3k tokens when it runs. Until then it costs about 163 tokens; SKILL.md has 1,126 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~163
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from indranilbanerjee/digital-marketing-pro at commit 3343924, republished under its MIT licence (© indranilbanerjee). 1,126 words, ~2,298 tokens.

Download SKILL.mdSave it as .claude/skills/sync-memory/SKILL.md (or your agent's skills folder).
name
sync-memory
description
Batch-sync this session's learnings, insights.json entries, and campaign history into the persistent memory layer — incremental from the last checkpoint so repeat runs are fast and idempotent — and report exactly what was synced, skipped, or failed. Triggers on "/digital-marketing-pro:sync-memory", "save what we learned this session", "sync insights to memory", "persist campaign learnings before I close", "did my session learnings get saved". Stores via a connected vector-DB MCP when one exists, otherwise the local index; reads the active brand profile and complements /digital-marketing-pro:save-knowledge, which saves single items.

/digital-marketing-pro:sync-memory

Purpose

Batch sync current session learnings, insights.json entries, and campaign history to the persistent memory layer. Ensures valuable knowledge from this session is preserved for future sessions without requiring the user to manually save each item via /digital-marketing-pro:save-knowledge. Syncs incrementally — only new items since the last sync checkpoint — so repeated syncs are fast, idempotent, and safe. Handles the full pipeline from diff detection through storage to checkpoint update, with detailed reporting on what was synced, skipped, or failed. Run this before ending a productive session to capture everything worth remembering.

Input Required

The user must provide (or will be prompted for):

  • Sync scope: What to sync — all (insights + campaigns + session learnings), insights-only (only insights.json entries — performance data, metric snapshots, and automated learnings), or campaigns-only (only campaign data, retrospective learnings, and strategy decisions). Default is all
  • Force full sync (optional): Set to true to ignore the last sync checkpoint and re-sync everything regardless of previous sync state. Useful after data corruption, vector DB migration, index rebuild, or when the local index and persistent storage may be out of alignment. Default is false (incremental sync from last checkpoint)
  • Content type override (optional): Force a specific content_type classification for all synced items — overrides auto-detection. Rarely needed but useful for bulk re-classification when migrating knowledge taxonomy
  • Dry run (optional): Set to true to preview what would be synced without actually storing anything. Shows the full diff, payload previews, and estimated storage impact for review before committing. Useful for auditing what has accumulated since the last sync
  • Tags to apply (optional): Additional tags to apply to all items in this sync batch — e.g., "q1-2026-review", "pre-rebrand", "campaign-retrospective". These are added alongside auto-detected tags, not replacing them
  • Exclude patterns (optional): Content patterns or types to skip during this sync — e.g., exclude draft insights, partial campaign data, or specific content types. Prevents syncing incomplete or work-in-progress knowledge

Process

  1. Load brand context: Read ~/.claude-marketing/brands/_active-brand.json for the active slug, then load ~/.claude-marketing/brands/{slug}/profile.json. Apply brand voice, compliance rules for target markets (skills/context-engine/compliance-rules.md), and industry context. Also check for guidelines at ~/.claude-marketing/brands/{slug}/guidelines/_manifest.json — if present, load restrictions. Check for agency SOPs at ~/.claude-marketing/sops/. If no brand exists, ask: "Set up a brand first (/digital-marketing-pro:brand-setup)?" — or proceed with defaults.
  2. Load sync state: Run python "${CLAUDE_PLUGIN_ROOT}/scripts/memory-manager.py" --brand {slug} --action sync-insights to load the last sync checkpoint from ~/.claude-marketing/brands/{slug}/memory/_last_sync.json. Identify the last sync timestamp, items previously synced (by content hash), and any partial sync that needs resuming from its failure point. If force sync is requested, reset the checkpoint to epoch zero.
  3. Gather syncable items: Load insights.json entries, campaign data from campaigns/, and session learnings accumulated in the current working context. Apply sync scope filter (all, insights-only, campaigns-only) and exclude patterns to build the candidate set.
  4. Identify new and modified items: Diff the candidate set against the sync checkpoint. Generate content hashes (SHA-256) for each candidate and compare against the local content hash registry. Separate items into: new (not previously synced), modified (content changed since last sync — hash mismatch), and unchanged (already synced — skip). Report the diff summary before proceeding.
  5. Prepare storage payloads: For each new or modified item, run memory-manager.py --action prepare-store to structure the metadata payload — auto-detect content_type based on source (insight entries become performance-insight, campaign retrospectives become campaign-learning, strategy decisions become campaign-learning, guidelines become guideline), apply auto-detected tags plus any user-specified batch tags, and set source to sync.
  6. Check configured memory services: Run python "${CLAUDE_PLUGIN_ROOT}/scripts/memory-manager.py" --brand {slug} --action get-memory-status. This checks environment variables only — it reports which backends are configured, not whether they are reachable and not how much remote capacity remains (it cannot measure a remote provider's usage). If no vector-DB env var is set, store locally and recommend connecting a vector DB.
  7. Execute batch storage: Store each prepared item via the connected vector-DB MCP (e.g. Pinecone) if one is connected; otherwise persist to the local index. Process items sequentially to handle failures gracefully — if one item fails, log the failure with error details and continue with the remaining items. For each successful storage, update the local content hash registry immediately so progress is not lost if the sync is interrupted.
  8. Update sync state: After all items are processed, update _last_sync.json with the new checkpoint timestamp, cumulative items synced, items skipped, items failed (with content hashes for retry), and per-layer storage status. If any items failed, their hashes are queued for automatic retry on the next sync run.
  9. Report sync summary: Present the complete sync report with actionable details — what was synced, what was skipped and why, what failed and how to fix it, storage utilization status, and the current state of persistent memory for this brand.
Show full SKILL.md (351 more words)Show less

Output

A structured sync report containing:

  • Sync summary: Total items processed with breakdown — new items synced, modified items updated, duplicates skipped (with count by reason: hash match, exclude pattern), and items failed with specific error reasons and remediation steps per failure
  • Items synced detail: List of each synced item with content summary (first 100 characters), content_type assigned, tags applied (auto-detected + batch tags), and storage ID in the vector database for reference
  • Items skipped: Duplicates and excluded items listed with reason — content hash match (already in persistent storage), exclude pattern hit, or unchanged since last sync — so the user can verify nothing important was missed
  • Items failed: Any items that could not be stored — with full error message, failure reason (API timeout, validation error, capacity limit, malformed payload), content hash for retry identification, and specific remediation steps
  • Sync state update: New checkpoint timestamp, cumulative items in persistent memory (total across all syncs), delta since last sync (net new items), and estimated next sync size based on current session activity rate
  • Per-layer status: Which memory layers received data — vector DB items stored (with namespace), knowledge-graph entities created (if a graph server is connected), cross-session entries updated (if a cross-session store is connected), and local index entries registered
  • Local index size: Total items synced from the local index this run and cumulative local count. (DMP cannot read a remote vector DB's plan usage — check remaining capacity in your provider's own dashboard.)
  • Next sync recommendation: Suggested timing for next sync based on session activity volume and storage capacity — with a reminder that running /digital-marketing-pro:sync-memory before ending a session ensures no learnings are lost

Agents Used

  • memory-manager — Sync checkpoint loading and incremental diff calculation against content hash registry, SHA-256 hash generation for new and modified item detection, payload preparation with auto-classified content types and source-based tagging, batch storage execution via vector database MCP with per-item error handling and progress persistence, local index and content hash registry updates after each successful store, sync state checkpoint management with partial-progress recovery for interrupted syncs, storage capacity monitoring with utilization alerts, and comprehensive sync report generation with retry queue management

© indranilbanerjee, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/sync-memory of indranilbanerjee/digital-marketing-pro.

Open the folder on GitHubat commit 3343924

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in indranilbanerjee/digital-marketing-pro, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Sync Memory next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Sync Memory compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sync Memory this skillindranilbanerjee/digital-marketing-pro8541 repos~2.3kAutomated safety check: PassMIT
MemPalace Memory SearchMemPalace/mempalace59k—~1.4kAutomated safety check: PassMIT
MemPalace Setup and OperationMemPalace/mempalace59k—~2.2kAutomated safety check: PassMIT
agentmemory Setup and Diagnosticsrohitg00/agentmemory29k—~1kAutomated safety check: NotesApache-2.0
Claude-Mem Install for Grok Botthedotmack/claude-mem97k—~440Automated safety check: PassApache-2.0
Qmdbreferrari/obsidian-mind4.9k—~1.7kAutomated safety check: PassMIT

Similar skills

  • MemPalace Memory Search

    MemPalace/mempalace

    Mines project files and conversation exports into a local, searchable memory palace and recalls past work by semantic search through the mempalace CLI.

    59k GitHub stars~1.4k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Installs and configures MemPalace as a private local palace, a shared-brain hub or a client of an existing hub, including MCP registration and version-correct initialization.

    59k GitHub stars~2.2k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Sets up and troubleshoots a local agentmemory install, covering the MCP connection, environment variables, ports, authentication and optional feature flags.

    29k GitHub stars~1k tokensUpdated yesterday
    Agent WorkflowsAuto-check: notes
  • Claude-Mem Install for Grok Bot

    thedotmack/claude-mem

    Use this when setting up claude-mem on Grok Bot: local worker plus CMEM Pro observer (default), optional host-login observer, or remote cmem.ai. No Cursor…

    97k GitHub stars~440 tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Qmd

    breferrari/obsidian-mind

    Search the vault using QMD semantic search. An agent skill from breferrari/obsidian-mind.

    4.9k GitHub stars~1.7k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Memori MCP Memory Usage

    MemoriLabs/Memori

    Teaches an MCP-connected agent when and how to call Memori's recall, summary, compaction, augmentation, feedback and quota tools to keep context across sessions.

    17k GitHub stars~3.8k tokensUpdated 5 days ago
    Agent WorkflowsAuto-check passed

More from indranilbanerjee/digital-marketing-pro

All 162 skills in this repo
  • Ab Test Plan

    indranilbanerjee/digital-marketing-pro

    Design a statistically rigorous A/B or multivariate test plan — If/Then/Because hypothesis, control and variant specs, required sample size per variant (absolute vs relative MDE via…

    854 GitHub starsUsed in 1 repo~2k tokens
    Auto-check passed
  • Aeo Audit

    indranilbanerjee/digital-marketing-pro

    Audit how a brand appears across the 6 canonical AI answer surfaces — ChatGPT, Perplexity, Google AI Mode, AI Overviews, Gemini, Copilot — probing 10-25 queries into a numbered output bundle with…

    854 GitHub starsUsed in 1 repo~2.6k tokens
    Auto-check passed
  • Agent Readiness Audit

    indranilbanerjee/digital-marketing-pro

    Audit whether AI agents and AI crawlers can actually use a site — robots.txt rules per AI crawler token (OpenAI, Anthropic and Perplexity bots, Google-Extended, Applebot-Extended)…

    854 GitHub starsUsed in 1 repo~3.9k tokens
    Auto-check passed
  • Backlink Gap

    indranilbanerjee/digital-marketing-pro

    Find referring domains that link to your competitors but not to you, ranked by an outreach-priority score (0.40 DR + 0.25 link-overlap + 0.20 traffic + 0.15 topical relevance) — outputs a four-gate…

    854 GitHub starsUsed in 1 repo~2.8k tokens
    Auto-check passed
  • C2pa Metadata

    indranilbanerjee/digital-marketing-pro

    Embed a C2PA provenance manifest into an AI-generated marketing asset (PNG, JPG, WebP, GIF, TIFF, MP4, MOV, WebM, MP3, WAV, PDF) via scripts/embed-c2pa.py — produces a signed copy of the file…

    854 GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check passed
  • Campaign Audit

    indranilbanerjee/digital-marketing-pro

    Inventory and score everything currently running for a brand across paid search, paid social, email, organic, SEO, AEO/GEO, CRM, and analytics — produces a dated audit document with a 4-tier triage…

    854 GitHub starsUsed in 1 repo~4.1k tokens
    Auto-check: notes

Categories

Questions about Sync Memory

What does Sync Memory do?

Batch-sync this session's learnings, insights.json entries, and campaign history into the persistent memory layer — incremental from the last checkpoint so repeat runs are fast and idempotent — and…. Sync Memory is an agent skill from indranilbanerjee/digital-marketing-pro.json entries, and campaign history into the persistent memory layer — incremental from the last checkpoint so repeat runs are fast and idempotent — and report exactly what was synced, skipped, or failed.

When should I use Sync Memory?

Sync Memory fits situations like: /digital-marketing-pro:sync-memory; save what we learned this session; sync insights to memory; persist campaign learnings before I close.

How do I install Sync Memory in Claude Code?

Run `npx skills add indranilbanerjee/digital-marketing-pro --skill sync-memory -a claude-code`. Or copy the skill folder (skills/sync-memory in indranilbanerjee/digital-marketing-pro) into .claude/skills/sync-memory in your project. Claude Code loads it when a task matches its description.

How do I install Sync Memory in Codex?

Run `npx skills add indranilbanerjee/digital-marketing-pro --skill sync-memory -a codex`. Or copy the skill folder (skills/sync-memory in indranilbanerjee/digital-marketing-pro) into .agents/skills/sync-memory in your project. Codex loads it when a task matches its description.

Can I use Sync Memory in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add indranilbanerjee/digital-marketing-pro --skill sync-memory -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sync-memory, .gemini/skills/sync-memory, .github/skills/sync-memory and .opencode/skills/sync-memory in your project.

What does Sync Memory need to run?

Going by SKILL.md and its folder, Sync Memory needs the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Sync Memory access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Sync Memory safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Sync Memory use?

Sync Memory is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Sync Memory use?

About 2.3k tokens (SKILL.md is roughly 9.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Sync Memory?

Skills that share tags, products or a category with Sync Memory: MemPalace Memory Search (MemPalace/mempalace, 59k stars), MemPalace Setup and Operation (MemPalace/mempalace, 59k stars), agentmemory Setup and Diagnostics (rohitg00/agentmemory, 29k stars) and Claude-Mem Install for Grok Bot (thedotmack/claude-mem, 97k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sync Memory?

indranilbanerjee (a GitHub user) maintains it in indranilbanerjee/digital-marketing-pro, which has 854 GitHub stars. The repository holds 162 skills in this directory. The repository was last updated on October 4, 2026.

Source: indranilbanerjee/digital-marketing-pro on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.