refine: README + opc-skills binary iteration

Post-initial commit refinement of the standalone opc tool.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
salvacybersec
2026-04-19 01:35:18 +03:00
parent 3fefae319e
commit 1f67aaab63
2 changed files with 23 additions and 0 deletions

View File

@@ -43,6 +43,17 @@ opc-skills reindex # rebuild INDEX.json / INDEX.md
`fzf` is required for the interactive commands.
## Shared reference files
Some skills reference sibling files via `../<name>.md` (e.g. the 20 Feynman research skills use `../_platform-mapping.md` for cross-platform tool mapping). `opc-skills enable` auto-syncs any such files from PARKED → ACTIVE so the relative references keep resolving.
Currently synced:
- `_platform-mapping.md` — Feynman-skills cross-platform subagent/scheduling/persistence mapping
If you add new shared-reference files at the PARKED root, extend `sync_shared_refs()` in `bin/opc-skills`.
## Known interaction
The `personas` repo's `build.py --install opencode` currently wipes and repopulates `~/.config/opencode/skills/` as part of installation, which destroys the active set curated here. Use `opc-skills` *after* any personas install, or skip the skills half of `build.py` installs.
`build.py --install opencode` and `build.py --install claude-skills` both emit `_platform-mapping.md` at the skills-root alongside the 20 Feynman skills (`deep-research`, `literature-review`, `paper-code-audit`, `peer-review`, `paper-writing`, `replication`, `source-comparison`, `summarize`, `alpha-research`, `eli5`, `autoresearch`, `docker`, `modal-compute`, `runpod-compute`, `session-log`, `session-search`, `jobs`, `watch`, `preview`, `contributing`).

View File

@@ -54,6 +54,17 @@ ensure_fzf() {
command -v fzf >/dev/null || { echo "fzf is required for this command" >&2; exit 1; }
}
# Sync loose sibling files (e.g. _platform-mapping.md) from PARKED → ACTIVE so
# skills that use `../<file>` relative refs keep resolving after install.
sync_shared_refs() {
local f
for f in _platform-mapping.md; do
if [ -f "$PARKED/$f" ] && [ ! -f "$ACTIVE/$f" ]; then
cp "$PARKED/$f" "$ACTIVE/$f"
fi
done
}
# enable one skill by folder name
cmd_enable() {
require_dirs
@@ -63,6 +74,7 @@ cmd_enable() {
[ -d "$src" ] || { echo "not parked: $name" >&2; exit 1; }
[ -d "$dst" ] && { echo "already active: $name"; exit 0; }
cp -r "$src" "$dst"
sync_shared_refs
echo "enabled: $name"
}