THE INTRO CARD is free — what an AI skill card is and how to use one Download →Lost Lauren, contact us

THE HOME GROUND · THE MEETING HOUSE · Nº 1233 · EDITION 1 · LAUNCHING SOON

LUND CARDS · THE HOME GROUNDNº 1233
THE SECOND OPINION — the LSC-1 face
THE CARD AS TEXT · FOR EYES AND FOR MACHINES

THE SECOND OPINION · A person reads the work and signs: tickets, credentials, a hash chain, and no badge without a signature.

WAKES WHEN A buyer wants a person to review AI-made work. · A review is overdue. · Someone asks whether a piece of work was reviewed by a person.

THE LOOP

  1. Take the work in; hash what was sent
  2. Assign a reviewer in the right field
  3. The reviewer signs with their own key
  4. Badge only what verifies, verdict shown

NEVER

  • Never says reviewed without a signature
  • Never assigns outside the reviewer's field
  • Never edits work after it is signed

IT MAKES intake — new open ticket with a hash of the submitted files; key — makes the reviewer's secret key and stores it in the keyring (default keys.json beside tickets.csv); refuses to overwrite a key; assign — assigns a reviewer; refuses one whose field does not match the ticket's; sign — writes the signoff with its hash chain and the reviewer's signature; refuses a reviewer not on file, not assigned, or with no key; status — every ticket: OVERDUE by due_at, due in, or signed (verified or not); exit 1 if any ticket is flagged; badge — REVIEWED BY A PERSON — APPROVED or APPROVED WITH CHANGES (exit 0) only if a signoff exists and its chain and signature verify; REVIEWED BY A PERSON — REJECTED (not a pass, exit 1); otherwise NOT REVIEWED (exit 1); export — all records plus each ticket's verified badge state as JSON; never the keys.

THE LAW Reviewed means a named reviewer in the right field signed with their own key, and the record has not changed since. The chain shows the record is unchanged; the key shows which key-holder signed. Without both, the card says NOT REVIEWED, every time.

IN THE BOX SKILL.md · CARD.md · ▣ scripts/secondopinion.py (machine) · ▣ scripts/evals.py (test runner) · tests/EVALS.json (8 tests) · references/ (schema + fictional demo) · START-HERE.md · system/ doors · MY-LEDGER.md · LICENSE-NOTE.md · card.svg · card.json · card.html · AUDIT.md · MANIFEST.md · WITNESS.md · SELFTEST.md.

PROOF SELFTEST 24/24 · witnessed in Claude 2026-10-13 on fictional fixtures · the test prompts in fresh chats owed · Edition 1.

THE SEAL 96 of 100 · LEGENDARY · WITNESSED · Trigger 5 · Machinery 5 · Law 5 · Portability 5 · Proof 4

IT CAN BE WRONG an AI reading a text file: it can be wrong and can invent a number, a rule, a name or a date; check what matters against your own records and the source; the risk is yours. LICENSE-NOTE.md rides in the packet and is the licence.

THE PUNCH · SHA-256 OF SKILL.MD · 889611BDB7AE037279C914FE

THE FACE, FULL SIZE → · THE MACHINE FACE → · card.json →

THE SECOND OPINION

A person reads the work and signs: tickets, credentials, a hash chain, and no badge without a signature.

INTAKE · KEY · ASSIGN · SIGN · STATUS · BADGE · EXPORT

96LEGENDARYWITNESSEDIN CLAUDEIN LUNDRIN CHATGPT

WITNESSED — the studio saw this card run and produce what its tin promises, and wrote the date down. What the marks mean →

THE SPEC SHEET · READ BEFORE YOU BUY · THE STANDARD EVERY CARD MEETS →

