🐦 Twitter Post Details

Viewing enriched Twitter post

@simonw

I built a new Python CLI tool called claude-code-transcripts that can create nice readable HTML versions of your Claude Code sessions, both local and pulled from Claude Code for web, and makes it easy to publish them online too https://t.co/pHl8l2lXeK

Media 1

📊 Media Metadata

{
  "media": [
    {
      "url": "https://crmoxkoizveukayfjuyo.supabase.co/storage/v1/object/public/media/posts/2004339799512305758/media_0.jpg?",
      "media_url": "https://crmoxkoizveukayfjuyo.supabase.co/storage/v1/object/public/media/posts/2004339799512305758/media_0.jpg?",
      "type": "photo",
      "filename": "media_0.jpg"
    }
  ],
  "processed_at": "2025-12-31T02:50:16.141817",
  "pipeline_version": "2.0"
}

🔧 Raw API Response

{
  "type": "tweet",
  "id": "2004339799512305758",
  "url": "https://x.com/simonw/status/2004339799512305758",
  "twitterUrl": "https://twitter.com/simonw/status/2004339799512305758",
  "text": "I built a new Python CLI tool called claude-code-transcripts that can create nice readable HTML versions of your Claude Code sessions, both local and pulled from Claude Code for web, and makes it easy to publish them online too https://t.co/pHl8l2lXeK",
  "source": "Twitter for iPhone",
  "retweetCount": 84,
  "replyCount": 52,
  "likeCount": 1054,
  "quoteCount": 13,
  "viewCount": 88676,
  "createdAt": "Thu Dec 25 23:53:41 +0000 2025",
  "lang": "en",
  "bookmarkCount": 803,
  "isReply": false,
  "inReplyToId": null,
  "conversationId": "2004339799512305758",
  "displayTextRange": [
    0,
    251
  ],
  "inReplyToUserId": null,
  "inReplyToUsername": null,
  "author": {
    "type": "user",
    "userName": "simonw",
    "url": "https://x.com/simonw",
    "twitterUrl": "https://twitter.com/simonw",
    "id": "12497",
    "name": "Simon Willison",
    "isVerified": false,
    "isBlueVerified": true,
    "verifiedType": null,
    "profilePicture": "https://pbs.twimg.com/profile_images/378800000261649705/be9cc55e64014e6d7663c50d7cb9fc75_normal.jpeg",
    "coverPicture": "https://pbs.twimg.com/profile_banners/12497/1642751752",
    "description": "",
    "location": "San Francisco, CA",
    "followers": 127184,
    "following": 5605,
    "status": "",
    "canDm": true,
    "canMediaTag": true,
    "createdAt": "Wed Nov 15 13:18:50 +0000 2006",
    "entities": {
      "description": {
        "urls": []
      },
      "url": {}
    },
    "fastFollowersCount": 0,
    "favouritesCount": 62157,
    "hasCustomTimelines": true,
    "isTranslator": true,
    "mediaCount": 3813,
    "statusesCount": 59540,
    "withheldInCountries": [],
    "affiliatesHighlightedLabel": {},
    "possiblySensitive": false,
    "pinnedTweetIds": [],
    "profile_bio": {
      "description": "Creator @datasetteproj, co-creator Django. PSF board. Hangs out with @natbat. He/Him. Mastodon: https://t.co/t0MrmnJW0K Bsky: https://t.co/OnWIyhX4CH",
      "entities": {
        "description": {
          "urls": [
            {
              "display_url": "fedi.simonwillison.net/@simon",
              "expanded_url": "https://fedi.simonwillison.net/@simon",
              "indices": [
                96,
                119
              ],
              "url": "https://t.co/t0MrmnJW0K"
            },
            {
              "display_url": "simonwillison.net",
              "expanded_url": "http://simonwillison.net",
              "indices": [
                126,
                149
              ],
              "url": "https://t.co/OnWIyhX4CH"
            }
          ],
          "user_mentions": [
            {
              "id_str": "0",
              "indices": [
                8,
                22
              ],
              "name": "",
              "screen_name": "datasetteproj"
            },
            {
              "id_str": "0",
              "indices": [
                69,
                76
              ],
              "name": "",
              "screen_name": "natbat"
            }
          ]
        },
        "url": {
          "urls": [
            {
              "display_url": "simonwillison.net",
              "expanded_url": "https://simonwillison.net/",
              "indices": [
                0,
                23
              ],
              "url": "https://t.co/p4R0XiEYEc"
            }
          ]
        }
      }
    },
    "isAutomated": false,
    "automatedBy": null
  },
  "extendedEntities": {},
  "card": {
    "binding_values": [
      {
        "key": "thumbnail_image",
        "value": {
          "image_value": {
            "height": 144,
            "url": "https://pbs.twimg.com/card_img/2004339801680683008/bK10t9ow?format=jpg&name=144x144_2",
            "width": 144
          }
        }
      },
      {
        "key": "description",
        "value": {
          "string_value": "I’ve released claude-code-transcripts, a new Python CLI tool for converting Claude Code transcripts to detailed HTML pages that provide a better interface for understanding what Claude Code has done..."
        }
      },
      {
        "key": "domain",
        "value": {
          "string_value": "simonwillison.net"
        }
      },
      {
        "key": "thumbnail_image_large",
        "value": {
          "image_value": {
            "height": 420,
            "url": "https://pbs.twimg.com/card_img/2004339801680683008/bK10t9ow?format=jpg&name=420x420_2",
            "width": 420
          }
        }
      },
      {
        "key": "thumbnail_image_original",
        "value": {
          "image_value": {
            "height": 600,
            "url": "https://pbs.twimg.com/card_img/2004339801680683008/bK10t9ow?format=jpg&name=orig",
            "width": 1200
          }
        }
      },
      {
        "key": "thumbnail_image_small",
        "value": {
          "image_value": {
            "height": 100,
            "url": "https://pbs.twimg.com/card_img/2004339801680683008/bK10t9ow?format=jpg&name=100x100_2",
            "width": 100
          }
        }
      },
      {
        "key": "thumbnail_image_x_large",
        "value": {
          "image_value": {
            "height": 600,
            "url": "https://pbs.twimg.com/card_img/2004339801680683008/bK10t9ow?format=png&name=2048x2048_2_exp",
            "width": 1200
          }
        }
      },
      {
        "key": "vanity_url",
        "value": {
          "scribe_key": "vanity_url",
          "string_value": "simonwillison.net"
        }
      },
      {
        "key": "thumbnail_image_color",
        "value": {
          "image_color_value": {
            "palette": [
              {
                "percentage": 98.75,
                "rgb": {
                  "blue": 246,
                  "green": 239,
                  "red": 231
                }
              },
              {
                "percentage": 0.74,
                "rgb": {
                  "blue": 228,
                  "green": 185,
                  "red": 141
                }
              },
              {
                "percentage": 0.33,
                "rgb": {
                  "blue": 127,
                  "green": 127,
                  "red": 127
                }
              },
              {
                "percentage": 0.17,
                "rgb": {
                  "blue": 212,
                  "green": 121,
                  "red": 30
                }
              }
            ]
          }
        }
      },
      {
        "key": "title",
        "value": {
          "string_value": "A new way to extract detailed transcripts from Claude Code"
        }
      },
      {
        "key": "card_url",
        "value": {
          "scribe_key": "card_url",
          "string_value": "https://t.co/pHl8l2lXeK"
        }
      }
    ],
    "card_platform": {
      "platform": {
        "audience": {
          "name": "production"
        },
        "device": {
          "name": "iPhone",
          "version": "13"
        }
      }
    },
    "name": "summary",
    "url": "https://t.co/pHl8l2lXeK"
  },
  "place": {},
  "entities": {
    "urls": [
      {
        "display_url": "simonwillison.net/2025/Dec/25/cl…",
        "expanded_url": "https://simonwillison.net/2025/Dec/25/claude-code-transcripts/",
        "indices": [
          228,
          251
        ],
        "url": "https://t.co/pHl8l2lXeK"
      }
    ]
  },
  "quoted_tweet": null,
  "retweeted_tweet": null,
  "isLimitedReply": false,
  "article": null
}