| name | sem-integration |
| description | Provides sem semantic-diff detection, install-on-first-use, and fallback patterns. Use when building skills that consume git diff output. |
| alwaysApply | false |
| category | infrastructure |
| tags | ["sem","semantic-diff","git","foundation"] |
| provides | {"infrastructure":["sem-detection","sem-fallback"],"patterns":["install-on-first-use","graceful-degradation"]} |
| estimated_tokens | 400 |
| progressive_loading | true |
| module_strategy | reference-based |
| modules | ["modules/detection.md","modules/fallback.md"] |
sem Integration
Foundation patterns for using
sem semantic
diffs in night-market skills.
When To Use
Consult this skill when building or modifying skills that
consume git diff output. It provides the detection,
installation, and fallback patterns.
When NOT To Use
- Direct sem CLI usage (just run
sem diff yourself)
- Skills that don't consume diff output
Detection Pattern
Check sem availability once per session:
_sem_check() {
local cache="${CLAUDE_CODE_TMPDIR:-/tmp}/sem-available"
if [ -f "$cache" ]; then
cat "$cache"
return
fi
if command -v sem &>/dev/null; then
echo "1" | tee "$cache"
else
echo "0" | tee "$cache"
fi
}
When _sem_check returns 0, offer installation.
See modules/detection.md for install-on-first-use
logic and platform-specific commands.
Semantic Diff Pattern
Primary path (sem available):
sem diff --format json <baseline>
Fallback path (sem unavailable):
git diff --name-only --diff-filter=A <baseline>
git diff --name-only --diff-filter=M <baseline>
git diff --name-only --diff-filter=D <baseline>
git diff --name-only --diff-filter=R <baseline>