Hacklet Hack Open не хочет, чтобы вы знали о

Hacklet Hack Open не хочет, чтобы вы знали о

16 августа 2025 г.

Откраснув эти надоедливые идентификаторы ниток удобной закладкой

Если вы строили на вершине блестящих помощников API API Openai, вы, вероятно, попали в ту же стену, которую я сделал:

Там нет конечной точки API для перечисления ваших идентификаторов потока.
Никто. Ноль. Нада.

Вы можете создать ветку (POST /v1/threads)

Вы можете принести ветку, если вы уже знаете его идентификатор (GET /v1/threads/{id})

Вы даже можете удалить один (DELETE /v1/threads/{id}).

Но если вы хотите простоGET /v1/threadsЧтобы перечислить все потоки, которые вы создали?Забудь это.Его не существует, и отсутствие этой единственной конечной точки меняет все о том, как вы строите на вершине этой платформы.

Тот факт, что такая основная часть цикла CRUD не хватает, заставляет разработчиков чувствовать, что они работают слепыми.

Этот выбор дизайна кажется преднамеренным. Openai хочет настойчиво настойчивость к вам:«Вы несете ответственность за хранение идентификаторов потоков».

Но половина времени мы просто прототипируем, так что:

  • У нас нет таблицы базы данных для потоков.
  • Мы не хотим создавать конвейер данных, чтобы проверить идею.
  • Мы просто хотим запустить кучу тестовых потоков, посмотреть, что происходит, и двигаться дальше.

И затем наступает день, когда вы понимаете, что сгенерировали сотни (или десятки тысяч в зависимости от масштаба) потоков, и теперь вам нужно их очистить, проверить их или просто подтвердить, что существует.

Именно тогда вы врезаетесь в стену, и вы даже не можете увидеть, что создали. Чем больше вы думаете об этом, тем больше вы понимаете, что это проблема видимости, которая влияет на все, от отладки до соответствия.


GAP Open Lie Live Live Open

Каждая платформа API Sane API в известной вселенной обычно имеетlistконечная точка.

Это самый простой жизненный цикл Crud - создать, читать, обновить, удалить. И «R» - это не только привлечение одной записи, но и перечисление их.

Разработчики ожидают, что смогут спросить,"Что существует?"Но не здесь. Оставив его, OpenAI эффективно заставляет вас регистрировать и хранить идентификаторы с первого дня - или рискуйте полностью потерю трека.

С точки зрения разработчика, это ответственность.

С точки зрения управления данными, это кровавый беспорядок.

С точки зрения безопасности? Чертовски кошмар.

Трудно не читать это как преднамеренное. Меньше конечных точек списка означает меньшую ответственность за то, что данные все еще существуют на их стороне.

Без конечной точки списка вы не можете использовать использование аудита.

  • Вы не можете легко очистить устаревшие эксперименты.
  • Вы не можете автоматизировать управление жизненным циклом.
  • Вы остались в темноте, ожидаете, что вы доверяете свои собственные журналы и никогда не спрашивайте, что там сидит.

Будь то безопасность, конфиденциальность или просто поддержание поверхности API меньше, результат одинаково:Мы не можем перечислить наши собственные темы.Это отсутствие не просто вызывает неудобства - оно создает недоверие. Это делает разработчиков вторым догадением, на самом деле они контролируют то, что они создают.


Список крах

Если Openai не даст нам конечную точку списка, ну, нам просто придется поднять наши штаны и соскрести проклятые вещи.

Но вместо того, чтобы создавать какой -то тупо конкретный инструмент, используя безголовный агент рабочего процесса и большеПитончем вы можете правильно помнить ... у вас уже есть идеальный инструмент.

Ваш браузер и скромный JavaScript Bookmarklet.

Закладка - это всего лишь закладка браузера, которая запускает JavaScript против страницы, на которой вы находитесь. И если вы смотрите на журналы ответов API в браузере, у вас уже есть все идентификаторы потоков, которые вам нужны - они просто похоронены в тексте.

Но самое лучшее, что закладка не заботится о том, форматирована или красивая страница. Это просто разрывает каждыйthread_...Строка из необработанного текста. Это самое близкое к «конечной точке списка бедняков».

Вот волшебный фрагмент:

javascript:(function(){
  const ids = [...document.body.innerText.matchAll(/thread_[A-Za-z0-9]+/g)]
    .map(m => m[0]);
  if (!ids.length) {
    alert("No thread IDs found on this page.");
    return;
  }
  navigator.clipboard.writeText([...new Set(ids)].join("\n"))
    .then(() => alert("Copied " + ids.length + " thread IDs to clipboard!"));
})();

Добавьте его в качестве URL -адреса закладки браузера, щелкните по нему на любой странице, где появляются идентификаторы потоков, и бум: каждыйthread_...Строка очищается, дедупликации и копируется в ваш буфер обмена.

