sem Integration
SkillAI & modelsProvides sem semantic-diff detection, install-on-first-use, and fallback patterns. Use when building skills that consume git diff output.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the sem Integration skill
What this skill tells your AI
The instructions your AI receives, as published by athola/claude-night-market in plugins/leyline/skills/sem-integration/SKILL.md and read by ahel’s review.
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 diffyourself) - Skills that don't consume diff output
Detection Pattern
Check sem availability once per session:
# Detection (cache 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>
See modules/fallback.md for output normalization
that produces the same entity schema from both paths.
Impact Analysis Pattern
Primary path (sem available):
sem impact --json <file-or-entity>
Fallback path (sem unavailable): use rg/grep to trace
callers by filename. See modules/fallback.md.
Exit Criteria
-
_sem_checkresult cached per session at${CLAUDE_CODE_TMPDIR:-/tmp}/sem-available; detection command runs at most once per session regardless of how many skills invoke it - When sem is unavailable, install offer presented and fallback
path used automatically (
git diff --name-only --diff-filter=variants); no silent failure - Fallback output normalized to the same entity schema as sem
JSON output per
modules/fallback.md; consumers downstream see the same structure from both paths - Skills consuming this integration declare
dependencies: [leyline:sem-integration]in frontmatter rather than reimplementing the detection pattern
Signals
- GitHub stars
- 337
- Forks
- 34
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
sem-integration- Source
- github.com/athola/claude-night-market