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 MARKET ROW · Nº 1221 · EDITION 1 · LAUNCHING SOON

LUND CARDS · THE HOME GROUNDNº 1221
THE COMPS LEDGER — the LSC-1 face
THE CARD AS TEXT · FOR EYES AND FOR MACHINES

THE COMPS LEDGER · What things actually sold for: sold only, dated, counted, and never a guess below three.

WAKES WHEN Someone is pricing a used bike or a rare item from past sales. · A seller wants a model's price trend over time. · Asking prices need keeping apart from real sales.

THE LOOP

  1. Log each sale with grade, price, fees, date
  2. Comp sold rows inside the age window
  3. Below three sales, say so: no median
  4. Show the trend; keep asking prices apart

NEVER

  • Never counts an asking price as a sale
  • Never gives a median on fewer than three
  • Never appraises

IT MAKES add — append one row (sold rows need --sold-on); comp — sold rows only, inside max-age days: n, median, low, high, IQR, date range, median net of fees (365 and 3 are defaults; set your own); trend — median sold price by calendar quarter with n per quarter; listed — listed rows apart, labelled asking, not sold; export — every row with whether it can enter a comp, as CSV (or JSON).

THE LAW A comp is a sale that happened. The card counts only sold rows inside the age window, prints how many and how old, and stops at NOT ENOUGH COMPS rather than guess.

IN THE BOX SKILL.md · CARD.md · ▣ scripts/comps.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 13/13 · 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 · C69CDF913827B85BBBFD5743

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

THE COMPS LEDGER

What things actually sold for: sold only, dated, counted, and never a guess below three.

ADD · COMP · TREND · LISTED · 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/comps.py · 5 commands · selftest 13/13
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
C69CDF913827B85BBBFD5743 · sha-256 of SKILL.md · check any file against it →

CITE THIS CARDTHE COMPS LEDGER, Edition 1. Lund Studio LLC, Westminster, Colorado. https://lundr.tech/?view=comps-ledger-card. Punch C69CDF913827B85BBBFD5743. Retrieved 2026-10-13.

What it is.

Use when pricing a used or rare item from what similar items actually sold for, kept in your own ledger. Not for appraisals, asking-price lists or investment advice.

It carries a machine that shows its working: add — append one row (sold rows need --sold-on); comp — sold rows only, inside max-age days: n, median, low, high, IQR, date range, median net of fees (365 and 3 are defaults; set your own); trend — median sold price by calendar quarter with n per quarter; listed — listed rows apart, labelled asking, not sold; export — every row with whether it can enter a comp, as CSV (or JSON) — 13 checks in its selftest. It never counts an asking price as a sale; never gives a median on fewer than three; never appraises.

The law, written into the card.

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

THE LAWA comp is a sale that happened. The card counts only sold rows inside the age window, prints how many and how old, and stops at NOT ENOUGH COMPS rather than guess.

The method.

  1. Log every sale you see or make: make, model, year, size, condition grade, price, fees, venue, date and whether it sold, was only listed, or was withdrawn.
  2. Comp an item from sold rows inside the age window only. Print n, the median, low, high, the spread and the dates they came from.
  3. Under three sales, print NOT ENOUGH COMPS with the count. No median is given.
  4. Show the trend by quarter with n for each quarter.
  5. Keep asking prices on their own list, labelled asking, not sold.

What you bring.

  • Your own record of sales: make, model, year, size, grade, price, fees, venue, date.

Planned as a separate seat, not in this box and not yet on sale: the studio's own comps ledger for the categories it trades.

What it does once your AI has it.

  • add Append one row (sold rows need --sold-on)
  • comp Sold rows only, inside max-age days: n, median, low, high, IQR, date range, median net of fees (365 and 3 are defaults; set your own)
  • trend Median sold price by calendar quarter with n per quarter
  • listed Listed rows apart, labelled asking, not sold
  • export Every row with whether it can enter a comp, as CSV (or JSON)

What it will never do.

It never counts an asking price as a sale; never gives a median on fewer than three; never appraises.

Where it hands off: Condition grading → THE SIX ANGLES; Provenance for the listing → THE PROVENANCE FILE; Formal valuations → a certified appraiser.

It is not an appraisal or financial 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/comps.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: the studio's own comps ledger for the categories it trades). Also not in the box: any data you must bring, and advice of any kind (not an appraisal or financial advice).

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

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º 1221 — 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

comps.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.

addappend one row (sold rows need --sold-on)
compsold rows only, inside max-age days: n, median, low, high, IQR, date range, median net of fees (365 and 3 are defaults; set your own)
trendmedian sold price by calendar quarter with n per quarter
listedlisted rows apart, labelled asking, not sold
exportevery row with whether it can enter a comp, as CSV (or JSON)
selftest13 checks that prove the machine; it must print selftest 13/13
THE SELFTEST, AS PRINTED
ok  1  comp: n=5 sold inside 365 days, median 300.00, low 100.00, high 500.00
ok  2  listed (9000) and withdrawn (5) rows never enter the comp
ok  3  a sale older than max-age (2024-01-01) is left out and counted
ok  4  comp prints its date range (oldest 2026-01-10, newest 2026-04-15)
ok  5  IQR by inclusive quartiles: Q1 200.00, Q3 400.00, IQR 200.00
ok  6  median net of fees uses only rows with fees (n=4: 90,180,360,450 → 270.00)
ok  7  n<3 → NOT ENOUGH COMPS (n=1, need 3), no median, exit 1
ok  8  trend: per-quarter n; 2026-Q1 n=3 median 200.00; 2024-Q1 n=1 NOT ENOUGH COMPS
ok  9  listed: asking prices shown apart, labelled asking, not sold
ok  10  add refuses a sold row with no sold_on date (exit 2)
ok  11  add refuses a price with a currency sign (exit 2)
ok  12  add appends a valid row, which then enters the comp (n=6)
ok  13  export is deterministic and marks listed rows 'no (asking, not sold)'
selftest 13/13

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 own record of sales: make, model, year, size, grade, price, fees, venue, date. 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 (13/13), 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 an appraisal or financial advice.

What will it never do?

It never counts an asking price as a sale; never gives a median on fewer than three; never appraises.

← THE HOME GROUND · THE FLOOR →

AT YOUR ELBOW, NEVER THE BOSS · NOT AN APPRAISAL OR FINANCIAL 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