Skip to content

Add a weekly, measured upstream sync - #7

Merged
ilien-dev merged 6 commits into
mainfrom
feature/upstream-sync
Nov 4, 2026
Merged

ilien-dev merged 6 commits into
mainfrom
feature/upstream-sync

Conversation

@ilien-dev

Copy link
Copy Markdown
Owner

This adds /upstream-sync, a weekly routine for taking ideas from eight similar projects without lowering the bar for what ships. It is a project skill under .claude/skills/upstream-sync/ and is not part of the published skill.

The eight repos are slop-score, antislop-sampler, unslop and humanize, which publish measurements, and humanizer, stop-slop, no-ai-slop and avoid-ai-writing, which mostly contribute pattern lists. sync.py keeps a shallow clone of each one in .upstream/, which git ignores. It follows the default branch of each repo, even when the owner renames it. It records the last commit read in upstream.json, so next week's session only reads what changed after it.

A session goes like this. First, the agent reads the diffs and proposes candidates, and each one says how it will be measured. I choose which ones to try. Each one I pick gets ported to our Python and measured on its own, before the change and after it. A candidate ships only if it clears the bar written in the skill: for detection, AUC rises and human texts are not flagged more often; for rewrite rules, it wins on dev with p < 0.10 and does not get worse on test. Word lists are scored entry by entry. When nothing ships, the PR carries only upstream.json.

AGENTS.md used to be a git symlink and is now a real copy of CLAUDE.md. Windows clones checked the symlink out as a nine-byte text file. CLAUDE.md gains one line pointing to the new skill.

Tests: python3 -I .claude/skills/upstream-sync/test_sync.py passes all 11, which use local git repos as upstreams. A real update cloned all eight repos.

Design and plan are in .claude/specs/.

@ilien-dev
ilien-dev merged commit 52f8ae8 into main Nov 4, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant