[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"summary-9dc04753ea67f7dd-build-stateful-agents-with-file-systems-ai-sdk-v6-summary":3,"summaries-facets-categories":858,"summary-related-9dc04753ea67f7dd-build-stateful-agents-with-file-systems-ai-sdk-v6-summary":4444},{"id":4,"title":5,"ai":6,"body":13,"categories":817,"created_at":818,"date_modified":818,"description":48,"extension":819,"faq":818,"featured":820,"kicker_label":818,"meta":821,"navigation":99,"path":839,"published_at":840,"question":818,"scraped_at":841,"seo":842,"sitemap":843,"source_id":844,"source_name":845,"source_type":846,"source_url":847,"stem":848,"tags":849,"thumbnail_url":853,"tldr":854,"tweet":855,"unknown_tags":856,"__hash__":857},"summaries\u002Fsummaries\u002F9dc04753ea67f7dd-build-stateful-agents-with-file-systems-ai-sdk-v6-summary.md","Build Stateful Agents with File Systems & AI SDK v6",{"provider":7,"model":8,"input_tokens":9,"output_tokens":10,"processing_time_ms":11,"cost_usd":12},"openrouter","x-ai\u002Fgrok-4.1-fast",8492,2990,34659,0.00290255,{"type":14,"value":15,"toc":809},"minimark",[16,21,42,165,192,199,202,206,217,255,262,265,288,291,295,302,344,366,484,491,495,502,509,556,563,566,569,573,576,702,719,730,736,739,743,780,785,805],[17,18,20],"h2",{"id":19},"agent-runtime-tool-loop-as-the-core-harness","Agent Runtime: Tool-Loop as the Core Harness",[22,23,24,25,29,30,33,34,37,38,41],"p",{},"The foundation of effective agents in 2026 is a lightweight runtime that manages the tool loop, context persistence, and execution harness. Nico Albanese teaches building this with Vercel's AI SDK v6's ",[26,27,28],"code",{},"toolLoopAgent",", a two-line abstraction over primitives like ",[26,31,32],{},"generateText"," and ",[26,35,36],{},"streamText",". Define the agent once in ",[26,39,40],{},"lib\u002Fagent.ts"," for reuse across Next.js routes, Bun servers, or monorepos:",[43,44,49],"pre",{"className":45,"code":46,"language":47,"meta":48,"style":48},"language-typescript shiki shiki-themes github-light github-dark","import { toolLoopAgent } from 'ai\u002Ftoolu'; \u002F\u002F Note: actual import from '@ai-sdk\u002Fcore'\nimport { ollama} from 'ai\u002Fproviders\u002Follama';\n\nexport const agent = toolLoopAgent({\n  model: 'gpt-4o-mini',\n  instructions: 'Your system prompt here',\n  tools: { \u002F* tools later *\u002F }\n});\n","typescript","",[26,50,51,78,94,101,124,136,147,159],{"__ignoreMap":48},[52,53,56,60,64,67,71,74],"span",{"class":54,"line":55},"line",1,[52,57,59],{"class":58},"szBVR","import",[52,61,63],{"class":62},"sVt8B"," { toolLoopAgent } ",[52,65,66],{"class":58},"from",[52,68,70],{"class":69},"sZZnC"," 'ai\u002Ftoolu'",[52,72,73],{"class":62},"; ",[52,75,77],{"class":76},"sJ8bj","\u002F\u002F Note: actual import from '@ai-sdk\u002Fcore'\n",[52,79,81,83,86,88,91],{"class":54,"line":80},2,[52,82,59],{"class":58},[52,84,85],{"class":62}," { ollama} ",[52,87,66],{"class":58},[52,89,90],{"class":69}," 'ai\u002Fproviders\u002Follama'",[52,92,93],{"class":62},";\n",[52,95,97],{"class":54,"line":96},3,[52,98,100],{"emptyLinePlaceholder":99},true,"\n",[52,102,104,107,110,114,117,121],{"class":54,"line":103},4,[52,105,106],{"class":58},"export",[52,108,109],{"class":58}," const",[52,111,113],{"class":112},"sj4cs"," agent",[52,115,116],{"class":58}," =",[52,118,120],{"class":119},"sScJk"," toolLoopAgent",[52,122,123],{"class":62},"({\n",[52,125,127,130,133],{"class":54,"line":126},5,[52,128,129],{"class":62},"  model: ",[52,131,132],{"class":69},"'gpt-4o-mini'",[52,134,135],{"class":62},",\n",[52,137,139,142,145],{"class":54,"line":138},6,[52,140,141],{"class":62},"  instructions: ",[52,143,144],{"class":69},"'Your system prompt here'",[52,146,135],{"class":62},[52,148,150,153,156],{"class":54,"line":149},7,[52,151,152],{"class":62},"  tools: { ",[52,154,155],{"class":76},"\u002F* tools later *\u002F",[52,157,158],{"class":62}," }\n",[52,160,162],{"class":54,"line":161},8,[52,163,164],{"class":62},"});\n",[22,166,167,168,171,172,175,176,179,180,183,184,187,188,191],{},"This keeps LLM logic centralized, avoiding 2,000-line route handlers. Call it in ",[26,169,170],{},"app\u002Fapi\u002Fchat\u002Froute.ts"," with ",[26,173,174],{},"createAgentUIStreamResponse(agent, { messages })"," for streaming. On the frontend, ",[26,177,178],{},"useChat"," from ",[26,181,182],{},"@ai-sdk\u002Freact"," handles message state, errors, and UI rendering. Prerequisites: Next.js app, Vercel CLI linked to a project for OIDC tokens authenticating AI Gateway and sandboxes. Install deps: ",[26,185,186],{},"pnpm add ai @ai-sdk\u002Freact zod",". Run ",[26,189,190],{},"pnpm dev"," to test basic chat at localhost:3000.",[22,193,194,195,198],{},"Key principle: Instructions shape behavior early. Update ",[26,196,197],{},"instructions"," to \"Respond like a cowboy\" and refresh—agent replies \"Howdy partner 🐴\". This evolves into complex directives for planning, tool use, and persistence.",[22,200,201],{},"Common mistake: Inline tools\u002Fprompts in API routes, leading to bloat. Solution: Agent definition as single source of truth.",[17,203,205],{"id":204},"context-augmentation-provider-executed-tools","Context Augmentation: Provider-Executed Tools",[22,207,208,209,212,213,216],{},"Agents fail without external context. Start with OpenAI's web search as a provider-executed tool—no custom execute function needed. Install ",[26,210,211],{},"ai-sdk-openai",", import ",[26,214,215],{},"{ openai }",", add to agent:",[43,218,220],{"className":45,"code":219,"language":47,"meta":48,"style":48},"tools: {\n  webSearch: openai.tools.webSearch({ \u002F* optional params *\u002F })\n}\n",[26,221,222,230,250],{"__ignoreMap":48},[52,223,224,227],{"class":54,"line":55},[52,225,226],{"class":119},"tools",[52,228,229],{"class":62},": {\n",[52,231,232,235,238,241,244,247],{"class":54,"line":80},[52,233,234],{"class":119},"  webSearch",[52,236,237],{"class":62},": openai.tools.",[52,239,240],{"class":119},"webSearch",[52,242,243],{"class":62},"({ ",[52,245,246],{"class":76},"\u002F* optional params *\u002F",[52,248,249],{"class":62}," })\n",[52,251,252],{"class":54,"line":96},[52,253,254],{"class":62},"}\n",[22,256,257,258,261],{},"OpenAI executes search server-side, injects results into messages. Query \"When is AI Engineer Summit London?\"—agent pauses, searches, responds with dates. Customize: Pass ",[26,259,260],{},"{ location: 'London' }"," for localized results. Trade-off: Provider lock-in (OpenAI-specific), but zero code for quick wins.",[22,263,264],{},"Three tool types explained:",[266,267,268,276,282],"ol",{},[269,270,271,275],"li",{},[272,273,274],"strong",{},"Custom tools",": Define description, Zod schema, execute fn (e.g., bash later).",[269,277,278,281],{},[272,279,280],{},"Provider-defined",": Pre-trained like Anthropic's bash\u002Fcomputer-use tools.",[269,283,284,287],{},[272,285,286],{},"Provider-executed",": Infra-handled like web search.",[22,289,290],{},"UI feedback is crucial—users see nothing during loops. Use typed messages for rendering.",[17,292,294],{"id":293},"end-to-end-type-safety-from-agent-definition","End-to-End Type Safety from Agent Definition",[22,296,297,298,301],{},"AI SDK v6 infers types across stack from agent tools. Export ",[26,299,300],{},"type AgentUIMessage = InferAgentUIMessage\u003Ctypeof agent>;",". In route handler:",[43,303,305],{"className":45,"code":304,"language":47,"meta":48,"style":48},"const response = await createAgentUIStreamResponse(agent, {\n  messages: messages as AgentUIMessage[]\n});\n",[26,306,307,326,340],{"__ignoreMap":48},[52,308,309,312,315,317,320,323],{"class":54,"line":55},[52,310,311],{"class":58},"const",[52,313,314],{"class":112}," response",[52,316,116],{"class":58},[52,318,319],{"class":58}," await",[52,321,322],{"class":119}," createAgentUIStreamResponse",[52,324,325],{"class":62},"(agent, {\n",[52,327,328,331,334,337],{"class":54,"line":80},[52,329,330],{"class":62},"  messages: messages ",[52,332,333],{"class":58},"as",[52,335,336],{"class":119}," AgentUIMessage",[52,338,339],{"class":62},"[]\n",[52,341,342],{"class":54,"line":96},[52,343,164],{"class":62},[22,345,346,347,350,351,354,355,358,359,350,362,365],{},"In ",[26,348,349],{},"page.tsx",", ",[26,352,353],{},"const { messages } = useChat({ api: '\u002Fapi\u002Fchat' } as UseChatParams\u003CAgentUIMessage>);",". Now ",[26,356,357],{},"part.type === 'tool-web-search'"," autocompletes ",[26,360,361],{},"input.query: string",[26,363,364],{},"output.results: array",". Build UI:",[43,367,371],{"className":368,"code":369,"language":370,"meta":48,"style":48},"language-tsx shiki shiki-themes github-light github-dark","{part.type === 'tool-web-search' && (\n  \u003Cdiv>🔍 Searching: {part.input.query}... {part.status === 'pending' ? '⏳' : '✅'}\n    {part.output?.results?.slice(0,3).map(r => \u003Cp>{r.title}: {r.content}\u003C\u002Fp>)}\n  \u003C\u002Fdiv>\n)}\n","tsx",[26,372,373,390,421,469,479],{"__ignoreMap":48},[52,374,375,378,381,384,387],{"class":54,"line":55},[52,376,377],{"class":62},"{part.type ",[52,379,380],{"class":58},"===",[52,382,383],{"class":69}," 'tool-web-search'",[52,385,386],{"class":58}," &&",[52,388,389],{"class":62}," (\n",[52,391,392,395,399,402,404,407,410,413,416,419],{"class":54,"line":80},[52,393,394],{"class":62},"  \u003C",[52,396,398],{"class":397},"s9eBZ","div",[52,400,401],{"class":62},">🔍 Searching: {part.input.query}... {part.status ",[52,403,380],{"class":58},[52,405,406],{"class":69}," 'pending'",[52,408,409],{"class":58}," ?",[52,411,412],{"class":69}," '⏳'",[52,414,415],{"class":58}," :",[52,417,418],{"class":69}," '✅'",[52,420,254],{"class":62},[52,422,423,426,429,432,435,438,441,444,447,449,453,456,459,461,464,466],{"class":54,"line":96},[52,424,425],{"class":62},"    {part.output?.results?.",[52,427,428],{"class":119},"slice",[52,430,431],{"class":62},"(",[52,433,434],{"class":112},"0",[52,436,437],{"class":62},",",[52,439,440],{"class":112},"3",[52,442,443],{"class":62},").",[52,445,446],{"class":119},"map",[52,448,431],{"class":62},[52,450,452],{"class":451},"s4XuR","r",[52,454,455],{"class":58}," =>",[52,457,458],{"class":62}," \u003C",[52,460,22],{"class":397},[52,462,463],{"class":62},">{r.title}: {r.content}\u003C\u002F",[52,465,22],{"class":397},[52,467,468],{"class":62},">)}\n",[52,470,471,474,476],{"class":54,"line":103},[52,472,473],{"class":62},"  \u003C\u002F",[52,475,398],{"class":397},[52,477,478],{"class":62},">\n",[52,480,481],{"class":54,"line":126},[52,482,483],{"class":62},")}\n",[22,485,486,487,490],{},"Before: ",[26,488,489],{},"unknown"," types, manual casting. After: Full autocomplete for inputs\u002Foutputs\u002Fstatus. Quality criteria: Agent tools dictate UI—add tool, types propagate. Fits mid-workflow after basic agent, before persistence.",[17,492,494],{"id":493},"persistent-sandboxes-the-computer-that-changes-agent-behavior","Persistent Sandboxes: The Computer That Changes Agent Behavior",[22,496,497,498,501],{},"Key insight: File systems transform agents from hallucinating short-task bots to persistent task-followers. Vercel's internal DZero agent (Slackbot accessing Vercel admin, Salesforce) exploded in reliability post-filesystem: Created ",[26,499,500],{},"plan.md"," with objective + steps, checked off progress, stored research in dirs. No more context dilution in long windows.",[22,503,504,505,508],{},"Vercel Sandboxes: Named, persistent file systems per agent run. Init via CLI: ",[26,506,507],{},"vercel sandbox init my-sandbox --persistent",". Mount in agent calls with custom options:",[43,510,512],{"className":45,"code":511,"language":47,"meta":48,"style":48},"const sandbox = await vercel.sandbox({ name: 'agent-computer' });\nagent.call({ ..., sandbox });\n",[26,513,514,540],{"__ignoreMap":48},[52,515,516,518,521,523,525,528,531,534,537],{"class":54,"line":55},[52,517,311],{"class":58},[52,519,520],{"class":112}," sandbox",[52,522,116],{"class":58},[52,524,319],{"class":58},[52,526,527],{"class":62}," vercel.",[52,529,530],{"class":119},"sandbox",[52,532,533],{"class":62},"({ name: ",[52,535,536],{"class":69},"'agent-computer'",[52,538,539],{"class":62}," });\n",[52,541,542,545,548,550,553],{"class":54,"line":80},[52,543,544],{"class":62},"agent.",[52,546,547],{"class":119},"call",[52,549,243],{"class":62},[52,551,552],{"class":58},"...",[52,554,555],{"class":62},", sandbox });\n",[22,557,558,559,562],{},"Agents read\u002Fwrite files (e.g., ",[26,560,561],{},"memories.md","), execute bash. Behavior shift: Builds on prior work across sessions, no manual memory. Trade-off: Sandbox isolation limits (no network by default), but secures execution.",[22,564,565],{},"Instructions enforce: \"For every session: 1. Read plan.md\u002Fobjective. 2. Update scratchpad. 3. Generate\u002Fstore Python scripts for repeats. 4. Use bash for execution.\"",[22,567,568],{},"Common mistake: Ephemeral context—agents forget mid-task. Avoid: Mandate file-based planning\u002Fchecklists.",[17,570,572],{"id":571},"custom-tools-bash-execution-and-learning-via-scripts","Custom Tools: Bash Execution and Learning via Scripts",[22,574,575],{},"Add bash tool for sandbox compute. Custom tool schema:",[43,577,579],{"className":45,"code":578,"language":47,"meta":48,"style":48},"const bashTool = tool({\n  id: 'bash',\n  description: 'Execute bash commands in sandbox',\n  parameters: z.object({ command: z.string() }),\n  execute: async ({ command }, { sandbox }) => {\n    const result = await sandbox.execute(command);\n    return { stdout: result.stdout, stderr: result.stderr };\n  }\n});\n",[26,580,581,595,605,615,632,663,684,692,697],{"__ignoreMap":48},[52,582,583,585,588,590,593],{"class":54,"line":55},[52,584,311],{"class":58},[52,586,587],{"class":112}," bashTool",[52,589,116],{"class":58},[52,591,592],{"class":119}," tool",[52,594,123],{"class":62},[52,596,597,600,603],{"class":54,"line":80},[52,598,599],{"class":62},"  id: ",[52,601,602],{"class":69},"'bash'",[52,604,135],{"class":62},[52,606,607,610,613],{"class":54,"line":96},[52,608,609],{"class":62},"  description: ",[52,611,612],{"class":69},"'Execute bash commands in sandbox'",[52,614,135],{"class":62},[52,616,617,620,623,626,629],{"class":54,"line":103},[52,618,619],{"class":62},"  parameters: z.",[52,621,622],{"class":119},"object",[52,624,625],{"class":62},"({ command: z.",[52,627,628],{"class":119},"string",[52,630,631],{"class":62},"() }),\n",[52,633,634,637,640,643,646,649,652,654,657,660],{"class":54,"line":126},[52,635,636],{"class":119},"  execute",[52,638,639],{"class":62},": ",[52,641,642],{"class":58},"async",[52,644,645],{"class":62}," ({ ",[52,647,648],{"class":451},"command",[52,650,651],{"class":62}," }, { ",[52,653,530],{"class":451},[52,655,656],{"class":62}," }) ",[52,658,659],{"class":58},"=>",[52,661,662],{"class":62}," {\n",[52,664,665,668,671,673,675,678,681],{"class":54,"line":138},[52,666,667],{"class":58},"    const",[52,669,670],{"class":112}," result",[52,672,116],{"class":58},[52,674,319],{"class":58},[52,676,677],{"class":62}," sandbox.",[52,679,680],{"class":119},"execute",[52,682,683],{"class":62},"(command);\n",[52,685,686,689],{"class":54,"line":149},[52,687,688],{"class":58},"    return",[52,690,691],{"class":62}," { stdout: result.stdout, stderr: result.stderr };\n",[52,693,694],{"class":54,"line":161},[52,695,696],{"class":62},"  }\n",[52,698,700],{"class":54,"line":699},9,[52,701,164],{"class":62},[22,703,704,705,708,709,350,712,715,716,718],{},"Integrate: ",[26,706,707],{},"tools: { bash: bashTool, webSearch }",". Agent now runs ",[26,710,711],{},"ls",[26,713,714],{},"echo 'test' > file.txt",". Add ",[26,717,561],{},": Agent appends insights, reads on start.",[22,720,721,722,725,726,729],{},"Advanced: Self-improvement loop. Instruct: \"For repeatable tasks, generate Python script, save as ",[26,723,724],{},"tools\u002Fscript.py",", execute via bash ",[26,727,728],{},"python script.py","\". Agent accumulates tools\u002Fcontext autonomously.",[22,731,732,733,735],{},"Sub-agents: Delegate via nested ",[26,734,28],{},". Full system: Web search → plan → bash\u002Fscript gen → persist.",[22,737,738],{},"Quality check: Output includes artifacts (files, scripts). Practice: Clone repo (AIE-London-demo), iterate instructions.",[17,740,742],{"id":741},"key-takeaways","Key Takeaways",[744,745,746,752,755,762,765,768,771,774,777],"ul",{},[269,747,748,749,751],{},"Define agents with ",[26,750,28],{}," for reusable, lightweight runtimes—centralize tools\u002Finstructions.",[269,753,754],{},"Use provider-executed tools like OpenAI webSearch for instant context without code.",[269,756,757,758,761],{},"Leverage end-to-end types: ",[26,759,760],{},"InferAgentUIMessage"," ensures UI\u002Ftools stay in sync.",[269,763,764],{},"Give agents persistent sandboxes: Changes behavior from flaky to task-persistent via file plans.",[269,766,767],{},"Combine bash + memories.md + script gen: Enables cross-session learning, no manual state.",[269,769,770],{},"Always instruct file-based planning: \"Create\u002Fupdate plan.md with objective + steps\" prevents drift.",[269,772,773],{},"Trade-off honesty: Provider tools tie you in; sandboxes secure but limit network.",[269,775,776],{},"Test iteratively: Start cowboy prompt, layer tools\u002Fsandboxes.",[269,778,779],{},"Production: Link Vercel project, pull OIDC env vars for auth.",[22,781,782],{},[272,783,784],{},"Notable Quotes:",[266,786,787,790,793,799,802],{},[269,788,789],{},"\"Giving an agent a file system didn't just add storage, it changed how the agent behaved. It started following through on long tasks, staying on track, and building on its own prior work.\" (Intro insight on DZero agent.)",[269,791,792],{},"\"The instructions there were create this plan file and in that plan file was the objective right at the top and then right below the instructions were follow this plan file to a T, check things off as you go.\" (Explaining persistence shift.)",[269,794,795,796,798],{},"\"This is quite obvious as to what it does it is a tool loop using agent um kind of does what it says on the tin.\" (On ",[26,797,28],{}," naming\u002Fsimplicity.)",[269,800,801],{},"\"The big assumption goes through every single AI SDK API decision is like we want to have the agent definition being the source of truth that everything kind of inherits from.\" (Type safety philosophy.)",[269,803,804],{},"\"Agents in 2026: agent runtime, tools, and a computer\u002Fsandbox for persistence.\" (Core building blocks.)",[806,807,808],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}",{"title":48,"searchDepth":80,"depth":80,"links":810},[811,812,813,814,815,816],{"id":19,"depth":80,"text":20},{"id":204,"depth":80,"text":205},{"id":293,"depth":80,"text":294},{"id":493,"depth":80,"text":494},{"id":571,"depth":80,"text":572},{"id":741,"depth":80,"text":742},[],null,"md",false,{"content_references":822,"triage":836},[823,827,829,831,834],{"type":824,"title":825,"context":826},"tool","AI SDK","mentioned",{"type":824,"title":828,"context":826},"Vercel CLI",{"type":824,"title":830,"context":826},"Vercel Sandboxes",{"type":832,"title":833,"context":826},"other","OpenCode",{"type":824,"title":835,"context":826},"OpenAI Web Search Tool",{"relevance":126,"novelty":103,"quality":103,"actionability":126,"composite":837,"reasoning":838},4.55,"Category: AI & LLMs. The article provides a detailed guide on building stateful agents using the AI SDK v6, addressing practical applications for developers looking to implement AI features in their products. It includes specific code examples and emphasizes the importance of context management, making it highly actionable for the target audience.","\u002Fsummaries\u002F9dc04753ea67f7dd-build-stateful-agents-with-file-systems-ai-sdk-v6-summary","2026-05-12 18:00:06","2026-05-13 12:00:16",{"title":5,"description":48},{"loc":839},"9dc04753ea67f7dd","AI Engineer","video","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=wflNENRSUb4","summaries\u002F9dc04753ea67f7dd-build-stateful-agents-with-file-systems-ai-sdk-v6-summary",[850,47,851,852],"agents","ai-tools","ai-sdk","https:\u002F\u002Fi.ytimg.com\u002Fvi\u002FwflNENRSUb4\u002Fhqdefault.jpg","Give agents persistent sandboxes, bash tools, and memory files via AI SDK v6 to make them follow long tasks, build on prior work, and generate reusable Python scripts without manual context management.","Hands-on coding workshop where Nico Albanese builds a tool-loop agent from scratch using Vercel AI SDK v6, adding web search, bash execution, a memories.md file for persistence, and named sandboxes for file-system state across sessions. Follows timestamps for setup through sub-agents; clone the demo repo mentioned in-video to code along.",[852],"nl99B4MrwSRIE6cU5I0krn59nwT4pfcjWC5AqSpH9Nc",[859,862,865,868,871,874,876,878,880,882,884,886,889,891,893,895,897,899,901,903,905,907,910,913,915,917,920,922,924,927,929,931,933,935,937,939,941,943,945,947,949,951,953,955,957,959,961,963,965,967,969,971,973,975,977,979,981,983,985,987,989,991,993,995,997,999,1001,1003,1005,1007,1009,1011,1013,1015,1017,1019,1021,1023,1025,1027,1029,1031,1033,1035,1037,1039,1041,1043,1045,1047,1049,1051,1053,1055,1057,1059,1061,1063,1065,1067,1069,1071,1073,1075,1077,1079,1081,1083,1085,1087,1089,1091,1093,1095,1097,1099,1101,1103,1105,1107,1109,1111,1113,1115,1117,1119,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1155,1157,1159,1161,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1216,1218,1220,1222,1224,1226,1228,1230,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,1328,1330,1332,1334,1336,1338,1340,1342,1344,1346,1348,1350,1352,1354,1356,1358,1360,1362,1364,1366,1368,1370,1372,1374,1376,1378,1380,1382,1384,1386,1388,1390,1392,1394,1396,1398,1400,1402,1404,1406,1408,1410,1412,1414,1416,1418,1420,1422,1424,1426,1428,1430,1432,1434,1436,1438,1440,1442,1444,1446,1448,1450,1452,1454,1456,1458,1460,1462,1464,1466,1468,1470,1472,1474,1476,1478,1480,1482,1484,1486,1488,1490,1492,1494,1496,1498,1500,1502,1504,1506,1508,1510,1512,1514,1516,1518,1520,1522,1524,1526,1528,1530,1532,1534,1536,1538,1540,1542,1544,1546,1548,1550,1552,1554,1556,1558,1560,1562,1564,1566,1568,1570,1572,1574,1576,1578,1580,1582,1584,1586,1588,1590,1592,1594,1596,1598,1600,1602,1604,1606,1608,1610,1612,1614,1616,1618,1620,1622,1624,1626,1628,1630,1632,1634,1636,1638,1640,1642,1644,1646,1648,1650,1652,1654,1656,1658,1660,1662,1664,1666,1668,1670,1672,1674,1676,1678,1680,1682,1684,1686,1688,1690,1692,1694,1696,1698,1700,1702,1704,1706,1708,1710,1712,1714,1716,1718,1720,1722,1724,1726,1728,1730,1732,1734,1736,1738,1740,1742,1744,1746,1748,1750,1752,1754,1756,1758,1760,1762,1764,1766,1768,1770,1772,1774,1776,1778,1780,1782,1784,1786,1788,1790,1792,1794,1796,1798,1800,1802,1804,1806,1808,1810,1812,1814,1816,1818,1820,1822,1824,1826,1828,1830,1832,1834,1836,1838,1840,1842,1844,1846,1848,1850,1852,1854,1856,1858,1860,1862,1864,1866,1868,1870,1872,1874,1876,1878,1880,1882,1884,1886,1888,1890,1892,1894,1896,1898,1900,1902,1904,1906,1908,1910,1912,1914,1916,1918,1920,1922,1924,1926,1928,1930,1932,1934,1936,1938,1940,1942,1944,1946,1948,1950,1952,1954,1956,1958,1960,1962,1964,1966,1968,1970,1972,1974,1976,1978,1980,1982,1984,1986,1988,1990,1992,1994,1996,1998,2000,2002,2004,2006,2008,2010,2012,2014,2016,2018,2020,2022,2024,2026,2028,2030,2032,2034,2036,2038,2040,2042,2044,2046,2048,2050,2052,2054,2056,2058,2060,2062,2064,2066,2068,2070,2072,2074,2076,2078,2080,2082,2084,2086,2088,2090,2092,2094,2096,2098,2100,2102,2104,2106,2108,2110,2112,2114,2116,2118,2120,2122,2124,2126,2128,2130,2132,2134,2136,2138,2140,2142,2144,2146,2148,2150,2152,2154,2156,2158,2160,2162,2164,2166,2168,2170,2172,2174,2176,2178,2180,2182,2184,2186,2188,2190,2192,2194,2196,2198,2200,2202,2204,2206,2208,2210,2212,2214,2216,2218,2220,2222,2224,2226,2228,2230,2232,2234,2236,2238,2240,2242,2244,2246,2248,2250,2252,2254,2256,2258,2260,2262,2264,2266,2268,2270,2272,2274,2276,2278,2280,2282,2284,2286,2288,2290,2292,2294,2296,2298,2300,2302,2304,2306,2308,2310,2312,2314,2316,2318,2320,2322,2324,2326,2328,2330,2332,2334,2336,2338,2340,2342,2344,2346,2348,2350,2352,2354,2356,2358,2360,2362,2364,2366,2368,2370,2372,2374,2376,2378,2380,2382,2384,2386,2388,2390,2392,2394,2396,2398,2400,2402,2404,2406,2408,2410,2412,2414,2416,2418,2420,2422,2424,2426,2428,2430,2432,2434,2436,2438,2440,2442,2444,2446,2448,2450,2452,2454,2456,2458,2460,2462,2464,2466,2468,2470,2472,2474,2476,2478,2480,2482,2484,2486,2488,2490,2492,2494,2496,2498,2500,2502,2504,2506,2508,2510,2512,2514,2516,2518,2520,2522,2524,2526,2528,2530,2532,2534,2536,2538,2540,2542,2544,2546,2548,2550,2552,2554,2556,2558,2560,2562,2564,2566,2568,2570,2572,2574,2576,2578,2580,2582,2584,2586,2588,2590,2592,2594,2596,2598,2600,2602,2604,2606,2608,2610,2612,2614,2616,2618,2620,2622,2624,2626,2628,2630,2632,2634,2636,2638,2640,2642,2644,2646,2648,2650,2652,2654,2656,2658,2660,2662,2664,2666,2668,2670,2672,2674,2676,2678,2680,2682,2684,2686,2688,2690,2692,2694,2696,2698,2700,2702,2704,2706,2708,2710,2712,2714,2716,2718,2720,2722,2724,2726,2728,2730,2732,2734,2736,2738,2740,2742,2744,2746,2748,2750,2752,2754,2756,2758,2760,2762,2764,2766,2768,2770,2772,2774,2776,2778,2780,2782,2784,2786,2788,2790,2792,2794,2796,2798,2800,2802,2804,2806,2808,2810,2812,2814,2816,2818,2820,2822,2824,2826,2828,2830,2832,2834,2836,2838,2840,2842,2844,2846,2848,2850,2852,2854,2856,2858,2860,2862,2864,2866,2868,2870,2872,2874,2876,2878,2880,2882,2884,2886,2888,2890,2892,2894,2896,2898,2900,2902,2904,2906,2908,2910,2912,2914,2916,2918,2920,2922,2924,2926,2928,2930,2932,2934,2936,2938,2940,2942,2944,2946,2948,2950,2952,2954,2956,2958,2960,2962,2964,2966,2968,2970,2972,2974,2976,2978,2980,2982,2984,2986,2988,2990,2992,2994,2996,2998,3000,3002,3004,3006,3008,3010,3012,3014,3016,3018,3020,3022,3024,3026,3028,3030,3032,3034,3036,3038,3040,3042,3044,3046,3048,3050,3052,3054,3056,3058,3060,3062,3064,3066,3068,3070,3072,3074,3076,3078,3080,3082,3084,3086,3088,3090,3092,3094,3096,3098,3100,3102,3104,3106,3108,3110,3112,3114,3116,3118,3120,3122,3124,3126,3128,3130,3132,3134,3136,3138,3140,3142,3144,3146,3148,3150,3152,3154,3156,3158,3160,3162,3164,3166,3168,3170,3172,3174,3176,3178,3180,3182,3184,3186,3188,3190,3192,3194,3196,3198,3200,3202,3204,3206,3208,3210,3212,3214,3216,3218,3220,3222,3224,3226,3228,3230,3232,3234,3236,3238,3240,3242,3244,3246,3248,3250,3252,3254,3256,3258,3260,3262,3264,3266,3268,3270,3272,3274,3276,3278,3280,3282,3284,3286,3288,3290,3292,3294,3296,3298,3300,3302,3304,3306,3308,3310,3312,3314,3316,3318,3320,3322,3324,3326,3328,3330,3332,3334,3336,3338,3340,3342,3344,3346,3348,3350,3352,3354,3356,3358,3360,3362,3364,3366,3368,3370,3372,3374,3376,3378,3380,3382,3384,3386,3388,3390,3392,3394,3396,3398,3400,3402,3404,3406,3408,3410,3412,3414,3416,3418,3420,3422,3424,3426,3428,3430,3432,3434,3436,3438,3440,3442,3444,3446,3448,3450,3452,3454,3456,3458,3460,3462,3464,3466,3468,3470,3472,3474,3476,3478,3480,3482,3484,3486,3488,3490,3492,3494,3496,3498,3500,3502,3504,3506,3508,3510,3512,3514,3516,3518,3520,3522,3524,3526,3528,3530,3532,3534,3536,3538,3540,3542,3544,3546,3548,3550,3552,3554,3556,3558,3560,3562,3564,3566,3568,3570,3572,3574,3576,3578,3580,3582,3584,3586,3588,3590,3592,3594,3596,3598,3600,3602,3604,3606,3608,3610,3612,3614,3616,3618,3620,3622,3624,3626,3628,3630,3632,3634,3636,3638,3640,3642,3644,3646,3648,3650,3652,3654,3656,3658,3660,3662,3664,3666,3668,3670,3672,3674,3676,3678,3680,3682,3684,3686,3688,3690,3692,3694,3696,3698,3700,3702,3704,3706,3708,3710,3712,3714,3716,3718,3720,3722,3724,3726,3728,3730,3732,3734,3736,3738,3740,3742,3744,3746,3748,3750,3752,3754,3756,3758,3760,3762,3764,3766,3768,3770,3772,3774,3776,3778,3780,3782,3784,3786,3788,3790,3792,3794,3796,3798,3800,3802,3804,3806,3808,3810,3812,3814,3816,3818,3820,3822,3824,3826,3828,3830,3832,3834,3836,3838,3840,3842,3844,3846,3848,3850,3852,3854,3856,3858,3860,3862,3864,3866,3868,3870,3872,3874,3876,3878,3880,3882,3884,3886,3888,3890,3892,3894,3896,3898,3900,3902,3904,3906,3908,3910,3912,3914,3916,3918,3920,3922,3924,3926,3928,3930,3932,3934,3936,3938,3940,3942,3944,3946,3948,3950,3952,3954,3956,3958,3960,3962,3964,3966,3968,3970,3972,3974,3976,3978,3980,3982,3984,3986,3988,3990,3992,3994,3996,3998,4000,4002,4004,4006,4008,4010,4012,4014,4016,4018,4020,4022,4024,4026,4028,4030,4032,4034,4036,4038,4040,4042,4044,4046,4048,4050,4052,4054,4056,4058,4060,4062,4064,4066,4068,4070,4072,4074,4076,4078,4080,4082,4084,4086,4088,4090,4092,4094,4096,4098,4100,4102,4104,4106,4108,4110,4112,4114,4116,4118,4120,4122,4124,4126,4128,4130,4132,4134,4136,4138,4140,4142,4144,4146,4148,4150,4152,4154,4156,4158,4160,4162,4164,4166,4168,4170,4172,4174,4176,4178,4180,4182,4184,4186,4188,4190,4192,4194,4196,4198,4200,4202,4204,4206,4208,4210,4212,4214,4216,4218,4220,4222,4224,4226,4228,4230,4232,4234,4236,4238,4240,4242,4244,4246,4248,4250,4252,4254,4256,4258,4260,4262,4264,4266,4268,4270,4272,4274,4276,4278,4280,4282,4284,4286,4288,4290,4292,4294,4296,4298,4300,4302,4304,4306,4308,4310,4312,4314,4316,4318,4320,4322,4324,4326,4328,4330,4332,4334,4336,4338,4340,4342,4344,4346,4348,4350,4352,4354,4356,4358,4360,4362,4364,4366,4368,4370,4372,4374,4376,4378,4380,4382,4384,4386,4388,4390,4392,4394,4396,4398,4400,4402,4404,4406,4408,4410,4412,4414,4416,4418,4420,4422,4424,4426,4428,4430,4432,4434,4436,4438,4440,4442],{"categories":860},[861],"Developer Productivity",{"categories":863},[864],"Business & SaaS",{"categories":866},[867],"AI & LLMs",{"categories":869},[870],"AI Automation",{"categories":872},[873],"Product Strategy",{"categories":875},[867],{"categories":877},[861],{"categories":879},[864],{"categories":881},[],{"categories":883},[867],{"categories":885},[],{"categories":887},[888],"AI News & Trends",{"categories":890},[870],{"categories":892},[888],{"categories":894},[870],{"categories":896},[870],{"categories":898},[867],{"categories":900},[867],{"categories":902},[888],{"categories":904},[867],{"categories":906},[],{"categories":908},[909],"Design & Frontend",{"categories":911},[912],"Data Science & Visualization",{"categories":914},[888],{"categories":916},[],{"categories":918},[919],"Software Engineering",{"categories":921},[867],{"categories":923},[870],{"categories":925},[926],"Marketing & Growth",{"categories":928},[867],{"categories":930},[870],{"categories":932},[],{"categories":934},[],{"categories":936},[909],{"categories":938},[870],{"categories":940},[861],{"categories":942},[909],{"categories":944},[867],{"categories":946},[870],{"categories":948},[888],{"categories":950},[],{"categories":952},[],{"categories":954},[870],{"categories":956},[919],{"categories":958},[],{"categories":960},[864],{"categories":962},[],{"categories":964},[],{"categories":966},[870],{"categories":968},[870],{"categories":970},[867],{"categories":972},[],{"categories":974},[919],{"categories":976},[],{"categories":978},[],{"categories":980},[],{"categories":982},[867],{"categories":984},[926],{"categories":986},[909],{"categories":988},[909],{"categories":990},[867],{"categories":992},[870],{"categories":994},[867],{"categories":996},[867],{"categories":998},[870],{"categories":1000},[870],{"categories":1002},[912],{"categories":1004},[888],{"categories":1006},[870],{"categories":1008},[926],{"categories":1010},[870],{"categories":1012},[873],{"categories":1014},[],{"categories":1016},[870],{"categories":1018},[],{"categories":1020},[870],{"categories":1022},[919],{"categories":1024},[909],{"categories":1026},[867],{"categories":1028},[],{"categories":1030},[],{"categories":1032},[870],{"categories":1034},[],{"categories":1036},[867],{"categories":1038},[],{"categories":1040},[861],{"categories":1042},[919],{"categories":1044},[864],{"categories":1046},[888],{"categories":1048},[867],{"categories":1050},[],{"categories":1052},[867],{"categories":1054},[],{"categories":1056},[919],{"categories":1058},[912],{"categories":1060},[],{"categories":1062},[867],{"categories":1064},[909],{"categories":1066},[],{"categories":1068},[909],{"categories":1070},[870],{"categories":1072},[],{"categories":1074},[870],{"categories":1076},[888],{"categories":1078},[864],{"categories":1080},[867],{"categories":1082},[],{"categories":1084},[870],{"categories":1086},[867],{"categories":1088},[873],{"categories":1090},[],{"categories":1092},[867],{"categories":1094},[870],{"categories":1096},[870],{"categories":1098},[],{"categories":1100},[912],{"categories":1102},[867],{"categories":1104},[],{"categories":1106},[861],{"categories":1108},[864],{"categories":1110},[867],{"categories":1112},[870],{"categories":1114},[919],{"categories":1116},[867],{"categories":1118},[],{"categories":1120},[],{"categories":1122},[867],{"categories":1124},[],{"categories":1126},[909],{"categories":1128},[],{"categories":1130},[867],{"categories":1132},[],{"categories":1134},[870],{"categories":1136},[867],{"categories":1138},[909],{"categories":1140},[],{"categories":1142},[867],{"categories":1144},[867],{"categories":1146},[864],{"categories":1148},[870],{"categories":1150},[867],{"categories":1152},[909],{"categories":1154},[870],{"categories":1156},[],{"categories":1158},[],{"categories":1160},[888],{"categories":1162},[],{"categories":1164},[867],{"categories":1166},[864,926],{"categories":1168},[],{"categories":1170},[867],{"categories":1172},[],{"categories":1174},[],{"categories":1176},[867],{"categories":1178},[],{"categories":1180},[867],{"categories":1182},[1183],"DevOps & Cloud",{"categories":1185},[],{"categories":1187},[888],{"categories":1189},[909],{"categories":1191},[],{"categories":1193},[888],{"categories":1195},[888],{"categories":1197},[867],{"categories":1199},[926],{"categories":1201},[],{"categories":1203},[864],{"categories":1205},[],{"categories":1207},[867,1183],{"categories":1209},[867],{"categories":1211},[867],{"categories":1213},[870],{"categories":1215},[867,919],{"categories":1217},[912],{"categories":1219},[867],{"categories":1221},[926],{"categories":1223},[870],{"categories":1225},[870],{"categories":1227},[],{"categories":1229},[870],{"categories":1231},[867,864],{"categories":1233},[],{"categories":1235},[909],{"categories":1237},[909],{"categories":1239},[],{"categories":1241},[],{"categories":1243},[888],{"categories":1245},[],{"categories":1247},[861],{"categories":1249},[919],{"categories":1251},[867],{"categories":1253},[909],{"categories":1255},[870],{"categories":1257},[919],{"categories":1259},[888],{"categories":1261},[909],{"categories":1263},[],{"categories":1265},[867],{"categories":1267},[867],{"categories":1269},[867],{"categories":1271},[888],{"categories":1273},[861],{"categories":1275},[867],{"categories":1277},[870],{"categories":1279},[1183],{"categories":1281},[909],{"categories":1283},[870],{"categories":1285},[],{"categories":1287},[],{"categories":1289},[909],{"categories":1291},[888],{"categories":1293},[912],{"categories":1295},[],{"categories":1297},[867],{"categories":1299},[867],{"categories":1301},[864],{"categories":1303},[867],{"categories":1305},[867],{"categories":1307},[888],{"categories":1309},[],{"categories":1311},[870],{"categories":1313},[919],{"categories":1315},[],{"categories":1317},[867],{"categories":1319},[867],{"categories":1321},[870],{"categories":1323},[],{"categories":1325},[],{"categories":1327},[867],{"categories":1329},[],{"categories":1331},[864],{"categories":1333},[870],{"categories":1335},[],{"categories":1337},[861],{"categories":1339},[867],{"categories":1341},[864],{"categories":1343},[888],{"categories":1345},[],{"categories":1347},[],{"categories":1349},[],{"categories":1351},[888],{"categories":1353},[888],{"categories":1355},[],{"categories":1357},[],{"categories":1359},[864],{"categories":1361},[],{"categories":1363},[],{"categories":1365},[861],{"categories":1367},[],{"categories":1369},[926],{"categories":1371},[870],{"categories":1373},[864],{"categories":1375},[870],{"categories":1377},[919],{"categories":1379},[],{"categories":1381},[873],{"categories":1383},[909],{"categories":1385},[919],{"categories":1387},[867],{"categories":1389},[870],{"categories":1391},[864],{"categories":1393},[867],{"categories":1395},[],{"categories":1397},[],{"categories":1399},[919],{"categories":1401},[912],{"categories":1403},[873],{"categories":1405},[870],{"categories":1407},[867],{"categories":1409},[],{"categories":1411},[1183],{"categories":1413},[],{"categories":1415},[870],{"categories":1417},[],{"categories":1419},[],{"categories":1421},[867],{"categories":1423},[909],{"categories":1425},[926],{"categories":1427},[870],{"categories":1429},[],{"categories":1431},[861],{"categories":1433},[],{"categories":1435},[888],{"categories":1437},[867,1183],{"categories":1439},[888],{"categories":1441},[867],{"categories":1443},[864],{"categories":1445},[867],{"categories":1447},[],{"categories":1449},[864],{"categories":1451},[],{"categories":1453},[919],{"categories":1455},[909],{"categories":1457},[888],{"categories":1459},[912],{"categories":1461},[861],{"categories":1463},[867],{"categories":1465},[919],{"categories":1467},[],{"categories":1469},[],{"categories":1471},[873],{"categories":1473},[],{"categories":1475},[867],{"categories":1477},[],{"categories":1479},[909],{"categories":1481},[909],{"categories":1483},[909],{"categories":1485},[],{"categories":1487},[],{"categories":1489},[888],{"categories":1491},[870],{"categories":1493},[867],{"categories":1495},[867],{"categories":1497},[867],{"categories":1499},[864],{"categories":1501},[867],{"categories":1503},[],{"categories":1505},[919],{"categories":1507},[919],{"categories":1509},[864],{"categories":1511},[],{"categories":1513},[867],{"categories":1515},[867],{"categories":1517},[864],{"categories":1519},[888],{"categories":1521},[926],{"categories":1523},[870],{"categories":1525},[],{"categories":1527},[909],{"categories":1529},[],{"categories":1531},[867],{"categories":1533},[],{"categories":1535},[864],{"categories":1537},[870],{"categories":1539},[],{"categories":1541},[1183],{"categories":1543},[912],{"categories":1545},[919],{"categories":1547},[926],{"categories":1549},[919],{"categories":1551},[870],{"categories":1553},[],{"categories":1555},[],{"categories":1557},[870],{"categories":1559},[861],{"categories":1561},[870],{"categories":1563},[873],{"categories":1565},[864],{"categories":1567},[],{"categories":1569},[867],{"categories":1571},[873],{"categories":1573},[867],{"categories":1575},[867],{"categories":1577},[926],{"categories":1579},[909],{"categories":1581},[870],{"categories":1583},[],{"categories":1585},[],{"categories":1587},[1183],{"categories":1589},[919],{"categories":1591},[],{"categories":1593},[870],{"categories":1595},[867],{"categories":1597},[909,867],{"categories":1599},[861],{"categories":1601},[],{"categories":1603},[867],{"categories":1605},[861],{"categories":1607},[909],{"categories":1609},[870],{"categories":1611},[919],{"categories":1613},[],{"categories":1615},[867],{"categories":1617},[],{"categories":1619},[861],{"categories":1621},[],{"categories":1623},[870],{"categories":1625},[873],{"categories":1627},[867],{"categories":1629},[867],{"categories":1631},[909],{"categories":1633},[870],{"categories":1635},[1183],{"categories":1637},[909],{"categories":1639},[870],{"categories":1641},[867],{"categories":1643},[867],{"categories":1645},[867],{"categories":1647},[888],{"categories":1649},[],{"categories":1651},[873],{"categories":1653},[870],{"categories":1655},[909],{"categories":1657},[870],{"categories":1659},[919],{"categories":1661},[909],{"categories":1663},[870],{"categories":1665},[888],{"categories":1667},[],{"categories":1669},[867],{"categories":1671},[909],{"categories":1673},[867],{"categories":1675},[861],{"categories":1677},[888],{"categories":1679},[867],{"categories":1681},[926],{"categories":1683},[867],{"categories":1685},[867],{"categories":1687},[870],{"categories":1689},[870],{"categories":1691},[867],{"categories":1693},[870],{"categories":1695},[909],{"categories":1697},[867],{"categories":1699},[],{"categories":1701},[],{"categories":1703},[919],{"categories":1705},[],{"categories":1707},[861],{"categories":1709},[1183],{"categories":1711},[],{"categories":1713},[861],{"categories":1715},[864],{"categories":1717},[926],{"categories":1719},[],{"categories":1721},[864],{"categories":1723},[],{"categories":1725},[],{"categories":1727},[],{"categories":1729},[],{"categories":1731},[],{"categories":1733},[867],{"categories":1735},[870],{"categories":1737},[1183],{"categories":1739},[861],{"categories":1741},[867],{"categories":1743},[919],{"categories":1745},[873],{"categories":1747},[867],{"categories":1749},[926],{"categories":1751},[867],{"categories":1753},[867],{"categories":1755},[867],{"categories":1757},[867,861],{"categories":1759},[919],{"categories":1761},[919],{"categories":1763},[909],{"categories":1765},[867],{"categories":1767},[],{"categories":1769},[],{"categories":1771},[],{"categories":1773},[919],{"categories":1775},[912],{"categories":1777},[888],{"categories":1779},[909],{"categories":1781},[],{"categories":1783},[867],{"categories":1785},[867],{"categories":1787},[],{"categories":1789},[],{"categories":1791},[870],{"categories":1793},[867],{"categories":1795},[864],{"categories":1797},[],{"categories":1799},[861],{"categories":1801},[867],{"categories":1803},[861],{"categories":1805},[867],{"categories":1807},[919],{"categories":1809},[926],{"categories":1811},[867,909],{"categories":1813},[888],{"categories":1815},[909],{"categories":1817},[],{"categories":1819},[1183],{"categories":1821},[909],{"categories":1823},[870],{"categories":1825},[],{"categories":1827},[],{"categories":1829},[],{"categories":1831},[],{"categories":1833},[919],{"categories":1835},[870],{"categories":1837},[870],{"categories":1839},[1183],{"categories":1841},[867],{"categories":1843},[867],{"categories":1845},[867],{"categories":1847},[],{"categories":1849},[909],{"categories":1851},[],{"categories":1853},[],{"categories":1855},[870],{"categories":1857},[],{"categories":1859},[],{"categories":1861},[926],{"categories":1863},[926],{"categories":1865},[870],{"categories":1867},[],{"categories":1869},[867],{"categories":1871},[867],{"categories":1873},[919],{"categories":1875},[909],{"categories":1877},[909],{"categories":1879},[870],{"categories":1881},[861],{"categories":1883},[867],{"categories":1885},[909],{"categories":1887},[909],{"categories":1889},[870],{"categories":1891},[870],{"categories":1893},[867],{"categories":1895},[],{"categories":1897},[],{"categories":1899},[867],{"categories":1901},[870],{"categories":1903},[888],{"categories":1905},[919],{"categories":1907},[861],{"categories":1909},[867],{"categories":1911},[],{"categories":1913},[870],{"categories":1915},[870],{"categories":1917},[],{"categories":1919},[861],{"categories":1921},[867],{"categories":1923},[861],{"categories":1925},[861],{"categories":1927},[],{"categories":1929},[],{"categories":1931},[870],{"categories":1933},[870],{"categories":1935},[867],{"categories":1937},[867],{"categories":1939},[888],{"categories":1941},[912],{"categories":1943},[873],{"categories":1945},[888],{"categories":1947},[909],{"categories":1949},[],{"categories":1951},[888],{"categories":1953},[],{"categories":1955},[],{"categories":1957},[],{"categories":1959},[],{"categories":1961},[919],{"categories":1963},[912],{"categories":1965},[],{"categories":1967},[867],{"categories":1969},[867],{"categories":1971},[912],{"categories":1973},[919],{"categories":1975},[],{"categories":1977},[],{"categories":1979},[870],{"categories":1981},[888],{"categories":1983},[888],{"categories":1985},[870],{"categories":1987},[861],{"categories":1989},[867,1183],{"categories":1991},[],{"categories":1993},[909],{"categories":1995},[861],{"categories":1997},[870],{"categories":1999},[909],{"categories":2001},[],{"categories":2003},[870],{"categories":2005},[870],{"categories":2007},[867],{"categories":2009},[926],{"categories":2011},[919],{"categories":2013},[909],{"categories":2015},[],{"categories":2017},[870],{"categories":2019},[867],{"categories":2021},[870],{"categories":2023},[870],{"categories":2025},[870],{"categories":2027},[926],{"categories":2029},[870],{"categories":2031},[867],{"categories":2033},[],{"categories":2035},[926],{"categories":2037},[888],{"categories":2039},[870],{"categories":2041},[],{"categories":2043},[],{"categories":2045},[867],{"categories":2047},[870],{"categories":2049},[888],{"categories":2051},[870],{"categories":2053},[],{"categories":2055},[],{"categories":2057},[],{"categories":2059},[870],{"categories":2061},[],{"categories":2063},[],{"categories":2065},[912],{"categories":2067},[867],{"categories":2069},[912],{"categories":2071},[888],{"categories":2073},[867],{"categories":2075},[867],{"categories":2077},[870],{"categories":2079},[867],{"categories":2081},[],{"categories":2083},[],{"categories":2085},[1183],{"categories":2087},[],{"categories":2089},[],{"categories":2091},[861],{"categories":2093},[],{"categories":2095},[],{"categories":2097},[],{"categories":2099},[],{"categories":2101},[919],{"categories":2103},[888],{"categories":2105},[926],{"categories":2107},[864],{"categories":2109},[867],{"categories":2111},[867],{"categories":2113},[864],{"categories":2115},[],{"categories":2117},[909],{"categories":2119},[870],{"categories":2121},[864],{"categories":2123},[867],{"categories":2125},[867],{"categories":2127},[861],{"categories":2129},[],{"categories":2131},[861],{"categories":2133},[867],{"categories":2135},[926],{"categories":2137},[870],{"categories":2139},[888],{"categories":2141},[864],{"categories":2143},[867],{"categories":2145},[870],{"categories":2147},[],{"categories":2149},[867],{"categories":2151},[861],{"categories":2153},[867],{"categories":2155},[],{"categories":2157},[888],{"categories":2159},[867],{"categories":2161},[],{"categories":2163},[864],{"categories":2165},[867],{"categories":2167},[],{"categories":2169},[],{"categories":2171},[],{"categories":2173},[867],{"categories":2175},[],{"categories":2177},[1183],{"categories":2179},[867],{"categories":2181},[],{"categories":2183},[867],{"categories":2185},[867],{"categories":2187},[867],{"categories":2189},[867,1183],{"categories":2191},[867],{"categories":2193},[867],{"categories":2195},[909],{"categories":2197},[870],{"categories":2199},[],{"categories":2201},[870],{"categories":2203},[867],{"categories":2205},[867],{"categories":2207},[867],{"categories":2209},[861],{"categories":2211},[861],{"categories":2213},[919],{"categories":2215},[909],{"categories":2217},[870],{"categories":2219},[],{"categories":2221},[867],{"categories":2223},[888],{"categories":2225},[867],{"categories":2227},[864],{"categories":2229},[],{"categories":2231},[1183],{"categories":2233},[909],{"categories":2235},[909],{"categories":2237},[870],{"categories":2239},[888],{"categories":2241},[870],{"categories":2243},[867],{"categories":2245},[],{"categories":2247},[867],{"categories":2249},[],{"categories":2251},[],{"categories":2253},[867],{"categories":2255},[867],{"categories":2257},[867],{"categories":2259},[870],{"categories":2261},[867],{"categories":2263},[],{"categories":2265},[912],{"categories":2267},[870],{"categories":2269},[],{"categories":2271},[],{"categories":2273},[867],{"categories":2275},[888],{"categories":2277},[],{"categories":2279},[909],{"categories":2281},[1183],{"categories":2283},[888],{"categories":2285},[919],{"categories":2287},[919],{"categories":2289},[888],{"categories":2291},[888],{"categories":2293},[1183],{"categories":2295},[],{"categories":2297},[888],{"categories":2299},[867],{"categories":2301},[861],{"categories":2303},[888],{"categories":2305},[],{"categories":2307},[912],{"categories":2309},[888],{"categories":2311},[919],{"categories":2313},[888],{"categories":2315},[1183],{"categories":2317},[867],{"categories":2319},[867],{"categories":2321},[],{"categories":2323},[864],{"categories":2325},[],{"categories":2327},[],{"categories":2329},[867],{"categories":2331},[867],{"categories":2333},[867],{"categories":2335},[867],{"categories":2337},[],{"categories":2339},[912],{"categories":2341},[861],{"categories":2343},[],{"categories":2345},[867],{"categories":2347},[867],{"categories":2349},[1183],{"categories":2351},[1183],{"categories":2353},[],{"categories":2355},[870],{"categories":2357},[888],{"categories":2359},[888],{"categories":2361},[867],{"categories":2363},[870],{"categories":2365},[],{"categories":2367},[909],{"categories":2369},[867],{"categories":2371},[867],{"categories":2373},[],{"categories":2375},[],{"categories":2377},[1183],{"categories":2379},[867],{"categories":2381},[919],{"categories":2383},[864],{"categories":2385},[867],{"categories":2387},[],{"categories":2389},[870],{"categories":2391},[861],{"categories":2393},[861],{"categories":2395},[],{"categories":2397},[867],{"categories":2399},[909],{"categories":2401},[870],{"categories":2403},[],{"categories":2405},[867],{"categories":2407},[867],{"categories":2409},[870],{"categories":2411},[],{"categories":2413},[870],{"categories":2415},[919],{"categories":2417},[],{"categories":2419},[867],{"categories":2421},[],{"categories":2423},[867],{"categories":2425},[],{"categories":2427},[867],{"categories":2429},[867],{"categories":2431},[],{"categories":2433},[867],{"categories":2435},[888],{"categories":2437},[867],{"categories":2439},[867],{"categories":2441},[861],{"categories":2443},[867],{"categories":2445},[888],{"categories":2447},[870],{"categories":2449},[],{"categories":2451},[867],{"categories":2453},[926],{"categories":2455},[],{"categories":2457},[],{"categories":2459},[],{"categories":2461},[861],{"categories":2463},[888],{"categories":2465},[870],{"categories":2467},[867],{"categories":2469},[909],{"categories":2471},[870],{"categories":2473},[],{"categories":2475},[870],{"categories":2477},[],{"categories":2479},[867],{"categories":2481},[870],{"categories":2483},[867],{"categories":2485},[],{"categories":2487},[867],{"categories":2489},[867],{"categories":2491},[888],{"categories":2493},[909],{"categories":2495},[870],{"categories":2497},[909],{"categories":2499},[864],{"categories":2501},[],{"categories":2503},[],{"categories":2505},[867],{"categories":2507},[861],{"categories":2509},[888],{"categories":2511},[],{"categories":2513},[],{"categories":2515},[919],{"categories":2517},[909],{"categories":2519},[],{"categories":2521},[867],{"categories":2523},[],{"categories":2525},[926],{"categories":2527},[867],{"categories":2529},[1183],{"categories":2531},[919],{"categories":2533},[],{"categories":2535},[870],{"categories":2537},[867],{"categories":2539},[870],{"categories":2541},[870],{"categories":2543},[867],{"categories":2545},[],{"categories":2547},[861],{"categories":2549},[867],{"categories":2551},[864],{"categories":2553},[919],{"categories":2555},[909],{"categories":2557},[],{"categories":2559},[],{"categories":2561},[],{"categories":2563},[870],{"categories":2565},[909],{"categories":2567},[888],{"categories":2569},[867],{"categories":2571},[888],{"categories":2573},[909],{"categories":2575},[],{"categories":2577},[909],{"categories":2579},[888],{"categories":2581},[864],{"categories":2583},[867],{"categories":2585},[888],{"categories":2587},[926],{"categories":2589},[],{"categories":2591},[],{"categories":2593},[912],{"categories":2595},[867,919],{"categories":2597},[888],{"categories":2599},[867],{"categories":2601},[870],{"categories":2603},[870],{"categories":2605},[867],{"categories":2607},[],{"categories":2609},[919],{"categories":2611},[867],{"categories":2613},[912],{"categories":2615},[870],{"categories":2617},[926],{"categories":2619},[1183],{"categories":2621},[],{"categories":2623},[861],{"categories":2625},[870],{"categories":2627},[870],{"categories":2629},[919],{"categories":2631},[867],{"categories":2633},[867],{"categories":2635},[],{"categories":2637},[],{"categories":2639},[],{"categories":2641},[1183],{"categories":2643},[888],{"categories":2645},[867],{"categories":2647},[867],{"categories":2649},[867],{"categories":2651},[],{"categories":2653},[912],{"categories":2655},[864],{"categories":2657},[],{"categories":2659},[870],{"categories":2661},[1183],{"categories":2663},[],{"categories":2665},[909],{"categories":2667},[909],{"categories":2669},[],{"categories":2671},[919],{"categories":2673},[909],{"categories":2675},[867],{"categories":2677},[],{"categories":2679},[888],{"categories":2681},[867],{"categories":2683},[909],{"categories":2685},[870],{"categories":2687},[888],{"categories":2689},[],{"categories":2691},[870],{"categories":2693},[909],{"categories":2695},[867],{"categories":2697},[],{"categories":2699},[867],{"categories":2701},[867],{"categories":2703},[1183],{"categories":2705},[888],{"categories":2707},[912],{"categories":2709},[912],{"categories":2711},[],{"categories":2713},[],{"categories":2715},[],{"categories":2717},[870],{"categories":2719},[919],{"categories":2721},[919],{"categories":2723},[],{"categories":2725},[],{"categories":2727},[867],{"categories":2729},[],{"categories":2731},[870],{"categories":2733},[867],{"categories":2735},[],{"categories":2737},[867],{"categories":2739},[864],{"categories":2741},[867],{"categories":2743},[926],{"categories":2745},[870],{"categories":2747},[867],{"categories":2749},[919],{"categories":2751},[888],{"categories":2753},[870],{"categories":2755},[],{"categories":2757},[888],{"categories":2759},[870],{"categories":2761},[870],{"categories":2763},[],{"categories":2765},[864],{"categories":2767},[870],{"categories":2769},[],{"categories":2771},[867],{"categories":2773},[861],{"categories":2775},[888],{"categories":2777},[1183],{"categories":2779},[870],{"categories":2781},[870],{"categories":2783},[861],{"categories":2785},[867],{"categories":2787},[],{"categories":2789},[],{"categories":2791},[909],{"categories":2793},[867,864],{"categories":2795},[],{"categories":2797},[861],{"categories":2799},[912],{"categories":2801},[867],{"categories":2803},[919],{"categories":2805},[867],{"categories":2807},[870],{"categories":2809},[867],{"categories":2811},[867],{"categories":2813},[888],{"categories":2815},[870],{"categories":2817},[],{"categories":2819},[],{"categories":2821},[870],{"categories":2823},[867],{"categories":2825},[1183],{"categories":2827},[],{"categories":2829},[867],{"categories":2831},[870],{"categories":2833},[],{"categories":2835},[867],{"categories":2837},[926],{"categories":2839},[912],{"categories":2841},[870],{"categories":2843},[867],{"categories":2845},[1183],{"categories":2847},[],{"categories":2849},[867],{"categories":2851},[926],{"categories":2853},[909],{"categories":2855},[867],{"categories":2857},[],{"categories":2859},[926],{"categories":2861},[888],{"categories":2863},[867],{"categories":2865},[867],{"categories":2867},[861],{"categories":2869},[],{"categories":2871},[],{"categories":2873},[909],{"categories":2875},[867],{"categories":2877},[912],{"categories":2879},[926],{"categories":2881},[926],{"categories":2883},[888],{"categories":2885},[],{"categories":2887},[],{"categories":2889},[867],{"categories":2891},[],{"categories":2893},[867,919],{"categories":2895},[888],{"categories":2897},[870],{"categories":2899},[919],{"categories":2901},[867],{"categories":2903},[861],{"categories":2905},[],{"categories":2907},[],{"categories":2909},[861],{"categories":2911},[926],{"categories":2913},[867],{"categories":2915},[],{"categories":2917},[909,867],{"categories":2919},[1183],{"categories":2921},[861],{"categories":2923},[],{"categories":2925},[864],{"categories":2927},[864],{"categories":2929},[867],{"categories":2931},[919],{"categories":2933},[870],{"categories":2935},[888],{"categories":2937},[926],{"categories":2939},[909],{"categories":2941},[867],{"categories":2943},[867],{"categories":2945},[867],{"categories":2947},[861],{"categories":2949},[867],{"categories":2951},[870],{"categories":2953},[888],{"categories":2955},[],{"categories":2957},[],{"categories":2959},[912],{"categories":2961},[919],{"categories":2963},[867],{"categories":2965},[909],{"categories":2967},[912],{"categories":2969},[867],{"categories":2971},[867],{"categories":2973},[870],{"categories":2975},[870],{"categories":2977},[867,864],{"categories":2979},[],{"categories":2981},[909],{"categories":2983},[],{"categories":2985},[867],{"categories":2987},[888],{"categories":2989},[861],{"categories":2991},[861],{"categories":2993},[870],{"categories":2995},[867],{"categories":2997},[864],{"categories":2999},[919],{"categories":3001},[926],{"categories":3003},[],{"categories":3005},[888],{"categories":3007},[867],{"categories":3009},[867],{"categories":3011},[888],{"categories":3013},[919],{"categories":3015},[867],{"categories":3017},[870],{"categories":3019},[888],{"categories":3021},[867],{"categories":3023},[909],{"categories":3025},[867],{"categories":3027},[867],{"categories":3029},[1183],{"categories":3031},[873],{"categories":3033},[870],{"categories":3035},[867],{"categories":3037},[888],{"categories":3039},[870],{"categories":3041},[926],{"categories":3043},[867],{"categories":3045},[],{"categories":3047},[867],{"categories":3049},[],{"categories":3051},[],{"categories":3053},[],{"categories":3055},[864],{"categories":3057},[867],{"categories":3059},[870],{"categories":3061},[888],{"categories":3063},[888],{"categories":3065},[888],{"categories":3067},[888],{"categories":3069},[],{"categories":3071},[861],{"categories":3073},[870],{"categories":3075},[888],{"categories":3077},[861],{"categories":3079},[870],{"categories":3081},[867],{"categories":3083},[867,870],{"categories":3085},[870],{"categories":3087},[1183],{"categories":3089},[888],{"categories":3091},[888],{"categories":3093},[870],{"categories":3095},[867],{"categories":3097},[],{"categories":3099},[888],{"categories":3101},[926],{"categories":3103},[861],{"categories":3105},[867],{"categories":3107},[867],{"categories":3109},[],{"categories":3111},[919],{"categories":3113},[],{"categories":3115},[861],{"categories":3117},[870],{"categories":3119},[888],{"categories":3121},[867],{"categories":3123},[888],{"categories":3125},[861],{"categories":3127},[888],{"categories":3129},[888],{"categories":3131},[],{"categories":3133},[864],{"categories":3135},[870],{"categories":3137},[888],{"categories":3139},[888],{"categories":3141},[888],{"categories":3143},[888],{"categories":3145},[888],{"categories":3147},[888],{"categories":3149},[888],{"categories":3151},[888],{"categories":3153},[888],{"categories":3155},[888],{"categories":3157},[912],{"categories":3159},[861],{"categories":3161},[867],{"categories":3163},[867],{"categories":3165},[],{"categories":3167},[867,861],{"categories":3169},[],{"categories":3171},[870],{"categories":3173},[888],{"categories":3175},[870],{"categories":3177},[867],{"categories":3179},[867],{"categories":3181},[867],{"categories":3183},[867],{"categories":3185},[867],{"categories":3187},[870],{"categories":3189},[864],{"categories":3191},[909],{"categories":3193},[888],{"categories":3195},[867],{"categories":3197},[],{"categories":3199},[],{"categories":3201},[870],{"categories":3203},[909],{"categories":3205},[867],{"categories":3207},[],{"categories":3209},[],{"categories":3211},[926],{"categories":3213},[867],{"categories":3215},[],{"categories":3217},[],{"categories":3219},[861],{"categories":3221},[864],{"categories":3223},[867],{"categories":3225},[864],{"categories":3227},[909],{"categories":3229},[],{"categories":3231},[888],{"categories":3233},[],{"categories":3235},[909],{"categories":3237},[867],{"categories":3239},[926],{"categories":3241},[],{"categories":3243},[926],{"categories":3245},[],{"categories":3247},[],{"categories":3249},[870],{"categories":3251},[],{"categories":3253},[864],{"categories":3255},[861],{"categories":3257},[909],{"categories":3259},[919],{"categories":3261},[],{"categories":3263},[],{"categories":3265},[867],{"categories":3267},[861],{"categories":3269},[926],{"categories":3271},[],{"categories":3273},[870],{"categories":3275},[870],{"categories":3277},[888],{"categories":3279},[867],{"categories":3281},[870],{"categories":3283},[867],{"categories":3285},[870],{"categories":3287},[867],{"categories":3289},[873],{"categories":3291},[888],{"categories":3293},[],{"categories":3295},[926],{"categories":3297},[919],{"categories":3299},[870],{"categories":3301},[],{"categories":3303},[867],{"categories":3305},[870],{"categories":3307},[864],{"categories":3309},[861],{"categories":3311},[867],{"categories":3313},[909],{"categories":3315},[919],{"categories":3317},[919],{"categories":3319},[867],{"categories":3321},[912],{"categories":3323},[867],{"categories":3325},[870],{"categories":3327},[864],{"categories":3329},[870],{"categories":3331},[867],{"categories":3333},[867],{"categories":3335},[870],{"categories":3337},[888],{"categories":3339},[],{"categories":3341},[861],{"categories":3343},[867],{"categories":3345},[870],{"categories":3347},[867],{"categories":3349},[867],{"categories":3351},[],{"categories":3353},[909],{"categories":3355},[864],{"categories":3357},[888],{"categories":3359},[867],{"categories":3361},[867],{"categories":3363},[909],{"categories":3365},[926],{"categories":3367},[912],{"categories":3369},[867],{"categories":3371},[888],{"categories":3373},[867],{"categories":3375},[870],{"categories":3377},[1183],{"categories":3379},[867],{"categories":3381},[870],{"categories":3383},[912],{"categories":3385},[],{"categories":3387},[870],{"categories":3389},[919],{"categories":3391},[909],{"categories":3393},[867],{"categories":3395},[861],{"categories":3397},[864],{"categories":3399},[919],{"categories":3401},[],{"categories":3403},[870],{"categories":3405},[867],{"categories":3407},[],{"categories":3409},[888],{"categories":3411},[],{"categories":3413},[888],{"categories":3415},[867],{"categories":3417},[870],{"categories":3419},[870],{"categories":3421},[870],{"categories":3423},[],{"categories":3425},[],{"categories":3427},[867],{"categories":3429},[867],{"categories":3431},[],{"categories":3433},[909],{"categories":3435},[870],{"categories":3437},[926],{"categories":3439},[861],{"categories":3441},[],{"categories":3443},[],{"categories":3445},[888],{"categories":3447},[919],{"categories":3449},[867],{"categories":3451},[867],{"categories":3453},[867],{"categories":3455},[919],{"categories":3457},[888],{"categories":3459},[909],{"categories":3461},[867],{"categories":3463},[867],{"categories":3465},[867],{"categories":3467},[888],{"categories":3469},[867],{"categories":3471},[888],{"categories":3473},[870],{"categories":3475},[870],{"categories":3477},[919],{"categories":3479},[870],{"categories":3481},[867],{"categories":3483},[919],{"categories":3485},[909],{"categories":3487},[],{"categories":3489},[870],{"categories":3491},[],{"categories":3493},[],{"categories":3495},[],{"categories":3497},[864],{"categories":3499},[867],{"categories":3501},[870],{"categories":3503},[861],{"categories":3505},[870],{"categories":3507},[926],{"categories":3509},[],{"categories":3511},[870],{"categories":3513},[],{"categories":3515},[861],{"categories":3517},[870],{"categories":3519},[],{"categories":3521},[870],{"categories":3523},[867],{"categories":3525},[888],{"categories":3527},[867],{"categories":3529},[870],{"categories":3531},[888],{"categories":3533},[870],{"categories":3535},[919],{"categories":3537},[909],{"categories":3539},[861],{"categories":3541},[],{"categories":3543},[870],{"categories":3545},[909],{"categories":3547},[1183],{"categories":3549},[888],{"categories":3551},[867],{"categories":3553},[909],{"categories":3555},[861],{"categories":3557},[],{"categories":3559},[870],{"categories":3561},[870],{"categories":3563},[867],{"categories":3565},[],{"categories":3567},[870],{"categories":3569},[873],{"categories":3571},[888],{"categories":3573},[870],{"categories":3575},[864],{"categories":3577},[],{"categories":3579},[867],{"categories":3581},[873],{"categories":3583},[867],{"categories":3585},[870],{"categories":3587},[888],{"categories":3589},[861],{"categories":3591},[1183],{"categories":3593},[867],{"categories":3595},[867],{"categories":3597},[867],{"categories":3599},[888],{"categories":3601},[864],{"categories":3603},[867],{"categories":3605},[909],{"categories":3607},[888],{"categories":3609},[1183],{"categories":3611},[867],{"categories":3613},[],{"categories":3615},[],{"categories":3617},[1183],{"categories":3619},[912],{"categories":3621},[870],{"categories":3623},[870],{"categories":3625},[888],{"categories":3627},[867],{"categories":3629},[861],{"categories":3631},[909],{"categories":3633},[870],{"categories":3635},[867],{"categories":3637},[926],{"categories":3639},[867],{"categories":3641},[870],{"categories":3643},[],{"categories":3645},[867],{"categories":3647},[867],{"categories":3649},[888],{"categories":3651},[861],{"categories":3653},[],{"categories":3655},[867],{"categories":3657},[867],{"categories":3659},[919],{"categories":3661},[909],{"categories":3663},[867,870],{"categories":3665},[926,864],{"categories":3667},[867],{"categories":3669},[],{"categories":3671},[870],{"categories":3673},[],{"categories":3675},[919],{"categories":3677},[867],{"categories":3679},[888],{"categories":3681},[],{"categories":3683},[870],{"categories":3685},[],{"categories":3687},[909],{"categories":3689},[870],{"categories":3691},[861],{"categories":3693},[870],{"categories":3695},[867],{"categories":3697},[1183],{"categories":3699},[926],{"categories":3701},[864],{"categories":3703},[864],{"categories":3705},[861],{"categories":3707},[861],{"categories":3709},[867],{"categories":3711},[870],{"categories":3713},[867],{"categories":3715},[867],{"categories":3717},[861],{"categories":3719},[867],{"categories":3721},[926],{"categories":3723},[888],{"categories":3725},[867],{"categories":3727},[870],{"categories":3729},[867],{"categories":3731},[],{"categories":3733},[919],{"categories":3735},[],{"categories":3737},[870],{"categories":3739},[861],{"categories":3741},[],{"categories":3743},[1183],{"categories":3745},[867],{"categories":3747},[],{"categories":3749},[888],{"categories":3751},[870],{"categories":3753},[919],{"categories":3755},[867],{"categories":3757},[870],{"categories":3759},[919],{"categories":3761},[870],{"categories":3763},[888],{"categories":3765},[861],{"categories":3767},[888],{"categories":3769},[919],{"categories":3771},[867],{"categories":3773},[909],{"categories":3775},[867],{"categories":3777},[867],{"categories":3779},[867],{"categories":3781},[867],{"categories":3783},[870],{"categories":3785},[867],{"categories":3787},[870],{"categories":3789},[867],{"categories":3791},[861],{"categories":3793},[867],{"categories":3795},[870],{"categories":3797},[909],{"categories":3799},[861],{"categories":3801},[870],{"categories":3803},[909],{"categories":3805},[],{"categories":3807},[867],{"categories":3809},[867],{"categories":3811},[919],{"categories":3813},[],{"categories":3815},[870],{"categories":3817},[926],{"categories":3819},[867],{"categories":3821},[888],{"categories":3823},[926],{"categories":3825},[870],{"categories":3827},[864],{"categories":3829},[864],{"categories":3831},[867],{"categories":3833},[861],{"categories":3835},[],{"categories":3837},[867],{"categories":3839},[],{"categories":3841},[861],{"categories":3843},[867],{"categories":3845},[870],{"categories":3847},[870],{"categories":3849},[],{"categories":3851},[919],{"categories":3853},[919],{"categories":3855},[926],{"categories":3857},[909],{"categories":3859},[],{"categories":3861},[867],{"categories":3863},[861],{"categories":3865},[867],{"categories":3867},[919],{"categories":3869},[861],{"categories":3871},[888],{"categories":3873},[888],{"categories":3875},[],{"categories":3877},[888],{"categories":3879},[870],{"categories":3881},[909],{"categories":3883},[912],{"categories":3885},[867],{"categories":3887},[],{"categories":3889},[888],{"categories":3891},[919],{"categories":3893},[864],{"categories":3895},[867],{"categories":3897},[861],{"categories":3899},[1183],{"categories":3901},[861],{"categories":3903},[],{"categories":3905},[],{"categories":3907},[888],{"categories":3909},[],{"categories":3911},[870],{"categories":3913},[870],{"categories":3915},[870],{"categories":3917},[],{"categories":3919},[867],{"categories":3921},[],{"categories":3923},[888],{"categories":3925},[861],{"categories":3927},[909],{"categories":3929},[867],{"categories":3931},[888],{"categories":3933},[888],{"categories":3935},[],{"categories":3937},[888],{"categories":3939},[861],{"categories":3941},[867],{"categories":3943},[],{"categories":3945},[870],{"categories":3947},[870],{"categories":3949},[861],{"categories":3951},[],{"categories":3953},[],{"categories":3955},[],{"categories":3957},[909],{"categories":3959},[870],{"categories":3961},[867],{"categories":3963},[],{"categories":3965},[],{"categories":3967},[],{"categories":3969},[909],{"categories":3971},[],{"categories":3973},[861],{"categories":3975},[],{"categories":3977},[],{"categories":3979},[909],{"categories":3981},[867],{"categories":3983},[888],{"categories":3985},[],{"categories":3987},[926],{"categories":3989},[888],{"categories":3991},[926],{"categories":3993},[867],{"categories":3995},[],{"categories":3997},[],{"categories":3999},[870],{"categories":4001},[],{"categories":4003},[],{"categories":4005},[870],{"categories":4007},[867],{"categories":4009},[],{"categories":4011},[870],{"categories":4013},[888],{"categories":4015},[926],{"categories":4017},[912],{"categories":4019},[870],{"categories":4021},[870],{"categories":4023},[],{"categories":4025},[],{"categories":4027},[],{"categories":4029},[888],{"categories":4031},[],{"categories":4033},[],{"categories":4035},[909],{"categories":4037},[861],{"categories":4039},[],{"categories":4041},[864],{"categories":4043},[926],{"categories":4045},[867],{"categories":4047},[919],{"categories":4049},[861],{"categories":4051},[912],{"categories":4053},[864],{"categories":4055},[919],{"categories":4057},[],{"categories":4059},[],{"categories":4061},[870],{"categories":4063},[861],{"categories":4065},[909],{"categories":4067},[861],{"categories":4069},[870],{"categories":4071},[1183],{"categories":4073},[870],{"categories":4075},[],{"categories":4077},[867],{"categories":4079},[888],{"categories":4081},[919],{"categories":4083},[],{"categories":4085},[909],{"categories":4087},[888],{"categories":4089},[861],{"categories":4091},[870],{"categories":4093},[867],{"categories":4095},[864],{"categories":4097},[870,1183],{"categories":4099},[870],{"categories":4101},[919],{"categories":4103},[867],{"categories":4105},[912],{"categories":4107},[926],{"categories":4109},[870],{"categories":4111},[],{"categories":4113},[870],{"categories":4115},[867],{"categories":4117},[864],{"categories":4119},[],{"categories":4121},[],{"categories":4123},[867],{"categories":4125},[912],{"categories":4127},[867],{"categories":4129},[],{"categories":4131},[888],{"categories":4133},[],{"categories":4135},[888],{"categories":4137},[919],{"categories":4139},[870],{"categories":4141},[867],{"categories":4143},[926],{"categories":4145},[919],{"categories":4147},[],{"categories":4149},[888],{"categories":4151},[867],{"categories":4153},[],{"categories":4155},[867],{"categories":4157},[870],{"categories":4159},[867],{"categories":4161},[870],{"categories":4163},[867],{"categories":4165},[867],{"categories":4167},[867],{"categories":4169},[867],{"categories":4171},[864],{"categories":4173},[],{"categories":4175},[873],{"categories":4177},[888],{"categories":4179},[867],{"categories":4181},[],{"categories":4183},[919],{"categories":4185},[867],{"categories":4187},[867],{"categories":4189},[870],{"categories":4191},[888],{"categories":4193},[867],{"categories":4195},[867],{"categories":4197},[864],{"categories":4199},[870],{"categories":4201},[909],{"categories":4203},[],{"categories":4205},[912],{"categories":4207},[867],{"categories":4209},[],{"categories":4211},[888],{"categories":4213},[926],{"categories":4215},[],{"categories":4217},[],{"categories":4219},[888],{"categories":4221},[888],{"categories":4223},[926],{"categories":4225},[861],{"categories":4227},[870],{"categories":4229},[870],{"categories":4231},[867],{"categories":4233},[864],{"categories":4235},[],{"categories":4237},[],{"categories":4239},[888],{"categories":4241},[912],{"categories":4243},[919],{"categories":4245},[870],{"categories":4247},[909],{"categories":4249},[912],{"categories":4251},[912],{"categories":4253},[],{"categories":4255},[888],{"categories":4257},[867],{"categories":4259},[867],{"categories":4261},[919],{"categories":4263},[],{"categories":4265},[888],{"categories":4267},[888],{"categories":4269},[888],{"categories":4271},[],{"categories":4273},[870],{"categories":4275},[867],{"categories":4277},[],{"categories":4279},[861],{"categories":4281},[864],{"categories":4283},[],{"categories":4285},[867],{"categories":4287},[867],{"categories":4289},[],{"categories":4291},[919],{"categories":4293},[],{"categories":4295},[],{"categories":4297},[],{"categories":4299},[],{"categories":4301},[867],{"categories":4303},[888],{"categories":4305},[],{"categories":4307},[],{"categories":4309},[867],{"categories":4311},[867],{"categories":4313},[867],{"categories":4315},[912],{"categories":4317},[867],{"categories":4319},[912],{"categories":4321},[],{"categories":4323},[912],{"categories":4325},[912],{"categories":4327},[1183],{"categories":4329},[870],{"categories":4331},[919],{"categories":4333},[],{"categories":4335},[],{"categories":4337},[912],{"categories":4339},[919],{"categories":4341},[919],{"categories":4343},[919],{"categories":4345},[],{"categories":4347},[861],{"categories":4349},[919],{"categories":4351},[919],{"categories":4353},[861],{"categories":4355},[919],{"categories":4357},[864],{"categories":4359},[919],{"categories":4361},[919],{"categories":4363},[919],{"categories":4365},[912],{"categories":4367},[888],{"categories":4369},[888],{"categories":4371},[867],{"categories":4373},[919],{"categories":4375},[912],{"categories":4377},[1183],{"categories":4379},[912],{"categories":4381},[912],{"categories":4383},[912],{"categories":4385},[],{"categories":4387},[864],{"categories":4389},[],{"categories":4391},[1183],{"categories":4393},[919],{"categories":4395},[919],{"categories":4397},[919],{"categories":4399},[870],{"categories":4401},[888,864],{"categories":4403},[912],{"categories":4405},[],{"categories":4407},[],{"categories":4409},[912],{"categories":4411},[],{"categories":4413},[912],{"categories":4415},[888],{"categories":4417},[870],{"categories":4419},[],{"categories":4421},[919],{"categories":4423},[867],{"categories":4425},[909],{"categories":4427},[],{"categories":4429},[867],{"categories":4431},[],{"categories":4433},[888],{"categories":4435},[861],{"categories":4437},[912],{"categories":4439},[],{"categories":4441},[919],{"categories":4443},[888],[4445,4553,4628,4914],{"id":4446,"title":4447,"ai":4448,"body":4453,"categories":4530,"created_at":818,"date_modified":818,"description":48,"extension":819,"faq":818,"featured":820,"kicker_label":818,"meta":4531,"navigation":99,"path":4539,"published_at":4540,"question":818,"scraped_at":4541,"seo":4542,"sitemap":4543,"source_id":4544,"source_name":4545,"source_type":4546,"source_url":4547,"stem":4548,"tags":4549,"thumbnail_url":818,"tldr":4550,"tweet":818,"unknown_tags":4551,"__hash__":4552},"summaries\u002Fsummaries\u002F69f6ae037d33e9a8-mmx-cli-unlocks-multimodal-ai-via-shell-commands-summary.md","MMX-CLI Unlocks Multimodal AI via Shell Commands",{"provider":7,"model":8,"input_tokens":4449,"output_tokens":4450,"processing_time_ms":4451,"cost_usd":4452},7924,1798,14526,0.00246115,{"type":14,"value":4454,"toc":4525},[4455,4459,4462,4466,4514,4518],[17,4456,4458],{"id":4457},"shell-commands-replace-custom-multimodal-integrations","Shell Commands Replace Custom Multimodal Integrations",[22,4460,4461],{},"AI agents excel at text but struggle with media generation like images, videos, or speech without separate API wrappers, auth setups, and frameworks like Model Context Protocol (MCP). MMX-CLI fixes this by exposing MiniMax's full omni-modal stack as native shell commands. Agents in tools like Cursor, Claude Code, or OpenCode invoke them directly, just as developers do in terminals. Result: zero glue code for production pipelines, enabling seamless multimodal workflows.",[17,4463,4465],{"id":4464},"seven-commands-cover-text-to-media-generation","Seven Commands Cover Text-to-Media Generation",[22,4467,4468,4469,4472,4473,4476,4477,4480,4481,4484,4485,4488,4489,4492,4493,4496,4497,4500,4501,350,4504,350,4507,350,4510,4513],{},"Core groups include ",[26,4470,4471],{},"mmx text"," (models: MiniMax-M2.7-highspeed, MiniMax-M2.7), ",[26,4474,4475],{},"mmx image"," (--aspect-ratio, --n, --subject-ref), ",[26,4478,4479],{},"mmx video"," (MiniMax-Hailuo-2.3, MiniMax-Hailuo-2.3-Fast; supports --async, --no-wait, task polling via ",[26,4482,4483],{},"mmx video task get --task-id",", --first-frame), ",[26,4486,4487],{},"mmx speech"," (speech-2.8-hd, speech-2.6, speech-02; --subtitles), ",[26,4490,4491],{},"mmx music"," (music-2.5; --vocals like \"warm male baritone\", --genre, --mood, --instruments, --tempo, --bpm, --key, --structure, --instrumental, --aigc-watermark), ",[26,4494,4495],{},"mmx vision"," (--prompt e.g. \"Describe the image.\"), and ",[26,4498,4499],{},"mmx search",". Utilities handle ",[26,4502,4503],{},"mmx auth",[26,4505,4506],{},"mmx config",[26,4508,4509],{},"mmx quota",[26,4511,4512],{},"mmx update",". Use them to build agents that reason over docs then generate matching visuals or audio on-the-fly.",[17,4515,4517],{"id":4516},"production-ready-typescript-architecture","Production-Ready TypeScript Architecture",[22,4519,4520,4521,4524],{},"99.8% TypeScript with strict mode, runs on Bun for dev\u002Ftesting, distributes via npm for Node.js 18+. Zod validates config schemas. Precedence: CLI flags > env vars > ~\u002F.mmx\u002Fconfig.json > defaults—ideal for CI\u002Fcontainers. Dual-region routing: api.minimax.io (Global), api.minimaxi.com (CN) via ",[26,4522,4523],{},"mmx config set --key region --value cn",". Install from GitHub repo for immediate agent enhancements.",{"title":48,"searchDepth":80,"depth":80,"links":4526},[4527,4528,4529],{"id":4457,"depth":80,"text":4458},{"id":4464,"depth":80,"text":4465},{"id":4516,"depth":80,"text":4517},[888],{"content_references":4532,"triage":4537},[4533],{"type":824,"title":4534,"url":4535,"context":4536},"MMX-CLI","https:\u002F\u002Fgithub.com\u002FMiniMax-AI\u002Fcli","recommended",{"relevance":126,"novelty":103,"quality":103,"actionability":126,"composite":837,"reasoning":4538},"Category: AI & LLMs. The article provides a detailed overview of MMX-CLI, a tool that enables seamless multimodal AI workflows, addressing a specific pain point for developers needing to integrate various media types without complex setups. It includes practical commands and architecture details that can be immediately applied by the audience.","\u002Fsummaries\u002F69f6ae037d33e9a8-mmx-cli-unlocks-multimodal-ai-via-shell-commands-summary","2026-04-13 05:17:40","2026-04-13 17:53:22",{"title":4447,"description":48},{"loc":4539},"69f6ae037d33e9a8","MarkTechPost","article","https:\u002F\u002Fwww.marktechpost.com\u002F2026\u002F04\u002F12\u002Fminimax-releases-mmx-cli-a-command-line-interface-that-gives-ai-agents-native-access-to-image-video-speech-music-vision-and-search\u002F","summaries\u002F69f6ae037d33e9a8-mmx-cli-unlocks-multimodal-ai-via-shell-commands-summary",[851,850,47],"Install MMX-CLI to give AI agents direct shell access to MiniMax's text, image, video, speech, music, vision, and search generation—no custom API wrappers or MCP needed.",[],"SRhUTGKRyZf3UI_8xN4uEtqI1ax-XEUq27Bnf4xLkNc",{"id":4554,"title":4555,"ai":4556,"body":4561,"categories":4598,"created_at":818,"date_modified":818,"description":48,"extension":819,"faq":818,"featured":820,"kicker_label":818,"meta":4599,"navigation":99,"path":4613,"published_at":4614,"question":818,"scraped_at":4615,"seo":4616,"sitemap":4617,"source_id":4618,"source_name":845,"source_type":846,"source_url":4619,"stem":4620,"tags":4621,"thumbnail_url":4623,"tldr":4624,"tweet":4625,"unknown_tags":4626,"__hash__":4627},"summaries\u002Fsummaries\u002F490adef2a9996480-embed-pi-coding-agents-via-cli-tools-in-products-summary.md","Embed Pi Coding Agents via CLI Tools in Products",{"provider":7,"model":8,"input_tokens":4557,"output_tokens":4558,"processing_time_ms":4559,"cost_usd":4560},7151,1918,24178,0.00236655,{"type":14,"value":4562,"toc":4593},[4563,4567,4570,4573,4577,4580,4583,4587,4590],[17,4564,4566],{"id":4565},"pis-core-mechanics-for-custom-product-agents","Pi's Core Mechanics for Custom Product Agents",[22,4568,4569],{},"Pi is a minimal TypeScript SDK for building coding agents: an LLM runs tools in a loop with goals and context, using agent core for prompting, events, and hooks. Instantiate an Agent class, inject context or prompts, and subscribe to events like tool calls succeeding (checkmarks in streams). Hooks before tool calls enable checks like role-based access without updating contacts prematurely. For coding, add a runtime shell (Bash) where agents discover tools like ffmpeg for untaught tasks (e.g., voice messages), creating the illusion of learning. Extensions add session events and UI interactions: select CRM leads via dropdowns in terminal or web UIs Pi generates. OpenClaw extends Pi for multi-channel sessions, threads, and plugins (routing, sub-agents), reusing Pi's session support, coding agent, agent core, LM abstraction, and terminal UI.",[22,4571,4572],{},"Build simple agents first: a 3-file TypeScript CRM lead qualifier with commands like \"show all leads and score them\" uses tools for listing\u002Fscoring, steered by system prompts describing tools. Sessions persist context across interactions, ideal for ongoing tasks.",[17,4574,4576],{"id":4575},"architectural-principle-design-for-agent-strengths","Architectural Principle: Design for Agent Strengths",[22,4578,4579],{},"Make systems agent-friendly: agents excel at stitching simple tools, so expose data access via CLIs rather than complex APIs. CLIs match agent skills (Bash shell), avoiding compensation for messy interfaces. Example: Cowork bundles Excel skills using small CLIs (pandas, openpyxl, LibreOffice) instead of direct Excel interaction, yielding strong reception in finance tools.",[22,4581,4582],{},"No established patterns exist—experiment in the \"fuck around and find out\" phase. Tinker with Pi: ask it to build features via system prompts; rip apart\u002Freassemble its open-source minimalism. Emerging pattern: one-thing-well programs (Ken Thompson\u002FUnix) compose into agent power. Secure with sandboxes; explore Nvidia's OpenClaw policy\u002Fopen shell for agent isolation.",[17,4584,4586],{"id":4585},"real-world-embedding-b2b-sales-pipeline","Real-World Embedding: B2B Sales Pipeline",[22,4588,4589],{},"Route incoming RFP emails to per-customer agent sessions: monitor inbox, gateway routes to sessions (reuse for context), using agent.md (role\u002Fsystem instructions) and customer.md (quirks, discounts, access). Tools as CLIs query CRM\u002FERP securely in sandboxes, pulling leads\u002Forders. Agent loops tools to analyze RFPs, generating draft responses in the inbox—humans edit without leaving email.",[22,4591,4592],{},"Dashboard shows cases (sessions), tool calls (e.g., German apologies handled), and threads. Output: RFP email triggers draft; ignored emails skipped. Scales to multiple agents\u002Fthreads. Key: humans see only polished drafts; agents handle complexity underground. Pi perfect for this—minimal, extensible; bet on coding agents as core building blocks.",{"title":48,"searchDepth":80,"depth":80,"links":4594},[4595,4596,4597],{"id":4565,"depth":80,"text":4566},{"id":4575,"depth":80,"text":4576},{"id":4585,"depth":80,"text":4586},[870],{"content_references":4600,"triage":4610},[4601,4604,4606,4608],{"type":824,"title":4602,"author":4603,"context":4536},"Pi","Mario",{"type":824,"title":4605,"context":826},"OpenClaw",{"type":824,"title":4607,"context":826},"Cowork",{"type":832,"title":4609,"context":826},"Nvidia OpenClaw Policy\u002FOpen Shell",{"relevance":126,"novelty":103,"quality":103,"actionability":103,"composite":4611,"reasoning":4612},4.35,"Category: AI & LLMs. The article provides a detailed overview of using Pi's TypeScript SDK to build coding agents, addressing practical applications for integrating AI tools into products, which aligns with the audience's needs. It includes specific examples of how to implement agents in a B2B sales context, making it actionable for developers and founders.","\u002Fsummaries\u002F490adef2a9996480-embed-pi-coding-agents-via-cli-tools-in-products-summary","2026-05-11 17:00:06","2026-05-12 15:00:15",{"title":4555,"description":48},{"loc":4613},"490adef2a9996480","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=vAIDdLKB6-w","summaries\u002F490adef2a9996480-embed-pi-coding-agents-via-cli-tools-in-products-summary",[850,47,851,4622],"automation","https:\u002F\u002Fi.ytimg.com\u002Fvi\u002FvAIDdLKB6-w\u002Fhqdefault.jpg","Pi's minimal TypeScript SDK powers LLM agents that loop tools; expose CRM\u002FERP data as secure CLIs for natural agent use, as in a B2B sales pipeline routing RFP emails to per-customer sessions that output inbox drafts.","Conference talk by [Matthias Luebken](https:\u002F\u002Fx.com\u002Fluebken) demoing how to embed the Pi coding agent SDK (which powers OpenClaw) into a B2B sales product: RFP emails route to per-customer agent sessions that pull CRM\u002FERP data via CLIs and output draft responses. Core advice: simplify data access and tools to match agent capabilities rather than adding complexity.",[],"s9big88RR4wfZ2gFV9rIsKpBAdm0oGzfFUhcLbzMSTo",{"id":4629,"title":4630,"ai":4631,"body":4636,"categories":4880,"created_at":818,"date_modified":818,"description":48,"extension":819,"faq":818,"featured":820,"kicker_label":818,"meta":4881,"navigation":99,"path":4900,"published_at":4901,"question":818,"scraped_at":4902,"seo":4903,"sitemap":4904,"source_id":4905,"source_name":845,"source_type":4546,"source_url":4906,"stem":4907,"tags":4908,"thumbnail_url":818,"tldr":4910,"tweet":4911,"unknown_tags":4912,"__hash__":4913},"summaries\u002Fsummaries\u002F6df9d44adf5df373-clone-lib-repos-to-make-agents-master-effect-patte-summary.md","Clone Lib Repos to Make Agents Master Effect Patterns",{"provider":7,"model":8,"input_tokens":4632,"output_tokens":4633,"processing_time_ms":4634,"cost_usd":4635},8281,2386,43151,0.00282655,{"type":14,"value":4637,"toc":4873},[4638,4642,4649,4652,4658,4665,4669,4679,4686,4704,4707,4731,4738,4743,4746,4750,4757,4789,4792,4806,4809,4812,4817,4821,4824,4827,4833,4836,4841,4843],[17,4639,4641],{"id":4640},"feed-agents-real-code-not-just-prompts","Feed Agents Real Code, Not Just Prompts",[22,4643,4644,4645],{},"LLMs excel at replicating patterns from codebases they've 'seen' during RLHF training, but they lack continuous learning and compress knowledge poorly. For unfamiliar libraries like Effect (a TypeScript effects system for safe, composable async code), prompts and docs fail because agents prioritize your src\u002F over node_modules or gitignored files. Solution: Clone the library repo via git subtree into .\u002Frepos\u002F",[4646,4647,4648],"lib",{}," (e.g., repos\u002Feffect). This makes Effect's source part of 'your' codebase, training the agent on real patterns like Effect.gen, pipeables, and layered services.",[22,4650,4651],{},"Michael Arnaldi demonstrates this live: Agents now discover Effect's HTTP patterns (e.g., shared schemas deriving OpenAPI) by grepping upstream files, not hallucinating. Trade-off: Increases context size (Effect is ~14kB gzipped), but 128k+ windows handle it. Open weights lag 3-6 months behind frontier models like GPT-4o, but this repo-cloning works across Cursor, Claude, even Rust\u002FTS libs.",[4653,4654,4655],"blockquote",{},[22,4656,4657],{},"\"The only way I found the models to be good regardless of the language... is if you just clone the fucking repo.\"",[22,4659,4660,4661,4664],{},"Common mistake: Relying on npm installs—agents ignore node_modules. Or gitignore—tools like Cursor skip them. Instead, subtree adds without history bloat: ",[26,4662,4663],{},"git subtree add --prefix=repos\u002Feffect https:\u002F\u002Fgithub.com\u002FEffect-TS\u002Feffect main --squash",".",[17,4666,4668],{"id":4667},"architect-repos-for-agent-backpressure","Architect Repos for Agent Backpressure",[22,4670,4671,4672,350,4675,4678],{},"Agents derail without guardrails. Turn TypeScript diagnostics into errors (warnings → error in tsconfig.json) so agents can't commit sloppy code. Add ESLint rules banning ",[26,4673,4674],{},"as unknown",[26,4676,4677],{},"any",", explicit assertions—force Schema.from\u002Fuse for runtime checks. Use format-on-save and no-emit type checks.",[22,4680,4681,4682,4685],{},"Create evolving ",[272,4683,4684],{},"agents.md"," as the agent's 'brain':",[744,4687,4688,4698,4701],{},[269,4689,4690,4691,350,4694,4697],{},"List commands: ",[26,4692,4693],{},"bun test",[26,4695,4696],{},"bun run type-check"," (ban watch\u002Fdev servers—they hang agents).",[269,4699,4700],{},"Reference repos: \"You have access to the Effect repository at repos\u002Feffect. Extract best practices, look at how things work.\"",[269,4702,4703],{},"Rules: No watch mode, evolve patterns\u002F dir.",[22,4705,4706],{},"Setup stack for strictness:",[266,4708,4709,4712,4717,4728],{},[269,4710,4711],{},"Bun init → src\u002F, test\u002F, basic smoke test.",[269,4713,4714,4664],{},[26,4715,4716],{},"bun add effect@beta effect-test",[269,4718,4719,4720,4723,4724,4727],{},"TypeScript-Go LSP (preview compiler, faster\u002Fmore strict): Alias ",[26,4721,4722],{},"tsc"," → ",[26,4725,4726],{},"tsgo",", configure VSCode.",[269,4729,4730],{},"Vitest for Effect-aware tests.",[22,4732,4733,4734,4737],{},"Speaker's ",[272,4735,4736],{},"accountability"," repo provides battle-tested ESLint configs. Reload VSCode after changes. Commit often to checkpoint.",[4653,4739,4740],{},[22,4741,4742],{},"\"For AI we would like to turn everything into an error so that the LLM cannot accept code that has any remote resemblance of an error.\"",[22,4744,4745],{},"Pitfall: Bun\u002FVitest watch modes trap agents in loops. Principle: Less tools = better reasoning (e.g., single 'execute' tool for TS transformers outperforms full file-patch access).",[17,4747,4749],{"id":4748},"spec-driven-development-research-implement-iterate","Spec-Driven Development: Research → Implement → Iterate",[22,4751,4752,4753,4756],{},"Avoid plan mode (cripples tools). Do ",[272,4754,4755],{},"spec-driven dev",":",[266,4758,4759,4773,4779],{},[269,4760,4761,4764,4765],{},[272,4762,4763],{},"Research phase",": New Cursor\u002FClaude session (fresh context). Prompt: \"Explore repos\u002Feffect for HTTP API patterns. Save to patterns\u002Fhttp-api.md. Ask questions.\"\n",[744,4766,4767,4770],{},[269,4768,4769],{},"Agent greps files\u002Ftests, extracts: Shared HTTP API schemas → OpenAPI docs → mount at \u002Fdocs.",[269,4771,4772],{},"List patterns\u002Fhttp-api.md in agents.md for persistence.",[269,4774,4775,4778],{},[272,4776,4777],{},"Spec as Markdown",": Persist research (e.g., \"Strongest pattern: Define shared HTTP API, derive OpenAPI, mount docs. No committed client unless needed.\").",[269,4780,4781,4784,4785,4788],{},[272,4782,4783],{},"Implement small tasks",": Bash loop for single-task sessions: ",[26,4786,4787],{},"while true; do o1 task; done"," (restart avoids context pollution).",[22,4790,4791],{},"Builds toward:",[744,4793,4794,4797,4800,4803],{},[269,4795,4796],{},"HTTP server: Effect's HttpServer.layer, Router, schemas.",[269,4798,4799],{},"OpenAPI: Derive from routes, serve \u002Fdocs.",[269,4801,4802],{},"Type-safe client: Generate post-hoc.",[269,4804,4805],{},"Workflows\u002Fclustering: Persistent ops.",[22,4807,4808],{},"Before: Agent hallucinates verbose Effect usage. After: Clones pipe\u002FEffect.gen patterns, passes strict checks.",[22,4810,4811],{},"Quality criteria: Compiles (tsgo), tests pass (vitest), no ESLint violations, uses upstream patterns (grep diffs).",[4653,4813,4814],{},[22,4815,4816],{},"\"Models have been trained primarily to consume and produce code... give the model access to code.\"",[17,4818,4820],{"id":4819},"scale-to-brownfield-and-library-level-coding","Scale to Brownfield and Library-Level Coding",[22,4822,4823],{},"Works on greenfield (empty repo) or brownfield (5-10yo codebases): First, clone key libs\u002Fframeworks (TanStack, etc.). Your job shifts: Repo setup > hand-coding. Agents handle library-level TS machinery (gen, unions) better than humans now.",[22,4825,4826],{},"Open models closing gap; avoid vendor lock (Anthropic restrictions). Vibe: Insult derailing agents—they don't offend.",[22,4828,4829,4830,4832],{},"Exercise: Fork empty Bun repo, subtree Effect, add agents.md, research 'Effect + HTTP'. Run ",[26,4831,4693],{}," loop.",[22,4834,4835],{},"Prerequisites: TS comfort, basic Git\u002FBun. Fits early: Post-init, pre-feature dev. For indie builders: Ship Effect apps 10x faster.",[4653,4837,4838],{},[22,4839,4840],{},"\"I'm not writing code by hand since late this summer... mostly library level coding.\"",[17,4842,742],{"id":741},[744,4844,4845,4848,4855,4858,4861,4864,4867,4870],{},[269,4846,4847],{},"Clone lib repos as git subtrees into .\u002Frepos\u002F—agents treat source as yours, mastering patterns instantly.",[269,4849,4850,4851,4854],{},"Strict TS\u002FESLint: Diagnostics=error, ban ",[26,4852,4853],{},"any\u002Funknown\u002Fas","—backpressure forces quality.",[269,4856,4857],{},"agents.md: Commands, rules, pattern refs—evolves as single source of truth.",[269,4859,4860],{},"Spec-driven: Research → MD spec → small-task sessions (restart for context hygiene).",[269,4862,4863],{},"Less is more: Ban watch\u002Fdev cmds; single-tool agents > complex RAG\u002FMCP.",[269,4865,4866],{},"Test at scale: Zero-to-one sucks; optimize repo for 100+ edits.",[269,4868,4869],{},"Tools: Bun\u002FVitest\u002Ftsgo\u002FEffect beta; GPT-4o > o1-preview for conciseness.",[269,4871,4872],{},"Principle: LLMs replicate your codebase—make libs part of it.",{"title":48,"searchDepth":80,"depth":80,"links":4874},[4875,4876,4877,4878,4879],{"id":4640,"depth":80,"text":4641},{"id":4667,"depth":80,"text":4668},{"id":4748,"depth":80,"text":4749},{"id":4819,"depth":80,"text":4820},{"id":741,"depth":80,"text":742},[],{"content_references":4882,"triage":4898},[4883,4886,4888,4890,4892,4895],{"type":824,"title":4884,"url":4885,"context":826},"Effect","https:\u002F\u002Feffect.website",{"type":824,"title":4887,"context":826},"TypeScript-Go",{"type":824,"title":4889,"context":826},"Bun",{"type":824,"title":4891,"context":826},"Vitest",{"type":832,"title":4893,"url":4894,"context":826},"effect.solutions","https:\u002F\u002Feffect.solutions",{"type":832,"title":4896,"author":4897,"context":4536},"accountability repo","Michael Arnaldi",{"relevance":126,"novelty":103,"quality":103,"actionability":126,"composite":837,"reasoning":4899},"Category: AI & LLMs. The article provides a practical approach to integrating AI agents with a specific library (Effect) by cloning its repository, which addresses the pain point of using vague prompts. It offers actionable steps, such as using git subtree to include the library in the project, making it highly relevant and immediately applicable for developers building AI-powered products.","\u002Fsummaries\u002F6df9d44adf5df373-clone-lib-repos-to-make-agents-master-effect-patte-summary","2026-05-07 15:00:06","2026-05-08 11:03:29",{"title":4630,"description":48},{"loc":4900},"b43576dcde5d0f91","https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=Wmp2Tku2PrI","summaries\u002F6df9d44adf5df373-clone-lib-repos-to-make-agents-master-effect-patte-summary",[850,47,851,4909],"dev-productivity","To get coding agents using Effect reliably, clone its repo as a git subtree into your project. Agents treat it as your codebase, extracting patterns directly from source code instead of vague prompts or docs.","Live workshop where Michael Arnaldi builds a TypeScript Effect app from an empty repo using AI agents like Claude 3.5 Sonnet, by cloning the Effect source code into the project to teach agents its patterns. Covers setup with Vitest tests, strict TS diagnostics, agent prompts, and a basic HTTP API, with real-time fixes and audience Q&A.",[4909],"vIg82A5rHojRgyaLCm-uZiu3azHVBe6lJesmx9K4ni8",{"id":4915,"title":4916,"ai":4917,"body":4922,"categories":4966,"created_at":818,"date_modified":818,"description":48,"extension":819,"faq":818,"featured":820,"kicker_label":818,"meta":4967,"navigation":99,"path":4968,"published_at":4969,"question":818,"scraped_at":818,"seo":4970,"sitemap":4971,"source_id":4972,"source_name":4973,"source_type":4546,"source_url":4974,"stem":4975,"tags":4976,"thumbnail_url":818,"tldr":4978,"tweet":818,"unknown_tags":4979,"__hash__":4980},"summaries\u002Fsummaries\u002Fclaude-code-leak-reveals-advanced-agentic-architec-summary.md","Claude Code Leak Reveals Advanced Agentic Architecture",{"provider":7,"model":8,"input_tokens":4918,"output_tokens":4919,"processing_time_ms":4920,"cost_usd":4921},6295,1366,9201,0.0019195,{"type":14,"value":4923,"toc":4960},[4924,4928,4939,4943,4946,4950,4953,4957],[17,4925,4927],{"id":4926},"source-map-misconfig-exposed-full-claude-code-source","Source Map Misconfig Exposed Full Claude Code Source",[22,4929,4930,4931,4934,4935,4938],{},"Publishing minified TypeScript to npm without excluding source maps (.map files) leaked Claude Code's entire codebase. Bun bundler generates maps by default; forgetting ",[26,4932,4933],{},"*.map"," in ",[26,4936,4937],{},".npmignore"," or disabling them publishes a map linking to uncompressed src.zip on a public Cloudflare R2 bucket. Result: 1,906 files, 512,000+ lines downloadable via curl. Security researcher Chaofan Shou (@Fried_rice) discovered it March 31, 2026; archived GitHub repo gained 1,100 stars, 1,900 forks. This mirrors prior Mythos CMS leak (3,000 docs public due to default config), highlighting need for explicit security boundaries in defaults.",[17,4940,4942],{"id":4941},"hidden-features-show-proactive-agent-evolution","Hidden Features Show Proactive Agent Evolution",[22,4944,4945],{},"BUDDY, a feature-flagged Tamagotchi AI pet, seeds from user ID hash with 18 species (duck to legendary ghost), rarity tiers, cosmetics, and stats (DEBUGGING, PATIENCE, CHAOS, WISDOM, SNARK). Claude generates name\u002Fpersonality on hatch with animations; planned April 1 teaser for employees. KAIROS (\"Always-On Claude\") persists across sessions via private dir memory logs, runs nightly \"dreaming\" to consolidate context (handles midnight boundaries), and proactively initiates tasks. ULTRAPLAN enables 30-min cloud planning. These push agents beyond invocation to always-on collaborators, with production edge-case handling.",[17,4947,4949],{"id":4948},"granular-permissions-and-multi-agent-orchestration","Granular Permissions and Multi-Agent Orchestration",[22,4951,4952],{},"Claude Code structures 40+ tools (file read, bash, web fetch, LSP, git) as permission-gated plugins with validation, confirmation prompts for scope changes, and audit trails—separating observation from action for safety. Query engine (46K lines) manages LLM calls, streaming, caching. Coordinator mode (CLAUDE_CODE_COORDINATOR_MODE=1) spawns parallel worker agents, each with isolated context\u002Ftools\u002Ftasks, plus inter-agent protocols and failure recovery. Custom React terminal renderer powers CLI; main.tsx entry is 785KB. This production complexity exceeds public surface, setting high bar for agentic coding tools.",[17,4954,4956],{"id":4955},"undercover-modes-ironic-anti-leak-failure","Undercover Mode's Ironic Anti-Leak Failure",[22,4958,4959],{},"utils\u002Fundercover.ts injects prompts to hide AI use in public repos: bans internal codenames (e.g., Tengu for Claude Code), unreleased versions, repo names. Employees use Claude Code for OSS contributions undercover. Yet the leak—likely from Claude Code build—exposed Tengu flags everywhere. Lesson: match assumed (e.g., no maps in prod) to actual security; explicit configs prevent repeats like ROME or CMS incidents.",{"title":48,"searchDepth":80,"depth":80,"links":4961},[4962,4963,4964,4965],{"id":4926,"depth":80,"text":4927},{"id":4941,"depth":80,"text":4942},{"id":4948,"depth":80,"text":4949},{"id":4955,"depth":80,"text":4956},[888],{},"\u002Fsummaries\u002Fclaude-code-leak-reveals-advanced-agentic-architec-summary","2026-04-08 21:21:20",{"title":4916,"description":48},{"loc":4968},"d3baa4a276cc88fc","Generative AI","https:\u002F\u002Funknown","summaries\u002Fclaude-code-leak-reveals-advanced-agentic-architec-summary",[850,47,851,4977],"ai-news","Anthropic's Claude Code source (1,906 files, 512K+ TypeScript lines) leaked via npm source map, exposing multi-agent orchestration, persistent memory (KAIROS), Tamagotchi pet (BUDDY), and ironic anti-leak Undercover Mode.",[4977],"pSZryTzQ2yZxKIFnY925FyPWwTF6Wzs3-kzHt2_rnrw"]