{
  "text": "受Deepseek Harness最近爆火的影響,Codex這邊也放大招了,Codex Harness正式上線。\n以前我們使用Codex本質上是在使用一個已經做好的智能體,你把任務交給它,它會自己讀代碼、改文件、執行命令、調用工具,最後把事情做完。\n但這次不一樣,OpenAI開始把Codex背後真正負責讓Agent跑起來的那套系統,也就是Codex Harness。\n通過Codex SDK和Codex App Server開放出來,你可以把它理解成,以前OpenAI給你的是一台已經裝好的車,而現在連發動機、底盤、控制系統這些核心能力也開始允許開發者直接拿來使用。\n你不需要重新從零搭一整套Agent,就可以直接基於Codex Harness開發自己的AI數據分析。\nAgent、辦公Agent、編程Agent,甚至完整的數字員工。\nCodex Harness和普通模型API最大的區別也就在這裡。\n普通API的邏輯很簡單,你發一句話,模型返回一個答案,但一個真正能夠完成複雜任務的Agent遠遠不只是問一句答一句。\n他還需要知道自己現在在哪個項目裡,要讀取哪些文件,當前任務執行到第幾步,\n某條命令能不能運行,修改文件之前是否需要用戶批准,任務做到一半中斷之後能不能恢復,\n以及上下文越來越長以後應該怎麼管理。\n這些真正決定Agent能不能持續穩定完成複雜任務的能力,加在一起就是Harness。\n換句話說,模型負責思考,Harness負責讓模型真正把事情做完。\n這一次Codex Harness對開發者最重要的兩個入口,就是Codex SDK和Codex App Server。\n先說Codex SDK,這個其實最好理解,如果你現在已經有一個Python項目,只是想快速給它增加Codex的Agent能力,\n就可以直接使用SDK,不需要重新搭一套Agent框架。\n你可以讓它自動讀取一個代碼倉庫並修改代碼,也可以讓它分析一批數據,然後生成報告,或者執行一個需要連續調用文件、命令行和各種工具的複雜任務。\n通過SDK,你可以直接啟動一個Codex Thread,也可以繼續之前的任務,恢復歷史任務,甚至Fork出一個新的任務分支。\n所以Codex SDK更像是一個快速接入入口,你已經有自己的程序,只是希望把Codex Harness的能力加進去,\n優先用它就可以。而另外一個Codex App Server則更加底層,更適合真正開發完整Agent產品。\n比如,你想做一個桌面端AI Agent企業內部的數據分析系統,AI編程工具,或者一個帶完整介面的數字員工,這時候僅僅調用SDK就不夠了。\n因為你的產品不能只是發一句Prompt,然後等最終結果,它還需要時時知道Agent在幹什麼。\n比如,現在正在執行哪條命令,正在修改哪個文件,要用了哪個工具,任務執行到哪一步,\n以及某個高權限操作是不是需要用戶確認。Codex App Server就負責把這些過程完整暴露出來。\nOpenAI官方現在也明確把它作為Codex產品深度集成的重要接口,用來連接Codex Harness和不同的客戶端。\n這裡可以用一個很簡單的方式理解。Codex Harness是整套Agent執行系統,Codex App Server則是你控制這套系統的接口。\n你自己的產品不需要重新實現Codex,只需要通過App Server調用它,開始一個任務,繼續上一次任務,執行下一步,批准這次操作,或者把當前執行狀態返回給前端。\n所以,如果你只是想快速調用Codex優先使用SDK,如果你想真正開發一款完整的Agent產品,就重點研究App Server。\n我們團隊也在第一時間做了一次實際測試。\n之前,我們有一套基於Deep Agents架構開發的AI數據分析。\nAgent裡面已經包含大量數據分析工具,Skills, MCP,以及一整套完整的數據分析工作流。\n這一次,我們嘗試把底層Agent Runtime更換為Codex Harness。\n實際遷移過程比預想中簡單很多。\n原來的業務邏輯,工具,Skills,和MCP大部分都可以繼續復用。\n主要變化是把Agent的執行,狀態和任務生命周期管理切換到Codex Harness這一套體系。\n遷移完成之後,一個比較明顯的感受就是複雜長任務跑起來更加完整和穩定。\n比如一次完整的數據分析任務,Agent的數據分析任務。\nAgent可能需要先讀取數據,檢查字段,再寫Python做分析,然後生成圖表,發現異常之後重新計算,最後再生成完整報告。\n整個過程中可能包含幾十步甚至上百步操作。\n這種任務真正考驗的,其實已經不只是模型會不會寫代碼,而是Agent在執行幾十步以後會不會忘記最開始的目標?\n會不會執行一半停下來?報錯之後能不能繼續?\n以及任務中斷之後能不能恢復?\n這些問題恰恰就是Harness最核心的價值。\nCodex Harness本身也已經把很多過去開發Agent最麻煩的事情提前處理好了。\n比如Sandbox可以把Agent的命令執行,限制在安全環境裡。\nApproval可以讓敏感操作先經過用戶確認。\nThread可以把一個完整任務和狀態保存下來,下次繼續執行。\n同時還有MCP和Skills可以繼續給Agent增加外部工具和專業能力。\n如果這些能力全部從0自己開發,成本其實非常高。\n而現在Codex Harness已經把它們變成了一套可以直接複用的基礎設施。\n這也是為什麼我覺得這次Codex Harness真正重要的地方,並不是OpenAI又發布了一個新的Agent SDK,而是開發Agent的方式正在發生變化。\n以前我們做Agent往往是先選一個模型,再選LangChain,LangGraph或者其他框架,然後自己搭工具,狀態,全線,memory和工作流。\n以後則很可能變成先選擇一套成熟的Harness,然後直接在這套Harness上做自己的業務。\n模型可以換,業務也可以換,但底層那套讓Agent穩定執行任務的系統可以直接複用。\n而從OpenAI目前公開的信息來看,Codex CLI,Codex App,IDE等不同形態,本身就是圍繞同一套Codex Harness能力展開的。\n現在真正發生變化的是,這套原本主要服務OpenAI自己Codex產品的能力,正在進一步向開發者開放。\n所以Codex的定位也開始不再只是一個AI變成工具,它正在逐漸變成一套可以拿來開發其他智能體的通用Agent基座。\n以後你想開發AI數據分析系統,研發Agent,辦公Agent,甚至企業內部數字員工,並不一定還要從最底層重新打一整套Agent Framework,\n完全可以直接站在Codex Harness已經搭好的基礎設施上,繼續做自己的產品和業務能力。\n本期後面的實戰,我們就會直接把Codex Harness跑起來,分別演示Codex SDK和Codex App Server的使用方式,以及如何接入工具,Skills和MCP。\n最後再把它真正集成進一套完整的AI數據分析Agent。\n同時,我們團隊也已經整理好了Codex Harness使用與開發教程,完整配置說明,以及這套基於Codex Harness重構的AI數據分析Agent項目源碼。\n想直接跟著項目復現的,可以查看頂層評論領取。\n如果之前大家學習Codex,重點還是怎麼把Codex用好,那麼從Codex Harness開始,一個更值得關注的問題已經變成了,怎麼拿Codex做出屬於自己的Agent。",
  "language": "zh",
  "duration": 469.414625,
  "segments": [
    {
      "id": 0,
      "seek": 0,
      "start": 0.0,
      "end": 5.82,
      "text": "受Deepseek Harness最近爆火的影響,Codex這邊也放大招了,Codex Harness正式上線。",
      "tokens": [
        50365,
        23151,
        11089,
        595,
        405,
        916,
        389,
        16937,
        46777,
        45827,
        26171,
        1546,
        16820,
        13665,
        123,
        11,
        34,
        1429,
        87,
        22821,
        6404,
        12744,
        3582,
        6852,
        249,
        2289,
        11,
        34,
        1429,
        87,
        389,
        16937,
        15789,
        27584,
        5708,
        31699,
        1543,
        50656
      ],
      "temperature": 0,
      "avg_logprob": -0.13710655578195233,
      "compression_ratio": 1.1891891891891893,
      "no_speech_prob": 7.632743395658004e-12,
      "source": "whisper"
    },
    {
      "id": 1,
      "seek": 0,
      "start": 5.82,
      "end": 17.7,
      "text": "以前我們使用Codex本質上是在使用一個已經做好的智能體,你把任務交給它,它會自己讀代碼、改文件、執行命令、調用工具,最後把事情做完。",
      "tokens": [
        50656,
        44996,
        5884,
        22982,
        9254,
        34,
        1429,
        87,
        8802,
        43450,
        5708,
        1541,
        3581,
        22982,
        9254,
        8990,
        25338,
        10907,
        20715,
        5094,
        118,
        8225,
        23987,
        11,
        2166,
        16075,
        26443,
        39517,
        28455,
        17798,
        11284,
        11,
        11284,
        6236,
        17645,
        7422,
        222,
        19105,
        16337,
        120,
        1231,
        34490,
        17174,
        20485,
        1231,
        16262,
        115,
        8082,
        25236,
        49061,
        1231,
        32943,
        9254,
        23323,
        39806,
        11,
        20578,
        16075,
        24675,
        10907,
        14128,
        1543,
        51250
      ],
      "temperature": 0,
      "avg_logprob": -0.13710655578195233,
      "compression_ratio": 1.1891891891891893,
      "no_speech_prob": 7.632743395658004e-12,
      "source": "whisper"
    },
    {
      "id": 2,
      "seek": 0,
      "start": 17.7,
      "end": 25.6,
      "text": "但這次不一樣,OpenAI開始把Codex背後真正負責讓Agent跑起來的那套系統,也就是Codex Harness。",
      "tokens": [
        51250,
        8395,
        2664,
        9487,
        1960,
        22977,
        11,
        45569,
        48698,
        21017,
        16075,
        34,
        1429,
        87,
        46329,
        5661,
        6303,
        15789,
        11561,
        254,
        11561,
        105,
        21195,
        32,
        6930,
        32585,
        21670,
        1546,
        4184,
        1881,
        245,
        25368,
        33725,
        11,
        6404,
        5620,
        34,
        1429,
        87,
        389,
        16937,
        1543,
        51645
      ],
      "temperature": 0,
      "avg_logprob": -0.13710655578195233,
      "compression_ratio": 1.1891891891891893,
      "no_speech_prob": 7.632743395658004e-12,
      "source": "whisper"
    },
    {
      "id": 3,
      "seek": 2560,
      "start": 25.6,
      "end": 42.2,
      "text": "通過Codex SDK和Codex App Server開放出來,你可以把它理解成,以前OpenAI給你的是一台已經裝好的車,而現在連發動機、底盤、控制系統這些核心能力也開始允許開發者直接拿來使用。",
      "tokens": [
        50365,
        19550,
        8816,
        34,
        1429,
        87,
        37135,
        12565,
        34,
        1429,
        87,
        3132,
        25684,
        8949,
        12744,
        29741,
        11,
        42766,
        42061,
        13876,
        17278,
        11336,
        11,
        44996,
        45569,
        48698,
        17798,
        18961,
        1541,
        2257,
        15433,
        25338,
        44453,
        20715,
        25941,
        11,
        11070,
        12648,
        36252,
        14637,
        12572,
        17543,
        1231,
        22816,
        5419,
        97,
        1231,
        48707,
        25491,
        25368,
        33725,
        29869,
        8987,
        116,
        7945,
        8225,
        13486,
        6404,
        21017,
        2347,
        223,
        40914,
        8949,
        14637,
        12444,
        43297,
        24351,
        3763,
        22982,
        9254,
        1543,
        51195
      ],
      "temperature": 0,
      "avg_logprob": -0.09697803661977644,
      "compression_ratio": 1.172514619883041,
      "no_speech_prob": 1.0785574690308497e-11,
      "source": "whisper"
    },
    {
      "id": 4,
      "seek": 2560,
      "start": 42.2,
      "end": 49.0,
      "text": "你不需要重新從零搭一整套Agent,就可以直接基於Codex Harness開發自己的AI數據分析。",
      "tokens": [
        51195,
        2166,
        1960,
        35748,
        12624,
        12560,
        21068,
        6306,
        114,
        22220,
        255,
        2257,
        27662,
        1881,
        245,
        32,
        6930,
        11,
        36781,
        43297,
        26008,
        19488,
        34,
        1429,
        87,
        389,
        16937,
        8949,
        14637,
        17645,
        1546,
        48698,
        30622,
        36841,
        6627,
        7360,
        238,
        1543,
        51535
      ],
      "temperature": 0,
      "avg_logprob": -0.09697803661977644,
      "compression_ratio": 1.172514619883041,
      "no_speech_prob": 1.0785574690308497e-11,
      "source": "whisper"
    },
    {
      "id": 5,
      "seek": 2560,
      "start": 49.0,
      "end": 53.2,
      "text": "Agent、辦公Agent、編程Agent,甚至完整的數字員工。",
      "tokens": [
        51535,
        32,
        6930,
        1231,
        23626,
        13545,
        32,
        6930,
        1231,
        12608,
        101,
        29649,
        32,
        6930,
        11,
        17556,
        20844,
        14128,
        27662,
        1546,
        30622,
        22381,
        20992,
        23323,
        1543,
        51745
      ],
      "temperature": 0,
      "avg_logprob": -0.09697803661977644,
      "compression_ratio": 1.172514619883041,
      "no_speech_prob": 1.0785574690308497e-11,
      "source": "whisper"
    },
    {
      "id": 6,
      "seek": 5320,
      "start": 53.2,
      "end": 58.300000000000004,
      "text": "Codex Harness和普通模型API最大的區別也就在這裡。",
      "tokens": [
        50365,
        34,
        1429,
        87,
        389,
        16937,
        12565,
        29993,
        19550,
        41908,
        39823,
        4715,
        40,
        8661,
        39156,
        44526,
        16158,
        6404,
        3111,
        3581,
        18771,
        1543,
        50620
      ],
      "temperature": 0,
      "avg_logprob": -0.1177926103607947,
      "compression_ratio": 1.164835164835165,
      "no_speech_prob": 1.5394583177674726e-11,
      "source": "whisper"
    },
    {
      "id": 7,
      "seek": 5320,
      "start": 58.300000000000004,
      "end": 68.5,
      "text": "普通API的邏輯很簡單,你發一句話,模型返回一個答案,但一個真正能夠完成複雜任務的Agent遠遠不只是問一句答一句。",
      "tokens": [
        50620,
        29993,
        19550,
        4715,
        40,
        1546,
        3023,
        237,
        12290,
        107,
        4563,
        31995,
        11,
        2166,
        14637,
        2257,
        34592,
        11103,
        11,
        41908,
        39823,
        3316,
        242,
        8350,
        8990,
        28223,
        28899,
        11,
        8395,
        8990,
        6303,
        15789,
        8225,
        31649,
        41509,
        164,
        97,
        229,
        6306,
        250,
        26443,
        39517,
        1546,
        32,
        6930,
        34489,
        34489,
        1960,
        36859,
        11361,
        2257,
        34592,
        28223,
        2257,
        34592,
        1543,
        51130
      ],
      "temperature": 0,
      "avg_logprob": -0.1177926103607947,
      "compression_ratio": 1.164835164835165,
      "no_speech_prob": 1.5394583177674726e-11,
      "source": "whisper"
    },
    {
      "id": 8,
      "seek": 5320,
      "start": 68.5,
      "end": 74.2,
      "text": "他還需要知道自己現在在哪個項目裡,要讀取哪些文件,當前任務執行到第幾步,",
      "tokens": [
        51130,
        5000,
        7824,
        35748,
        7758,
        17645,
        12648,
        3581,
        17028,
        3338,
        8313,
        227,
        11386,
        11066,
        11,
        4275,
        7422,
        222,
        29436,
        17028,
        13824,
        17174,
        20485,
        11,
        13118,
        8945,
        26443,
        39517,
        16262,
        115,
        8082,
        4511,
        7536,
        23575,
        31429,
        11,
        51415
      ],
      "temperature": 0,
      "avg_logprob": -0.1177926103607947,
      "compression_ratio": 1.164835164835165,
      "no_speech_prob": 1.5394583177674726e-11,
      "source": "whisper"
    },
    {
      "id": 9,
      "seek": 7420,
      "start": 74.2,
      "end": 82.3,
      "text": "某條命令能不能運行,修改文件之前是否需要用戶批准,任務做到一半中斷之後能不能恢復,",
      "tokens": [
        50365,
        17238,
        238,
        31106,
        25236,
        49061,
        8225,
        28590,
        32772,
        8082,
        11,
        7792,
        106,
        34490,
        17174,
        20485,
        32442,
        1541,
        45334,
        35748,
        9254,
        1486,
        114,
        3416,
        117,
        6336,
        228,
        11,
        26443,
        39517,
        10907,
        4511,
        2257,
        30018,
        5975,
        4307,
        115,
        26362,
        8225,
        28590,
        11845,
        95,
        2172,
        102,
        11,
        50770
      ],
      "temperature": 0,
      "avg_logprob": -0.14226011129525992,
      "compression_ratio": 1.0961538461538463,
      "no_speech_prob": 1.579293987252761e-11,
      "source": "whisper"
    },
    {
      "id": 10,
      "seek": 7420,
      "start": 82.3,
      "end": 85.3,
      "text": "以及上下文越來越長以後應該怎麼管理。",
      "tokens": [
        50770,
        40282,
        5708,
        4438,
        17174,
        25761,
        3763,
        25761,
        15353,
        3588,
        5661,
        26087,
        11614,
        23131,
        13876,
        1543,
        50920
      ],
      "temperature": 0,
      "avg_logprob": -0.14226011129525992,
      "compression_ratio": 1.0961538461538463,
      "no_speech_prob": 1.579293987252761e-11,
      "source": "whisper"
    },
    {
      "id": 11,
      "seek": 8530,
      "start": 85.3,
      "end": 93.39999999999999,
      "text": "這些真正決定Agent能不能持續穩定完成複雜任務的能力,加在一起就是Harness。",
      "tokens": [
        50365,
        29869,
        6303,
        15789,
        33540,
        12088,
        32,
        6930,
        8225,
        28590,
        17694,
        29583,
        13740,
        102,
        12088,
        41509,
        164,
        97,
        229,
        6306,
        250,
        26443,
        39517,
        1546,
        8225,
        13486,
        11,
        9990,
        3581,
        29567,
        5620,
        39,
        16937,
        1543,
        50770
      ],
      "temperature": 0,
      "avg_logprob": -0.06184751400049182,
      "compression_ratio": 1.0595238095238095,
      "no_speech_prob": 1.6397255081512796e-11,
      "source": "whisper"
    },
    {
      "id": 12,
      "seek": 8530,
      "start": 93.39999999999999,
      "end": 98.39999999999999,
      "text": "換句話說,模型負責思考,Harness負責讓模型真正把事情做完。",
      "tokens": [
        50770,
        36338,
        34592,
        11103,
        4622,
        11,
        41908,
        39823,
        11561,
        254,
        11561,
        105,
        8870,
        26504,
        11,
        39,
        16937,
        11561,
        254,
        11561,
        105,
        21195,
        41908,
        39823,
        6303,
        15789,
        16075,
        24675,
        10907,
        14128,
        1543,
        51020
      ],
      "temperature": 0,
      "avg_logprob": -0.06184751400049182,
      "compression_ratio": 1.0595238095238095,
      "no_speech_prob": 1.6397255081512796e-11,
      "source": "whisper"
    },
    {
      "id": 13,
      "seek": 9840,
      "start": 98.4,
      "end": 106.5,
      "text": "這一次Codex Harness對開發者最重要的兩個入口,就是Codex SDK和Codex App Server。",
      "tokens": [
        50365,
        2664,
        27505,
        34,
        1429,
        87,
        389,
        16937,
        2855,
        8949,
        14637,
        12444,
        8661,
        24928,
        1546,
        34623,
        14028,
        18144,
        11,
        5620,
        34,
        1429,
        87,
        37135,
        12565,
        34,
        1429,
        87,
        3132,
        25684,
        1543,
        50770
      ],
      "temperature": 0,
      "avg_logprob": -0.10990549723307291,
      "compression_ratio": 1.0984848484848484,
      "no_speech_prob": 1.6973873695480535e-11,
      "source": "whisper"
    },
    {
      "id": 14,
      "seek": 9840,
      "start": 106.5,
      "end": 115.5,
      "text": "先說Codex SDK,這個其實最好理解,如果你現在已經有一個Python項目,只是想快速給它增加Codex的Agent能力,",
      "tokens": [
        50770,
        10108,
        4622,
        34,
        1429,
        87,
        37135,
        11,
        6287,
        14139,
        8661,
        2131,
        13876,
        17278,
        11,
        45669,
        12648,
        25338,
        2412,
        8990,
        47,
        88,
        11943,
        8313,
        227,
        11386,
        11,
        36859,
        7093,
        10251,
        31217,
        17798,
        11284,
        24228,
        252,
        9990,
        34,
        1429,
        87,
        1546,
        32,
        6930,
        8225,
        13486,
        11,
        51220
      ],
      "temperature": 0,
      "avg_logprob": -0.10990549723307291,
      "compression_ratio": 1.0984848484848484,
      "no_speech_prob": 1.6973873695480535e-11,
      "source": "whisper"
    },
    {
      "id": 15,
      "seek": 9840,
      "start": 115.5,
      "end": 120.5,
      "text": "就可以直接使用SDK,不需要重新搭一套Agent框架。",
      "tokens": [
        51220,
        36781,
        43297,
        22982,
        9254,
        23969,
        42,
        11,
        1960,
        35748,
        12624,
        12560,
        22220,
        255,
        2257,
        1881,
        245,
        32,
        6930,
        21416,
        228,
        7360,
        114,
        1543,
        51470
      ],
      "temperature": 0,
      "avg_logprob": -0.10990549723307291,
      "compression_ratio": 1.0984848484848484,
      "no_speech_prob": 1.6973873695480535e-11,
      "source": "whisper"
    },
    {
      "id": 16,
      "seek": 12050,
      "start": 120.5,
      "end": 132.1,
      "text": "你可以讓它自動讀取一個代碼倉庫並修改代碼,也可以讓它分析一批數據,然後生成報告,或者執行一個需要連續調用文件、命令行和各種工具的複雜任務。",
      "tokens": [
        50365,
        42766,
        21195,
        11284,
        9722,
        12572,
        7422,
        222,
        29436,
        8990,
        19105,
        16337,
        120,
        2122,
        231,
        6346,
        104,
        35934,
        7792,
        106,
        34490,
        19105,
        16337,
        120,
        11,
        47935,
        21195,
        11284,
        6627,
        7360,
        238,
        2257,
        3416,
        117,
        30622,
        36841,
        11,
        10213,
        8244,
        11336,
        17803,
        16846,
        11,
        31148,
        16262,
        115,
        8082,
        8990,
        35748,
        36252,
        29583,
        32943,
        9254,
        17174,
        20485,
        1231,
        25236,
        49061,
        8082,
        12565,
        17516,
        16516,
        23323,
        39806,
        1546,
        164,
        97,
        229,
        6306,
        250,
        26443,
        39517,
        1543,
        50945
      ],
      "temperature": 0,
      "avg_logprob": -0.07982709861937023,
      "compression_ratio": 1.2952646239554317,
      "no_speech_prob": 1.533191282265811e-11,
      "source": "whisper"
    },
    {
      "id": 17,
      "seek": 12050,
      "start": 132.1,
      "end": 141.6,
      "text": "通過SDK,你可以直接啟動一個Codex Thread,也可以繼續之前的任務,恢復歷史任務,甚至Fork出一個新的任務分支。",
      "tokens": [
        50945,
        19550,
        8816,
        23969,
        42,
        11,
        42766,
        43297,
        3284,
        253,
        12572,
        8990,
        34,
        1429,
        87,
        334,
        2538,
        11,
        47935,
        38459,
        32442,
        1546,
        26443,
        39517,
        11,
        11845,
        95,
        2172,
        102,
        4287,
        115,
        45399,
        26443,
        39517,
        11,
        17556,
        20844,
        37,
        401,
        74,
        7781,
        8990,
        12560,
        1546,
        26443,
        39517,
        6627,
        24400,
        1543,
        51420
      ],
      "temperature": 0,
      "avg_logprob": -0.07982709861937023,
      "compression_ratio": 1.2952646239554317,
      "no_speech_prob": 1.533191282265811e-11,
      "source": "whisper",
      "text_original": "通過SDK,你可以直接啟動一個Codex Thread,也可以繼續之前的任務,恢復歷史任務,甚至Folk出一個新的任務分支。",
      "correction_applied": true,
      "correction_source": "llm_correct_a_presegmentation"
    },
    {
      "id": 18,
      "seek": 12050,
      "start": 141.6,
      "end": 150.3,
      "text": "所以Codex SDK更像是一個快速接入入口,你已經有自己的程序,只是希望把Codex Harness的能力加進去,",
      "tokens": [
        51420,
        7239,
        34,
        1429,
        87,
        37135,
        19002,
        12760,
        1541,
        8990,
        10251,
        31217,
        14468,
        14028,
        14028,
        18144,
        11,
        2166,
        25338,
        2412,
        17645,
        1546,
        29649,
        6346,
        237,
        11,
        36859,
        29955,
        16075,
        34,
        1429,
        87,
        389,
        16937,
        1546,
        8225,
        13486,
        9990,
        18214,
        6734,
        11,
        51855
      ],
      "temperature": 0,
      "avg_logprob": -0.07982709861937023,
      "compression_ratio": 1.2952646239554317,
      "no_speech_prob": 1.533191282265811e-11,
      "source": "whisper"
    },
    {
      "id": 19,
      "seek": 15030,
      "start": 150.3,
      "end": 157.9,
      "text": "優先用它就可以。而另外一個Codex App Server則更加底層,更適合真正開發完整Agent產品。",
      "tokens": [
        50365,
        12827,
        103,
        10108,
        9254,
        11284,
        36781,
        1543,
        11070,
        26202,
        8990,
        34,
        1429,
        87,
        3132,
        25684,
        46225,
        19002,
        9990,
        22816,
        9636,
        97,
        11,
        19002,
        3330,
        102,
        14245,
        6303,
        15789,
        8949,
        14637,
        14128,
        27662,
        32,
        6930,
        33299,
        30246,
        1543,
        50745
      ],
      "temperature": 0,
      "avg_logprob": -0.1187402488541429,
      "compression_ratio": 1.1831831831831832,
      "no_speech_prob": 1.722161128980826e-11,
      "source": "whisper"
    },
    {
      "id": 20,
      "seek": 15030,
      "start": 157.9,
      "end": 169.4,
      "text": "比如,你想做一個桌面端AI Agent企業內部的數據分析系統,AI編程工具,或者一個帶完整介面的數字員工,這時候僅僅調用SDK就不夠了。",
      "tokens": [
        50745,
        36757,
        11,
        38386,
        10907,
        8990,
        162,
        5475,
        8833,
        11957,
        107,
        48698,
        27174,
        7384,
        223,
        27119,
        28472,
        13470,
        1546,
        30622,
        36841,
        6627,
        7360,
        238,
        25368,
        33725,
        11,
        48698,
        12608,
        101,
        29649,
        23323,
        39806,
        11,
        31148,
        8990,
        32379,
        14128,
        27662,
        30312,
        8833,
        1546,
        30622,
        22381,
        20992,
        23323,
        11,
        2664,
        14010,
        9502,
        227,
        9502,
        227,
        32943,
        9254,
        23969,
        42,
        3111,
        1960,
        31649,
        2289,
        1543,
        51320
      ],
      "temperature": 0,
      "avg_logprob": -0.1187402488541429,
      "compression_ratio": 1.1831831831831832,
      "no_speech_prob": 1.722161128980826e-11,
      "source": "whisper"
    },
    {
      "id": 21,
      "seek": 15030,
      "start": 169.4,
      "end": 175.60000000000002,
      "text": "因為你的產品不能只是發一句Prompt,然後等最終結果,它還需要時時知道Agent在幹什麼。",
      "tokens": [
        51320,
        11471,
        18961,
        33299,
        30246,
        28590,
        36859,
        14637,
        2257,
        34592,
        47,
        4397,
        662,
        11,
        10213,
        10187,
        8661,
        29371,
        35181,
        11,
        11284,
        7824,
        35748,
        6611,
        6611,
        7758,
        32,
        6930,
        3581,
        29932,
        7598,
        1543,
        51630
      ],
      "temperature": 0,
      "avg_logprob": -0.1187402488541429,
      "compression_ratio": 1.1831831831831832,
      "no_speech_prob": 1.722161128980826e-11,
      "source": "whisper"
    },
    {
      "id": 22,
      "seek": 17560,
      "start": 175.6,
      "end": 183.2,
      "text": "比如,現在正在執行哪條命令,正在修改哪個文件,要用了哪個工具,任務執行到哪一步,",
      "tokens": [
        50365,
        36757,
        11,
        12648,
        15789,
        3581,
        16262,
        115,
        8082,
        17028,
        31106,
        25236,
        49061,
        11,
        15789,
        3581,
        7792,
        106,
        34490,
        17028,
        3338,
        17174,
        20485,
        11,
        4275,
        9254,
        2289,
        17028,
        3338,
        23323,
        39806,
        11,
        26443,
        39517,
        16262,
        115,
        8082,
        4511,
        17028,
        2257,
        31429,
        11,
        50745
      ],
      "temperature": 0,
      "avg_logprob": -0.06757910323865486,
      "compression_ratio": 1.1872909698996656,
      "no_speech_prob": 1.6084123616311174e-11,
      "source": "whisper"
    },
    {
      "id": 23,
      "seek": 17560,
      "start": 183.2,
      "end": 192.0,
      "text": "以及某個高權限操作是不是需要用戶確認。Codex App Server就負責把這些過程完整暴露出來。",
      "tokens": [
        50745,
        40282,
        17238,
        238,
        3338,
        12979,
        40212,
        43446,
        13167,
        235,
        11914,
        23034,
        35748,
        9254,
        1486,
        114,
        24293,
        22041,
        1543,
        34,
        1429,
        87,
        3132,
        25684,
        3111,
        11561,
        254,
        11561,
        105,
        16075,
        29869,
        8816,
        29649,
        14128,
        27662,
        23826,
        112,
        18594,
        110,
        29741,
        1543,
        51185
      ],
      "temperature": 0,
      "avg_logprob": -0.06757910323865486,
      "compression_ratio": 1.1872909698996656,
      "no_speech_prob": 1.6084123616311174e-11,
      "source": "whisper"
    },
    {
      "id": 24,
      "seek": 17560,
      "start": 192.0,
      "end": 201.2,
      "text": "OpenAI官方現在也明確把它作為Codex產品深度集成的重要接口,用來連接Codex Harness和不同的客戶端。",
      "tokens": [
        51185,
        45569,
        48698,
        31929,
        9249,
        12648,
        6404,
        11100,
        24293,
        42061,
        11914,
        6344,
        34,
        1429,
        87,
        33299,
        30246,
        24043,
        13127,
        26020,
        11336,
        1546,
        24928,
        14468,
        18144,
        11,
        9254,
        3763,
        36252,
        14468,
        34,
        1429,
        87,
        389,
        16937,
        12565,
        47123,
        1546,
        32316,
        1486,
        114,
        11957,
        107,
        1543,
        51645
      ],
      "temperature": 0,
      "avg_logprob": -0.06757910323865486,
      "compression_ratio": 1.1872909698996656,
      "no_speech_prob": 1.6084123616311174e-11,
      "source": "whisper"
    },
    {
      "id": 25,
      "seek": 20120,
      "start": 201.2,
      "end": 210.29999999999998,
      "text": "這裡可以用一個很簡單的方式理解。Codex Harness是整套Agent執行系統,Codex App Server則是你控制這套系統的接口。",
      "tokens": [
        50365,
        18771,
        6723,
        9254,
        8990,
        4563,
        31995,
        1546,
        9249,
        27584,
        13876,
        17278,
        1543,
        34,
        1429,
        87,
        389,
        16937,
        1541,
        27662,
        1881,
        245,
        32,
        6930,
        16262,
        115,
        8082,
        25368,
        33725,
        11,
        34,
        1429,
        87,
        3132,
        25684,
        46225,
        1541,
        2166,
        48707,
        25491,
        2664,
        1881,
        245,
        25368,
        33725,
        1546,
        14468,
        18144,
        1543,
        50820
      ],
      "temperature": 0,
      "avg_logprob": -0.06979044022098664,
      "compression_ratio": 1.215547703180212,
      "no_speech_prob": 1.7803550300676818e-11,
      "source": "whisper"
    },
    {
      "id": 26,
      "seek": 20120,
      "start": 210.29999999999998,
      "end": 223.6,
      "text": "你自己的產品不需要重新實現Codex,只需要通過App Server調用它,開始一個任務,繼續上一次任務,執行下一步,批准這次操作,或者把當前執行狀態返回給前端。",
      "tokens": [
        50820,
        2166,
        17645,
        1546,
        33299,
        30246,
        1960,
        35748,
        12624,
        12560,
        10376,
        9581,
        34,
        1429,
        87,
        11,
        14003,
        35748,
        19550,
        8816,
        9132,
        25684,
        30878,
        30622,
        11284,
        11,
        21017,
        8990,
        26443,
        39517,
        11,
        38459,
        5708,
        27505,
        26443,
        39517,
        11,
        16262,
        115,
        8082,
        45271,
        31429,
        11,
        3416,
        117,
        6336,
        228,
        2664,
        9487,
        13167,
        235,
        11914,
        11,
        31148,
        16075,
        13118,
        8945,
        16262,
        115,
        8082,
        18637,
        222,
        45248,
        3316,
        242,
        8350,
        17798,
        8945,
        11957,
        107,
        1543,
        51485
      ],
      "temperature": 0,
      "avg_logprob": -0.06979044022098664,
      "compression_ratio": 1.215547703180212,
      "no_speech_prob": 1.7803550300676818e-11,
      "source": "whisper",
      "text_original": "你自己的產品不需要重新實現Codex,只需要通過App Server倒數它,開始一個任務,繼續上一次任務,執行下一步,批准這次操作,或者把當前執行狀態返回給前端。",
      "correction_applied": true,
      "correction_source": "llm_correct_a_presegmentation"
    },
    {
      "id": 27,
      "seek": 22360,
      "start": 223.6,
      "end": 232.7,
      "text": "所以,如果你只是想快速調用Codex優先使用SDK,如果你想真正開發一款完整的Agent產品,就重點研究App Server。",
      "tokens": [
        50365,
        7239,
        11,
        45669,
        36859,
        7093,
        10251,
        31217,
        32943,
        9254,
        34,
        1429,
        87,
        12827,
        103,
        10108,
        22982,
        9254,
        23969,
        42,
        11,
        13119,
        38386,
        6303,
        15789,
        8949,
        14637,
        2257,
        48798,
        14128,
        27662,
        1546,
        32,
        6930,
        33299,
        30246,
        11,
        3111,
        12624,
        8216,
        23230,
        242,
        44704,
        9132,
        25684,
        1543,
        50820
      ],
      "temperature": 0,
      "avg_logprob": -0.12147259712219238,
      "compression_ratio": 1.2110389610389611,
      "no_speech_prob": 1.5446368142879585e-11,
      "source": "whisper"
    },
    {
      "id": 28,
      "seek": 22360,
      "start": 232.7,
      "end": 235.7,
      "text": "我們團隊也在第一時間做了一次實際測試。",
      "tokens": [
        50820,
        5884,
        37766,
        33929,
        6404,
        3581,
        18049,
        20788,
        10907,
        2289,
        27505,
        10376,
        34837,
        9592,
        105,
        22099,
        1543,
        50970
      ],
      "temperature": 0,
      "avg_logprob": -0.12147259712219238,
      "compression_ratio": 1.2110389610389611,
      "no_speech_prob": 1.5446368142879585e-11,
      "source": "whisper"
    },
    {
      "id": 29,
      "seek": 22360,
      "start": 235.7,
      "end": 240.7,
      "text": "之前,我們有一套基於Deep Agents架構開發的AI數據分析。",
      "tokens": [
        50970,
        32442,
        11,
        5884,
        32241,
        1881,
        245,
        26008,
        19488,
        11089,
        595,
        2725,
        791,
        7360,
        114,
        43362,
        8949,
        14637,
        1546,
        48698,
        30622,
        36841,
        6627,
        7360,
        238,
        1543,
        51220
      ],
      "temperature": 0,
      "avg_logprob": -0.12147259712219238,
      "compression_ratio": 1.2110389610389611,
      "no_speech_prob": 1.5446368142879585e-11,
      "source": "whisper"
    },
    {
      "id": 30,
      "seek": 22360,
      "start": 240.7,
      "end": 246.7,
      "text": "Agent裡面已經包含大量數據分析工具,Skills, MCP,以及一整套完整的數據分析工作流。",
      "tokens": [
        51220,
        32,
        6930,
        32399,
        25338,
        23305,
        2392,
        104,
        3582,
        26748,
        30622,
        36841,
        6627,
        7360,
        238,
        23323,
        39806,
        11,
        50,
        74,
        2565,
        11,
        8797,
        47,
        11,
        40282,
        2257,
        27662,
        1881,
        245,
        14128,
        27662,
        1546,
        30622,
        36841,
        6627,
        7360,
        238,
        41315,
        27854,
        1543,
        51520
      ],
      "temperature": 0,
      "avg_logprob": -0.12147259712219238,
      "compression_ratio": 1.2110389610389611,
      "no_speech_prob": 1.5446368142879585e-11,
      "source": "whisper"
    },
    {
      "id": 31,
      "seek": 24670,
      "start": 246.7,
      "end": 251.79999999999998,
      "text": "這一次,我們嘗試把底層Agent Runtime更換為Codex Harness。",
      "tokens": [
        50365,
        2664,
        27505,
        11,
        5884,
        10756,
        245,
        22099,
        16075,
        22816,
        9636,
        97,
        32,
        6930,
        497,
        2760,
        1312,
        19002,
        36338,
        6344,
        34,
        1429,
        87,
        389,
        16937,
        1543,
        50620
      ],
      "temperature": 0,
      "avg_logprob": -0.16360592312282987,
      "compression_ratio": 1.2712328767123289,
      "no_speech_prob": 1.474336451534608e-11,
      "source": "whisper"
    },
    {
      "id": 32,
      "seek": 24670,
      "start": 251.79999999999998,
      "end": 254.79999999999998,
      "text": "實際遷移過程比預想中簡單很多。",
      "tokens": [
        50620,
        10376,
        34837,
        3330,
        115,
        8204,
        119,
        8816,
        29649,
        11706,
        30156,
        7093,
        5975,
        31995,
        20778,
        1543,
        50770
      ],
      "temperature": 0,
      "avg_logprob": -0.16360592312282987,
      "compression_ratio": 1.2712328767123289,
      "no_speech_prob": 1.474336451534608e-11,
      "source": "whisper"
    },
    {
      "id": 33,
      "seek": 24670,
      "start": 254.79999999999998,
      "end": 259.8,
      "text": "原來的業務邏輯,工具,Skills,和MCP大部分都可以繼續復用。",
      "tokens": [
        50770,
        19683,
        3763,
        1546,
        27119,
        39517,
        3023,
        237,
        12290,
        107,
        11,
        23323,
        39806,
        11,
        50,
        74,
        2565,
        11,
        12565,
        44,
        20049,
        3582,
        32174,
        7182,
        6723,
        38459,
        2172,
        102,
        9254,
        1543,
        51020
      ],
      "temperature": 0,
      "avg_logprob": -0.16360592312282987,
      "compression_ratio": 1.2712328767123289,
      "no_speech_prob": 1.474336451534608e-11,
      "source": "whisper"
    },
    {
      "id": 34,
      "seek": 24670,
      "start": 259.8,
      "end": 266.8,
      "text": "主要變化是把Agent的執行,狀態和任務生命周期管理切換到Codex Harness這一套體系。",
      "tokens": [
        51020,
        13557,
        4275,
        26327,
        23756,
        1541,
        16075,
        32,
        6930,
        1546,
        16262,
        115,
        8082,
        11,
        18637,
        222,
        45248,
        12565,
        26443,
        39517,
        8244,
        25236,
        37390,
        16786,
        23131,
        13876,
        23632,
        36338,
        4511,
        34,
        1429,
        87,
        389,
        16937,
        32260,
        1881,
        245,
        23987,
        25368,
        1543,
        51370
      ],
      "temperature": 0,
      "avg_logprob": -0.16360592312282987,
      "compression_ratio": 1.2712328767123289,
      "no_speech_prob": 1.474336451534608e-11,
      "source": "whisper"
    },
    {
      "id": 35,
      "seek": 24670,
      "start": 266.8,
      "end": 272.8,
      "text": "遷移完成之後,一個比較明顯的感受就是複雜長任務跑起來更加完整和穩定。",
      "tokens": [
        51370,
        3330,
        115,
        8204,
        119,
        41509,
        26362,
        11,
        8990,
        25174,
        11100,
        46605,
        1546,
        9709,
        23151,
        5620,
        164,
        97,
        229,
        6306,
        250,
        15353,
        26443,
        39517,
        32585,
        21670,
        19002,
        9990,
        14128,
        27662,
        12565,
        13740,
        102,
        12088,
        1543,
        51670
      ],
      "temperature": 0,
      "avg_logprob": -0.16360592312282987,
      "compression_ratio": 1.2712328767123289,
      "no_speech_prob": 1.474336451534608e-11,
      "source": "whisper"
    },
    {
      "id": 36,
      "seek": 24670,
      "start": 272.8,
      "end": 275.8,
      "text": "比如一次完整的數據分析任務,Agent的數據分析任務。",
      "tokens": [
        51670,
        36757,
        27505,
        14128,
        27662,
        1546,
        30622,
        36841,
        6627,
        7360,
        238,
        26443,
        39517,
        11,
        32,
        6930,
        1546,
        30622,
        36841,
        6627,
        7360,
        238,
        26443,
        39517,
        1543,
        51820
      ],
      "temperature": 0,
      "avg_logprob": -0.16360592312282987,
      "compression_ratio": 1.2712328767123289,
      "no_speech_prob": 1.474336451534608e-11,
      "source": "whisper"
    },
    {
      "id": 37,
      "seek": 27580,
      "start": 275.8,
      "end": 285.8,
      "text": "Agent可能需要先讀取數據,檢查字段,再寫Python做分析,然後生成圖表,發現異常之後重新計算,最後再生成完整報告。",
      "tokens": [
        50365,
        32,
        6930,
        16657,
        35748,
        10108,
        7422,
        222,
        29436,
        30622,
        36841,
        11,
        40741,
        95,
        42623,
        22381,
        28427,
        11,
        8623,
        4510,
        104,
        47,
        88,
        11943,
        10907,
        6627,
        7360,
        238,
        11,
        10213,
        8244,
        11336,
        2523,
        244,
        17571,
        11,
        38927,
        6904,
        108,
        11279,
        26362,
        12624,
        12560,
        30114,
        19497,
        11,
        20578,
        8623,
        8244,
        11336,
        14128,
        27662,
        17803,
        16846,
        1543,
        50865
      ],
      "temperature": 0,
      "avg_logprob": -0.09867606707067297,
      "compression_ratio": 1.2615384615384615,
      "no_speech_prob": 1.733909023304836e-11,
      "source": "whisper"
    },
    {
      "id": 38,
      "seek": 27580,
      "start": 285.8,
      "end": 289.8,
      "text": "整個過程中可能包含幾十步甚至上百步操作。",
      "tokens": [
        50865,
        27662,
        3338,
        8816,
        29649,
        5975,
        16657,
        23305,
        2392,
        104,
        23575,
        20145,
        31429,
        17556,
        20844,
        5708,
        31906,
        31429,
        13167,
        235,
        11914,
        1543,
        51065
      ],
      "temperature": 0,
      "avg_logprob": -0.09867606707067297,
      "compression_ratio": 1.2615384615384615,
      "no_speech_prob": 1.733909023304836e-11,
      "source": "whisper"
    },
    {
      "id": 39,
      "seek": 27580,
      "start": 289.8,
      "end": 299.8,
      "text": "這種任務真正考驗的,其實已經不只是模型會不會寫代碼,而是Agent在執行幾十步以後會不會忘記最開始的目標?",
      "tokens": [
        51065,
        33005,
        26443,
        39517,
        6303,
        15789,
        26504,
        24023,
        245,
        1546,
        11,
        14139,
        25338,
        1960,
        36859,
        41908,
        39823,
        6236,
        21121,
        4510,
        104,
        19105,
        16337,
        120,
        11,
        11070,
        1541,
        32,
        6930,
        3581,
        16262,
        115,
        8082,
        23575,
        20145,
        31429,
        3588,
        5661,
        6236,
        21121,
        26677,
        16958,
        8661,
        21017,
        1546,
        11386,
        46299,
        30,
        51565
      ],
      "temperature": 0,
      "avg_logprob": -0.09867606707067297,
      "compression_ratio": 1.2615384615384615,
      "no_speech_prob": 1.733909023304836e-11,
      "source": "whisper"
    },
    {
      "id": 40,
      "seek": 27580,
      "start": 299.8,
      "end": 303.8,
      "text": "會不會執行一半停下來?報錯之後能不能繼續?",
      "tokens": [
        51565,
        6236,
        21121,
        16262,
        115,
        8082,
        2257,
        30018,
        36135,
        27769,
        30,
        17803,
        13133,
        26362,
        8225,
        28590,
        38459,
        30,
        51765
      ],
      "temperature": 0,
      "avg_logprob": -0.09867606707067297,
      "compression_ratio": 1.2615384615384615,
      "no_speech_prob": 1.733909023304836e-11,
      "source": "whisper"
    },
    {
      "id": 41,
      "seek": 30380,
      "start": 303.8,
      "end": 305.8,
      "text": "以及任務中斷之後能不能恢復?",
      "tokens": [
        50365,
        40282,
        26443,
        39517,
        5975,
        4307,
        115,
        26362,
        8225,
        28590,
        11845,
        95,
        2172,
        102,
        30,
        50465
      ],
      "temperature": 0,
      "avg_logprob": -0.07978242465427944,
      "compression_ratio": 1.1671732522796352,
      "no_speech_prob": 2.0962528587964435e-11,
      "source": "whisper"
    },
    {
      "id": 42,
      "seek": 30380,
      "start": 305.8,
      "end": 309.8,
      "text": "這些問題恰恰就是Harness最核心的價值。",
      "tokens": [
        50465,
        29869,
        17197,
        11845,
        108,
        11845,
        108,
        5620,
        39,
        16937,
        8661,
        8987,
        116,
        7945,
        1546,
        45441,
        40242,
        1543,
        50665
      ],
      "temperature": 0,
      "avg_logprob": -0.07978242465427944,
      "compression_ratio": 1.1671732522796352,
      "no_speech_prob": 2.0962528587964435e-11,
      "source": "whisper"
    },
    {
      "id": 43,
      "seek": 30380,
      "start": 309.8,
      "end": 315.8,
      "text": "Codex Harness本身也已經把很多過去開發Agent最麻煩的事情提前處理好了。",
      "tokens": [
        50665,
        34,
        1429,
        87,
        389,
        16937,
        8802,
        19847,
        6404,
        25338,
        16075,
        20778,
        36910,
        8949,
        14637,
        32,
        6930,
        8661,
        38999,
        17867,
        102,
        1546,
        24675,
        20949,
        8945,
        39289,
        13876,
        12621,
        1543,
        50965
      ],
      "temperature": 0,
      "avg_logprob": -0.07978242465427944,
      "compression_ratio": 1.1671732522796352,
      "no_speech_prob": 2.0962528587964435e-11,
      "source": "whisper"
    },
    {
      "id": 44,
      "seek": 30380,
      "start": 315.8,
      "end": 319.8,
      "text": "比如Sandbox可以把Agent的命令執行,限制在安全環境裡。",
      "tokens": [
        50965,
        36757,
        50,
        474,
        4995,
        6723,
        16075,
        32,
        6930,
        1546,
        25236,
        49061,
        16262,
        115,
        8082,
        11,
        43446,
        25491,
        3581,
        45466,
        40063,
        108,
        47885,
        11066,
        1543,
        51165
      ],
      "temperature": 0,
      "avg_logprob": -0.07978242465427944,
      "compression_ratio": 1.1671732522796352,
      "no_speech_prob": 2.0962528587964435e-11,
      "source": "whisper"
    },
    {
      "id": 45,
      "seek": 30380,
      "start": 319.8,
      "end": 323.8,
      "text": "Approval可以讓敏感操作先經過用戶確認。",
      "tokens": [
        51165,
        9132,
        340,
        3337,
        6723,
        21195,
        7017,
        237,
        9709,
        13167,
        235,
        11914,
        10108,
        15145,
        8816,
        9254,
        1486,
        114,
        24293,
        22041,
        1543,
        51365
      ],
      "temperature": 0,
      "avg_logprob": -0.07978242465427944,
      "compression_ratio": 1.1671732522796352,
      "no_speech_prob": 2.0962528587964435e-11,
      "source": "whisper"
    },
    {
      "id": 46,
      "seek": 30380,
      "start": 323.8,
      "end": 327.8,
      "text": "Thread可以把一個完整任務和狀態保存下來,下次繼續執行。",
      "tokens": [
        51365,
        2434,
        2538,
        6723,
        16075,
        8990,
        14128,
        27662,
        26443,
        39517,
        12565,
        18637,
        222,
        45248,
        24302,
        39781,
        27769,
        11,
        35829,
        38459,
        16262,
        115,
        8082,
        1543,
        51565
      ],
      "temperature": 0,
      "avg_logprob": -0.07978242465427944,
      "compression_ratio": 1.1671732522796352,
      "no_speech_prob": 2.0962528587964435e-11,
      "source": "whisper"
    },
    {
      "id": 47,
      "seek": 32780,
      "start": 327.8,
      "end": 333.8,
      "text": "同時還有MCP和Skills可以繼續給Agent增加外部工具和專業能力。",
      "tokens": [
        50365,
        13089,
        6611,
        15569,
        44,
        20049,
        12565,
        50,
        74,
        2565,
        6723,
        38459,
        17798,
        32,
        6930,
        24228,
        252,
        9990,
        12022,
        13470,
        23323,
        39806,
        12565,
        46072,
        27119,
        8225,
        13486,
        1543,
        50665
      ],
      "temperature": 0,
      "avg_logprob": -0.07478047594612028,
      "compression_ratio": 1.0086580086580086,
      "no_speech_prob": 2.42918116177826e-11,
      "source": "whisper"
    },
    {
      "id": 48,
      "seek": 32780,
      "start": 333.8,
      "end": 337.8,
      "text": "如果這些能力全部從0自己開發,成本其實非常高。",
      "tokens": [
        50665,
        13119,
        29869,
        8225,
        13486,
        38714,
        21068,
        15,
        17645,
        8949,
        14637,
        11,
        11336,
        8802,
        14139,
        14392,
        12979,
        1543,
        50865
      ],
      "temperature": 0,
      "avg_logprob": -0.07478047594612028,
      "compression_ratio": 1.0086580086580086,
      "no_speech_prob": 2.42918116177826e-11,
      "source": "whisper"
    },
    {
      "id": 49,
      "seek": 32780,
      "start": 337.8,
      "end": 341.8,
      "text": "而現在Codex Harness已經把它們變成了一套可以直接複用的基礎設施。",
      "tokens": [
        50865,
        11070,
        12648,
        34,
        1429,
        87,
        389,
        16937,
        25338,
        42061,
        4623,
        26327,
        11336,
        2289,
        2257,
        1881,
        245,
        6723,
        43297,
        8842,
        226,
        9254,
        1546,
        26008,
        14971,
        236,
        39035,
        4307,
        121,
        1543,
        51065
      ],
      "temperature": 0,
      "avg_logprob": -0.07478047594612028,
      "compression_ratio": 1.0086580086580086,
      "no_speech_prob": 2.42918116177826e-11,
      "source": "whisper",
      "text_original": "而現在Codex Harness已經把它們變成了一套可以直接附用的基礎設施。",
      "correction_applied": true,
      "correction_source": "llm_correct_a_presegmentation"
    },
    {
      "id": 50,
      "seek": 34180,
      "start": 341.8,
      "end": 353.8,
      "text": "這也是為什麼我覺得這次Codex Harness真正重要的地方,並不是OpenAI又發布了一個新的Agent SDK,而是開發Agent的方式正在發生變化。",
      "tokens": [
        50365,
        2664,
        22021,
        18987,
        17689,
        2664,
        9487,
        34,
        1429,
        87,
        389,
        16937,
        6303,
        15789,
        24928,
        1546,
        30146,
        11,
        35934,
        7296,
        45569,
        48698,
        17047,
        14637,
        34688,
        2289,
        8990,
        12560,
        1546,
        32,
        6930,
        37135,
        11,
        11070,
        1541,
        8949,
        14637,
        32,
        6930,
        1546,
        9249,
        27584,
        15789,
        3581,
        14637,
        8244,
        26327,
        23756,
        1543,
        50965
      ],
      "temperature": 0,
      "avg_logprob": -0.14566315445944528,
      "compression_ratio": 1.0944055944055944,
      "no_speech_prob": 2.3376288751930652e-11,
      "source": "whisper"
    },
    {
      "id": 51,
      "seek": 34180,
      "start": 353.8,
      "end": 363.8,
      "text": "以前我們做Agent往往是先選一個模型,再選LangChain,LangGraph或者其他框架,然後自己搭工具,狀態,全線,memory和工作流。",
      "tokens": [
        50965,
        44996,
        5884,
        10907,
        32,
        6930,
        29510,
        29510,
        1541,
        10108,
        21625,
        8990,
        41908,
        39823,
        11,
        8623,
        21625,
        43,
        656,
        6546,
        491,
        11,
        43,
        656,
        38,
        2662,
        31148,
        9572,
        5000,
        21416,
        228,
        7360,
        114,
        11,
        10213,
        17645,
        22220,
        255,
        23323,
        39806,
        11,
        18637,
        222,
        45248,
        11,
        11319,
        31699,
        11,
        17886,
        827,
        12565,
        41315,
        27854,
        1543,
        51465
      ],
      "temperature": 0,
      "avg_logprob": -0.14566315445944528,
      "compression_ratio": 1.0944055944055944,
      "no_speech_prob": 2.3376288751930652e-11,
      "source": "whisper"
    },
    {
      "id": 52,
      "seek": 36380,
      "start": 363.8,
      "end": 370.8,
      "text": "以後則很可能變成先選擇一套成熟的Harness,然後直接在這套Harness上做自己的業務。",
      "tokens": [
        50365,
        3588,
        5661,
        46225,
        4563,
        16657,
        26327,
        11336,
        10108,
        21625,
        13167,
        229,
        2257,
        1881,
        245,
        11336,
        21805,
        253,
        1546,
        39,
        16937,
        11,
        10213,
        43297,
        3581,
        2664,
        1881,
        245,
        39,
        16937,
        5708,
        10907,
        17645,
        1546,
        27119,
        39517,
        1543,
        50715
      ],
      "temperature": 0,
      "avg_logprob": -0.06355574615019605,
      "compression_ratio": 1.1979522184300342,
      "no_speech_prob": 2.101388507647073e-11,
      "source": "whisper"
    },
    {
      "id": 53,
      "seek": 36380,
      "start": 370.8,
      "end": 378.8,
      "text": "模型可以換,業務也可以換,但底層那套讓Agent穩定執行任務的系統可以直接複用。",
      "tokens": [
        50715,
        41908,
        39823,
        6723,
        36338,
        11,
        27119,
        39517,
        47935,
        36338,
        11,
        8395,
        22816,
        9636,
        97,
        4184,
        1881,
        245,
        21195,
        32,
        6930,
        13740,
        102,
        12088,
        16262,
        115,
        8082,
        26443,
        39517,
        1546,
        25368,
        33725,
        6723,
        43297,
        8842,
        226,
        9254,
        1543,
        51115
      ],
      "temperature": 0,
      "avg_logprob": -0.06355574615019605,
      "compression_ratio": 1.1979522184300342,
      "no_speech_prob": 2.101388507647073e-11,
      "source": "whisper",
      "text_original": "模型可以換,業務也可以換,但底層那套讓Agent穩定執行任務的系統可以直接附用。",
      "correction_applied": true,
      "correction_source": "llm_correct_a_presegmentation"
    },
    {
      "id": 54,
      "seek": 36380,
      "start": 378.8,
      "end": 389.8,
      "text": "而從OpenAI目前公開的信息來看,Codex CLI,Codex App,IDE等不同形態,本身就是圍繞同一套Codex Harness能力展開的。",
      "tokens": [
        51115,
        11070,
        21068,
        45569,
        48698,
        39004,
        13545,
        8949,
        1546,
        17665,
        26460,
        3763,
        4200,
        11,
        34,
        1429,
        87,
        12855,
        40,
        11,
        34,
        1429,
        87,
        3132,
        11,
        29283,
        10187,
        47123,
        30900,
        45248,
        11,
        8802,
        19847,
        5620,
        2523,
        235,
        23141,
        252,
        13089,
        2257,
        1881,
        245,
        34,
        1429,
        87,
        389,
        16937,
        8225,
        13486,
        43491,
        8949,
        1546,
        1543,
        51665
      ],
      "temperature": 0,
      "avg_logprob": -0.06355574615019605,
      "compression_ratio": 1.1979522184300342,
      "no_speech_prob": 2.101388507647073e-11,
      "source": "whisper"
    },
    {
      "id": 55,
      "seek": 38980,
      "start": 389.8,
      "end": 398.8,
      "text": "現在真正發生變化的是,這套原本主要服務OpenAI自己Codex產品的能力,正在進一步向開發者開放。",
      "tokens": [
        50365,
        12648,
        6303,
        15789,
        14637,
        8244,
        26327,
        23756,
        24620,
        11,
        2664,
        1881,
        245,
        19683,
        8802,
        13557,
        4275,
        27408,
        39517,
        45569,
        48698,
        17645,
        34,
        1429,
        87,
        33299,
        30246,
        1546,
        8225,
        13486,
        11,
        15789,
        3581,
        18214,
        2257,
        31429,
        24282,
        8949,
        14637,
        12444,
        8949,
        12744,
        1543,
        50815
      ],
      "temperature": 0,
      "avg_logprob": -0.048496556282043454,
      "compression_ratio": 1.2165242165242165,
      "no_speech_prob": 1.7159506454644813e-11,
      "source": "whisper"
    },
    {
      "id": 56,
      "seek": 38980,
      "start": 398.8,
      "end": 408.8,
      "text": "所以Codex的定位也開始不再只是一個AI變成工具,它正在逐漸變成一套可以拿來開發其他智能體的通用Agent基座。",
      "tokens": [
        50815,
        7239,
        34,
        1429,
        87,
        1546,
        12088,
        11160,
        6404,
        21017,
        1960,
        8623,
        36859,
        8990,
        48698,
        26327,
        11336,
        23323,
        39806,
        11,
        11284,
        15789,
        3581,
        2215,
        238,
        14065,
        116,
        26327,
        11336,
        2257,
        1881,
        245,
        6723,
        24351,
        3763,
        8949,
        14637,
        9572,
        5000,
        5094,
        118,
        8225,
        23987,
        1546,
        19550,
        9254,
        32,
        6930,
        26008,
        6346,
        100,
        1543,
        51315
      ],
      "temperature": 0,
      "avg_logprob": -0.048496556282043454,
      "compression_ratio": 1.2165242165242165,
      "no_speech_prob": 1.7159506454644813e-11,
      "source": "whisper"
    },
    {
      "id": 57,
      "seek": 38980,
      "start": 408.8,
      "end": 417.8,
      "text": "以後你想開發AI數據分析系統,研發Agent,辦公Agent,甚至企業內部數字員工,並不一定還要從最底層重新打一整套Agent Framework,",
      "tokens": [
        51315,
        3588,
        5661,
        38386,
        8949,
        14637,
        48698,
        30622,
        36841,
        6627,
        7360,
        238,
        25368,
        33725,
        11,
        23230,
        242,
        14637,
        32,
        6930,
        11,
        23626,
        13545,
        32,
        6930,
        11,
        17556,
        20844,
        7384,
        223,
        27119,
        28472,
        13470,
        30622,
        22381,
        20992,
        23323,
        11,
        35934,
        1960,
        24272,
        7824,
        4275,
        21068,
        8661,
        22816,
        9636,
        97,
        12624,
        12560,
        12467,
        2257,
        27662,
        1881,
        245,
        32,
        6930,
        31628,
        1902,
        11,
        51765
      ],
      "temperature": 0,
      "avg_logprob": -0.048496556282043454,
      "compression_ratio": 1.2165242165242165,
      "no_speech_prob": 1.7159506454644813e-11,
      "source": "whisper"
    },
    {
      "id": 58,
      "seek": 41780,
      "start": 417.8,
      "end": 424.8,
      "text": "完全可以直接站在Codex Harness已經搭好的基礎設施上,繼續做自己的產品和業務能力。",
      "tokens": [
        50365,
        37100,
        6723,
        43297,
        34155,
        3581,
        34,
        1429,
        87,
        389,
        16937,
        25338,
        22220,
        255,
        20715,
        26008,
        14971,
        236,
        39035,
        4307,
        121,
        5708,
        11,
        38459,
        10907,
        17645,
        1546,
        33299,
        30246,
        12565,
        27119,
        39517,
        8225,
        13486,
        1543,
        50715
      ],
      "temperature": 0,
      "avg_logprob": -0.08500129618543259,
      "compression_ratio": 1.0836653386454183,
      "no_speech_prob": 1.722092086986482e-11,
      "source": "whisper"
    },
    {
      "id": 59,
      "seek": 41780,
      "start": 424.8,
      "end": 435.8,
      "text": "本期後面的實戰,我們就會直接把Codex Harness跑起來,分別演示Codex SDK和Codex App Server的使用方式,以及如何接入工具,Skills和MCP。",
      "tokens": [
        50715,
        8802,
        16786,
        5661,
        8833,
        1546,
        10376,
        23209,
        11,
        5884,
        47778,
        43297,
        16075,
        34,
        1429,
        87,
        389,
        16937,
        32585,
        21670,
        11,
        6627,
        16158,
        31382,
        25696,
        34,
        1429,
        87,
        37135,
        12565,
        34,
        1429,
        87,
        3132,
        25684,
        1546,
        22982,
        9254,
        9249,
        27584,
        11,
        40282,
        43526,
        14468,
        14028,
        23323,
        39806,
        11,
        50,
        74,
        2565,
        12565,
        44,
        20049,
        1543,
        51265
      ],
      "temperature": 0,
      "avg_logprob": -0.08500129618543259,
      "compression_ratio": 1.0836653386454183,
      "no_speech_prob": 1.722092086986482e-11,
      "source": "whisper"
    },
    {
      "id": 60,
      "seek": 43580,
      "start": 435.8,
      "end": 441.8,
      "text": "最後再把它真正集成進一套完整的AI數據分析Agent。",
      "tokens": [
        50365,
        20578,
        8623,
        42061,
        6303,
        15789,
        26020,
        11336,
        18214,
        2257,
        1881,
        245,
        14128,
        27662,
        1546,
        48698,
        30622,
        36841,
        6627,
        7360,
        238,
        32,
        6930,
        1543,
        50665
      ],
      "temperature": 0,
      "avg_logprob": -0.08264711168077257,
      "compression_ratio": 1.146341463414634,
      "no_speech_prob": 1.8982787564070236e-11,
      "source": "whisper"
    },
    {
      "id": 61,
      "seek": 43580,
      "start": 441.8,
      "end": 452.8,
      "text": "同時,我們團隊也已經整理好了Codex Harness使用與開發教程,完整配置說明,以及這套基於Codex Harness重構的AI數據分析Agent項目源碼。",
      "tokens": [
        50665,
        13089,
        6611,
        11,
        5884,
        37766,
        33929,
        6404,
        25338,
        27662,
        13876,
        12621,
        34,
        1429,
        87,
        389,
        16937,
        22982,
        9254,
        34127,
        8949,
        14637,
        21936,
        29649,
        11,
        14128,
        27662,
        38846,
        34719,
        4622,
        11100,
        11,
        40282,
        2664,
        1881,
        245,
        26008,
        19488,
        34,
        1429,
        87,
        389,
        16937,
        12624,
        43362,
        1546,
        48698,
        30622,
        36841,
        6627,
        7360,
        238,
        32,
        6930,
        8313,
        227,
        11386,
        12608,
        96,
        16337,
        120,
        1543,
        51215
      ],
      "temperature": 0,
      "avg_logprob": -0.08264711168077257,
      "compression_ratio": 1.146341463414634,
      "no_speech_prob": 1.8982787564070236e-11,
      "source": "whisper",
      "text_original": "同時,我們團隊也已經整理好了Codex Harness使用與開發教程,完整配置說明,以及這套基於Codex Harness重構的AI數據分析Agent項目緣碼。",
      "correction_applied": true,
      "correction_source": "llm_correct_a_presegmentation"
    },
    {
      "id": 62,
      "seek": 45280,
      "start": 452.8,
      "end": 457.8,
      "text": "想直接跟著項目復現的,可以查看頂層評論領取。",
      "tokens": [
        50365,
        7093,
        43297,
        9678,
        19382,
        8313,
        227,
        11386,
        2172,
        102,
        31699,
        1546,
        11,
        6723,
        42623,
        4200,
        25491,
        12088,
        39115,
        29340,
        8313,
        246,
        29436,
        1543,
        50615
      ],
      "temperature": 0,
      "avg_logprob": -0.15580402418624523,
      "compression_ratio": 1.0560344827586208,
      "no_speech_prob": 1.5592438798450736e-11,
      "source": "whisper",
      "text_original": "想直接跟著項目復線的,可以查看制定評論領取。",
      "correction_applied": true,
      "correction_source": "llm_correct_a_presegmentation"
    },
    {
      "id": 63,
      "seek": 45280,
      "start": 457.8,
      "end": 468.8,
      "text": "如果之前大家學習Codex,重點還是怎麼把Codex用好,那麼從Codex Harness開始,一個更值得關注的問題已經變成了,怎麼拿Codex做出屬於自己的Agent。",
      "tokens": [
        50615,
        13119,
        32442,
        6868,
        21372,
        34025,
        34,
        1429,
        87,
        11,
        12624,
        8216,
        25583,
        11614,
        16075,
        34,
        1429,
        87,
        9254,
        2131,
        11,
        20504,
        21068,
        34,
        1429,
        87,
        389,
        16937,
        21017,
        11,
        8990,
        19002,
        40242,
        5916,
        14899,
        26432,
        1546,
        17197,
        25338,
        26327,
        11336,
        2289,
        11,
        11614,
        24351,
        34,
        1429,
        87,
        10907,
        7781,
        9636,
        105,
        19488,
        17645,
        1546,
        32,
        6930,
        1543,
        51165
      ],
      "temperature": 0,
      "avg_logprob": -0.15580402418624523,
      "compression_ratio": 1.0560344827586208,
      "no_speech_prob": 1.5592438798450736e-11,
      "source": "whisper"
    }
  ],
  "transcript_selection": {
    "schema": "videonote.transcript_selection.v1",
    "status": "SELECTED",
    "requested_language": "zh",
    "duration": 469.414625,
    "reference_path": null,
    "reference_kind": null,
    "reference_language": null,
    "selected_source": "whisper_segmented",
    "decision_reason": "source_unavailable_or_untrusted_whisper_passed",
    "whisper_rejected": false,
    "source_profile": {
      "segment_count": 0,
      "duration_coverage": 0.0,
      "usable_full": false,
      "usable_partial": false,
      "hallucination_region_count": 0,
      "hallucination_regions": [],
      "language": {
        "requested": "zh",
        "matched": false
      }
    },
    "whisper_profile": {
      "segment_count": 64,
      "multilingual": false,
      "first_start": 0.0,
      "final_end": 468.8,
      "duration_coverage": 0.998691,
      "maximum_gap_seconds": 0.0,
      "inverted_count": 0,
      "language": {
        "requested": "zh",
        "matched": true,
        "latin": 882,
        "han": 1922,
        "kana": 0,
        "hangul": 0
      },
      "hallucination_region_count": 0,
      "hallucination_regions": [],
      "usable_full": true,
      "usable_partial": true
    },
    "comparison": {
      "window_seconds": 30.0,
      "compared_window_count": 0,
      "median_score": 0.0,
      "divergent_window_count": 0,
      "divergent_ratio": 0.0,
      "divergent_windows": []
    },
    "timestamp_alignment": {
      "applied": false,
      "estimated_offset_seconds": 0.0,
      "matched_segment_count": 0,
      "match_scores": []
    },
    "caption_timing_repair": null,
    "filled_source_profile": null,
    "whisper_duration_guard": {
      "media_duration": 469.415,
      "rejected_segment_count": 1,
      "rejected_segments": [
        {
          "index": 64,
          "start": 468.8,
          "end": 470.8,
          "reason": "material_end_timestamp_overrun"
        }
      ]
    }
  },
  "presegmentation_correction": {
    "applied": true,
    "correction_count": 6,
    "deterministic_fix_count": 0
  }
}
