A. Orientation
What this page is
The Phrase Prioritizer scores a set of phrases against what you're noticing, so you can see which ones resonate most before sending them to the Phrase Player. You describe your state, optionally add signals (typing rhythm, mouse, voice), and the AI ranks each phrase 0–100 with a short reason.
What this page is NOT
This is not a medical tool. It does not diagnose, treat, cure, or prevent any condition. The scores are an exploratory starting point, not a verdict. Whether the captured signals actually move the ranking is an open question this page is built to test — treat results accordingly.
Relationship to the other pages
The Phrase Player is the playback half of the system, and the AI Phrase Generator creates new phrases through a guided chat. The Prioritizer sits between them: it helps you choose among phrases you already have (generated, preset, or hand-written). Selected phrases can be sent to the Player. The Prioritizer shares the OpenAI API key you set on the Generator page.
Quick start
- Set your API key on the AI Phrase Generator page first — it's shared across pages.
- Type a few sentences about what you're noticing.
- Add the phrases you're considering to Phrases to score (paste, or load from Find areas to dig into).
- Pick channels — choose which signals feed the AI.
- Score these phrases — each run appears as a card you can compare against others.
- Send selected to the Player when you've found what fits.
B. How scoring works
For each phrase, the AI returns a score from 0–100 representing how well it resonates with your state, plus a one-line reason. The prompt enforces a scoring discipline: use the full 0–100 range, reserve 90+ for only the top 3–5 phrases, 70–89 for good matches, 40–69 for partial, under 40 for poor — and avoid clustering scores in a narrow band.
Crucially, the AI scores resonance only. It is explicitly told not to reward or penalize how well-formed a phrase is — that's the Generator's job. A malformed phrase and a clean one are judged purely on how well they match your described state, not on grammar.
Results come back as a ranked table. You set a threshold to mark which phrases you'd select, and that selection (plus the run's inputs) is preserved in its run card.
C. Signals in scoring
This page scores on behavioral signals only — keyboard, mouse, and voice. The "Your Words" channel is intentionally turned off here, so the text you type is not sent to the AI; scoring runs on how you typed/moved/sounded, not what you wrote. (The text box still exists because it's how your typing rhythm is captured.)
- Why signal-only: in testing, signal-only scoring aligned better with offline results than word-based scoring did — likely because the typed medical words pulled the AI toward keyword matching rather than reading state. This is experimental by nature: it's the honest test of whether the signals carry usable state information.
Signals captured: keyboard (keys/sec, mean gap, backspace rate), mouse (speed, jitter, pauses), and voice (average pitch and how much it moves, energy, pace, silence — vocal dynamics only, never transcription). Voice is recorded here and shared with the Generator. All three freeze into the saved snapshot at Save snapshot; your words stay separate.
D. The scoring prompt
The prompt is assembled from fixed blocks plus your inputs:
- Scoring discipline — the 0–100 dispersion rubric described above.
- What these phrases are — the AI is told they're calm, materially-grounded taxonomy labels in one of two grammars (a named-identity form like "Residual Aspergillus Burden Resolution", or an architectural form like "Residual Lymphatic Congestion Resolution"), and that endpoints like Resolution are calm anchors, not claims.
- How to read the description (when present) — weigh emotional tone and process stage, not just topic keywords. Feeling better/close → prefer completion/resolution phrases; acute distress → prefer identification/clearing phrases.
- Output format — a strict JSON array, one entry per phrase, in input order.
Note: unlike the Generator's prompt (the editable ai-prompt.txt file), this scoring prompt currently lives in the page code. It is not ontology-aware beyond the framing above. The ⓘ next to Phrases to score shows the same breakdown inline.
E. Find areas to dig into experimental — not proven
Instead of scoring individual phrases, this scores whole areas of the library against your state, so you can decide where to focus. Select a level and one or more areas, set a sample size, and the tool samples phrases from each area (up to the chosen count), scores the sample, and rolls each area up to a single score (the average of its top 5 phrases). Areas come back ranked.
On any area, ← Load phrases pulls all of its phrases into the Phrases to score box so you can score them individually; or check several areas and use ← Load selected. This is experimental — treat the area rankings as a rough triage signal, not a measurement.
F. Scoring runs & sending to the Player
Each click of Score these phrases pushes a new run card. Each run preserves its mode, description, captured signals, full results table, threshold, and which phrases you selected — so you can compare A/B/C runs: see whether signals actually move the ranking, or how the same input scores under different modes. The newest run auto-expands; older runs collapse (click a header to toggle).
Runs are kept in memory only — they clear on page refresh or via Reset all runs. This is intentional: the point is correlating inputs and outputs within a testing session, not long-term history.
When you've found phrases that fit, send your selection to the Phrase Player, where they're appended to the playlist (without overwriting what's already there).
Your data stays with you
This page runs entirely in your browser. Your phrases, description, signals, and scoring runs are stored only on this device. Clearing your browser data (or using private/incognito mode) wipes everything.