SEAL
96 of 100 · LEGENDARY · WITNESSED
EDITION
E1 · witnessed 2026-10-13
MACHINE
scripts/secondopinion.py · 7 commands · selftest 24/24
RUNS
On your own computer. Standard library only, offline; no account, no key, no telemetry.
HOSTS
Claude · Claude Code · ChatGPT · Gemini · any AI that reads a file (START-HERE.md and system/ name each door)
LICENCE
One person, any number of their own AIs and computers · editions replace files · nothing renews · freeze, not loss
PUNCH
889611BDB7AE037279C914FE · sha-256 of SKILL.md · check any file against it →

CITE THIS CARDTHE SECOND OPINION, Edition 1. Lund Studio LLC, Westminster, Colorado. https://lundr.tech/?view=second-opinion-card. Punch 889611BDB7AE037279C914FE. Retrieved 2026-10-13.

What it is.

Use when AI-made work needs a named human reviewer's sign-off with a paper trail: intake, assignment by field, signature, verified badge. Not a substitute for licensed advice.

It carries a machine that shows its working: intake — new open ticket with a hash of the submitted files; key — makes the reviewer's secret key and stores it in the keyring (default keys.json beside tickets.csv); refuses to overwrite a key; assign — assigns a reviewer; refuses one whose field does not match the ticket's; sign — writes the signoff with its hash chain and the reviewer's signature; refuses a reviewer not on file, not assigned, or with no key; status — every ticket: OVERDUE by due_at, due in, or signed (verified or not); exit 1 if any ticket is flagged; badge — REVIEWED BY A PERSON — APPROVED or APPROVED WITH CHANGES (exit 0) only if a signoff exists and its chain and signature verify; REVIEWED BY A PERSON — REJECTED (not a pass, exit 1); otherwise NOT REVIEWED (exit 1); export — all records plus each ticket's verified badge state as JSON; never the keys — 24 checks in its selftest. It never says reviewed without a signature; never assigns outside the reviewer's field; never edits work after it is signed.

The law, written into the card.

It is in the card itself, so the AI follows it.

THE LAWReviewed means a named reviewer in the right field signed with their own key, and the record has not changed since. The chain shows the record is unchanged; the key shows which key-holder signed. Without both, the card says NOT REVIEWED, every time.

The method.

  1. Keep a roster of reviewers with their field and credentials.
  2. Take the work in as a ticket with a due date and a hash of every file submitted.
  3. Assign the ticket to a reviewer whose field matches. Any other is refused.
  4. Give each reviewer a key the desk keeps private. The reviewer's verdict and notes are signed with that key and chained to the ticket's hash.
  5. Print REVIEWED BY A PERSON with the verdict only when the signature verifies against the reviewer's key and the files are unchanged. A rejection prints REJECTED and is never a pass. Anything else prints NOT REVIEWED.

What you bring.

  • Your roster of reviewers, their fields and credentials.
  • A private key for each reviewer, kept by the desk.
  • The work to review.

Planned as a separate seat, not in this box and not yet on sale: a review desk with the studio's own reviewers.

What it does once your AI has it.

  • intake New open ticket with a hash of the submitted files
  • key Makes the reviewer's secret key and stores it in the keyring (default keys.json beside tickets.csv); refuses to overwrite a key
  • assign Assigns a reviewer; refuses one whose field does not match the ticket's
  • sign Writes the signoff with its hash chain and the reviewer's signature; refuses a reviewer not on file, not assigned, or with no key
  • status Every ticket: OVERDUE by due_at, due in, or signed (verified or not); exit 1 if any ticket is flagged
  • badge REVIEWED BY A PERSON — APPROVED or APPROVED WITH CHANGES (exit 0) only if a signoff exists and its chain and signature verify; REVIEWED BY A PERSON — REJECTED (not a pass, exit 1); otherwise NOT REVIEWED (exit 1)
  • export All records plus each ticket's verified badge state as JSON; never the keys

What it will never do.

It never says reviewed without a signature; never assigns outside the reviewer's field; never edits work after it is signed.

Where it hands off: Licensed advice → a licensed professional; Listing claims → THE PROVENANCE FILE; Scoring a studio's products → THE MOAT CARD.

