)]}'
{
  "log": [
    {
      "commit": "220a36d6404a3a86af2537ca8572b9e28c77bcb6",
      "tree": "2329c0925b52432d519b7610b571328159ac5364",
      "parents": [
        "9320265a8e0ae7fb3091985c1999ed43bdae9525"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Thu May 08 19:06:26 2025 +0000"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Thu May 08 12:44:11 2025 -0700"
      },
      "message": "experiment: remove not_done experiment\n\nIt didn\u0027t make a difference.\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\nChange-ID: sc2849bd18751e2cak\n"
    },
    {
      "commit": "9320265a8e0ae7fb3091985c1999ed43bdae9525",
      "tree": "25a424999bee4597b971764640985585ce46f792",
      "parents": [
        "4d54493fe3808ecd0c6a9a4d0bbcc7786e97b094"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Thu May 08 02:05:57 2025 +0000"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Thu May 08 12:34:07 2025 -0700"
      },
      "message": "loop: update git commit instruction to use --trailer, add Change-ID\n\nWe have run \u0027git config\u0027 for the user, so we can trim those instructions and simplify.\n(And in unsafe mode, the user has \u0027git config\u0027 set up anyway.)\n\nInstead of prompting the model to manually add \u0027Co-Authored-By\u0027 as a line in the\ncommit message, now instruct it to use the --trailer option.\nThis streamlines adding a Change-ID trailer with a random string (s\u003crandom_hex\u003ek format).\n\nI\u0027d actually like to use precommmit hooks to automatically do all the trailer,\nbut that doesn\u0027t play nicely with -unsafe, so for now, do it this way.\nAt least we\u0027ll have Change-IDs that we can start using.\n(Pity the official change-id support in git hasn\u0027t landed yet.)\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\nChange-ID: s9b68cbfa4c7eeb82k\n"
    },
    {
      "commit": "f4047bbd0440a5cec265ef6805f97d18ca3b255e",
      "tree": "e8d00718fe1363d3826156bc5ce61fad1c25c582",
      "parents": [
        "e750ec9fb4821e241d6f0fbdfa1aeb031d025168"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Mon May 05 23:02:56 2025 +0000"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Mon May 05 18:20:24 2025 -0700"
      },
      "message": "claudetool/codereview: new package extracted from claudetool\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\n"
    },
    {
      "commit": "503b5e3543f69cc56c05bd02ce48666259d01f90",
      "tree": "b1d5efec44e4ff2d6094758b7ccb8d306055c53a",
      "parents": [
        "d7e56386b4243bb6b2f303ef824418bae971a836"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Mon May 05 13:30:55 2025 -0700"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Mon May 05 13:48:06 2025 -0700"
      },
      "message": "loop: add not_done experiment\n\nThis attempts to get the LLM to introspect a bit more\nwhile calling the done tool, encouraging it to change\nitself mind if it thinks better of its progress\nwhile working through the checklist.\n"
    },
    {
      "commit": "d7e56386b4243bb6b2f303ef824418bae971a836",
      "tree": "cb2d5668a2bdb0b4b1c86864c846dbeb9708d6ef",
      "parents": [
        "c6a2c2408e1fbacbff92931190b3558b8e353944"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Mon May 05 13:22:08 2025 -0700"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Mon May 05 13:48:06 2025 -0700"
      },
      "message": "loop: pull done tool description out into a constant"
    },
    {
      "commit": "c6a2c2408e1fbacbff92931190b3558b8e353944",
      "tree": "d3ea94cd8f8190f0561b23b2d5d094b2406285eb",
      "parents": [
        "b4782147bb79cd34495c4418a351672bc44035de"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Tue Apr 22 18:04:16 2025 -0700"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Mon May 05 13:48:06 2025 -0700"
      },
      "message": "loop: clean up whitespace"
    },
    {
      "commit": "4f84ab729ddbf428b0e891940f08f70b4edee05c",
      "tree": "f2e52e4a01c188ada1f5acf8b2a013029b999495",
      "parents": [
        "44f9b4cec11e269a52fbfc099989ab425b8e125f"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Tue Apr 22 16:40:54 2025 -0700"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Fri May 02 12:57:44 2025 -0700"
      },
      "message": "all: support openai-compatible models\n\nThe support is rather minimal at this point:\nOnly hard-coded models, only -unsafe, only -skabandaddr\u003d\"\".\n\nThe \"shared\" LLM package is strongly Claude-flavored.\n\nWe can fix all of this and more over time, if we are inspired to.\n(Maybe we\u0027ll switch to https://github.com/maruel/genai?)\n\nThe goal for now is to get the rough structure in place.\nI\u0027ve rebased and rebuilt this more times than I care to remember.\n"
    },
    {
      "commit": "75ec6bb42c08c8407cb96025b070dc9f1eb66eb9",
      "tree": "b7563c63b29f1535c5904e180344423412daab4e",
      "parents": [
        "08951fb6789dc172d4719eb6a09fcac21f94ef95"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Thu Apr 24 10:49:16 2025 -0700"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Thu Apr 24 10:49:16 2025 -0700"
      },
      "message": "loop: add email address to Co-Authored-By trailer\n\n- It\u0027s the standard.\n- It\u0027ll let us set up a gravatar for hello@sketch.dev with the sketch logo.\n- It tells people how to find sketch (there was no domain or other hint anywhere).\n"
    },
    {
      "commit": "2e463fb649fcff14d4025ddb91f630a98e7da526",
      "tree": "0e86854d80d2759a913870655f13226c31f9d30c",
      "parents": [],
      "author": {
        "name": "Earl Lee",
        "email": "earl.lee@sketch.dev",
        "time": "Thu Apr 17 11:22:22 2025 -0700"
      },
      "committer": {
        "name": "Earl Lee",
        "email": "earl.lee@sketch.dev",
        "time": "Thu Apr 17 11:35:33 2025 -0700"
      },
      "message": "Initial commit\n"
    }
  ]
}
