v0.15.0 — skill-selection retrieval 99/100, self-building plugin launcher
Fixed — fresh plugin installs failed to connect
Failed to reconnect to Plugin:codex-flow:codex: -32000 on a newly installed plugin. The bundled .mcp.json launched node dist/index.js, but the plugin ships as a git clone and dist/ is gitignored — so a fresh install had no build and no node_modules, and the server exited immediately on every start.
The launcher now cds to ${CLAUDE_PLUGIN_ROOT}, installs deps and builds when dist/index.js is missing, then execs the server. First start after install is slower; later starts are unchanged.
Already on an older install? Patch it once:
cd ~/.claude/plugins/cache/codex-mcp/codex-flow/<version>
npm install --no-audit --no-fund && npm run buildAdded — skill-selection retrieval, 87/100 → 99/100
Two defects in the retrieval core, not ranking, were behind the misses. Multi-word terms never fell back to their constituent words ("competitor benchmark" scored exactly 0.0 against benchmark-methodology), and the relevance floor required descHits >= 2, discarding rare diagnostic single-word hits.
| Metric | Before | After |
|---|---|---|
| 100-case scope suite | 87/100 | 99/100 |
| precision@1 | 78/99 | 84/99 |
| avg selection size | 2.59 | 8.01 |
| full test suite | 671 | 700 |
selectSkills is now explicitly a shortlist producer; precision is restored downstream by a rank-1 guard and a prompt-level prune. The eval reports precision@1 and average selection size next to the pass rate, so a recall win paid for with noise cannot hide behind one number. An IDF-aware floor clause was removed as dominated after a two-factor ablation run twice with matching results.
Full detail in CHANGELOG.md.
Known red
Three Windows-only test failures (liveView, tailProgress) predate this release — they assert POSIX chmod modes, POSIX-legal path characters, and Darwin window-close behavior. Ubuntu and macOS are green on Node 20 and 22.