It is not professional advice. It is an AI reading a text file: it can be wrong, so check what matters against your own records and the source. The holder brings their own AI; no endorsement by Anthropic or any other AI company is claimed.

What’s in the buy.

  • SKILL.md — the card your AI reads: when it wakes, the loop, the never-lines, the hand-offs.
  • CARD.md — the whole card in ten sections: face, law, method, machine, what you bring, never, tests, seal, term.
  • scripts/secondopinion.py — the machine, Python standard library only; `selftest` proves it on its own fixtures.
  • tests/EVALS.json and scripts/evals.py — 8 test prompts and the offline runner that scores your AI's answers.
  • references/ — the data schema and FICTIONAL demo files, invented to show the machine, not real.
  • MY-LEDGER.md — your own record of what you asked and what you decided.
  • START-HERE.md, system/short-prompt.md, system/rules.md — the doors, for any AI with or without skills.
  • card.svg, card.json, card.html, AUDIT.md, MANIFEST.md, WITNESS.md, SELFTEST.md — the faces and the proof.
  • NOT IN THE BOX — any studio edition (planned, not yet on sale: a review desk with the studio's own reviewers). Also not in the box: any data you must bring, and advice of any kind (not professional advice).

PROOF · SELFTEST 24/24 · WITNESSED IN CLAUDE 2026-10-13 ON FICTIONAL FIXTURES · THE TEST PROMPTS IN FRESH CHATS OWED · EDITION 1 · PUNCH 889611BDB7AE037279C914FE

ON EVERY DOOR · A CARD FOR YOUR AI, A FILE FOR YOUR COMPUTER

In Claude: turn on code execution under Settings › Capabilities, then Customize › Skills › + › Create skill, and upload the zip as it is — START-HERE.md in the box walks you through it, and tells you how to keep the ledger. In ChatGPT, Gemini and the rest: a Project, a GPT or a Gem with the card’s files attached and the short door in the box pasted as its instructions. The words run anywhere an AI reads Markdown; the machines run wherever the host runs Python. Witnessed in Claude only. The host marks →

Take it.

Nº 1233 — LAUNCHING SOON

Sold as is under the term printed. A card instructs an AI you operate; results depend on your model, your files and your judgement. Not medical, legal, tax or financial advice, never the person’s boss, and not a licence to practise. The terms →

ONE PAYMENT · NOTHING RENEWS ITSELF

OFFLINE · ONE LICENCE · PUNCH-CHECKABLE · THE STANDARD

One payment. The file is yours to keep and keeps working at its edition; new editions issued in the year after you buy reach you by email as replacement files. Tax is added at checkout where it applies. Nothing auto-renews.

One email when it is on sale, from the studio; nothing else, ever.

A TERM, NOT A SUBSCRIPTION: NOTHING RENEWS ITSELF AND NOBODY IS CHARGED AGAIN. WHEN A TERM ENDS THE FILES STAY ON YOUR COMPUTER AND STAY READABLE — FREEZE, NOT LOSS.

THE MACHINE · IN THE OPEN · FROM THE CARD’S OWN SELFTEST.MD

secondopinion.py, every command showing its working.

A small Python program, standard library only. Your AI runs it; you can too. The block below is pasted from the card’s own SELFTEST.md, as printed when it was run from inside the packet.

intakenew open ticket with a hash of the submitted files
keymakes the reviewer's secret key and stores it in the keyring (default keys.json beside tickets.csv); refuses to overwrite a key
assignassigns a reviewer; refuses one whose field does not match the ticket's
signwrites the signoff with its hash chain and the reviewer's signature; refuses a reviewer not on file, not assigned, or with no key
statusevery ticket: OVERDUE by due_at, due in, or signed (verified or not); exit 1 if any ticket is flagged
badgeREVIEWED BY A PERSON — APPROVED or APPROVED WITH CHANGES (exit 0) only if a signoff exists and its chain and signature verify; REVIEWED BY A PERSON — REJECTED (not a pass, exit 1); otherwise NOT REVIEWED (exit 1)
exportall records plus each ticket's verified badge state as JSON; never the keys
selftest24 checks that prove the machine; it must print selftest 24/24
THE SELFTEST, AS PRINTED
ok  1  intake: ticket opened with a hash of the submitted files (order-independent)
ok  2  intake: refuses a ticket id that already exists
ok  3  key: refuses to overwrite an existing key; keyring unchanged
ok  4  key: a new reviewer gets a 64-hex key in the keyring; the key is not printed
ok  5  assign: refuses a reviewer whose field does not match
ok  6  badge: NOT REVIEWED before any signoff (exit 1)
ok  7  sign: refuses a reviewer with no record on file
ok  8  sign: refuses a reviewer not assigned to the ticket
ok  9  assign: matching field accepted, status in_review
ok  10  sign: refuses when the notes file is missing
ok  11  sign: refuses a reviewer with no key in the keyring
ok  12  sign → badge: REVIEWED BY A PERSON — APPROVED, chain and signature verified (exit 0)
ok  13  badge --files: other files than were submitted → NOT REVIEWED
ok  14  tampered verdict in signoffs.csv → NOT REVIEWED
ok  15  status: a ticket marked signed without a verified signoff is flagged (exit 1)
ok  16  hand-typed row with a correct chain but no signature → NOT REVIEWED (signature does not verify)
ok  17  signature checked against a different key → NOT REVIEWED (signature does not verify)
ok  18  notes file changed after signing → NOT REVIEWED
ok  19  ticket files hash altered → NOT REVIEWED
ok  20  a second signoff links to the first; the badge carries the latest verdict: APPROVED WITH CHANGES
ok  21  reject verdict → REVIEWED BY A PERSON — REJECTED (not a pass), exit 1
ok  22  status --now: overdue ticket flagged with hours from due_at, exit 1; nothing overdue → exit 0
ok  23  export: JSON with badge state, same bytes twice, no key in it
ok  24  bad input exits 2 (bad time format)
selftest 24/24

THE RUN IS PASTED FROM THE CARD’S OWN SELFTEST.MD AS PRINTED. ITS FIXTURES ARE FICTIONAL, INVENTED FOR THE TEST; NO PRIVATE PERSON IS NAMED.

QUESTIONS AT THE TABLE

Asked before the wire.

What does it need from me?

Your roster of reviewers, their fields and credentials. A private key for each reviewer, kept by the desk. The work to review. If something it needs is missing, it says what is missing and stops there.

Does it send anything anywhere?

No. The machine is a standard-library Python program that runs on your own computer and sends nothing anywhere; the words run wherever an AI reads Markdown. No server, no account, no key.

What is on the record?

The machine's selftest (24/24), run from inside the packet in Claude on 2026-10-13 on fictional fixtures and pasted into SELFTEST.md as printed; the twelve-check audit (AUDIT.md). Owed, and said so in WITNESS.md: The 8 test prompts asked in fresh chats with the card installed. Until they are run and scored, the tests are owed. Any run on real data. Every demo file is fictional. The punch on the face is the SHA-256 of SKILL.md, so a downloaded copy can be checked against this room.

Can it be wrong?

Yes — it is an AI reading a text file: it can be wrong and can invent a number, a rule, a name or a date; check what matters against your own records and the source; the risk is yours. LICENSE-NOTE.md rides in the packet and is the licence. It is not professional advice.

What will it never do?

It never says reviewed without a signature; never assigns outside the reviewer's field; never edits work after it is signed.

← THE HOME GROUND · THE FLOOR →

AT YOUR ELBOW, NEVER THE BOSS · NOT PROFESSIONAL ADVICE · NOT A PAYMENT CARD · NO REFUNDS · © 2026 LUND STUDIO LLC

PAY BYAmerican Express Apple Pay Diners ClubDiscoverGoogle Pay Mastercard PayPalShop Pay Visa
CART · 0