`.
- 3-5 bullet observations.
- Newest entries first within each timeline.
Useful vocabulary: bud break, leaf-out, bloom, first flush, structure,
framework, composition, layered, anchor plant, soft layer, sculptural,
brick-edged bed, lattice, foundation bed.
Template for an existing plant page:
```html
May 31, 2026
Short specific title
Two or three concrete sentences about the plant, light, stage,
surrounding bed, or change since the last entry.
One sentence that captures this exact moment.
- First concrete observation.
- Second concrete observation.
- Third concrete observation.
```
For a new plant page, copy the structure from an existing page such as
`/plants/dwarf-peach-tree/index.html`, then add a directory card to
`/plants/index.html`.
## AI news
AI news lives in `/ai-news/`.
Important files:
- `ai-news/feeds.json` - source list.
- `ai-news/fetch_ai_news.py` - fetch, dedupe, score, and output script.
- `ai-news/data/items.json` - persistent item store.
- `ai-news/public/ai-news-latest.json` - latest public feed.
- `ai-news/public/ai-news-daily-YYYY-MM-DD.json` - daily digest.
- `ai-news/index.html` - rendered page shell.
To add or adjust feeds, edit `ai-news/feeds.json`, then run the fetch
script from the `ai-news/` directory. Validate that JSON output updates
and that the page still loads from relative paths. Some sources may rate
limit or block fetches; do not fake items from unavailable feeds.
Recent feed focus includes AI model/tooling releases such as Ollama,
LiteLLM, Hugging Face Transformers, llama.cpp, and Model Context
Protocol SDK releases.
## Computer Chronicle
Computer Chronicle lives in `/computer-chronicle/`.
This is intended to update every morning as a chronological weekly 1982
historical newspaper section. Each new issue should use the next week
from the Chronicle state file, while `currentDate` records the publication
date in Jez's timezone, `America/New_York`.
The newest issue must match today's America/New_York publication date and
the next 1982 sequence week before a daily image is generated or posted.
Do not let the image cron treat the latest archived issue as current just
because it is newest in the JSON.
Every morning update must preserve the previous day's issue in the
archive before replacing the current front page. Do not overwrite or
discard yesterday's researched issue; keep it in `issues` so the archive
selector and old links can still load it.
The intended experience is a nostalgic morning read, not a deep research
report. Keep it skimmable in roughly 2-5 minutes, with a familiar daily
section rhythm and one small "oh wow" curiosity item when possible.
Each morning should feel like a new issue, not yesterday's page with new
text. Vary the `visualProfile` when appropriate: layout, strapline,
accent palette, paper feel, `heroImage`, article image placement, ad
treatment, and which sidebars are emphasized.
Use `masthead` for issue-front copy. The title may remain the publication
identity, but the kicker/deck should reflect the day's editorial angle.
Nostalgia texture to favor when it is historically appropriate: TRS-80,
Commodore 64/C64C, Atari 800/XL, Amiga, BBS culture, modem calling,
phone phreaking, warez-trading culture, movie/music collecting, arcades,
malls, consumer technology, electronics, and electric guitars. Do not
make the page only about these topics; it should still read first as a
newspaper from the historical day.
Editorial priority:
- Prefer personal computers, home computing, office PC software, and
personal computer or console gaming when there is a choice.
- Include multiple games when possible, and list the original/current
platform context for each game rather than only the title.
- Use exact-day computer news when verified.
- If exact-day computer news is thin, use same-week or same-month
personal-computing items with confidence labels.
- If the target date has no strong exact-day computer story, say so
plainly in the issue and use exact-day culture/business/world items as
date anchors while keeping same-week computer material clearly labeled.
- If the computer desk has no strong lead, use a real world/business
fallback headline for that historical date while keeping the computer
roundup visible.
- Include a small Dow/Nasdaq market box when verified daily closes are
available.
- If including music, prefer period rock-radio or album-rock tracks over
general pop hits unless Jez asks otherwise.
- Use real period advertisements or clearly sourced ad references.
Do not invent fictional businesses or ads for the page.
- Do not expose image-generation prompts, prompt builders, or private
generation briefs in public HTML, JavaScript, or JSON.
- Keep the browser print/PDF output source-safe. The `Print Issue`
control should render the researched page itself as the newspaper
artifact; generated newspaper images are style experiments unless a
later pipeline can lock the text to verified page data.
- Keep source/confidence labels in the data. Do not turn context into
fake exact-day claims.
- Put source links near the article, sidebar, shelf item, chart, or ad
they support using item-level source references. The bottom source log
can remain as a research index, but readers should not have to hunt
there to see where a visible claim came from.
- Include `accuracyLedger` for each issue. It should quickly count and
explain exact-day items, same-week/current-period items, and period
context/generated visual material so the morning issue has an audit
trail without becoming a research memo.
- Treat `bbsNote`, `curiosity`, `periodAd`, and the game shelf as daily
rotating editorial slots. The BBS item should read like a dated sysop
log or board digest tied to that issue, not a generic explanation of
what BBSes were.
- Use `briefs` for small disposable notices that make the issue feel
alive: mall notes, phone-line notes, short media/arcade/electronics
observations, or tiny context items tied to the day. Rotate them often.
- Include several clippings/images when possible. Treat them as daily
photo assignments, not permanent era wallpaper. Each issue should use
new or deliberately selected clippings tied to that day's visible
stories, games, BBS topics, ad references, music, mall/arcade context,
or technology items.
- Place images with the article, shelf, sidebar, or digest item they
illustrate. Do not use a standalone generic clipping gallery unless
the whole issue is explicitly designed around a photo spread.
- Do not reuse the same generated period-style clipping set across daily
issues unless it is intentionally framed as a recurring masthead/house
art asset. Label generated period-style visuals as visual context
rather than archival evidence.
- Static or slow-changing sections are acceptable only when they are
explicitly framed as context, prices, verification, or archive tooling.
- The `Tomorrow's Desk` panel is operational guidance for the next daily
run. It should stay compact and rotate only when the update workflow
changes; it is hidden from print output.
- If the current day's researched issue is missing, the page must make
that clear and show the latest archived issue as stale rather than
silently presenting it as today's paper.
- Daily Discord newspaper images must be based on the current issue whose
`currentDate` equals today's America/New_York date and whose
`historicDate` is the next chronological 1982 week from the Chronicle
state file. If that issue is missing or stale, do not generate a generic
1980s image; report that the Chronicle issue needs the correct week
first.
- Daily Discord newspaper images should include visible date-specific
cues from the issue's exact-day and accuracy-ledger fields. The image
can be nostalgic, but the caption/prompt source must be date-first:
exact-day items, prior-trading-day notes, same-week computer items, and
period context must not be collapsed into one fake headline pile.
- When publishing a new issue, move yesterday's issue into the archive
first, then add today's issue as the newest/current entry. The archive
is part of the product, not cleanup debris.
- Use `visualProfile` for issue-level presentation choices. Keep changes
restrained and newspaper-like, but avoid repeating the same visual mix
every day.
- Use `heroImage` for the issue-front visual. It should normally change
with each daily issue and tie to the day's strongest verified or
contextual story.
- Use `masthead` for the daily front-page kicker, title, and deck. Keep
it concise and newspaper-like.
- The front-page index is rendered from issue data as a morning skim. It
can be overridden with `frontPageIndex` entries when a day needs
specific teasers, but avoid making it a second table of contents.
- Use `layoutPlan` to vary department order by issue. The strongest or
most nostalgic verified material can move upward; utility sections
like source trail and verification should usually stay near the bottom.
- Use `sectionChrome` to rename labels and section titles when the day
calls for it. Avoid generic reuse like "Modem Desk" every morning if a
more issue-specific label fits.
Important files:
- `computer-chronicle/index.html` - rendered page shell.
- `computer-chronicle/assets/chronicle.js` - client-side renderer.
- `computer-chronicle/data/issues.json` - public structured issue data.
- `computer-chronicle/validate-issue-data.mjs` - validation script for
archive order, 1982 weekly sequence mode, source references, image files,
and public prompt-safety checks.
Before publishing a Chronicle update, run:
```bash
node computer-chronicle/validate-issue-data.mjs
```
## Image prompt gallery
The Daily GPT Image 2 prompt gallery lives at
`/experiments/image-gen-2-benchmark/`.
Important files:
- `experiments/image-gen-2-benchmark/index.html`
- `experiments/image-gen-2-benchmark/prompts.json`
- `experiments/image-gen-2-benchmark/gallery-data.json`
- Image assets under that experiment's folders.
Keep prompt records factual: prompt text, date, model/context if already
tracked, and the generated image path. Do not invent prompts or dates.
## AI sounds
AI sounds live in `/ai-sounds/`.
The page preserves AI-generated tracks copied from Discord's AI Sounds
channel. Future updates should keep the focus on individual tracks:
title, file, duration/size/date where known, prompt idea, recipe,
context, and audio file.
Do not invent generic artwork. If adding per-track images, use artwork
Jez provided or explicitly approved.
## Games, weather, ops, and prototypes
- Add new playable experiments through `/games/index.html` using the
existing card and link patterns.
- Weather console changes should stay inside `/weather/` unless the
home-page card also needs copy or art updates.
- Ops/stat pages should stay inside `/ops/` unless promoted to the home
page.
- Hidden Reef prototype work belongs under `/prototypes/hidden-reef/`
unless Jez asks to deploy it elsewhere.
## Home page
The home page is a workbench hub. If adding a major new site section,
update both:
- the card grid in `/index.html`
- the assistant-facing overview in this `llms.txt`
Do not use `content/site.json` as the only source of truth for the
current home page; the live home card grid is currently hardcoded in
`index.html`.
## Output to Jez
When proposing or completing a site update, report:
1. What changed.
2. The exact files changed.
3. Any commands run to validate or regenerate data.
4. The commit hash if pushed.
If the task involves an uploaded image and you are not directly editing
the repo, provide:
1. Destination page.
2. Image filename/path.
3. HTML snippet and insertion point.
4. Suggested commit message.
Do not invent plant IDs, cultivars, dates, prompts, track details, news
items, or history. Ask if the subject or destination is genuinely
ambiguous.