Skip to content

plexus pick: choose a tool for a request, or abstain - #24

Merged
HarperZ9 merged 2 commits into
mainfrom
claude/sprint-20261003
Oct 3, 2026
Merged

HarperZ9 merged 2 commits into
mainfrom
claude/sprint-20261003

Conversation

@HarperZ9

@HarperZ9 HarperZ9 commented Oct 3, 2026

Copy link
Copy Markdown
Owner

Adds plexus pick "REQUEST": a probability for every tool in the mesh, scored against what each manifest emits and consumes, and an abstain outcome when no tool fits or the top probability is under --threshold (default 0.23, the calibrated value).

Bar, committed before the picker (commit cecd66c)

Labels: 100 requests from a separate labeller who saw only tool names, capability titles and a one-line purpose. Threshold calibrated on a seeded dev half; numbers from the 51-item test half. Baseline: dev majority tool.

Results

Value
Top-1 accuracy 0.57 (0.43 to 0.70)
Baseline 0.02 (uniform chance about 0.10)
Abstain rate 10%
Error picked / abstained 0.37 / 1.00 (ratio 2.7)
Shuffled-label control ratio 1.15

P1, P2 and P3 pass; the control fails P3 as required. 4 in 10 picks are still wrong, which docs/PICK.md states.

Tests

tests/test_plexus_pick.py, 11 tests in genuine-and-mutated pairs. Four source mutations (abstain rule, tool document, tokenizer, control shuffle) each fail a test. Full suite passes locally. CLI only; the MCP tool list is unchanged.

🤖 Generated with Claude Code

HarperZ9 and others added 2 commits October 3, 2026 12:40
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Scores every tool with BM25 over a document built from its manifest, turns
scores into probabilities, and abstains under a threshold calibrated on a
dev half of 100 independently written labels. On the 51-item test half
P1, P2 and P3 pass and the shuffled-label control fails P3 as required.
Numbers in docs/PICK.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@HarperZ9
HarperZ9 merged commit 942a6a7 into main Oct 3, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant