Skip to content

deepseek-flash-biber-argument

Register lock for legal argument and submissions tuned for DeepSeek V4 Flash — present-tense propositions, dense modals and suasive verbs, nominalized abstractions, passives where the agent is law or court. Use when drafting or rewriting submissions, pleas-in-law, skeleton arguments, argument sections of notes, or any passage that must argue rather than narrate. V4 Flash matches or exceeds Pro on agent benchmarks (TB 2.1: 82.7 vs Pro-Preview 72.1); thinking mode on by default. Pairs with deepseek-flash-biber-fact (never mix the two registers) and bieber-scale (scoring).

Source: .opencode/skills/deepseek-flash-biber-argument/SKILL.md — site rebuilt 2026-09-05.


deepseek-flash-biber-argument — argument register (DeepSeek V4 Flash)

Biber profile: high D4 Overt persuasion and high D5 Abstract information, present tense, low D2 narrative. The passage argues legal propositions; facts appear only as anchors.

DeepSeek V4 Flash adaptation notes

V4 Flash (0731 release) beats V4 Pro-Preview on agent benchmarks (TB 2.1: 82.7 vs 72.1) with thinking mode on by default. Key adaptations: - Thinking mode is on by default — the model can reason internally. The dimensional register block is identical to Pro. - 1M context window — chunk = one paragraph (≤500-word cap, not a target). Reprompt at every paragraph head. - At $0.14/M input tokens, Flash is the cost-effective primary tier.

Target profile (pybiber raw scores)

Dimension Target band (pybiber) Baseline (Argument) Reference (Academic) Key features
D1 -280 to -100 -188 -232 nouns, prepositions, word length
D2 -200 to 0 -62 -171 present tense, no past-tense narrative
D3 -20 to +50 +4 +28 WH relatives, nominalizations, coordination
D4 -50 to +72 +6 -22 modals, suasive verbs, infinitives
D5 -70 to 0 -46 -23 agentless passives, by-passives, nominalizations
D6 -20 to +50 +12 +14 that-clauses for subordinated reasoning

Per-sentence gate: any sentence outside its dimension band is a critic flag. Bands are intentionally wide — if a paragraph falls anywhere within, it passes.

The register block (paste verbatim into the system/user prompt)

You are a register editor. You write in the register of legal
argument — the register of submissions, pleas-in-law, and skeleton
arguments.

THE DIMENSION (Biber D1 + D4 — Informational + Persuasion)

Every word choice has a dimensional weight. For argument, the target
is D1 pybiber <= -280 AND D4 pybiber > 0 (any positive persuasion pull).

D1-POSITIVE PULL — ELIMINATE:
+0.962  private verbs (feel, think, believe, know, contend)
+0.864  present tense (unavoidable in argument — offset with nouns
        and prepositions)
+0.778  analytic negation (cannot, is not — keep to minimum necessary)
+0.713  copula (is, are, was, were as main verb; acceptable only as
        part of passive constructions)
+0.706  pronoun "it" (nominalize instead)
+0.416  adverbs (-ly words)

D1-NEGATIVE PULL — MAXIMIZE:
-0.799  NOUNS. Target 190-250/1000w (lower than facts; argument verbs
        offset noun density)
-0.575  mean word length
-0.540  PREPOSITIONS. Target 100-160/1000w.
-0.474  attributive adjectives
-0.382  past-participle reduced relatives — post-nominal compression
-0.253  phrasal coordination
-0.211  present participles

D4-POSITIVE PULL — MAXIMIZE (target D4 pybiber > 0):
+0.760  INFINITIVES — the single strongest persuasion lever. Target at
        least one infinitive per sentence: "must be rejected," "cannot
        be sustained," "entitling the contractor to treat."
+0.535  Predictive modals: will, would
+0.486  SUASIVE VERBS: require, compel, entitle, permit, ordain.
        At least one per paragraph.
+0.458  Necessity modals: must, should, ought. At least one per sentence.
+0.367  Possibility modals: can, could, may
+0.276  Concessive subordination: although, though, even though.
        Use to acknowledge counterarguments.
+0.265  that-complement clauses for subordinated reasoning

HOW TO HIT D4 > 0

A single Modal+Infinitive construction (must + be + past participle)
contributes approximately:
  necessity modal (+0.458) + infinitive (+0.760) = +1.22 per construction.
At one such construction per 20-word sentence, the per-sentence
contribution is approximately +61 pybiber points for that feature
combination. The negative column (nouns, prepositions) offsets this
partially; the net D4 per sentence depends on feature density.

THE REGISTER:
- Every legal proposition in present tense.
- At least one modal or suasive verb per sentence.
- Passives where the agent is law/court: "it was held," "decree should
  be pronounced," "the losses claimed."
- Nominalized abstractions: liability, breach, entitlement, repudiation.
- Every conclusion carries a citation.
- Facts as anchors only — no narrative digression.

<text to adapt>

After the text, provide a Register self-check table: constraint, PASS/FAIL,
first failing token. Revise any FAIL to PASS before finalizing.

Multi-agent workflow

All sub-agents use DeepSeek V4 Flash. Seven-role pipeline: Planner → Structural Drafter → Critic → Gatekeeper → Surgical Drafter → Rewrite Drafter → Sub-Editor. All band targets, scorer commands, and reference files (crosswalk, features, sub-editor README, Scots pleading exceptions) are identical to the Pro variant.

Frame selection: consult reference/crosswalk.md before assigning frames. Paragraph budget: no paragraph exceeds 500 words — a cap, not a target; context determines size and most paragraphs are shorter. A proposition may be developed across multiple paragraphs (an anchor-facts paragraph, an argument paragraph, a concession/rebuttal paragraph), each assigned exactly one register (fact or argument) and staying in it — registers split between paragraphs, never inside one. Chunk = paragraph: chunk boundaries at paragraph ends, register block re-asserted at each paragraph head. Score output with: python .opencode/skills/bieber-scale/tools/bieber_scorer.py --file <draft>

Drift control

Register constraints decay after ~300–500 words of continuous generation. Chunk = one paragraph: no paragraph exceeds 500 words (a cap, not a target — context determines size; a proposition may run across several paragraphs). Reprompt at every chunk/paragraph break with the six-item schema (full Planner schema, register block, ✓/→ proposition checklist, paragraph position, last paragraph, banned features). Fence quoted material.

Rewrite mode

Same multi-agent workflow as drafting, with the restructure protocol: 1. Decompose the failing paragraph into a numbered proposition inventory 2. Reassign each proposition to a Planner frame by register and move type 3. Organise by issue; output the skeleton as first deliverable — the Critic reviews before prose is committed 4. After skeleton approval, rebuild each issue using only assigned frames 5. Duplicate propositions may be omitted; list every cut as [OMITTED: proposition X — duplicate of paragraph Y] 6. If a proposition cannot be framed without changing its substance or the force of a submission, flag it

Preservation preamble: preserve every proposition, authority citation and pinpoint, fact reference, date, figure and party name; the order of the argument; and the legal effect of every sentence. Add no authorities; invent no facts; strengthen or weaken no submission.

Closing register loop

Max 3 passes. Score → flag every sentence outside its target band on any dimension → correct only flagged sentences at feature level → terminate when all sentences pass, 3 passes used, or a fix would alter meaning or legal force (flag [REGISTER: human decision]). Paragraph averaging is not a defence.

Verification

python .opencode/skills/bieber-scale/tools/bieber_scorer.py --file <draft> Check per-sentence pybiber_raw.D4 against the target band. Check D1 for drift. Cross-reference full D1–D6 profile against Target profile table. Never change meaning or legal force to hit a score; never fabricate authority pinpoints.

Draft location rule

Draft and run machines processes only on the local disk (the live OneDrive workspace tree). Never write a draft to H:\My Drive mid-workflow — it is a Google Drive stream that races writes; files there change between reads with phantom text appearing from no pipeline source. Push the finished file to H: once. After any rebuild, hash the file across two reads and check that no text exists which no source in the pipeline could have produced. Operating lessons (segmentation shattering citations; rule sets being tied to the exact piece split of the source; PRE pairs must not rewrite punctuation) are in learnings.md in this skill folder.