brewdoc:auto-sync

EXECUTE using Bash tool (args: $ARGUMENTS ):

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "brewdoc:auto-sync" with this command: npx skills add kochetkov-ma/claude-brewcode/kochetkov-ma-claude-brewcode-brewdoc-auto-sync

Auto-Sync

Mode Detection

EXECUTE using Bash tool (args: $ARGUMENTS ):

bash "${CLAUDE_SKILL_DIR}/scripts/detect-mode.sh" $ARGUMENTS

Parse output: MODE|ARG|FLAGS . If exit code non-zero → report error, EXIT.

Mode Trigger Scope

STATUS status

Report INDEX state → EXIT

INIT init <path>

Tag file + add to INDEX → EXIT

GLOBAL global

~/.claude/** (excludes managed dirs)

PROJECT empty .claude/** (excludes managed dirs)

FILE file path Single file

FOLDER folder path All .md in folder

Managed directories (excluded from auto-scan, explicit path required):

  • rules/ — sync via /brewdoc:auto-sync .claude/rules

  • agents/ — sync via /brewdoc:auto-sync .claude/agents

  • skills/ — sync via /brewdoc:auto-sync .claude/skills

INDEX Format

{"p":"skills/auth/SKILL.md","t":"skill","u":"2026-02-05","pr":"default"}

Field Description

p

Relative path

t

Type: skill /agent /rule /config /doc

u

Last sync date (YYYY-MM-DD)

pr

Protocol: default /override

Paths: Project .claude/auto-sync/INDEX.jsonl | Global ~/.claude/auto-sync/INDEX.jsonl

Frontmatter Fields

Required (3):

auto-sync: enabled auto-sync-date: 2026-02-05 auto-sync-type: skill

Optional override (multiline YAML):

auto-sync-override: | sources: src/**/.ts, .claude/agents/.md focus: API endpoints, error handling preserve: ## User Notes, ## Custom Config

Override Field

When auto-sync-override: present in frontmatter → INDEX gets pr: "override" .

Stored in frontmatter only — never in document body.

  • Read INDEX.jsonl, verify indexed files exist

  • Find all .md files in scope

  • Compare indexed vs found → identify non-indexed

  • Detect type for non-indexed (discover.sh typed ) — output: TYPE|PATH per line

  • Output report: Indexed (path, type, protocol, last sync, stale), Non-Indexed (path, detected type, reason), Summary (counts)

  • EXIT

Input: init <path>

  • Read <path> — if NOT found → error, EXIT

  • If has auto-sync: enabled → "Already tagged", EXIT

  • Detect type via discover.sh

  • Add frontmatter: auto-sync: enabled , auto-sync-date: {today} , auto-sync-type: {type}

  • Check frontmatter auto-sync-override: → set pr: override|default

  • Add to INDEX.jsonl

  • Output: path, type, protocol; EXIT

Sync Mode (PROJECT/GLOBAL/FILE/FOLDER)

Phase 1: Setup INDEX

EXECUTE using Bash tool:

SCOPE="project" # or "global" INDEX_DIR=".claude/auto-sync" [ "$SCOPE" = "global" ] && INDEX_DIR="$HOME/.claude/auto-sync" mkdir -p "$INDEX_DIR" && INDEX_FILE="$INDEX_DIR/INDEX.jsonl" && touch "$INDEX_FILE" echo "INDEX=$INDEX_FILE"

Phase 2: Discover + Queue (load config: INTERVAL_DAYS , PARALLEL_AGENTS from .claude/tasks/cfg/brewdoc.config.json )

  • Find tagged files — EXECUTE using Bash tool:

bash "${CLAUDE_SKILL_DIR}/scripts/discover.sh" "$SCOPE_PATH" typed

Output: TYPE|PATH per line (types: skill , agent , rule , config , doc ). Capped at MAX_FILES (default 50).

For each file not in INDEX → auto-add:

  • Read file, use type from discover output

  • If no frontmatter → add auto-sync: enabled , auto-sync-date , auto-sync-type

  • Check <auto-sync-override> → set pr

  • Add to INDEX (index-ops.sh add )

Find stale entries — EXECUTE using Bash tool:

bash "${CLAUDE_SKILL_DIR}/scripts/index-ops.sh" stale "$INDEX_FILE" "$INTERVAL_DAYS"

  • Queue: new + stale files

Phase 3: Process + Report

Launch bd-auto-sync-processor agents (max PARALLEL_AGENTS batches, model="sonnet"):

Task(subagent_type="brewdoc:bd-auto-sync-processor", prompt="PATH: {path} | TYPE: {type} | FLAGS: {flags}")

Context: BD_PLUGIN_ROOT is injected into agent prompt by pre-task.mjs hook.

For each result:

  • If status = updated or unchanged → update INDEX u to today (index-ops.sh update )

  • If status = error → log to Errors table, do NOT update INDEX (file remains stale for retry)

Output report:

Auto-Sync Complete

MetricCount
Discovered{N}
Queued (stale/new){N}
Updated{N}
Unchanged{N}
Errors{N}

Updated

PathTypeChanges

Errors

PathError

Error Handling

Error Action

INDEX corrupt Rebuild from discovery

File not found Skip, add to errors

Agent timeout Retry once

No tagged files Report "0 found"

/brewdoc:doc called "Use /brewdoc:auto-sync"

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.

Coding

text-optimizer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

memory-optimize

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

brewcode:install

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

brewdoc:my-claude

No summary provided by upstream source.

Repository SourceNeeds Review