)]}'
{
  "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",
  "tree_diff": [
    {
      "type": "delete",
      "old_id": "fcce0cddd22f94bf652a45e0d81b9a27dac0accf",
      "old_mode": 33188,
      "old_path": "ant/ant_test.go",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "b3b8b0349392b8fb94406ecefa51d1e3f0e064fc",
      "old_mode": 33188,
      "old_path": "claudetool/bash.go",
      "new_id": "882dddfe83dee971b9516889118c7078fed682df",
      "new_mode": 33188,
      "new_path": "claudetool/bash.go"
    },
    {
      "type": "modify",
      "old_id": "a6b3413261b2ce82733ab1cff168a8b986313c2b",
      "old_mode": 33188,
      "old_path": "claudetool/differential.go",
      "new_id": "d76209a80de6f2bd5f274fbcf958c3c58b66bcc2",
      "new_mode": 33188,
      "new_path": "claudetool/differential.go"
    },
    {
      "type": "modify",
      "old_id": "df83139215bb4e35d3d2a4c3df192567c4a56127",
      "old_mode": 33188,
      "old_path": "claudetool/edit.go",
      "new_id": "50084b7fb52f4d619e12d2a210da68c73175b90b",
      "new_mode": 33188,
      "new_path": "claudetool/edit.go"
    },
    {
      "type": "modify",
      "old_id": "a99e3cd1a54d902045fdc92e39c0fc90f9b8163f",
      "old_mode": 33188,
      "old_path": "claudetool/keyword.go",
      "new_id": "8c693be294e14203a922720f50d488107b907c12",
      "new_mode": 33188,
      "new_path": "claudetool/keyword.go"
    },
    {
      "type": "modify",
      "old_id": "92543195dd848842055b00cd8b8cbbdba70caeb1",
      "old_mode": 33188,
      "old_path": "claudetool/patch.go",
      "new_id": "0886e667aa87d4cf55a80c557f6063163be000a6",
      "new_mode": 33188,
      "new_path": "claudetool/patch.go"
    },
    {
      "type": "modify",
      "old_id": "293cc0b545e0ca007aa72248cfd00f703d27a18c",
      "old_mode": 33188,
      "old_path": "claudetool/think.go",
      "new_id": "69aac3c2689269e85dc493f1c590c90aba0c9d3e",
      "new_mode": 33188,
      "new_path": "claudetool/think.go"
    },
    {
      "type": "modify",
      "old_id": "f7d773f32c8440feb651f51958aa2c39fb2ced57",
      "old_mode": 33188,
      "old_path": "cmd/go2ts/go2ts.go",
      "new_id": "0a175a946c43411de19f5d102bb226c6edbab2c1",
      "new_mode": 33188,
      "new_path": "cmd/go2ts/go2ts.go"
    },
    {
      "type": "modify",
      "old_id": "e99d3546452e28d8cfb86e930643a401b3937928",
      "old_mode": 33188,
      "old_path": "cmd/sketch/main.go",
      "new_id": "183aef08846f578b94d3190da00a3886b25277ce",
      "new_mode": 33188,
      "new_path": "cmd/sketch/main.go"
    },
    {
      "type": "modify",
      "old_id": "12e876a8d0c5706fe05e6496950425dd762838f3",
      "old_mode": 33188,
      "old_path": "dockerimg/createdockerfile.go",
      "new_id": "75ece83760f44b602b047de0a131da4f4dfd95e3",
      "new_mode": 33188,
      "new_path": "dockerimg/createdockerfile.go"
    },
    {
      "type": "modify",
      "old_id": "292c8b6e021b83354935c3d2b7e3d8edafb1db02",
      "old_mode": 33188,
      "old_path": "dockerimg/dockerimg.go",
      "new_id": "14864356fbf4d1a41ab2033d0b93b1540d7e70cb",
      "new_mode": 33188,
      "new_path": "dockerimg/dockerimg.go"
    },
    {
      "type": "modify",
      "old_id": "9e39e9c776447033d6da00e063b6186e5ff15f75",
      "old_mode": 33188,
      "old_path": "dockerimg/dockerimg_test.go",
      "new_id": "7e41742fa637702995710b743ec9ab51b7c45cbc",
      "new_mode": 33188,
      "new_path": "dockerimg/dockerimg_test.go"
    },
    {
      "type": "modify",
      "old_id": "85d199c37a1214c034bb1bc0a8d26c70f895b9fb",
      "old_mode": 33188,
      "old_path": "go.mod",
      "new_id": "ccadaf1732de7fcd9caa1b766cd652616265d435",
      "new_mode": 33188,
      "new_path": "go.mod"
    },
    {
      "type": "modify",
      "old_id": "9f65af8914f28a70a0c7acd5cdeadcb3ee22b8f7",
      "old_mode": 33188,
      "old_path": "go.sum",
      "new_id": "5e1d73431102559947752f883775bb36453b4b5d",
      "new_mode": 33188,
      "new_path": "go.sum"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dce17f183fb9dca925a2653c7f86672786be6ef7",
      "new_mode": 33188,
      "new_path": "llm/ant/ant.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "67cc5db5f32f0b9bb3109e5e5c565ea0f7225de2",
      "new_mode": 33188,
      "new_path": "llm/ant/ant_test.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5a12256a3214c26e8d517b8b6a3b6ae97d49a5fc",
      "new_mode": 33188,
      "new_path": "llm/conversation/convo.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3fb1750934a34503a9805cd49f9032b81a2e0e20",
      "new_mode": 33188,
      "new_path": "llm/conversation/convo_test.go"
    },
    {
      "type": "rename",
      "old_id": "663de8d6e1a189166c838483c2257dc6110241da",
      "old_mode": 33188,
      "old_path": "ant/testdata/basic_convo.httprr",
      "new_id": "663de8d6e1a189166c838483c2257dc6110241da",
      "new_mode": 33188,
      "new_path": "llm/conversation/testdata/basic_convo.httprr",
      "score": 100
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3ba6ed4d946015cab34cdf151854341c4d4c6368",
      "new_mode": 33188,
      "new_path": "llm/llm.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1c3189eb02d5534cba9e5b87432d5a894076177b",
      "new_mode": 33188,
      "new_path": "llm/llm_string.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3e772ab4ac1c5b29c1f3fb5e669cf8a190ceb476",
      "new_mode": 33188,
      "new_path": "llm/oai/oai.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7bea552b10251b2a6450e92982a520b315d92373",
      "new_mode": 33188,
      "new_path": "llm/oai/oai_test.go"
    },
    {
      "type": "modify",
      "old_id": "307638529e2b3377bcc5754910c922a19e521e42",
      "old_mode": 33188,
      "old_path": "loop/agent.go",
      "new_id": "960bf5a66ba817938121a0833624c72d8d130a48",
      "new_mode": 33188,
      "new_path": "loop/agent.go"
    },
    {
      "type": "modify",
      "old_id": "0924b39df5feca8f804f02574f0d71c68d81118e",
      "old_mode": 33188,
      "old_path": "loop/agent_test.go",
      "new_id": "56708e395a9d82eebf8752958beb74c8673926f7",
      "new_mode": 33188,
      "new_path": "loop/agent_test.go"
    },
    {
      "type": "modify",
      "old_id": "e4b0542fe44b2726b9b86340e2e51b5bd7c8cc1b",
      "old_mode": 33188,
      "old_path": "loop/donetool.go",
      "new_id": "63604d85c6e2693c93e333b3c88dae0a012015c4",
      "new_mode": 33188,
      "new_path": "loop/donetool.go"
    },
    {
      "type": "modify",
      "old_id": "7e0507051e6658ef16efe68c5a7bd94bda7e7c5a",
      "old_mode": 33188,
      "old_path": "loop/mocks.go",
      "new_id": "811ab2c25c9b64d055085ecdc5c940c92e8ac608",
      "new_mode": 33188,
      "new_path": "loop/mocks.go"
    },
    {
      "type": "modify",
      "old_id": "4a415c88635e2c3f447d2274073ed4b8c3b954a5",
      "old_mode": 33188,
      "old_path": "loop/server/loophttp.go",
      "new_id": "f7a39797c861085d7b30ec3bcca516dd8106b0e1",
      "new_mode": 33188,
      "new_path": "loop/server/loophttp.go"
    }
  ]
}
