You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(evolve-lite): unify sharing into scoped repos list (#217) (#218)
* feat(evolve-lite): unify sharing into scoped repos list (#217)
Collapse public_repo and subscriptions into a single repos: list where
each entry has scope: read (subscribe only) or scope: write (publish
target, also synced) — closes#217.
Update publish / subscribe / sync / unsubscribe / recall skills for both
Claude and Codex plugins to operate on the unified model. Write-scope
repos double as publish targets and sync sources, so co-writers see
each other's publishes through normal sync.
Add helpers in lib/config.py (normalize_repos, read_repos, write_repos,
set_repos, get_repo, is_valid_repo_name) and broaden tests across
tests/platform_integrations/.
Sync becomes scope-aware: read = fetch + reset --hard (clobber local),
write = fetch + rebase (preserve local unpushed publishes). Symlink
filtering moves from sync to retrieve, since sync no longer mirrors and
just maintains the clone. Publish requires the write-scope clone to
already exist (subscribe/sync own that step) and writes into the
clone's working tree; the SKILL.md drives the commit/push flow,
including conflict-recovery via rebase + push-with-retry. Unsubscribe
warns when removing a write-scope repo (in SKILL.md).
Co-authored-by: Punleuk Oum <5661986+illeatmyhat@users.noreply.github.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Evolve Lite supports sharing guidelines between users via public Git repositories. You can publish your own guidelines so others can subscribe to them, and subscribe to guidelines published by others.
65
+
Evolve Lite treats shared guidelines as multi-reader / multi-writer git
66
+
databases. A single unified `repos:` list in `evolve.config.yaml`
67
+
describes every external guideline repo; each entry has a `scope` of
68
+
`read` (subscribe only) or `write` (publish target that is also pulled
69
+
on sync).
62
70
63
71
### Setup
64
72
65
-
Sharing requires an `evolve.config.yaml` at the project root. If it doesn't exist, the subscribe or publish skills will prompt you to create one. Minimal structure:
73
+
Sharing requires `evolve.config.yaml` at the project root. If it doesn't
74
+
exist, the subscribe or publish skills will prompt you to create one.
75
+
Minimal structure:
66
76
67
77
```yaml
68
78
identity:
69
79
user: yourname # used to stamp ownership on published guidelines
The `.evolve/` directory is kept out of version control — the skills automatically add it to `.gitignore`.
77
-
78
-
### Publishing Guidelines
79
80
80
-
Use `evolve-lite:publish` to share one or more of your local guidelines with others:
81
-
82
-
1. The skill lists files in `.evolve/entities/guideline/`
83
-
2. You pick which ones to publish
84
-
3. Each selected file is moved to `.evolve/public/guideline/`, stamped with your username as the owner, committed, and pushed to your `public_repo.remote`
description: Subscribe to another user's public guidelines repo
3
+
description: Add a shared guidelines repo (read- or write-scope) to the unified repos list
4
4
---
5
-
Use the subscribe skill to learn from others' guidelines. Follow the skill's instructions exactly.
5
+
Use the subscribe skill to add a shared guidelines repo — either a read-scope subscription or a write-scope publish target. Follow the skill's instructions exactly.
0 commit comments