1:"$Sreact.fragment" 2:I[56271,["2545","static/chunks/c16f53c3-391a1f5a73546b11.js","2619","static/chunks/2619-eccd988d1e161df3.js","3353","static/chunks/3353-35c19838f8cf7b3b.js","7177","static/chunks/app/layout-cb4429a7e3e88a9f.js"],"ThemeProviders"] 3:I[41402,["2545","static/chunks/c16f53c3-391a1f5a73546b11.js","2619","static/chunks/2619-eccd988d1e161df3.js","3353","static/chunks/3353-35c19838f8cf7b3b.js","7177","static/chunks/app/layout-cb4429a7e3e88a9f.js"],""] 4:I[91367,["2545","static/chunks/c16f53c3-391a1f5a73546b11.js","2619","static/chunks/2619-eccd988d1e161df3.js","3353","static/chunks/3353-35c19838f8cf7b3b.js","7177","static/chunks/app/layout-cb4429a7e3e88a9f.js"],"KBarSearchProvider"] 5:I[52619,["2619","static/chunks/2619-eccd988d1e161df3.js","2806","static/chunks/app/tags/page-716f271631f278af.js"],""] 6:I[51350,["2545","static/chunks/c16f53c3-391a1f5a73546b11.js","2619","static/chunks/2619-eccd988d1e161df3.js","3353","static/chunks/3353-35c19838f8cf7b3b.js","7177","static/chunks/app/layout-cb4429a7e3e88a9f.js"],"KBarButton"] 12:I[57150,[],""] :HL["/_next/static/css/29ff447a95e95257.css","style"] :HL["/_next/static/css/77af622156c5e021.css","style"] 0:{"P":null,"b":"FUTryh0Sm2lrVLTvF5oMH","p":"","c":["","tags","agent","page","2"],"i":false,"f":[[["",{"children":["tags",{"children":[["tag","agent","d"],{"children":["page",{"children":[["page","2","d"],{"children":["__PAGE__",{}]}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/29ff447a95e95257.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/77af622156c5e021.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"zh-cn","className":"scroll-smooth","suppressHydrationWarning":true,"children":[["$","link",null,{"rel":"apple-touch-icon","sizes":"76x76","href":"/static/favicons/apple-touch-icon.png"}],["$","link",null,{"rel":"icon","type":"image/png","sizes":"32x32","href":"/static/favicons/favicon-32x32.png"}],["$","link",null,{"rel":"icon","type":"image/png","sizes":"16x16","href":"/static/favicons/favicon-16x16.png"}],["$","link",null,{"rel":"manifest","href":"/static/favicons/site.webmanifest"}],["$","link",null,{"rel":"mask-icon","href":"/static/favicons/safari-pinned-tab.svg","color":"#5bbad5"}],["$","meta",null,{"name":"msapplication-TileColor","content":"#4f46e5"}],["$","meta",null,{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"#ffffff"}],["$","meta",null,{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"#0f172a"}],["$","link",null,{"rel":"alternate","type":"application/rss+xml","href":"/feed.xml"}],["$","body",null,{"className":"bg-white pl-[calc(100vw-100%)] text-black antialiased dark:bg-gray-950 dark:text-white","children":["$","$L2",null,{"children":[["$undefined","$undefined","$undefined",["$","$L3",null,{"async":true,"defer":true,"src":"https://analytics.umami.is/script.js"}],"$undefined","$undefined"],["$","section",null,{"className":"mx-auto max-w-3xl px-4 sm:px-6 xl:max-w-5xl xl:px-0","children":[["$","$L4",null,{"kbarConfig":{"searchDocumentsPath":"/search.json"},"children":[["$","header",null,{"className":"flex items-center w-full bg-white dark:bg-gray-950 justify-between py-10","children":[["$","$L5",null,{"className":"break-words","href":"/","aria-label":"TechLog","children":["$","div",null,{"className":"flex items-center justify-between","children":[["$","div",null,{"className":"mr-3","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","xmlnsXlink":"http://www.w3.org/1999/xlink","width":53.87,"height":43.61,"viewBox":"344.564 330.278 111.737 91.218","children":[["$","defs",null,{"children":[["$","linearGradient",null,{"id":"logo_svg__b","x1":420.97,"x2":420.97,"y1":331.28,"y2":418.5,"gradientUnits":"userSpaceOnUse","children":[["$","stop",null,{"offset":"0%","style":{"stopColor":"#06b6d4","stopOpacity":1}}],["$","stop",null,{"offset":"100%","style":{"stopColor":"#67e8f9","stopOpacity":1}}]]}],["$","linearGradient",null,{"id":"logo_svg__d","x1":377.89,"x2":377.89,"y1":331.28,"y2":418.5,"gradientUnits":"userSpaceOnUse","children":[["$","stop",null,{"offset":"0%","style":{"stopColor":"#06b6d4","stopOpacity":1}}],["$","stop",null,{"offset":"100%","style":{"stopColor":"#67e8f9","stopOpacity":1}}]]}],["$","path",null,{"id":"logo_svg__a","d":"M453.3 331.28v28.57l-64.66 58.65v-30.08z"}],["$","path",null,{"id":"logo_svg__c","d":"M410.23 331.28v28.57l-64.67 58.65v-30.08z"}]]}],["$","use",null,{"xlinkHref":"#logo_svg__a","fill":"url(#logo_svg__b)"}],["$","use",null,{"xlinkHref":"#logo_svg__c","fill":"url(#logo_svg__d)"}]]}]}],["$","div",null,{"className":"hidden h-6 text-2xl font-semibold sm:block","children":"TechLog"}]]}]}],["$","div",null,{"className":"flex items-center space-x-4 leading-5 sm:-mr-6 sm:space-x-6","children":[["$","div",null,{"className":"no-scrollbar hidden max-w-40 items-center gap-x-4 overflow-x-auto sm:flex md:max-w-72 lg:max-w-96","children":[["$","$L5","博客",{"className":"hover:text-primary-500 dark:hover:text-primary-400 m-1 font-medium text-gray-900 dark:text-gray-100","href":"/blog.html","children":"博客"}],["$","$L5","标签",{"className":"hover:text-primary-500 dark:hover:text-primary-400 m-1 font-medium text-gray-900 dark:text-gray-100","href":"/tags.html","children":"标签"}],["$","$L5","项目",{"className":"hover:text-primary-500 dark:hover:text-primary-400 m-1 font-medium text-gray-900 dark:text-gray-100","href":"/projects.html","children":"项目"}],["$","$L5","关于",{"className":"hover:text-primary-500 dark:hover:text-primary-400 m-1 font-medium text-gray-900 dark:text-gray-100","href":"/about.html","children":"关于"}]]}],["$","$L6",null,{"aria-label":"Search","children":["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","fill":"none","viewBox":"0 0 24 24","strokeWidth":1.5,"stroke":"currentColor","className":"hover:text-primary-500 dark:hover:text-primary-400 h-6 w-6 text-gray-900 dark:text-gray-100","children":"$L7"}]}],"$L8","$L9"]}]]}],"$La"]}],"$Lb"]}]]}]}]]}]]}],{"children":["tags","$Lc",{"children":[["tag","agent","d"],"$Ld",{"children":["page","$Le",{"children":[["page","2","d"],"$Lf",{"children":["__PAGE__","$L10",{},null,false]},null,false]},null,false]},null,false]},null,false]},null,false],"$L11",false]],"m":"$undefined","G":["$12",[]],"s":false,"S":true} 13:I[49217,["2545","static/chunks/c16f53c3-391a1f5a73546b11.js","2619","static/chunks/2619-eccd988d1e161df3.js","3353","static/chunks/3353-35c19838f8cf7b3b.js","7177","static/chunks/app/layout-cb4429a7e3e88a9f.js"],"default"] 14:I[394,["2545","static/chunks/c16f53c3-391a1f5a73546b11.js","2619","static/chunks/2619-eccd988d1e161df3.js","3353","static/chunks/3353-35c19838f8cf7b3b.js","7177","static/chunks/app/layout-cb4429a7e3e88a9f.js"],"default"] 15:I[9766,[],""] 16:I[98924,[],""] 18:I[24431,[],"OutletBoundary"] 1a:I[15278,[],"AsyncMetadataOutlet"] 1c:I[24431,[],"ViewportBoundary"] 1e:I[24431,[],"MetadataBoundary"] 1f:"$Sreact.suspense" 7:["$","path",null,{"strokeLinecap":"round","strokeLinejoin":"round","d":"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"}] 8:["$","$L13",null,{}] 9:["$","$L14",null,{}] a:["$","main",null,{"className":"mb-auto","children":["$","$L15",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L16",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","div",null,{"className":"flex flex-col items-start justify-start md:mt-24 md:flex-row md:items-center md:justify-center md:space-x-6","children":[["$","div",null,{"className":"space-x-2 pt-6 pb-8 md:space-y-5","children":["$","h1",null,{"className":"text-6xl leading-9 font-extrabold tracking-tight text-gray-900 md:border-r-2 md:px-6 md:text-8xl md:leading-14 dark:text-gray-100","children":"404"}]}],["$","div",null,{"className":"max-w-md","children":[["$","p",null,{"className":"mb-4 text-xl leading-normal font-bold md:text-2xl","children":"Sorry we couldn't find this page."}],["$","p",null,{"className":"mb-8","children":"But dont worry, you can find plenty of other things on our homepage."}],["$","$L5",null,{"className":"focus:shadow-outline-blue inline rounded-lg border border-transparent bg-blue-600 px-4 py-2 text-sm leading-5 font-medium text-white shadow-xs transition-colors duration-150 hover:bg-blue-700 focus:outline-hidden dark:hover:bg-blue-500","href":"/","children":"Back to homepage"}]]}]]}],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}] b:["$","footer",null,{"children":["$","div",null,{"className":"mt-16 flex flex-col items-center","children":[["$","div",null,{"className":"mb-3 flex space-x-4","children":[["$","a",null,{"className":"text-sm text-gray-500 transition hover:text-gray-600","target":"_blank","rel":"noopener noreferrer","href":"mailto:birenwenmou@qq.com","children":[["$","span",null,{"className":"sr-only","children":"mail"}],["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 20 20","className":"hover:text-primary-500 dark:hover:text-primary-400 fill-current text-gray-700 dark:text-gray-200 h-6 w-6","children":[["$","title",null,{"children":"Mail"}],["$","path",null,{"d":"M2.003 5.884L10 9.882l7.997-3.998A2 2 0 0016 4H4a2 2 0 00-1.997 1.884z"}],["$","path",null,{"d":"M18 8.118l-8 4-8-4V14a2 2 0 002 2h12a2 2 0 002-2V8.118z"}]]}]]}],["$","a",null,{"className":"text-sm text-gray-500 transition hover:text-gray-600","target":"_blank","rel":"noopener noreferrer","href":"https://github.com/joker1point","children":[["$","span",null,{"className":"sr-only","children":"github"}],["$","svg",null,{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 24 24","className":"hover:text-primary-500 dark:hover:text-primary-400 fill-current text-gray-700 dark:text-gray-200 h-6 w-6","children":[["$","title",null,{"children":"GitHub"}],["$","path",null,{"d":"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"}]]}]]}],null,null,null,null,null,null,null,null,null]}],["$","div",null,{"className":"mb-2 flex space-x-2 text-sm text-gray-500 dark:text-gray-400","children":[["$","div",null,{"children":"眠月"}],["$","div",null,{"children":" • "}],["$","div",null,{"children":"© 2026"}],["$","div",null,{"children":" • "}],["$","$L5",null,{"className":"break-words","href":"/","children":"TechLog"}]]}],["$","div",null,{"className":"mb-8 text-sm text-gray-500 dark:text-gray-400","children":["$","a",null,{"className":"break-words","target":"_blank","rel":"noopener noreferrer","href":"https://github.com/joker1point","children":"GitHub"}]}]]}]}] c:["$","$1","c",{"children":[null,["$","$L15",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L16",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}] d:["$","$1","c",{"children":[null,["$","$L15",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L16",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}] e:["$","$1","c",{"children":[null,["$","$L15",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L16",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}] f:["$","$1","c",{"children":[null,["$","$L15",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L16",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}] 10:["$","$1","c",{"children":["$L17",null,["$","$L18",null,{"children":["$L19",["$","$L1a",null,{"promise":"$@1b"}]]}]]}] 11:["$","$1","h",{"children":[null,[["$","$L1c",null,{"children":"$L1d"}],null],["$","$L1e",null,{"children":["$","div",null,{"hidden":true,"children":["$","$1f",null,{"fallback":null,"children":"$L20"}]}]}]]}] 21:I[97979,["2619","static/chunks/2619-eccd988d1e161df3.js","6775","static/chunks/6775-3fc538fd0daf2399.js","1929","static/chunks/app/tags/%5Btag%5D/page/%5Bpage%5D/page-f41c4dd79595bb47.js"],"default"] 17:["$","$L21",null,{"posts":[{"title":"2026 年 9 月 GitHub 热门项目分析:追踪大模型应用领域技术动态","date":"2026-09-17T00:00:00.000Z","tags":["github","open-source","ai","agent","trending"],"draft":false,"summary":"2026 年 9 月 GitHub 月榜 Top 10 逐项拆解——从 archify(把 AI 生成的架构图变成可验证制品)到 OpenViking(Agent 上下文数据库),并归纳出 Agent 输出制品化、上下文工程、Rust 工具化、AI 与教育/桌面交叉四条趋势。","type":"Blog","readingTime":{"text":"26 min read","minutes":25.54,"time":1532400,"words":5108},"wordCount":5108,"slug":"github-trending-2026-09","path":"blog/github-trending-2026-09","filePath":"blog/github-trending-2026-09.mdx","toc":[{"value":"🔥 GitHub 热门项目分析报告","url":"#-github-热门项目分析报告","depth":1},{"value":"一、本期热门项目总览","url":"#一本期热门项目总览","depth":2},{"value":"二、项目详细分析","url":"#二项目详细分析","depth":2},{"value":"📦 项目 1:tt-a1i/archify","url":"#-项目-1tt-a1iarchify","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因","depth":4},{"value":"📦 项目 2:public-apis/public-apis","url":"#-项目-2public-apispublic-apis","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-1","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-1","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-1","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-1","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-1","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-1","depth":4},{"value":"📦 项目 3:ayghri/i-have-adhd","url":"#-项目-3ayghrii-have-adhd","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-2","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-2","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-2","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-2","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-2","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-2","depth":4},{"value":"📦 项目 4:omarchy/omarchy","url":"#-项目-4omarchyomarchy","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-3","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-3","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-3","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-3","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-3","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-3","depth":4},{"value":"📦 项目 5:OpenMAIC/OpenMAIC","url":"#-项目-5openmaicopenmaic","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-4","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-4","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-4","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-4","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-4","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-4","depth":4},{"value":"📦 项目 6:volcengine/OpenViking","url":"#-项目-6volcengineopenviking","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-5","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-5","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-5","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-5","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-5","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-5","depth":4},{"value":"📦 项目 7:jingyaogong/minimind","url":"#-项目-7jingyaogongminimind","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-6","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-6","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-6","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-6","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-6","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-6","depth":4},{"value":"📦 项目 8:cathrynlavery/diagram-design","url":"#-项目-8cathrynlaverydiagram-design","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-7","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-7","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-7","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-7","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-7","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-7","depth":4},{"value":"📦 项目 9:AprilNEA/OpenLogi","url":"#-项目-9aprilneaopenlogi","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-8","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-8","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-8","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-8","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-8","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-8","depth":4},{"value":"📦 项目 10:vorssaintapp/vorssaint-utils","url":"#-项目-10vorssaintappvorssaint-utils","depth":3},{"value":"🔍 A. 项目背景","url":"#-a-项目背景-9","depth":4},{"value":"🎯 B. 项目目的","url":"#-b-项目目的-9","depth":4},{"value":"⚙️ C. 主要作用","url":"#️-c-主要作用-9","depth":4},{"value":"🛠️ D. 使用技术","url":"#️-d-使用技术-9","depth":4},{"value":"📍 E. 适用场景","url":"#-e-适用场景-9","depth":4},{"value":"💡 F. 热门原因","url":"#-f-热门原因-9","depth":4},{"value":"三、趋势总结","url":"#三趋势总结","depth":2},{"value":"🌐 本期技术趋势","url":"#-本期技术趋势","depth":3},{"value":"⭐ 编辑精选推荐","url":"#-编辑精选推荐","depth":3}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"2026 年 9 月 GitHub 热门项目分析:追踪大模型应用领域技术动态","datePublished":"2026-09-17T00:00:00.000Z","dateModified":"2026-09-17T00:00:00.000Z","description":"2026 年 9 月 GitHub 月榜 Top 10 逐项拆解——从 archify(把 AI 生成的架构图变成可验证制品)到 OpenViking(Agent 上下文数据库),并归纳出 Agent 输出制品化、上下文工程、Rust 工具化、AI 与教育/桌面交叉四条趋势。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/github-trending-2026-09"}},{"title":"我的 Agent 架构演进:Skill 压平 Sub Agent,Restatement 又把它拉了回来","date":"2026-09-15T00:00:00.000Z","tags":["agent","ai","architecture","context-engineering"],"draft":false,"summary":"从初代「主 Agent 编排 + 子 Agent 分工」三层架构,到用 Skill 替代冗余 Sub Agent 压平架构降低 Token,再到长任务中撞上步骤合并跳过、规则失效、输出同质化,最终靠 Restatement 机制与 Sub Agent 回归分头解决——一条完整的踩坑迭代链。","type":"Blog","readingTime":{"text":"4 min read","minutes":3.825,"time":229500,"words":765},"wordCount":765,"slug":"agent-architecture-evolution-skill-restatement","path":"blog/agent-architecture-evolution-skill-restatement","filePath":"blog/agent-architecture-evolution-skill-restatement.mdx","toc":[{"value":"一、AI 开发核心认知框架","url":"#一ai-开发核心认知框架","depth":2},{"value":"二、各框架/阶段对应问题及解决方案","url":"#二各框架阶段对应问题及解决方案","depth":2},{"value":"(一)整体开发现状及核心痛点","url":"#一整体开发现状及核心痛点","depth":3},{"value":"(二)初代 Plan and Execute 三层架构(主Agent编排+子Agent分工)","url":"#二初代-plan-and-execute-三层架构主agent编排子agent分工","depth":3},{"value":"(三)架构压平后(Skill替代Sub Agent)","url":"#三架构压平后skill替代sub-agent","depth":3},{"value":"三、总结","url":"#三总结","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"我的 Agent 架构演进:Skill 压平 Sub Agent,Restatement 又把它拉了回来","datePublished":"2026-09-15T00:00:00.000Z","dateModified":"2026-09-15T00:00:00.000Z","description":"从初代「主 Agent 编排 + 子 Agent 分工」三层架构,到用 Skill 替代冗余 Sub Agent 压平架构降低 Token,再到长任务中撞上步骤合并跳过、规则失效、输出同质化,最终靠 Restatement 机制与 Sub Agent 回归分头解决——一条完整的踩坑迭代链。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/agent-architecture-evolution-skill-restatement"}},{"title":"Agent 健壮性设计:工具调用与模型调用失败的容错与兜底","date":"2026-09-15T00:00:00.000Z","tags":["agent","ai","reliability","system-design"],"draft":false,"summary":"错误分类(确定性 vs 瞬时)→ 确定性错误回传模型自我修复、瞬时错误指数退避+随机抖动重试 → 多次失败熔断 → 按能力等级优雅降级(备用工具 / 业务降级 / 转人工)。模型侧另需识别「API 返回成功但业务结果错误」的潜在失败,并在切换备用模型后持续评估。","type":"Blog","readingTime":{"text":"9 min read","minutes":8.33,"time":499800,"words":1666},"wordCount":1666,"slug":"agent-fault-tolerance-design","path":"blog/agent-fault-tolerance-design","filePath":"blog/agent-fault-tolerance-design.mdx","toc":[{"value":"一、核心目标(要做什么)","url":"#一核心目标要做什么","depth":2},{"value":"二、工具调用失败:四步处理法(怎么做)","url":"#二工具调用失败四步处理法怎么做","depth":2},{"value":"Step 1:先对错误分类(答题第一句话说这个)","url":"#step-1先对错误分类答题第一句话说这个","depth":3},{"value":"Step 2:确定性错误 → 错误信息回传,让模型自我修复","url":"#step-2确定性错误--错误信息回传让模型自我修复","depth":3},{"value":"Step 3:瞬时错误 → 重试(指数退避 + 随机抖动)","url":"#step-3瞬时错误--重试指数退避--随机抖动","depth":3},{"value":"Step 4:多次重试仍失败 → 熔断","url":"#step-4多次重试仍失败--熔断","depth":3},{"value":"Step 5:优雅回退——按能力等级逐级降级(结合业务场景答)","url":"#step-5优雅回退按能力等级逐级降级结合业务场景答","depth":3},{"value":"三、模型调用失败:四步处理法(怎么做)","url":"#三模型调用失败四步处理法怎么做","depth":2},{"value":"Step 1:瞬时抖动 → 重试,但严格控制成本","url":"#step-1瞬时抖动--重试但严格控制成本","depth":3},{"value":"Step 2:识别\"潜在失败\"——监控业务指标(加分点)","url":"#step-2识别潜在失败监控业务指标加分点","depth":3},{"value":"Step 3:持续不可用 → 切换备用方案","url":"#step-3持续不可用--切换备用方案","depth":3},{"value":"Step 4:切换备用模型后持续评估(加分点)","url":"#step-4切换备用模型后持续评估加分点","depth":3},{"value":"四、完整处理流程图","url":"#四完整处理流程图","depth":2},{"value":"五、重点结论(面试直接背)","url":"#五重点结论面试直接背","depth":2},{"value":"六、为什么这样设计(动机)","url":"#六为什么这样设计动机","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"Agent 健壮性设计:工具调用与模型调用失败的容错与兜底","datePublished":"2026-09-15T00:00:00.000Z","dateModified":"2026-09-15T00:00:00.000Z","description":"错误分类(确定性 vs 瞬时)→ 确定性错误回传模型自我修复、瞬时错误指数退避+随机抖动重试 → 多次失败熔断 → 按能力等级优雅降级(备用工具 / 业务降级 / 转人工)。模型侧另需识别「API 返回成功但业务结果错误」的潜在失败,并在切换备用模型后持续评估。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/agent-fault-tolerance-design"}},{"title":"Agent Washing:为什么大批企业升级 Agent 不会产生增值","date":"2026-09-15T00:00:00.000Z","tags":["agent","ai","product","industry"],"draft":false,"summary":"Agent 有明确适用边界——擅长非结构化输入、路径不固定、需动态推理的任务。把确定流程强行套上自主智能是技术错配;中小企业缺数据/SOP/权限/复合人才配套地基;管理层\"替换人\"的预期错位(实际只能替换重复与信息整理类子集工作)。","type":"Blog","readingTime":{"text":"7 min read","minutes":6.495,"time":389700,"words":1299},"wordCount":1299,"slug":"agent-washing-why-no-value","path":"blog/agent-washing-why-no-value","filePath":"blog/agent-washing-why-no-value.mdx","toc":[{"value":"一、为什么大批企业升级Agent不会产生增值","url":"#一为什么大批企业升级agent不会产生增值","depth":2},{"value":"二、岗位分化:不是全部Agent岗位消失,而是两极分化","url":"#二岗位分化不是全部agent岗位消失而是两极分化","depth":2},{"value":"✅能够保留Agent岗位的:中大型企业","url":"#能够保留agent岗位的中大型企业","depth":3},{"value":"❌中小企业大量伪Agent岗位会消亡","url":"#中小企业大量伪agent岗位会消亡","depth":3},{"value":"三、会出现的现实连锁现象","url":"#三会出现的现实连锁现象","depth":2},{"value":"四、延伸的启发(对应技术从业者视角)","url":"#四延伸的启发对应技术从业者视角","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"Agent Washing:为什么大批企业升级 Agent 不会产生增值","datePublished":"2026-09-15T00:00:00.000Z","dateModified":"2026-09-15T00:00:00.000Z","description":"Agent 有明确适用边界——擅长非结构化输入、路径不固定、需动态推理的任务。把确定流程强行套上自主智能是技术错配;中小企业缺数据/SOP/权限/复合人才配套地基;管理层\"替换人\"的预期错位(实际只能替换重复与信息整理类子集工作)。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/agent-washing-why-no-value"}},{"title":"把 22 篇项目文档蒸馏成一个可进化的全局技能","date":"2026-09-15T00:00:00.000Z","tags":["agent","skill","engineering","knowledge-management"],"draft":false,"summary":"将 22 篇原始复盘文档蒸馏为全局技能 dev-lessons:按领域分文件(LLM 应用、前后端异步、数据库迁移、上游复用、部署环境、协作测试),每条经验附场景标签与溯源字段,并内置进化协议(同问题复现三次升级为元原则、元原则超 15 条强制合并)。","type":"Blog","readingTime":{"text":"3 min read","minutes":2.165,"time":129900,"words":433},"wordCount":433,"slug":"dev-lessons-skill-distillation","path":"blog/dev-lessons-skill-distillation","filePath":"blog/dev-lessons-skill-distillation.mdx","toc":[],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"把 22 篇项目文档蒸馏成一个可进化的全局技能","datePublished":"2026-09-15T00:00:00.000Z","dateModified":"2026-09-15T00:00:00.000Z","description":"将 22 篇原始复盘文档蒸馏为全局技能 dev-lessons:按领域分文件(LLM 应用、前后端异步、数据库迁移、上游复用、部署环境、协作测试),每条经验附场景标签与溯源字段,并内置进化协议(同问题复现三次升级为元原则、元原则超 15 条强制合并)。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/dev-lessons-skill-distillation"}},{"title":"如何给一个陌生开源项目做架构分析,并找到能合进去的贡献点","date":"2026-09-15T00:00:00.000Z","tags":["open-source","agent","architecture","python"],"draft":false,"summary":"以 MoneyPrinterTurbo 为例,按 7 个维度(任务规划、多 Agent 协作、上下文管理、Human-in-the-loop、评估框架、工具路由、Streaming)系统拆解一个陌生项目的架构缺陷,从中筛出 Top 3 贡献方向,并给出方案骨架与给维护者的英文沟通草稿。","type":"Blog","readingTime":{"text":"21 min read","minutes":20.17,"time":1210200,"words":4034},"wordCount":4034,"slug":"mpt-open-source-contribution-analysis","path":"blog/mpt-open-source-contribution-analysis","filePath":"blog/mpt-open-source-contribution-analysis.mdx","toc":[{"value":"Top 3 贡献方向:① 任务断点续跑(Checkpoint/Resume)② 官方 MCP Server ③ Issue #1157 批量脚本去重;前两者来自架构分析,第三个是 2~3 天可合入的信任建立型 PR","url":"#top-3-贡献方向-任务断点续跑checkpointresume-官方-mcp-server--issue-1157-批量脚本去重前两者来自架构分析第三个是-23-天可合入的信任建立型-pr","depth":3},{"value":"准备工作:项目理解","url":"#准备工作项目理解","depth":2},{"value":"目录结构(depth=3,★ 为核心模块)","url":"#目录结构depth3-为核心模块","depth":3},{"value":"核心循环与规划范式","url":"#核心循环与规划范式","depth":3},{"value":"分析维度一:Issue 列表筛选","url":"#分析维度一issue-列表筛选","depth":2},{"value":"分析维度二:架构层缺陷分析","url":"#分析维度二架构层缺陷分析","depth":2},{"value":"1. 任务规划","url":"#1-任务规划","depth":3},{"value":"2. 多 Agent 协作","url":"#2-多-agent-协作","depth":3},{"value":"3. 上下文管理策略","url":"#3-上下文管理策略","depth":3},{"value":"4. Human-in-the-loop 机制","url":"#4-human-in-the-loop-机制","depth":3},{"value":"5. Agent 评估框架","url":"#5-agent-评估框架","depth":3},{"value":"6. Tool 检索与路由","url":"#6-tool-检索与路由","depth":3},{"value":"7. Streaming 与中间状态可见性","url":"#7-streaming-与中间状态可见性","depth":3},{"value":"最终输出:Top 3 贡献建议","url":"#最终输出top-3-贡献建议","depth":2},{"value":"第 1 名:任务 Checkpoint 与断点续跑机制","url":"#第-1-名任务-checkpoint-与断点续跑机制","depth":3},{"value":"第 2 名:官方 MCP Server 集成","url":"#第-2-名官方-mcp-server-集成","depth":3},{"value":"第 3 名:Issue #1157 批量多视频脚本去重","url":"#第-3-名issue-1157-批量多视频脚本去重","depth":3},{"value":"附:Top 1 方向的技术方案骨架(供你启动第二阶段)","url":"#附top-1-方向的技术方案骨架供你启动第二阶段","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"如何给一个陌生开源项目做架构分析,并找到能合进去的贡献点","datePublished":"2026-09-15T00:00:00.000Z","dateModified":"2026-09-15T00:00:00.000Z","description":"以 MoneyPrinterTurbo 为例,按 7 个维度(任务规划、多 Agent 协作、上下文管理、Human-in-the-loop、评估框架、工具路由、Streaming)系统拆解一个陌生项目的架构缺陷,从中筛出 Top 3 贡献方向,并给出方案骨架与给维护者的英文沟通草稿。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/mpt-open-source-contribution-analysis"}},{"title":"给 119k star 项目提 PR:8 小时从评论到合并的完整复盘","date":"2026-09-15T00:00:00.000Z","tags":["open-source","agent","python","engineering","pr"],"draft":false,"summary":"一次向 MoneyPrinterTurbo(119k+ star)提交 OpenAI 兼容文生图素材源并被合并的完整复盘:占坑式沟通拿到约束、用数据回应\"改动过大\"的顾虑、测试证据链决定合并速度,以及维护者在后续 PR 中指出的付费 API 容错设计缺陷。","type":"Blog","readingTime":{"text":"14 min read","minutes":13.555,"time":813300,"words":2711},"wordCount":2711,"slug":"mpt-pr-1291-contribution-review","path":"blog/mpt-pr-1291-contribution-review","filePath":"blog/mpt-pr-1291-contribution-review.mdx","toc":[{"value":"一、项目概述","url":"#一项目概述","depth":2},{"value":"二、成功经验","url":"#二成功经验","depth":2},{"value":"1. 占坑式沟通——先对齐再动手","url":"#1-占坑式沟通先对齐再动手","depth":3},{"value":"2. 用数据回应\"改动过大\"顾虑","url":"#2-用数据回应改动过大顾虑","depth":3},{"value":"3. 测试证据链决定合并速度","url":"#3-测试证据链决定合并速度","depth":3},{"value":"4. Review 响应:逐条修复 + 一次到位","url":"#4-review-响应逐条修复--一次到位","depth":3},{"value":"5. 技术设计上的克制","url":"#5-技术设计上的克制","depth":3},{"value":"6. 后续 PR #1296:遗留边界闭环(200 伪装内容)","url":"#6-后续-pr-1296遗留边界闭环200-伪装内容","depth":3},{"value":"7. 最有价值的一课:维护者在 #1296 上的深化(commit 428dd4e)","url":"#7-最有价值的一课维护者在-1296-上的深化commit-428dd4e","depth":3},{"value":"8. 事实修正:计费安全先例的归属(防止面试翻车)","url":"#8-事实修正计费安全先例的归属防止面试翻车","depth":3},{"value":"三、踩坑记录与解决方案","url":"#三踩坑记录与解决方案","depth":2},{"value":"1. Streamlit text_area 必须 Ctrl+Enter 提交","url":"#1-streamlit-text_area-必须-ctrlenter-提交","depth":3},{"value":"2. GITHUB_TOKEN 环境变量劫持 gh 认证","url":"#2-github_token-环境变量劫持-gh-认证","depth":3},{"value":"3. Agnes 文生图端点间歇性 503(队列满)","url":"#3-agnes-文生图端点间歇性-503队列满","depth":3},{"value":"4. 千问兼容端点免费额度耗尽","url":"#4-千问兼容端点免费额度耗尽","depth":3},{"value":"5. Windows 下 Python 嵌套引号命令","url":"#5-windows-下-python-嵌套引号命令","depth":3},{"value":"6. Edit 工具字符串匹配失败(行尾空白)","url":"#6-edit-工具字符串匹配失败行尾空白","depth":3},{"value":"7. 测试用 TemporaryDirectory 的作用域陷阱","url":"#7-测试用-temporarydirectory-的作用域陷阱","depth":3},{"value":"8. 测试隔离:本地 config.toml 泄漏进单测","url":"#8-测试隔离本地-configtoml-泄漏进单测","depth":3},{"value":"9. 首次贡献者 fork PR 的 CI 不自动跑","url":"#9-首次贡献者-fork-pr-的-ci-不自动跑","depth":3},{"value":"四、可复用流程资产","url":"#四可复用流程资产","depth":2},{"value":"五、面试叙事素材","url":"#五面试叙事素材","depth":2},{"value":"六、遗留事项","url":"#六遗留事项","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"给 119k star 项目提 PR:8 小时从评论到合并的完整复盘","datePublished":"2026-09-15T00:00:00.000Z","dateModified":"2026-09-15T00:00:00.000Z","description":"一次向 MoneyPrinterTurbo(119k+ star)提交 OpenAI 兼容文生图素材源并被合并的完整复盘:占坑式沟通拿到约束、用数据回应\"改动过大\"的顾虑、测试证据链决定合并速度,以及维护者在后续 PR 中指出的付费 API 容错设计缺陷。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/mpt-pr-1291-contribution-review"}},{"title":"RAG 还必要吗:从 130 条技术评论里提炼出的选型决策框架","date":"2026-09-15T00:00:00.000Z","tags":["rag","agent","ai","research"],"draft":false,"summary":"围绕「向量 RAG vs LLM Wiki + grep / Agent 自主检索」的四派立场梳理(谨慎派、混合派、场景决定论派、演进视角派)、四个辩论冲突点,以及一组可直接落地的决策框架:按更新频率、查询频率、数据规模、领域特性决定上不上 RAG。","type":"Blog","readingTime":{"text":"10 min read","minutes":9.515,"time":570900,"words":1903},"wordCount":1903,"slug":"rag-vs-agent-retrieval-decision-framework","path":"blog/rag-vs-agent-retrieval-decision-framework","filePath":"blog/rag-vs-agent-retrieval-decision-framework.mdx","toc":[{"value":"话题主题","url":"#话题主题","depth":3},{"value":"不同立场 & 核心观点","url":"#不同立场--核心观点","depth":3},{"value":"辩论冲突点","url":"#辩论冲突点","depth":3},{"value":"逻辑疑点 / 待思考问题","url":"#逻辑疑点--待思考问题","depth":3},{"value":"关键信息摘要","url":"#关键信息摘要","depth":3}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"RAG 还必要吗:从 130 条技术评论里提炼出的选型决策框架","datePublished":"2026-09-15T00:00:00.000Z","dateModified":"2026-09-15T00:00:00.000Z","description":"围绕「向量 RAG vs LLM Wiki + grep / Agent 自主检索」的四派立场梳理(谨慎派、混合派、场景决定论派、演进视角派)、四个辩论冲突点,以及一组可直接落地的决策框架:按更新频率、查询频率、数据规模、领域特性决定上不上 RAG。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/rag-vs-agent-retrieval-decision-framework"}},{"title":"如何沉淀 Agent 每次的踩坑经验","date":"2026-09-06T00:00:00.000Z","tags":["agent","dev-lessons","engineering","methodology","knowledge-management"],"draft":false,"summary":"把\"记住教训\"从 agent 的自觉变成基础设施:三层漏斗体系——规则强制捕获(项目级原始档)→ 定期蒸馏(全局技能)→ 协议化进化(活性维护)。","type":"Blog","readingTime":{"text":"5 min read","minutes":4.685,"time":281100,"words":937},"wordCount":937,"slug":"agent-lessons-precipitation","path":"blog/agent-lessons-precipitation","filePath":"blog/agent-lessons-precipitation.mdx","toc":[{"value":"如何沉淀 Agent 每次的踩坑经验","url":"#如何沉淀-agent-每次的踩坑经验","depth":2},{"value":"阶段一:规则驱动,强制捕获(源头)","url":"#阶段一规则驱动强制捕获源头","depth":2},{"value":"阶段二:蒸馏整合,跨项目复用","url":"#阶段二蒸馏整合跨项目复用","depth":2},{"value":"阶段三:进化协议,防止腐烂","url":"#阶段三进化协议防止腐烂","depth":2},{"value":"资产结构","url":"#资产结构","depth":2},{"value":"这套体系的本质","url":"#这套体系的本质","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"如何沉淀 Agent 每次的踩坑经验","datePublished":"2026-09-06T00:00:00.000Z","dateModified":"2026-09-06T00:00:00.000Z","description":"把\"记住教训\"从 agent 的自觉变成基础设施:三层漏斗体系——规则强制捕获(项目级原始档)→ 定期蒸馏(全局技能)→ 协议化进化(活性维护)。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/agent-lessons-precipitation"}},{"title":"Agent 怎么防止 Prompt 注入:四层纵深防御体系","date":"2026-09-06T00:00:00.000Z","tags":["ai","agent","security","prompt-injection","llm"],"draft":false,"summary":"单靠 Prompt 加限制词防不住注入,正确做法是搭建「输入侧 → 模型侧 → 执行侧 → 输出侧」四层纵深防御体系,其中执行侧权限管控是最硬的底线。","type":"Blog","readingTime":{"text":"8 min read","minutes":7.935,"time":476100,"words":1587},"wordCount":1587,"slug":"agent-prompt-injection-defense","path":"blog/agent-prompt-injection-defense","filePath":"blog/agent-prompt-injection-defense.mdx","toc":[{"value":"Agent 怎么防止 Prompt 注入","url":"#agent-怎么防止-prompt-注入","depth":2},{"value":"一、要做什么:四层纵深防御体系总览","url":"#一要做什么四层纵深防御体系总览","depth":2},{"value":"二、怎么做:各层具体落地手段","url":"#二怎么做各层具体落地手段","depth":2},{"value":"第一层:输入侧(隔离与检测)","url":"#第一层输入侧隔离与检测","depth":3},{"value":"第二层:模型侧(提升鲁棒性)","url":"#第二层模型侧提升鲁棒性","depth":3},{"value":"第三层:执行侧(权限管控,最硬防线)","url":"#第三层执行侧权限管控最硬防线","depth":3},{"value":"第四层:输出侧(过滤与追溯)","url":"#第四层输出侧过滤与追溯","depth":3},{"value":"三、为什么:根因与底层逻辑","url":"#三为什么根因与底层逻辑","depth":2},{"value":"Prompt 注入的根因","url":"#prompt-注入的根因","depth":3},{"value":"为什么 Prompt 加固防不住","url":"#为什么-prompt-加固防不住","depth":3},{"value":"为什么执行侧最关键","url":"#为什么执行侧最关键","depth":3},{"value":"为什么要重视输出侧追溯","url":"#为什么要重视输出侧追溯","depth":3},{"value":"四、面试回答框架(可直接套用)","url":"#四面试回答框架可直接套用","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"Agent 怎么防止 Prompt 注入:四层纵深防御体系","datePublished":"2026-09-06T00:00:00.000Z","dateModified":"2026-09-06T00:00:00.000Z","description":"单靠 Prompt 加限制词防不住注入,正确做法是搭建「输入侧 → 模型侧 → 执行侧 → 输出侧」四层纵深防御体系,其中执行侧权限管控是最硬的底线。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/agent-prompt-injection-defense"}},{"title":"我是如何保证 Agent Skill 多而不乱的?","date":"2026-09-06T00:00:00.000Z","tags":["agent","skill","governance","engineering","methodology"],"draft":false,"summary":"700+ Skill 库的四层治理体系:L1 排序层(选得对)、L2 存储管理层(管得住)、L3 分区保护层(改不坏)、L4 自进化层(不腐烂),叠加快慢双路径检索。","type":"Blog","readingTime":{"text":"16 min read","minutes":15.28,"time":916800,"words":3056},"wordCount":3056,"slug":"agent-skill-governance","path":"blog/agent-skill-governance","filePath":"blog/agent-skill-governance.mdx","toc":[{"value":"1. 问题定义","url":"#1-问题定义","depth":2},{"value":"2. 总体架构","url":"#2-总体架构","depth":2},{"value":"3. L1 排序层:多指标综合排序","url":"#3-l1-排序层多指标综合排序","depth":2},{"value":"3.1 为什么必须多指标","url":"#31-为什么必须多指标","depth":3},{"value":"3.2 指标定义","url":"#32-指标定义","depth":3},{"value":"3.3 综合分公式","url":"#33-综合分公式","depth":3},{"value":"3.4 排序结果的用途","url":"#34-排序结果的用途","depth":3},{"value":"4. L2 存储管理层:skills-manager 统一管理","url":"#4-l2-存储管理层skills-manager-统一管理","depth":2},{"value":"4.1 核心原则","url":"#41-核心原则","depth":3},{"value":"4.2 架构","url":"#42-架构","depth":3},{"value":"4.3 元数据模型(DB schema 扩展)","url":"#43-元数据模型db-schema-扩展","depth":3},{"value":"4.4 分类体系","url":"#44-分类体系","depth":3},{"value":"5. L3 分区保护层:可修改区 / 不可修改区","url":"#5-l3-分区保护层可修改区--不可修改区","depth":2},{"value":"5.1 设计动机","url":"#51-设计动机","depth":3},{"value":"5.2 分区定义","url":"#52-分区定义","depth":3},{"value":"5.3 分区规则","url":"#53-分区规则","depth":3},{"value":"5.4 分层的信息学依据","url":"#54-分层的信息学依据","depth":3},{"value":"6. L4 自进化层:使用中持续迭代","url":"#6-l4-自进化层使用中持续迭代","depth":2},{"value":"6.1 进化闭环","url":"#61-进化闭环","depth":3},{"value":"6.2 进化的三类信号","url":"#62-进化的三类信号","depth":3},{"value":"6.3 防退化约束","url":"#63-防退化约束","depth":3},{"value":"7. 检索架构:快慢双路径","url":"#7-检索架构快慢双路径","depth":2},{"value":"7.1 快路径(默认)","url":"#71-快路径默认","depth":3},{"value":"7.2 慢路径(子 agent 兜底检索)","url":"#72-慢路径子-agent-兜底检索","depth":3},{"value":"8. 度量与验收","url":"#8-度量与验收","depth":2},{"value":"9. 设计要点回顾","url":"#9-设计要点回顾","depth":2},{"value":"10. 与现有组件的映射","url":"#10-与现有组件的映射","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"我是如何保证 Agent Skill 多而不乱的?","datePublished":"2026-09-06T00:00:00.000Z","dateModified":"2026-09-06T00:00:00.000Z","description":"700+ Skill 库的四层治理体系:L1 排序层(选得对)、L2 存储管理层(管得住)、L3 分区保护层(改不坏)、L4 自进化层(不腐烂),叠加快慢双路径检索。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/agent-skill-governance"}},{"title":"如何快速接手一个项目并构建深度项目认知","date":"2026-09-06T00:00:00.000Z","tags":["onboarding","engineering","architecture","methodology","agent"],"draft":false,"summary":"接手陌生项目的四阶段方法论:宏观定向(1-2小时)→ 架构建模(半天)→ 运行验证(半天)→ 持续深化。12 个可执行步骤,配合 agent 技能栈实现认知加速。","type":"Blog","readingTime":{"text":"4 min read","minutes":3.055,"time":183300,"words":611},"wordCount":611,"slug":"onboarding-project-deep-understanding","path":"blog/onboarding-project-deep-understanding","filePath":"blog/onboarding-project-deep-understanding.mdx","toc":[{"value":"如何快速接手一个项目并构建深度项目认知","url":"#如何快速接手一个项目并构建深度项目认知","depth":2},{"value":"阶段一:宏观定向(1-2 小时)","url":"#阶段一宏观定向1-2-小时","depth":2},{"value":"阶段二:架构建模(半天)","url":"#阶段二架构建模半天","depth":2},{"value":"阶段三:运行验证(半天)","url":"#阶段三运行验证半天","depth":2},{"value":"阶段四:持续深化","url":"#阶段四持续深化","depth":2},{"value":"关键原则","url":"#关键原则","depth":2},{"value":"技能栈覆盖","url":"#技能栈覆盖","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"如何快速接手一个项目并构建深度项目认知","datePublished":"2026-09-06T00:00:00.000Z","dateModified":"2026-09-06T00:00:00.000Z","description":"接手陌生项目的四阶段方法论:宏观定向(1-2小时)→ 架构建模(半天)→ 运行验证(半天)→ 持续深化。12 个可执行步骤,配合 agent 技能栈实现认知加速。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/onboarding-project-deep-understanding"}},{"title":"Workflow vs Agent:用 7 维度框架定位你的项目","date":"2026-09-06T00:00:00.000Z","tags":["ai","agent","workflow","architecture","llm"],"draft":false,"summary":"以 MoneyPrinterTurbo 为例,用 7 个 agent 架构维度审视一个固定管线项目:它几乎一个都不占,但这不是缺陷,而是项目性质使然。能说清\"为什么这里不需要 agent\",比硬说\"这里有 agent\"更显研究深度。","type":"Blog","readingTime":{"text":"6 min read","minutes":5.25,"time":315000,"words":1050},"wordCount":1050,"slug":"workflow-vs-agent-7-dimensions","path":"blog/workflow-vs-agent-7-dimensions","filePath":"blog/workflow-vs-agent-7-dimensions.mdx","toc":[{"value":"Workflow vs Agent:用 7 维度框架定位你的项目","url":"#workflow-vs-agent用-7-维度框架定位你的项目","depth":2},{"value":"前提纠正:MoneyPrinterTurbo 不是 Agent 项目,这 7 个维度大多不适用","url":"#前提纠正moneyprinterturbo-不是-agent-项目这-7-个维度大多不适用","depth":2},{"value":"真问题:你的 agent 深度证据链目前是空的","url":"#真问题你的-agent-深度证据链目前是空的","depth":2},{"value":"1. 把 7 维度框架用在正确的对象上","url":"#1-把-7-维度框架用在正确的对象上","depth":3},{"value":"2. LiveTalking 才是 7 维度的主战场","url":"#2-livetalking-才是-7-维度的主战场","depth":3},{"value":"3. 如果 agent 线必须马上有东西","url":"#3-如果-agent-线必须马上有东西","depth":3},{"value":"面试话术(如果被问\"你的 PR 没体现 agent 研究\")","url":"#面试话术如果被问你的-pr-没体现-agent-研究","depth":2}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"Workflow vs Agent:用 7 维度框架定位你的项目","datePublished":"2026-09-06T00:00:00.000Z","dateModified":"2026-09-06T00:00:00.000Z","description":"以 MoneyPrinterTurbo 为例,用 7 个 agent 架构维度审视一个固定管线项目:它几乎一个都不占,但这不是缺陷,而是项目性质使然。能说清\"为什么这里不需要 agent\",比硬说\"这里有 agent\"更显研究深度。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/workflow-vs-agent-7-dimensions"}},{"title":"对Agent产品窗口期的看法","date":"2026-06-06T00:00:00.000Z","tags":["ai","agent","startup","product","opinion"],"draft":false,"summary":"Agent的窗口期会非常短——因为Agent本身就在提高开发Agent应用的效率,市场需求将迅速饱和。以月之暗面Alnative桌面级本地Agent为例,超5万行代码中92%由AI自主生成,工程师仅耗时一周完成架构优化与交互调校。","type":"Blog","readingTime":{"text":"1 min read","minutes":0.62,"time":37200,"words":124},"wordCount":124,"slug":"agent-window-period","path":"blog/agent-window-period","filePath":"blog/agent-window-period.mdx","toc":[{"value":"对Agent产品窗口期的看法","url":"#对agent产品窗口期的看法","depth":2},{"value":"产品开发背景","url":"#产品开发背景","depth":3},{"value":"核心观点","url":"#核心观点","depth":3}],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"对Agent产品窗口期的看法","datePublished":"2026-06-06T00:00:00.000Z","dateModified":"2026-06-06T00:00:00.000Z","description":"Agent的窗口期会非常短——因为Agent本身就在提高开发Agent应用的效率,市场需求将迅速饱和。以月之暗面Alnative桌面级本地Agent为例,超5万行代码中92%由AI自主生成,工程师仅耗时一周完成架构优化与交互调校。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/agent-window-period"}},{"title":"IDE Agent 开发体验:为什么直接操作代码比通用 AI 助手更靠谱","date":"2026-06-04T00:00:00.000Z","tags":["ai","ide","agent","devtools","opinion","developer-experience"],"draft":false,"summary":"对比 IDE 内置 Agent 与通用 AI 编程助手在代码开发场景中的体验差异,探讨代码硬约束、模型幻觉抑制、精准代码定位等关键优势。","type":"Blog","readingTime":{"text":"1 min read","minutes":0.34,"time":20400,"words":68},"wordCount":68,"slug":"ide-agent-vs-ai-assistant","path":"blog/ide-agent-vs-ai-assistant","filePath":"blog/ide-agent-vs-ai-assistant.mdx","toc":[],"structuredData":{"@context":"https://schema.org","@type":"BlogPosting","headline":"IDE Agent 开发体验:为什么直接操作代码比通用 AI 助手更靠谱","datePublished":"2026-06-04T00:00:00.000Z","dateModified":"2026-06-04T00:00:00.000Z","description":"对比 IDE 内置 Agent 与通用 AI 编程助手在代码开发场景中的体验差异,探讨代码硬约束、模型幻觉抑制、精准代码定位等关键优势。","image":"/static/images/twitter-card.png","url":"https://techlog-18328.app.workbuddy.host/blog/ide-agent-vs-ai-assistant"}}],"initialDisplayPosts":["$17:props:posts:5","$17:props:posts:6","$17:props:posts:7","$17:props:posts:8","$17:props:posts:9"],"pagination":{"currentPage":2,"totalPages":3},"title":"Agent"}] 1d:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] 19:null 1b:{"metadata":[["$","title","0",{"children":"TechLog"}],["$","meta","1",{"name":"description","content":"AI Agent 工程化实践复盘:架构设计、容错与可靠性、上下文工程与成本治理。"}],["$","meta","2",{"name":"robots","content":"index, follow"}],["$","meta","3",{"name":"googlebot","content":"index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1"}],["$","link","4",{"rel":"canonical","href":"https://techlog-18328.app.workbuddy.host/tags/agent/page/2"}],["$","link","5",{"rel":"alternate","type":"application/rss+xml","href":"https://techlog-18328.app.workbuddy.host/feed.xml"}],["$","meta","6",{"property":"og:title","content":"TechLog"}],["$","meta","7",{"property":"og:description","content":"AI Agent 工程化实践复盘:架构设计、容错与可靠性、上下文工程与成本治理。"}],["$","meta","8",{"property":"og:url","content":"https://techlog-18328.app.workbuddy.host/tags/agent/page/2"}],["$","meta","9",{"property":"og:site_name","content":"TechLog"}],["$","meta","10",{"property":"og:locale","content":"zh_CN"}],["$","meta","11",{"property":"og:image","content":"https://techlog-18328.app.workbuddy.host/static/images/twitter-card.png"}],["$","meta","12",{"property":"og:type","content":"website"}],["$","meta","13",{"name":"twitter:card","content":"summary_large_image"}],["$","meta","14",{"name":"twitter:title","content":"TechLog"}],["$","meta","15",{"name":"twitter:description","content":"AI Agent 工程化实践复盘:架构设计、容错与可靠性、上下文工程与成本治理。"}],["$","meta","16",{"name":"twitter:image","content":"https://techlog-18328.app.workbuddy.host/static/images/twitter-card.png"}]],"error":null,"digest":"$undefined"} 20:"$1b:metadata"