Goal

The author reviewed the hub and asked for the following (translated from Italian):

  • Tone: rewrite it in a slightly lighter, occasionally sarcastic tone.
  • Four or five? Make clear whether the book has four kinds of agent or five, and why.
  • make check-env: reconsider it, given that local runs aren’t supported yet.
  • The study notes: drop every reference to a student’s notes on the book.
  • The book: cite the US edition precisely and give it due prominence.
  • The opening: start with how the series began. The author works on agentic-AI security, reopened the book (their Italian copy, studied years ago), remembered how well its concepts fit today, and wanted to run them in Docker Sandboxes.

Later in the session:

  • The subtitle was too long, too serious and too clunky.
  • PR #5 was merged for real. The first merge attempt hadn’t gone through.

What we did

  • The hub, rewritten (0a8f144):
    • A new opening: the author reopens AIMA, the copy studied years ago, followed by the full US reference set apart as a quotation block, with one light sentence on why the series paraphrases.
    • Four kinds plus learning, made explicit: the book describes four kinds of agent program, and learning (§2.4.6) wraps any of them with a critic, a learning element and a problem generator. Four plus learning makes five pieces.
    • “Run it yourself” keeps only make run-01 and what it needs.
    • A short subtitle: “Agents have changed a lot since 1995. Their problems, not so much.”
    • Length and checks: 1,994 words of prose; make article-check passes.
  • ADR-0015 (615f430): no study notes anywhere, and the book cited in full at the top of the hub. It amends ADR-0012 and CLAUDE.md §2.1–2.2. The bibliography keeps the ISBNs and the open US/Global question.
  • make check-env (ee1aece) now says next to its local line that the local tier isn’t published yet (ADR-0010).
  • The first CI run against a real sandbox (sandbox.yml, run 40570668299, after the merge of PR #5): piece 01 gave the same results.json on GitHub’s runner (Python 3.12.15) and in a cloud sandbox (Python 3.14.4). The sandbox lived 10 s, its TTL was 10 minutes, and nothing was left alive. Following the badge backlog, the README gained the “Cloud sandbox run” badge (a3a7739).

Commands that mattered

The cloud run in CI is make compare-01 (from the Makefile), run by .github/workflows/sandbox.yml:

make compare-01   # piece 01 on the host and in a cloud sandbox; fails unless results.json matches

Decisions

Dead ends and surprises

  • A merge that hadn’t happened. The author reported PR #5 as merged, but GitHub still showed it open. master had no sandbox.yml, so no sandbox run existed. Checking the PR’s state, rather than taking the message at face value, avoided pushing session 06’s work into a PR that was about to be merged. The real merge came minutes later.
  • The “four or five” confusion was the draft’s fault. “Four kinds, then learning, makes five” read as arithmetic without an explanation. The fix was to say what learning is in the book’s terms: a structure around any of the four kinds, not a fifth rung.
  • make check-env would have raised a question the article doesn’t answer. It reports local readiness, which a reader of the hub can’t use yet. It’s still a useful tool, just not one to put in front of readers.
  • Mentioning the author’s field (“I spend my days on the security of agentic AI”) names a field, not an employer or a job title, so it stays within CLAUDE.md §0.6. It’s in the article at the author’s request.

Who did what

  • The author: reviewed the hub and set its new opening, tone and sources; rejected the subtitle; created the cloud-sandboxes environment and its secrets; merged PR #5.
  • Claude: rewrote the hub and the subtitle, wrote ADR-0015, removed the notes from the repository, adjusted check-env, verified the first sandbox run, added its badge and wrote this entry.

Next

  1. The author: read the rewritten hub and pick a subtitle (alternatives are in the session summary).
  2. Claude: draft piece 01. The hub and 01 go out together (ADR-0007), and 01’s charts are ready.
  3. Then example 02, the first piece whose new code sandbox.yml will check after its merge.