# Handoff — 2026-09-15 — skills layout and skillsDir resolution ## Where it stopped Done and green: the loader accepts `/.md` and `//SKILL.md`; a relative `skillsDir` is resolved from the directory `mm` is started in (terminal) or next to the config file (ACP with a config); the banner warns with the absolute path when nothing is found. `/abort` no longer exists over ACP (user's call: Escape in Zed already cancels). Nothing committed. ## For the user to do on the Mac - `sudo rm /usr/local/bin/mm && ./install.sh` — remove-then-copy avoids the `Killed: 9` of an in-place `cp` on Apple Silicon (see history entry "mm killed"). - Start `mm` from the repository root: the banner must say `skills: 3` and list `read_skill`. - `agent.yaml` was renamed `agent.dmr.yaml`: a Zed `AGENT_CONFIG` still pointing at `agent.yaml` names a missing file, which is a hard config error. Point it at `agent.dmr.yaml` or `agent.llamacpp.yaml` (absolute path). ## Traps - Never `go build -o mm .` from the sandbox: it clobbers the user's Mach-O at the same path. Build to `/tmp/…` for checks. - `install.sh` still copies in place; making it `rm` first (or use `install`) is proposed, not applied. ## Next increments (suggested) - In ACP mode without a config file, `skillsDir` follows the process cwd; using each session's `cwd` from `session/new` would let one `mm` serve several projects' skills. - `install.sh`: remove the target before copying. ## Addendum — `@path` notation (same day) Implemented in `internal/mention`, wired in both front ends, documented EN+FR (`how-to/attach-a-file.md`). Not verified: a real model turn reading the attached file (no server in the sandbox). Possible next steps if asked: quoted mentions for paths with spaces (`@"my file.md"`), a `@dir/` listing hint, or inlining small files when `editTools` is off.