# Source Shelf: a short, owner-approved list of industry reports your team reads, and a way to read them

> Keep a small set of major industry reports as your team's default evidence base: each with its edition, publish date, link on the publisher's own site, the date someone last looked for a newer edition, and a note on what the publisher sells. Read any one of them against three questions (what is changing, who is struggling, what could help them), with word-for-word quotes and page numbers, the third answer marked as your inference, and every figure matched to its quote. Every add, drop and replace waits for the owner's yes. Fifteen read-only checks run on the folder.

- URL: https://paperchasewebb.ai/bots/marketplace/items/source-shelf-owner-approved-industry-reports-read-three-ways/
- Type: Prompt pack
- Category: Solo business
- By: PaperChaseWebb
- Works with: Claude Code, Codex, Grok Bot, Hermes (named in the listing); A skill file for Claude Code, Codex and Hermes, an AGENTS.md snippet and a Grok Bot rules block; the scripts were tested on Linux with Python 3.13, the agent files were not loaded inside each harness and the method was not run on real reports
- Price: $19 USD
- Difficulty: Intermediate
- Setup time: 1 hr
- Time to result: A ratified shelf and a first reading in an afternoon
- Format: Markdown (.md) file, source-shelf-owner-approved-industry-reports-read-three-ways.md
- Version: 1.0, updated 2026-10-29
- License: Use for your own business and for shelves you keep for clients. Do not resell or republish the pack itself.

## What you end up with

When someone on your team cites a report, you can open which edition it was, where the publisher put it, who paid for it, and the exact sentence and page behind every figure; and no report joins or leaves the shelf without the owner's yes.

## What you get

- 19 sections in one .md file
- The shelf folder: shelf.json, reports, changes, readings, proposals and a ledger, with blank templates and a starter list of 16 candidate series (publishers only, no figures)
- A three-question reading: what is changing, who is struggling, what could help them, with quote and page rules and help kept as inference
- shelf.py: gate (exit 0, 11, 12), due, edition checks recorded in a ledger, a one-page shelf.md, owner approval tied to a sha256, verify, apply and one use per yes
- shelf_check.py: fifteen read-only checks, with a seeded test shelf (15 findings, then 0)
- A skill file for Claude Code, Codex and Hermes, an AGENTS.md snippet and a Grok Bot rules block
- Ten prompts, a failure table and a worked example
- A look at research templates, research agents, report publishers and report-list funnels, with sources

## Who it is for

Anyone who keeps quoting the same few reports and wants those quotes current, traceable to a page, and read the same way every time.

## Tools needed

- Grok Bot, Claude Code, Codex or Hermes: the research agent; it reads the skill file, AGENTS.md snippet or rules block, fills candidate rows from the publisher's own pages, records edition checks, reads reports against the three questions and writes proposals for the owner
- Python 3: runs shelf.py (init, hash, gate, due, checked, edition, report, owner approval, verify, apply, done) and the fifteen-check checker; standard library only, no network
- The owner: says yes to every add, drop and replace and to every proposal at their own terminal, tied to a sha256; approvals are refused inside agents and on piped input
- You need: Any of Grok Bot, Claude Code, Codex or Hermes
- You need: Python 3.9 or newer
- You need: One owner who approves shelf changes at their own terminal

Cost to run: The pack is the only purchase. The scripts use no model tokens; reading reports uses your agent's usual tokens. Some reports are paid or gated, and the owner decides whether to get them.

## How it works

1. **Run the tests.** Copy the source-shelf folder and run sh test_all.sh. Expected: 15 findings on the seeded shelf and 0 on the fixed one, 15 of 15 single faults caught alone, checker tests 60 passed, shelf.py tests 60 passed, exit 2 on a missing folder.
2. **Pick and fill candidates.** Run shelf.py init, fill shelf.json with the owner and lanes, then use prompts 1 and 2 to fill candidate rows from the publisher's own pages and write one add change per report. Expected: Each candidate has an https link on the publisher's domain, an edition, a publish date and a note on what the publisher sells.
3. **Get the yes.** The owner ratifies the rules and approves each add at their own terminal. The agent runs shelf.py verify and apply. Expected: Every shelved report has a ledger row tied to the owner's yes, and the checker shows 0 findings.
4. **Read one report.** Use prompts 4 to 7: changing and struggling with quotes and pages, help as your inference, then up to two proposals. Run the checker and shelf.py report. Expected: A shelf.md the owner can read in five minutes, with every figure matched to its quote.

## Sample prompt: Fill a candidate (Grok Bot, Claude Code, Codex, Hermes)

```
Open the publisher's own page for <series>. Fill the reports.csv row as a candidate: edition and publish date exactly as the page shows them, the link on that domain, access, cadence, basis, interest, lane and why. Then write an add change. If the report is behind a form or payment, stop and tell me.
```

Prompt 2 of 10.

## Sample prompt: Who is struggling (Grok Bot, Claude Code, Codex, Hermes)

```
From the same read, write the struggling row. Name who, as a kind of person or business. Quote the report and give the page. If the report does not say anyone is struggling, write that and stop.
```

Prompt 5 of 10.

## Sample prompt: Figure check (Grok Bot, Claude Code, Codex, Hermes)

```
List every number in readings.csv. For each, show the quote it came from. If any number is not in its quote, take it out of the answer.
```

Prompt 8 of 10.

## Free preview of source-shelf-owner-approved-industry-reports-read-three-ways.md

````markdown
# Source Shelf: a short, owner-approved list of reports your team reads, and a way to read them

Version 1.0, 2026-10-29. By PaperChaseWebb. A method and a working folder for keeping a small set of major industry reports as your team's default evidence base, each with its edition, publish date, link on the publisher's own site and a note on what the publisher sells, plus a way to read any one of them against three questions: what is changing, who is struggling, and what could help them. Seven plain files, a script that gates what an agent may do, records edition checks, applies the owner's shelf changes and writes a one-page shelf, a read-only checker with fifteen checks, templates, a starter list of candidate series, a seeded test set, ten prompts and the tests, all Python 3 standard library. Works with Claude Code, Codex and Hermes through a skill file and an AGENTS.md snippet, and with Grok Bot through a rules block. Tested as described in section 11: everything ran on Linux with Python 3.13, including owner approvals typed at a pseudo-terminal. The skill file, snippet and rules block were not loaded inside the harnesses for this release, and the method has not been run on real reports. Each is marked where it matters.

Lists of "reports that will shape your next business idea" are easy to find and easy to save. Most of them link to a post about the report rather than the report, give no edition, and say nothing about who paid for the research. Some are handed out only to 
````

## Test record

- Date: Oct 29, 2026
- What was run: shelf_check.py on a seeded shelf and a fixed copy, each planted fault alone, a missing input, and the unit tests. Linux, Python 3.13.
- Result: 15 findings on the seeded shelf, 0 on the fixed one; 15 of 15 planted faults caught alone; exit 2 on missing input; nothing written. 60 checker and 60 shelf.py tests passed, 0 failed.
- Not run: Real reports; the fixture is made up. The agent files inside Claude Code, Codex, Hermes or Grok Bot. Windows.

Copied from this item's dated test notes. What was not run stays in.

## Worth knowing

- The method has not been run on real reports; every publisher, report, quote and figure in the fixture and the worked example is made up. The starter list names publishers and series only, with no editions or figures, and was not checked for current editions.
- A report tells you what its authors found among the people they asked. The pack does not claim that a struggling group in a report will buy anything; pair it with the Problem Mining Loop or your own calls for that.
- The skill file, AGENTS.md snippet and Grok Bot rules block were not loaded inside Claude Code, Codex, Hermes or Grok Bot. Linux only; Windows was not tested. The scripts open no network connection; your agent reads pages with its own tools.
- The approval step refuses piped input and the environment variables Claude Code, Codex, Hermes and Grok Bot set. That stops an agent approving its own change; it is not a lock against someone with the same account.
- On 2026-10-29, on Linux with Python 3.13: shelf_check.py gave 15 findings on the seeded shelf (each check once) and 0 on the fixed one, caught 15 of 15 single faults with only its own check, wrote nothing, and exited 2 on a missing folder, missing reports.csv or broken shelf.json; checker tests 60 passed, 0 failed; shelf.py tests at a pseudo-terminal 60 passed, 0 failed.

## Questions

**Which reports should be on it?** Ones that come out on a schedule, say who they asked or what data they used, and cover one of your lanes better than anything else you have. The starter list gives sixteen series to consider, and you check the current edition on each publisher's page.

**Does it give me the reports' findings?** No. It quotes no real report and gives no figures from one. It gives you a way to read them and keep what you read checkable.

**What about reports behind a form or a paywall?** The agent stops and tells the owner. Agents never buy, register, subscribe, give an email address or comment to unlock a report.

**How is this different from the Problem Mining Loop?** The shelf reads what researchers published; the loop reads what buyers say in their own words. A struggling group the shelf finds becomes a buyer type the loop goes and checks.

## How to buy

$19 one time at https://paperchasewebb.ai/bots/marketplace/items/source-shelf-owner-approved-industry-reports-read-three-ways/. Stripe checkout, then an instant download page; the download link is also in your emailed receipt.

Seller: PaperChaseWebb Inc., mgmt@paperchasewebb.com
