)]}'
{
  "log": [
    {
      "commit": "ca535584da37312f2f826c2c6bb8fec81f22b4ef",
      "tree": "8a84914e564e7a8edf0eb2aeaba9b2b93838d971",
      "parents": [
        "99231ba279ce3ebf5cb87494c3cde1f6e27257fc"
      ],
      "author": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Sat May 03 13:04:34 2025 -0700"
      },
      "committer": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Sat May 03 13:06:55 2025 -0700"
      },
      "message": "dockerimg: set http.postBuffer for git inside container\n\nWe sometimes see failures with git push from the innie to the outie.\nIt appears to be when there is a big binary in the commit\n(which is usually because of a different bug).\nThe internet suggests the HTTP POST limit in the git client\nmay be an issue (1MB in the git version in debian bookworm),\nso let\u0027s bump it up.\n"
    },
    {
      "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": "fa67fe5ec3ac9ad434054035285d4d53f9211d7f",
      "tree": "5b7e5c85d71e5927a580213ca11398973e544e13",
      "parents": [
        "a352ca65720f937cdc733414bce393d22f9a787c"
      ],
      "author": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Thu May 01 20:42:08 2025 +0000"
      },
      "committer": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Fri May 02 09:08:37 2025 -0700"
      },
      "message": "dockerimg: remove buildx dependencies from Dockerfile\n\nMain changes:\n1. Removed --mount\u003dtype\u003dcache for apt-get operations and added cleanup steps\n2. Removed --mount\u003dtype\u003dcache for Go tools installation\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\n"
    },
    {
      "commit": "a3dcd86d1c05e95ee9c058a43262458a92160898",
      "tree": "86a49759e93940a80c940703a0d03a7084a90dd1",
      "parents": [
        "8da3d456505ec29a27d73720731a929cfab46b3f"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Wed Apr 30 19:47:16 2025 +0000"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Thu May 01 12:39:18 2025 -0700"
      },
      "message": "ant: improve encapsulation\n\n- Replace string literals with package constants for message roles and content types.\n- Create UserStringMessage helper function to simplify user message creation\n- Replace manual Content creation with ant.StringContent()\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\n"
    },
    {
      "commit": "5228b5850d8453c225e5611918fcd00b747c65cc",
      "tree": "f51bd5eb893b7830987a8593ab42f76a812e9bd5",
      "parents": [
        "a1e0e49213c07f74618f0e0f324e707792858e0c"
      ],
      "author": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Thu May 01 11:18:12 2025 -0700"
      },
      "committer": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Thu May 01 12:02:42 2025 -0700"
      },
      "message": "dockerimg: add SKETCH\u003d1 to sketch container\n\nAlso remove some extra files debian.\n"
    },
    {
      "commit": "c76a392d48f0070ccb011b04cbf25114671a8af4",
      "tree": "f8efdf643ac4cb6eef2acfb0227127887e8903a7",
      "parents": [
        "bc4947e41d50b5e1a8089600808047715b828305"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Thu May 01 01:18:56 2025 +0000"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Wed Apr 30 18:25:41 2025 -0700"
      },
      "message": "dockerimg: restore sketch_context docker label\n\nThe sketch_context label was removed in commit 2a5bd6d (switch to debian base image)\nbut the code that reads this label in findOrBuildDockerImage was left intact.\n\nThis was causing Docker to always rebuild images since the label it was checking\nfor no longer existed in the Dockerfile template.\n\nRestore the label and updates the template.Execute call to pass the required\nInitFilesHash parameter.\n\nUpdates #43\n"
    },
    {
      "commit": "bce3a13a7c16ffdb602b66550e6b3479d34fb9b0",
      "tree": "b83cf1209a5add2b71bc8b5a58d389bed460dd24",
      "parents": [
        "2a5bd6d3e22db146385bea9902e9dd9bc982377d"
      ],
      "author": {
        "name": "Philip Zeyliger",
        "email": "philip@bold.dev",
        "time": "Wed Apr 30 22:03:39 2025 +0000"
      },
      "committer": {
        "name": "Autoformatter",
        "email": "bot@sketch.dev",
        "time": "Wed Apr 30 22:10:21 2025 +0000"
      },
      "message": "Modernize and streamline Sketch top bar UI\n\nComprehensive improvements to the top bar interface:\n\nRemoved Elements:\n- Poll checkbox and all polling UI controls\n- Network status indicator and all status messages\n- Dotted underlines from tooltip elements\n\nButton Improvements:\n- Added SVG icons to Restart and Stop buttons\n- Made buttons responsive (text hides below 1400px)\n- Stop button now disabled when no active calls\n\nLayout Simplification:\n- Simplified hostname display (outside hostname only)\n- Simplified working directory display (outside directory only)\n- Repositioned tab chooser for better layout\n- Improved responsive behavior across viewport sizes\n\nEnhanced Features:\n- Added GitHub repo auto-detection with clickable links\n- Improved VSCode integration with button styling\n- Changed \u0027SSH Connection\u0027 to \u0027Connect to Container\u0027\n- Enhanced tooltips with more descriptive text\n\nThe UI is now cleaner, more responsive, and provides a better user experience\nacross different screen sizes.\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\n"
    },
    {
      "commit": "2a5bd6d3e22db146385bea9902e9dd9bc982377d",
      "tree": "0d51ce5180913d1fc9d0acba122aed1894c546b7",
      "parents": [
        "320113391429ba3531aa772e4e32ba41998afbaa"
      ],
      "author": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Wed Apr 30 14:29:46 2025 -0700"
      },
      "committer": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Wed Apr 30 15:05:04 2025 -0700"
      },
      "message": "dockerimg: switch to a debian base image\n\nDeveloping on a musl-based alpine image seems to suck.\nA lot of python stuff doesn\u0027t work.\nEven when told it\u0027s alpine, LLMs still want to apt-get install things.\n\nAlong with switching to debian, simplify everything.\nWe *always* use debian bookwork now. If there are python\nthings, the LLM needs to install them on top of the model.\nThis will make fallback mode easier: if a build fails, then we\ndrop ExtraCmds and try again. (Future work.)\n\nWhile here: avoid using docker buildx in tests because\nit seems to vary a lot version-to-version.\n"
    },
    {
      "commit": "e2d24ab80f34e25f602b306ea8e8b765101d8585",
      "tree": "0ba0f2f3874069024baf1af857ec67d045ea813d",
      "parents": [
        "dbe02304e804066bb32fcf6f41690336a98e6531"
      ],
      "author": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Wed Apr 30 00:01:41 2025 +0000"
      },
      "committer": {
        "name": "Josh Bleecher Snyder",
        "email": "josharian@gmail.com",
        "time": "Tue Apr 29 17:41:18 2025 -0700"
      },
      "message": "dockerimg: add \u0027apk add grep\u0027\n\nClaude wants to use lots of grep features that the busybox version lacks.\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\n"
    },
    {
      "commit": "5bff650e0d5603dc77efccb4b4610648aa83cbf6",
      "tree": "5475e933d40bb3577c01952772d0f49301d37b60",
      "parents": [
        "1112949adc2bb120a001a925c0c4e9e18def0ee6"
      ],
      "author": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Sat Apr 26 09:11:40 2025 -0700"
      },
      "committer": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Sat Apr 26 09:11:40 2025 -0700"
      },
      "message": "fix oddball formatter complaints\n"
    },
    {
      "commit": "1112949adc2bb120a001a925c0c4e9e18def0ee6",
      "tree": "591396d3d0932a475dc1db5d79b2b96b649daaba",
      "parents": [
        "5fdd024fa3d3df5fe5a2c216672d912b6aade60a"
      ],
      "author": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Fri Apr 25 20:41:53 2025 -0700"
      },
      "committer": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Fri Apr 25 20:43:00 2025 -0700"
      },
      "message": "dockerimg: use a default image from a public registry\n\nIf the LLM chooses our default alpine Go image, we save some\nwork by instead starting from a sketch docker image pushed\nto ghcr.io.\n"
    },
    {
      "commit": "cc3ba220373b62dd5a098180ea6797af76407525",
      "tree": "f2e5dcea13fb8da2b652d79d7f5f0bf762c8a395",
      "parents": [
        "18532b212b8c108cc1c8bfcbaf5804a5c4156655"
      ],
      "author": {
        "name": "Philip Zeyliger",
        "email": "philip.zeyliger@gmail.com",
        "time": "Wed Apr 23 14:52:21 2025 -0700"
      },
      "committer": {
        "name": "Philip Zeyliger",
        "email": "philip.zeyliger@gmail.com",
        "time": "Wed Apr 23 19:28:10 2025 -0700"
      },
      "message": "sketch: Add python3 to our container image\n"
    },
    {
      "commit": "be10fa9661f7382453dd1bf9b63eb3615c48e2e7",
      "tree": "d147e67682c51b2b66d562bf4271edb513064609",
      "parents": [
        "b9eaef5da7b64da01637bb4fe60bea43bba75ede"
      ],
      "author": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Fri Apr 18 01:16:00 2025 -0700"
      },
      "committer": {
        "name": "David Crawshaw",
        "email": "david@zentus.com",
        "time": "Fri Apr 18 01:17:59 2025 -0700"
      },
      "message": "dockerimg: mkdir .cache in the base template and rebuild when the template changes\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"
    }
  ]
}
