Analyze a Text
Prompts that hand SocioRhetoric's catalogue to a language model, so a transcript, thread, or statement comes back filed: each utterance located on the five axes, named as an act, and marked with the misfire its coordinates predict. Copy one, paste your text under it. The filing prompt answers with a table; the marked-up variant answers with your text itself, tinted by what each passage does and annotated where you hover.
The filing prompt
Returns a table: every utterance located, named, and marked. Read the divergences it reports before the table itself.
You are filing a text using the SocioRhetoric catalogue of speech acts. Work from the text as given; do not speculate about anyone's private intent, and do not invent quotations.
STEP 1 — SEGMENT. Break the text into utterances: the smallest spans that do one thing each. Number them in order. Where one sentence performs two acts, split it and say so.
STEP 2 — FILE EACH UTTERANCE on all five axes.
Function — what does it do? assert · direct · commit · express · declare
Orientation — what is it keyed to? reality or deception (the world), belonging or dominance (one's standing)
Motive — whose interest, and does the effect survive disclosure? cooperative · mixed · manipulative
Scope — is it read narrow (the span alone) or wide (in its context)?
The catalogue marks some acts "unfixed": the act type does not fix its scope.
That is a fact about the type — file an actual utterance as narrow or wide.
Target — what does it act on? outward (the world), meta (another act), or reflexive (the speaker)
Then name the act from the catalogue below. If nothing fits, write "unlisted" and give the coordinates anyway — the axes are prior to the names.
STEP 3 — MARK THE MISFIRE each filing predicts. Every axis names its own failure:
misinvocation — no such act is available to perform here
orientation mismatch — one party hears reality, the other plays for standing
manipulation — the effect depends on not being disclosed
scope mismatch — divergent uptake, mistaken for bad faith
frame collision — a frame is not jointly held
reflexive misfire — a reflexive act is heard as outward
Flag a misfire only where the text shows it: a reply that answers a different act than the one performed, a repair, a complaint about uptake, a plane the parties do not share. Distinguish what misfired from what merely could.
STEP 4 — REPORT.
a) A table, one row per utterance: number, quoted span (trimmed), speaker, act, the five coordinates, misfire or none, and your confidence (high / medium / low). Write every coordinate with its axis — "function: assertive · orientation: reality · motive: cooperative · scope: narrow · target: outward" — in the table, in prose, and anywhere else it travels. A coordinate without its axis is unreadable.
b) The divergences: for each place two parties file the same utterance differently, state both filings and which axis they part on. This is the analysis; the table is only its evidence.
c) What the axes cannot see: anything your filing depends on that the text does not contain — absent context, unavailable tone, an unquoted prior turn.
RULES. Quote spans verbatim, never paraphrase into the quote column. Where a filing is contested, give both and say which reading the text better supports. Mark low confidence rather than resolving it silently. An act keyed to belonging or dominance is not thereby insincere, and a manipulative motive is not thereby a lie — keep the axes independent. Report the acts you found; do not force the text to fill the catalogue.
The marked-up variant
Returns a page instead of a table: your text reproduced whole, tinted utterance by utterance in the colour of what each one does, with the misfires underlined in the colour of the axis that names them. Hovering a span shows its filing; the key below the text carries the same information in the open, so nothing important lives only under the cursor. Save what comes back as an .html file and open it.
The stylesheet is written into the prompt with SocioRhetoric's own dimension pigments, so the marked-up page comes back wearing the site's colours.
You are marking up a text with the SocioRhetoric catalogue of speech acts. Return one complete, self-contained HTML file and nothing else — no commentary before it, none after. It must render offline, with no external requests.
File the text exactly as the analysis prompt does — segment into utterances, locate each on the five axes, name the act, mark the misfire the coordinates predict — then render the filing as colour on the text itself.
THE ARTICLE. Reproduce the source inside <article id="text">, verbatim: same wording, same paragraphs, same speaker labels. Wrap each utterance you file in
<span class="u fn-FUNCTION mis-AXIS" tabindex="0">the exact span<span class="tip" aria-hidden="true"><span class="sw fn-FUNCTION"></span><b>ACT</b> — GLOSS <em>function: FUNCTION · orientation: ORIENTATION · motive: MOTIVE · scope: SCOPE · target: TARGET</em> <em>misfire: MISFIRE — WHY</em></span></span>
Keep those axis labels in the output: a coordinate travelling without its axis is unreadable.
fn-FUNCTION is the illocutionary point: assertive → fn-assertive · directive → fn-directive · commissive → fn-commissive · expressive → fn-expressive · declaration → fn-declaration.
mis-AXIS is the axis whose misfire you flagged: misinvocation → mis-function · orientation mismatch → mis-orientation · surrogation failure → mis-orientation · manipulation → mis-motive · scope mismatch → mis-scope · frame collision → mis-target · reflexive misfire → mis-target. Omit the mis- class and the second <em> entirely where nothing misfired.
WHY is one clause naming the evidence in the text — the reply that answered a different act, the repair, the complaint about uptake.
SCOPE is narrow or wide for an actual utterance. The catalogue marks some acts "unfixed", meaning the act type does not fix its scope; that is a fact about the type, so file the token as narrow or wide and never as unfixed.
Connective matter that performs no act stays outside any utterance span. Never nest utterance spans; the .tip and .sw spans shown above are the only nested spans. Where one sentence does two things, split it into adjacent utterance spans.
THE KEY. Below the article, build <aside id="key"> with a heading and one entry per act that appears, in order of first appearance:
<p><span class="sw fn-FUNCTION"></span><b>ACT</b> — GLOSS <em>function: FUNCTION · orientation: ORIENTATION · motive: MOTIVE · scope: SCOPE · target: TARGET</em></p>
Use the catalogue's own gloss, unedited, in both the hover entry and the key. Their entry markup is deliberately identical; the hover entry adds only its occurrence-specific misfire <em>. The key is the glossary: every filing must be legible there without hovering anything, because hover is an accelerator and not a hiding place.
THE DIVERGENCES. Then <section id="divergences">, with a heading: each place two parties file the same utterance differently, giving both filings and the axis they part on. Where there are none, say so in one sentence.
THE STYLESHEET. Use this in <head>, unchanged — the inks are SocioRhetoric's own:
<style>
body{margin:0;background:#E9EDF1;color:#1B2430;font:18px/1.75 Newsreader,Georgia,serif;padding:clamp(1.2rem,5vw,3rem)}
#text,#key,#divergences{max-width:70ch;margin:0 auto}
#text p{margin:0 0 1.1rem}
h2{font:500 1.15rem/1.2 "Space Grotesk",system-ui,sans-serif;letter-spacing:-.01em;margin:2.4rem 0 .7rem}
.u{position:relative;border-radius:3px;padding:.05em .12em;cursor:help}
.u.fn-assertive{background:rgba(55,98,143,0.15)}
.sw.fn-assertive{background:#37628F}
.u.fn-directive{background:rgba(154,106,18,0.15)}
.sw.fn-directive{background:#9A6A12}
.u.fn-commissive{background:rgba(23,120,110,0.15)}
.sw.fn-commissive{background:#17786E}
.u.fn-expressive{background:rgba(138,61,99,0.15)}
.sw.fn-expressive{background:#8A3D63}
.u.fn-declaration{background:rgba(168,64,42,0.15)}
.sw.fn-declaration{background:#A8402A}
.u.mis-function{border-bottom:2px dashed rgba(154,106,18,0.95)}
.u.mis-orientation{border-bottom:2px dashed rgba(55,98,143,0.95)}
.u.mis-motive{border-bottom:2px dashed rgba(168,64,42,0.95)}
.u.mis-scope{border-bottom:2px dashed rgba(23,120,110,0.95)}
.u.mis-target{border-bottom:2px dashed rgba(138,61,99,0.95)}
.tip{visibility:hidden;opacity:0;pointer-events:none;position:absolute;left:0;top:calc(100% + 7px);z-index:10;
box-sizing:border-box;width:min(34rem,calc(100vw - 2rem));background:#E9EDF1;color:#1B2430;
border-top:1px solid #CBD4DD;padding:1.15rem 1rem 1.05rem;
font:400 .95rem/1.75 Newsreader,Georgia,serif;box-shadow:0 12px 34px -14px rgba(0,0,0,.45);
white-space:normal;transition:opacity .12s ease}
.u:hover>.tip,.u:focus>.tip{visibility:visible;opacity:1}
.u:focus{outline:2px solid #1B2430;outline-offset:2px}
#key p{margin:0 0 .5rem;font-size:.95rem}
.sw{display:inline-block;width:11px;height:11px;border-radius:2px;margin-right:9px}
#key em,.tip em,#divergences em{color:#586574;font-style:normal;font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:.8em}
@media (prefers-color-scheme:dark){body{background:#10141A;color:#E7ECF1}
.tip{background:#10141A;color:#E7ECF1;border-top-color:#2B343F}
#key em,.tip em,#divergences em{color:#909DAB}.u:focus{outline-color:#E7ECF1}}
</style>
RULES. Quote verbatim inside the article; paraphrase nowhere. Colour carries function and the underline carries misfire — never colour by sentiment, by speaker, or by who you judge to be at fault. Mark an uncertain filing by ending its final hover-entry <em> with "(low confidence)" rather than dropping it. Where you cannot file a passage, leave it unspanned and say why in the key. Report the acts the text performs; do not spend the catalogue on it.
The catalogue it refers to
The tables below are generated from the SocioRhetoric catalogue itself, so this page cannot drift from the site. The second copy button appends them to the prompt as plain text, which is worth doing with a model that has no access to the web.
| Axis | Question | Misfire |
|---|---|---|
| Function | What does it do? | misinvocation — no such act is available to perform |
| Orientation | What is it keyed to? | orientation mismatch — one hears it as reality, the other plays for standing |
| Motive | Whose interest, with disclosure? | manipulation — the effect depends on not being disclosed |
| Scope | Read narrow or wide? | scope mismatch — divergent uptake mistaken for bad faith |
| Target | What does it act on? | frame collision / reflexive misfire — a frame is not jointly held; or a reflexive act heard as outward |
| Act | Gloss | Coordinates | Named misfire |
|---|---|---|---|
| Assertion | State that something is the case. | function assertive · orientation reality (slides) · motive cooperative (varies) · scope unfixed · target outward | orientation mismatch |
| Lie | Assert what you take to be false, to mislead. | function assertive · orientation deception · motive manipulative · scope unfixed · target outward | manipulation |
| Palter | Say something true to create a false impression. | function assertive · orientation reality · motive manipulative · scope unfixed · target outward | manipulation |
| Report | Relay another's utterance. | function assertive · orientation reality · motive cooperative · scope unfixed · target meta | frame collision |
| Retraction | Withdraw a claim already made. | function declaration · orientation reality · motive cooperative · scope unfixed · target meta | frame collision |
| Question | Request information. | function directive · orientation reality · motive cooperative · scope unfixed · target outward | orientation mismatch |
| Order | Direct another to act. | function directive · orientation reality (slides) · motive mixed (varies) · scope unfixed · target outward | orientation mismatch |
| Rhetorical question | Ask in form, assert in force. | function directive · orientation belonging · motive manipulative · scope wide · target outward | manipulation |
| Promise | Commit oneself to a future act. | function commissive · orientation reality · motive cooperative · scope unfixed · target outward | orientation mismatch |
| Threat | Commit to future harm conditionally. | function commissive · orientation dominance (slides) · motive manipulative · scope unfixed · target outward | manipulation |
| Apology | Express contrition for a wrong. | function expressive · orientation reality (slides) · motive mixed (varies) · scope unfixed · target outward | orientation mismatch |
| Thanks | Express gratitude. | function expressive · orientation reality (slides) · motive cooperative · scope unfixed · target outward | orientation mismatch |
| Declaration | Bring a state into being by saying so. | function declaration · orientation reality · motive cooperative · scope narrow · target outward | misinvocation |
| Frame-set | Install the construal that fixes which moves are legal. | function declaration · orientation reality (slides) · motive mixed (varies) · scope unfixed · target meta | frame collision |
| Frame-break | Collapse the operative frame. | function declaration · orientation reality (slides) · motive mixed (varies) · scope unfixed · target meta | frame collision |
| Status bid | Claim relative standing. | function expressive · orientation belonging (slides) · motive manipulative · scope wide · target outward | manipulation |
| Counter-signal | Decline an expected status marker to imply that one’s standing needs no proof. | function expressive · orientation belonging · motive mixed · scope wide · target outward | orientation mismatch |
| Surrogation | Let a token stand for the substance it once indexed. | function assertive · orientation belonging · motive mixed · scope unfixed · target outward | surrogation failure |
| Tell | Leak an unauthored signal. | function expressive · orientation reality · motive mixed · scope unfixed · target outward | orientation mismatch |
| Decoupling-flag | Mark a claim as taken in isolation. | function declaration · orientation reality · motive cooperative · scope narrow · target meta | scope mismatch |
| Context-injection | Insist the surround is part of the claim. | function declaration · orientation reality · motive cooperative · scope wide · target meta | scope mismatch |
| Mismatch-repair | Name the scope or orientation gap itself. | function assertive · orientation reality · motive cooperative · scope unfixed · target meta | scope mismatch |
| Articulation | Render a felt sense into words; the saying changes it. | function expressive · orientation reality · motive cooperative · scope narrow · target reflexive | reflexive misfire |
| Avowal | Constitute the self in the saying. | function declaration · orientation reality · motive cooperative · scope narrow · target reflexive | reflexive misfire |
| Avatar-speech | Speak as a constructed posting-self. | function expressive · orientation belonging (slides) · motive mixed (varies) · scope wide · target reflexive | reflexive misfire |
| Egregoric channeling | Let a group-entity speak through you. | function assertive · orientation belonging · motive mixed · scope wide · target outward | orientation mismatch |
| Tribal signal | Say the in-group phrase to be recognised. | function expressive · orientation belonging · motive mixed · scope wide · target outward | orientation mismatch |
| Pure power move | A positioning move with no referent at all. | function expressive · orientation dominance · motive manipulative · scope wide · target outward | manipulation |
Function — What does it do? Values: assert · direct · commit\nexpress · declare. Its misfire: misinvocation (no such act is available to perform). Orientation — What is it keyed to? Values: reality ⇄ deception (the world)\nbelonging ⇄ dominance (one’s standing). Its misfire: orientation mismatch (one hears it as reality, the other plays for standing). Motive — Whose interest, with disclosure? Values: cooperative ⇄\nmanipulative. Its misfire: manipulation (the effect depends on not being disclosed). Scope — Read narrow or wide? Values: narrow ⇄ wide\n(isolated ⇄ in context). Its misfire: scope mismatch (divergent uptake mistaken for bad faith). Target — What does it act on? Values: outward ⇄ reflexive\n(or on another act). Its misfire: frame collision / reflexive misfire (a frame is not jointly held; or a reflexive act heard as outward). Assertion — State that something is the case. [function: assertive · orientation: reality (slides) · motive: cooperative (varies) · scope: unfixed · target: outward] misfire: orientation mismatch Lie — Assert what you take to be false, to mislead. [function: assertive · orientation: deception · motive: manipulative · scope: unfixed · target: outward] misfire: manipulation Palter — Say something true to create a false impression. [function: assertive · orientation: reality · motive: manipulative · scope: unfixed · target: outward] misfire: manipulation Report — Relay another's utterance. [function: assertive · orientation: reality · motive: cooperative · scope: unfixed · target: meta] misfire: frame collision Retraction — Withdraw a claim already made. [function: declaration · orientation: reality · motive: cooperative · scope: unfixed · target: meta] misfire: frame collision Question — Request information. [function: directive · orientation: reality · motive: cooperative · scope: unfixed · target: outward] misfire: orientation mismatch Order — Direct another to act. [function: directive · orientation: reality (slides) · motive: mixed (varies) · scope: unfixed · target: outward] misfire: orientation mismatch Rhetorical question — Ask in form, assert in force. [function: directive · orientation: belonging · motive: manipulative · scope: wide · target: outward] misfire: manipulation Promise — Commit oneself to a future act. [function: commissive · orientation: reality · motive: cooperative · scope: unfixed · target: outward] misfire: orientation mismatch Threat — Commit to future harm conditionally. [function: commissive · orientation: dominance (slides) · motive: manipulative · scope: unfixed · target: outward] misfire: manipulation Apology — Express contrition for a wrong. [function: expressive · orientation: reality (slides) · motive: mixed (varies) · scope: unfixed · target: outward] misfire: orientation mismatch Thanks — Express gratitude. [function: expressive · orientation: reality (slides) · motive: cooperative · scope: unfixed · target: outward] misfire: orientation mismatch Declaration — Bring a state into being by saying so. [function: declaration · orientation: reality · motive: cooperative · scope: narrow · target: outward] misfire: misinvocation Frame-set — Install the construal that fixes which moves are legal. [function: declaration · orientation: reality (slides) · motive: mixed (varies) · scope: unfixed · target: meta] misfire: frame collision Frame-break — Collapse the operative frame. [function: declaration · orientation: reality (slides) · motive: mixed (varies) · scope: unfixed · target: meta] misfire: frame collision Status bid — Claim relative standing. [function: expressive · orientation: belonging (slides) · motive: manipulative · scope: wide · target: outward] misfire: manipulation Counter-signal — Decline an expected status marker to imply that one’s standing needs no proof. [function: expressive · orientation: belonging · motive: mixed · scope: wide · target: outward] misfire: orientation mismatch Surrogation — Let a token stand for the substance it once indexed. [function: assertive · orientation: belonging · motive: mixed · scope: unfixed · target: outward] misfire: surrogation failure Tell — Leak an unauthored signal. [function: expressive · orientation: reality · motive: mixed · scope: unfixed · target: outward] misfire: orientation mismatch Decoupling-flag — Mark a claim as taken in isolation. [function: declaration · orientation: reality · motive: cooperative · scope: narrow · target: meta] misfire: scope mismatch Context-injection — Insist the surround is part of the claim. [function: declaration · orientation: reality · motive: cooperative · scope: wide · target: meta] misfire: scope mismatch Mismatch-repair — Name the scope or orientation gap itself. [function: assertive · orientation: reality · motive: cooperative · scope: unfixed · target: meta] misfire: scope mismatch Articulation — Render a felt sense into words; the saying changes it. [function: expressive · orientation: reality · motive: cooperative · scope: narrow · target: reflexive] misfire: reflexive misfire Avowal — Constitute the self in the saying. [function: declaration · orientation: reality · motive: cooperative · scope: narrow · target: reflexive] misfire: reflexive misfire Avatar-speech — Speak as a constructed posting-self. [function: expressive · orientation: belonging (slides) · motive: mixed (varies) · scope: wide · target: reflexive] misfire: reflexive misfire Egregoric channeling — Let a group-entity speak through you. [function: assertive · orientation: belonging · motive: mixed · scope: wide · target: outward] misfire: orientation mismatch Tribal signal — Say the in-group phrase to be recognised. [function: expressive · orientation: belonging · motive: mixed · scope: wide · target: outward] misfire: orientation mismatch Pure power move — A positioning move with no referent at all. [function: expressive · orientation: dominance · motive: manipulative · scope: wide · target: outward] misfire: manipulation
Reading what comes back
- Check the quoted spans against your text first. A filing built on a misquotation is worthless, and it is the one error you can catch without knowing the framework.
- Read the divergences before the table. A transcript where every utterance files cleanly and no two parties disagree usually means the model smoothed something.
- Treat low-confidence rows as questions for you, not verdicts. Scope is the axis a reader outside the room gets wrong most often.
- Where a misfire is named, look for the repair that follows it. Its absence is itself a finding.
Where it tears
A model files what the text shows, which is not what happened. Tone, timing, and the history two people bring to a sentence are absent from a transcript, and the axes will confidently locate an utterance whose force lived entirely in the pause before it. The catalogue is also a map of acts that have been named; an utterance doing something genuinely unnamed will be filed as the nearest listed act unless the prompt's "unlisted" escape is honoured. Use the filing as a first pass that makes disagreement explicit — not as a verdict on what anyone meant.