2026-04-18

Joey (Diesel Books) feedback on Guild Manifesto

Sent guild-manifesto Notion link to joey-diesel yesterday asking: does this describe a problem you have, does the solution sound real. Response this morning.

Resonated

  • “The best experience in retail is delivered by the people with the worst tools in retail” — he flagged this line directly, “i felt that”
  • Under-the-hood optimization of customer memberships: “we do our best to give everyone as much attention as we can, but yea, i can’t remember everyone’s name all the time”

Pushback

  • Shift from owner-language to staff-language. At Diesel everyone on the floor works regulars, each bookseller has their own. The manifesto currently reads as if one owner holds all the customer relationships. Rewrite to make the tool useful to any staff member with their own set of regulars. This is a real voice problem in the doc, not just cosmetic — it reframes who the primary user is.
  • “Fighting for allocation” framing doesn’t apply to him. Diesel gets heavy publisher-rep attention despite small size, orders daily, 32-box shipment days on the light side. He’s aware his shop is an outlier but calls out that Amazon-fucks-everyone framing misses his reality.
  • Collective distribution model unclear to him. Not sure how it would work at shop level. He notes other shops are Ingram-only and don’t talk to publishers — wide variance in how indies operate.

Implications

  • Manifesto needs a pass for staff vs. owner voice. Core product thesis (the shop that knows you) still lands; the framing of who it helps needs broadening.
  • Allocation-scarcity framing is a segment-specific hook, not universal. Works for shops starved by distributors; doesn’t for rep-favored shops. Either soften as one of several pain points or segment the pitch.
  • Collective distribution layer may need a clearer “who this is for / who this isn’t for” gate. Ingram-only shops and rep-favored shops are different customers.

Next

  • Revise manifesto: staff-oriented voice pass
  • Add segment framing to allocation/distribution sections
  • Follow up with Joey on what would make the distribution layer real for Diesel

Joey followup: supply-side is the real chokepoint

Came back later with more once I told him I’d done the staff-voice + allocation-framing edits. Second exchange got deeper into the industry structure. Captured in bookstore-supply-chain.

What validated

  • Demand-intelligence thesis lands directly: “using the sales intelligence, I think we can leverage seeing a trending bestseller before it pops off”
  • Mentioned our existing multi-social-network trending feed; Joey is into it

What’s a real hole in the manifesto

Demand intelligence alone doesn’t solve the problem because publishers physically can’t print enough. Joey’s example: PRH underprints “the belle burden book,” Diesel gets 40 copies, gone by weekend, 2-week restock even with a rep running allocation games. ~7 at-scale printers worldwide. Amazon’s pre-orders hoover stock. Publishers sometimes fall back to POD which feels off.

Our Layer 3 pitch (“the network can go to publishers saying we know demand better, print this much”) works in theory but runs into the printer-capacity ceiling that sits upstream of publishers themselves. Joey: “publishers have painted themselves into a corner with appeasing Amazon and then squeezing every at-scale printer out of the industry.”

Implication: the manifesto needs a sentence acknowledging the supply-side constraint, not just the allocation-asymmetry problem. It sharpens the vertical-integration case (printer → publisher → distro) but we probably don’t want to promise that in the manifesto itself.

Information asymmetry, confirmed

Shops report into Bookscan / Above the Treeline / NYT and get nothing back in aggregate. The data already exists and shops don’t own it. Reinforces Layer 3 framing.

Discount gap

Amazon 52% / indies 46%. Joey: “If indies are such a small piece of your bucket give us +3% and we can afford to give our people insurance, like be serious.” Real margin lever if any platform could negotiate it.

Bookshop.org

Joey has Andy’s email, met with him at Winter Institute. Reports bookshop.org as immensely slow-moving, still fulfills through Ingram. Not a vertical threat. Potential intro path if relevant later.

Antitrust theater

Every ABA meeting opens with “technically you’re all competitors, can’t talk about pricing, would be collusion.” Joey’s read: nonsense since prices print on the book. But it chills cross-shop coordination talk. Worth knowing before we pitch coordinated purchasing publicly.

Payments pain + Batch for Books

Some publishers still require phone calls, some only take checks, paper invoices get missed. UK has Batch for Books as universal payment standard, free for bookstores. US: PRH, Macmillan, Harper on it. S&S coming. Most others not. Joey: “you already do this shit overseas assholes.” Near-term integration opportunity for Guild.

Panat framing that landed

Told Joey the long-term bet is vertical integration — our own printer, publisher, distro, properly run with good technology. Joey’s response: “the solution is regional distribution that can get books to stores faster than the publishers can, and then I’m like, did we just reinvent the bus.” Self-aware about the “every AI model for optimizing transit invents trains” problem.

Reading

  • Chokepoint Capitalism, Cory Doctorow — Joey’s rec

Next

  • Manifesto: add one-sentence acknowledgment of the print-capacity chokepoint in Layer 3 or Layer 4
  • Investigate Batch for Books integration as a near-term Guild feature
  • Verify the “7 at-scale printers worldwide” number
  • Get Chokepoint Capitalism

Scoped Hermes Agent Creative Hackathon submission

Scoped Hermes Agent Creative Hackathon submission

Decided on concept and architecture for the Nous Research × Kimi Moonshot creative hackathon. Submission due EOD Sunday 2026-05-03. Full plan in hermes-puppet-theater.

The concept

Weighed two ideas: (1) Kriegspiel wargame with Hermes generals vs. Kimi arbiter, (2) Hermes agents as Shakespeare’s rude mechanicals performing Pyramus & Thisbe. Picked (2) — metatheatrical AI commentary lands harder in a demo video than agent-vs-agent wargame, which is a crowded genre. Kriegspiel has the cleaner mechanical hook but the mechanicals concept is creatively louder and on-thesis for “creativity + presentation” judging.

The piece: 6 Hermes Agent instances play the mechanicals (Quince, Bottom, Flute, Snout, Snug, Starveling) performing Shakespeare’s inner-play from Act 5 Sc 1 as a papercraft puppet show in Paper Mario: TTYD aesthetic. A 7th Hermes instance running Kimi K2.5 plays the Athenian court audience (Theseus, Hippolyta, Philostrate) heckling in real time. No narrator, no director.

The humor is Shakespeare’s own: agents that refuse theatrical illusion, over-literalize everything, break the fourth wall. Snout explains he’s a wall. Snug announces he’s not actually a lion. Bottom hams. This is not “prompt them to make mistakes” — the failure modes are baked into each agent’s persona and collide naturally.

The core architectural bet

The stage is the only coordination surface. No orchestrator, no director. Mirrors actual theater: rehearse, then perform without direction.

A shared Stage MCP server exposes:

  • observe(since, timeout=30s) — long-polling read of the shared event log. This is the keystone primitive: agents wait without burning tokens.
  • Write tools: say, move, enter, exit, gesture, prop, aside, narrate, plus heckle for the court.

Each agent runs in a loop: observe → decide if it’s their cue → optionally act → repeat. They know their cues from the script + the live event log showing what other agents just did. That’s it.

7 isolated Hermes Agent instances via HERMES_HOME=~/.hermes-{role}. Each with its own config, memory, and model. Confirmed this is the clean path after exploring /home/panat/projects/dungeonbooks/hermes-agentrun_agent.py exposes AIAgent.run_conversation() for programmatic boot, MCP via config.yaml, no cron or subagent primitives needed.

Heterogeneous models as the submission story

Each mechanical literally is a different agentic model. The creative thesis — earnest heterogeneous agents misperforming Shakespeare, coordinating only via the stage — reads louder when they’re actually different models at the weights level, not just different system prompts.

Quince = GLM 5 · Bottom = GPT-5.4 · Flute = Gemini 3 Flash · Snout = Mistral Small 4 · Snug = MiniMax M2.7 · Starveling = Sonnet 4.6 · Court = Kimi K2.5.

Kimi K2.5 is free and its court heckling satisfies the Kimi Track eligibility (must show Kimi on screen). Prototype phase uses Mistral Small 4 for all agents for cheap iteration; swap in heterogeneous cast for curated takes. Total token spend estimated well under $20 across all takes.

Visual + audio

Paper Mario: TTYD proscenium stage, vanilla JS + CSS cutouts, no Pixi. Crude is the aesthetic — any WebGL polish undermines the conceit. Subtle paper-wobble idle animation (2-3° rotation, staggered 4s loop) is the single cheapest trick that sells papercraft.

Audio: animalese.js — Animal Crossing-style per-character blips synced to typewriter bubble reveal. Per-puppet pitch mapping gives each mechanical a distinct vocal texture. No TTS. Good call from Panat — animalese is more papercraft-consistent than voiced dialogue and costs nothing.

Asset pipeline

Midjourney, single consistent style pass. ~30 assets total (6 mechanicals × ~2-3 poses each + 3 court silhouettes + 6 props + 3 backdrops). Generated in first two days.

Style spine: “paper cutout puppet, flat, visible paper texture and edge shadows, hand-painted gouache, Paper Mario Thousand-Year Door aesthetic, [subject] on transparent background.”

Decisions made today and why they held

  • B over A on agent architecture: 7 isolated Hermes instances vs. one Hermes orchestrating internal API calls. B gives persistent per-agent memory across beats — Bottom accumulates cockiness, Flute stays resentful, Quince grows flustered. Character development is only possible with long-running per-agent context. Worth the extra infra.
  • No director, pure emergent coordination: Panat’s framing — “agents watch each other, know their cues.” Matches real theater. Stronger demo story than any turn-taking scheduler.
  • Puck cut: Was considering a minimal 8th agent to transform Bottom into ass-head mid-performance. Creative liberty vs. canon anyway (ass-head is in the forest rehearsal, not Act 5). Dropped for scope discipline.
  • Local only, open-source at submission: Railway deploy tempting but would be abuse bait. Can post-hoc deploy just the stage renderer replaying a curated log if we want a live URL later.

Why this should score well

Hackathon judges on creativity, usefulness, presentation. This concept:

  • Creative: metatheatrical AI commentary, literal Shakespeare reference, genuinely novel demo format
  • Useful: the Stage MCP + character brief pattern is reusable infrastructure for any multi-agent performance/collaboration scenario
  • Presentation: papercraft aesthetic + animalese audio + typewriter bubbles is inherently video-friendly; the submission artifact is a deterministic replay of a curated log, so the video quality is fully within our control

Qualifies for both tracks: Main (5k pool).

Next steps

  • Day 1-2: Midjourney asset generation, style lock, full manifest
  • Day 3-4: Stage MCP server — long-polling observe, act tools, JSONL event log, WebSocket broadcast
  • Day 4-5: Browser stage — DOM puppets, CSS transitions, typewriter bubbles, animalese, backdrops
  • Day 6-8: 7 Hermes configs, character briefs, single-agent smoke test, wire MCP
  • Day 8-10: Full cast runs — prototype on Mistral, then heterogeneous cast
  • Day 10-12: Curate takes
  • Day 13-14: Final render, screen capture, demo video edit
  • Day 15: Tweet, writeup, repo open-source
  • Day 16 (2026-05-03): Submit