Нет плагинов. Нет расширений. Нет инструментов Dev Tools Gymnastics. Только один щелчок.

Так что да, это занимает немного времени ...

  • прокрутка
  • загружать больше
  • прокрутка
  • загружать больше

Но как только вы дойдете до конца (или своей желаемой длине), вы можете просто нажать на сохраненную закладка выше… и выпить один аккуратно скопированный список идентификаторов потоков, чтобы вы сделали с тем, что вы будете.


Почему это важно

Это не только аккуратный, функциональный взлом. Это напоминание о разрыве между потребностями разработчика и дизайном API.

Мы привыкли к прозрачным, полным численным API. Решение Openai о том, чтобы оставить список потоков, кажется темным узором, что затрудняет нам, что на заднем плане на заднем плане.

Сохраняют ли они эти данные или нет, не подходитМы не можем проверить это сами.

Подумайте о последствиях. Если вы создаете регулируемый продукт, где имеет значение для аудита, вы буквально не можете доказать, какие потоки вы развернули. Если вы пытаетесь контролировать расходы, вы не можете проверить, что затягивает.
Если вы экспериментируете, вы гарантированно создаете беспорядок, который не можете увидеть.

Закладка - это способ вернуть эту видимость. Это не исправляет отсутствующий API, но дает вам агентство. Одним щелчком вы можете увидеть каждый идентификатор потока, видимый в ваших журналах, буферный обзор и погрузите их в поток с объемами.

Это также переосмысливает отношения: разработчикам не нужно полагаться на хаки, чтобы получить информацию о своих собственных ресурсах. Это сигнал, который платформа не обслуживает своих пользователей так хорошо. Закладка работает, но само существование подчеркивает дисбаланс.


Что делать, когда у вас есть идентификаторы потока

  1. Вставьте их в текстовый файл, Google Sheet, что угодно.Держите их для справки, сортировки и дедупа, если это необходимо.
  2. Поправьте им рабочий процесс, чтобы удалить их.Используйте HTTP -запрос, чтобы зацикливаться на каждом идентификаторе и вызовеDELETE /v1/threads/{id}Полем Добавьте обработку ошибок, чтобы поймать сбои.
  3. Все, чтобы все, все.Если вам больше не нужны эти темы, протрите их и спите лучше, зная, что они ушли. Сделайте это в управляемых кусках, чтобы оставаться в пределах пределов ставки API.
  4. Добавьте план жизненного цикла.В будущем решите, хотите ли вы постоянно регистрировать идентификаторы, очистить их сразу после использования или хранить их с помощью TTL. Не позволяйте им снова накапливаться.
  5. Автоматизировать очистку.Установите повторяющееся задание или рабочий процесс, который автоматически подметает старые идентификаторы. В сочетании с оповещениями, чтобы вы знали, когда нить остаются висеть.
  6. Аудит периодически.Даже если вы используете закладку, сделайте привычку проверить, что есть в расписании.

Большая картина

OpenAI может решить это с одной глупо простой конечной точкой:
GET /v1/threads

Вот и все.Разработчикам не нужно было бы царапать, закладка или Spelunk через журналы N8N. Однако, пока они не сделают такие закладка, это толкать, которая заставляет вещи двигаться.

Это абсурдно, что нам нужны взломы браузеров, чтобы управлять нашими собственными ресурсами.

Он нарушает разработчики доверия в API, когда такая основная функциональность отсутствует. Мы не должны быть вынуждены изобретать обходные пути для того, что должно быть настольными ставками.

Это больше, чем просто неудобство разработчика - это проблема видимости. Видимость - это подотчетность. Без этого пользователи не могут доказать, какие данные существуют, не могут с уверенностью удалить и не могут создать надежную автоматизацию.

Закладка - это умная повязка, но рана преднамеренное упущение Openai. Но на практике это оставляет всех разработчиков постоянно догадываться:Что я создал? Что еще сидит там? Я действительно в контроле?

Когда мы полагаемся на хакеры, чтобы управлять нашим собственным контентом, мы подчеркиваем, сколько энергии удерживает платформа, и насколько у нас есть небольшая речь, когда функционируется. Он посылает неправильное сообщение о прозрачности и ответственности.

Да, API помощников является мощным, но сила без болотной простой простых видимости опасна. Если вы серьезно относитесь к использованию его в производстве, начните регистрировать свои идентификаторы потока с первого дня.

Но если вы похожи на всех нас - возитесь вокруг, быстро прототипируют, а затем понимаете, что вам нужно убирать - моя закладка - это ваш Мессия.

Нажмите, скопируйте, вставьте, удалите. Сделанный.

И, может быть, просто, может быть, Openai возьмет подсказку и даст нам одну конечную точку, которую ожидает каждый разработчик: способ перечислить наши собственные ресурсы.

До тех пор, как эта закладка не просто полезна. Они необходимы.


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE