session-start — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited session-start (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You are initializing a work session. Follow these steps.
Scope note: Do not auto-fire this skill on every new Claude session. It runs only when the user explicitly invokes it. Working outside a formal session is fully supported — if the user doesn't invoke this skill, skip session-tracking entirely.
Override note: This is the generic global version. If this project has a project-level session-start skill (in .claude/skills/session-start/), that version runs instead of this one and may include project-specific app startup logic.
Read these files in order (skip any that don't exist):
Reference as needed:
.claude/DECISIONS.md — Architectural decisions with rationale.claude/MISTAKES.md — Failed approaches (check before trying something new)Run git log --oneline -5 and cross-reference against the most recent SESSION_LOG.md entry. Flag any commits not reflected in the log — they may need to be folded into today's entry at session end.
Read the top of .claude/SESSION_LOG.md.
Dates use MM-DD-YYYY format (e.g., 04-13-2026, not 2026-04-13).
If the top entry's date matches today's date (e.g., today is 04-13-2026 and the top entry starts with ## 04-13-2026 - Session NNN:):
If the top entry's date is before today:
Note on legacy entries: older entries in SESSION_LOG.md may use YYYY-MM-DD format. Treat them as equivalent when matching dates, but always write new entries in MM-DD-YYYY.
Insert a new entry at the top of .claude/SESSION_LOG.md — after the header/front-matter (the --- separator on line 6), before the previous top entry.
Use exactly this format:
## MM-DD-YYYY - Session NNN: [In Progress]
**Focus:** _In progress — finalize at session end_
---
MM-DD-YYYY — today's date (e.g., 04-13-2026)NNN — previous top session number + 1Do not pre-populate accomplishments, decisions, or files modified. The session-end skill fills these in at the end of the day against git history and user input.
If CLAUDE.md documents a dev environment startup procedure, check for port conflicts before starting services.
Read CLAUDE.md to identify the ports the project uses (dev servers, databases, etc.). Then check which of those ports are already bound:
ss -tlnp 2>/dev/null || netstat -tlnp 2>/dev/null — look for LISTEN entries on project portsnetstat -ano | grep LISTENING — filter for project ports; resolve PIDs with tasklist /FI "PID eq <pid>" if neededIf a project port is already in use:
--port 8003). Do not kill processes without user confirmation.If no conflicts — proceed normally.
Follow the startup instructions from CLAUDE.md to verify the app is running and start it if needed, skipping any services already confirmed running in 5b.
If no startup instructions exist in CLAUDE.md, skip all of Step 5.
Report in one message:
Session NNN started for MM-DD-YYYY — or, if continuing: Continuing today's Session NNNThen: Ready to work.
| Condition | Action |
|---|---|
| Top entry date == today | Acknowledge, continue existing entry |
| Top entry date < today | Create new bare stub (Session N+1) |
| User didn't invoke this skill | Don't run it — informal work is fine |
| CLAUDE.md has startup instructions | Check ports first, then follow them |
| No startup instructions | Skip app startup and port check |
| Port in use by same service | Skip starting that service, note in report |
| Port in use by different process | Report conflict, ask user before killing |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.