[{"data":1,"prerenderedAt":2198},["ShallowReactive",2],{"navigation_docs":3,"-reference-http-api-work-items":504,"-reference-http-api-work-items-surround":2193},[4,28,51,187,214,469],{"title":5,"path":6,"stem":7,"children":8},"Get started","\u002Fget-started","1.get-started",[9,12,16,20,24],{"title":10,"path":6,"stem":11},"Overview","1.get-started\u002Findex",{"title":13,"path":14,"stem":15},"Why Kraft","\u002Fget-started\u002Fwhy-kraft","1.get-started\u002F0.why-kraft",{"title":17,"path":18,"stem":19},"Install","\u002Fget-started\u002Finstall","1.get-started\u002F1.install",{"title":21,"path":22,"stem":23},"Your first work item","\u002Fget-started\u002Ffirst-work-item","1.get-started\u002F2.first-work-item",{"title":25,"path":26,"stem":27},"FAQ","\u002Fget-started\u002Ffaq","1.get-started\u002F3.faq",{"title":29,"path":30,"stem":31,"children":32},"Concepts","\u002Fconcepts","2.concepts",[33,35,39,43,47],{"title":10,"path":30,"stem":34},"2.concepts\u002Findex",{"title":36,"path":37,"stem":38},"How a work item runs","\u002Fconcepts\u002Fhow-a-work-item-runs","2.concepts\u002F1.how-a-work-item-runs",{"title":40,"path":41,"stem":42},"Caps and budgets","\u002Fconcepts\u002Fcaps-and-budgets","2.concepts\u002F2.caps-and-budgets",{"title":44,"path":45,"stem":46},"Why a permission gate","\u002Fconcepts\u002Fpermission-gate","2.concepts\u002F3.permission-gate",{"title":48,"path":49,"stem":50},"Vocabulary","\u002Fconcepts\u002Fvocabulary","2.concepts\u002F4.vocabulary",{"title":52,"path":53,"stem":54,"children":55},"Guides","\u002Fguides","3.guides",[56,58,96,113,134,183],{"title":10,"path":53,"stem":57},"3.guides\u002Findex",{"title":59,"path":60,"stem":61,"children":62,"page":95},"Day to day","\u002Fguides\u002Fday-to-day","3.guides\u002F1.day-to-day",[63,67,71,75,79,83,87,91],{"title":64,"path":65,"stem":66},"The setup wizard on first start","\u002Fguides\u002Fday-to-day\u002Ffirst-run","3.guides\u002F1.day-to-day\u002F2.first-run",{"title":68,"path":69,"stem":70},"File a work item","\u002Fguides\u002Fday-to-day\u002Ffile-a-work-item","3.guides\u002F1.day-to-day\u002F3.file-a-work-item",{"title":72,"path":73,"stem":74},"Use Kraft from your agent","\u002Fguides\u002Fday-to-day\u002Fagent-integration","3.guides\u002F1.day-to-day\u002F4.agent-integration",{"title":76,"path":77,"stem":78},"Reviewing a change","\u002Fguides\u002Fday-to-day\u002Freview-a-change","3.guides\u002F1.day-to-day\u002F5.review-a-change",{"title":80,"path":81,"stem":82},"Raise a cap on a stopped item","\u002Fguides\u002Fday-to-day\u002Fraise-a-cap","3.guides\u002F1.day-to-day\u002F6.raise-a-cap",{"title":84,"path":85,"stem":86},"Kraft for VS Code","\u002Fguides\u002Fday-to-day\u002Fvscode","3.guides\u002F1.day-to-day\u002F7.vscode",{"title":88,"path":89,"stem":90},"Kraft on a phone","\u002Fguides\u002Fday-to-day\u002Fkraft-on-a-phone","3.guides\u002F1.day-to-day\u002F8.kraft-on-a-phone",{"title":92,"path":93,"stem":94},"Get notified when an item needs you","\u002Fguides\u002Fday-to-day\u002Fnotifications","3.guides\u002F1.day-to-day\u002F9.notifications",false,{"title":97,"path":98,"stem":99,"children":100,"page":95},"Customize and automate","\u002Fguides\u002Fcustomize","3.guides\u002F2.customize",[101,105,109],{"title":102,"path":103,"stem":104},"Write your own chain","\u002Fguides\u002Fcustomize\u002Fwrite-your-own-chain","3.guides\u002F2.customize\u002F1.write-your-own-chain",{"title":106,"path":107,"stem":108},"Add a security review or a gate reviewer","\u002Fguides\u002Fcustomize\u002Fadd-review-agents","3.guides\u002F2.customize\u002F2.add-review-agents",{"title":110,"path":111,"stem":112},"Schedule or webhook work","\u002Fguides\u002Fcustomize\u002Fschedule-and-webhook-work","3.guides\u002F2.customize\u002F3.schedule-and-webhook-work",{"title":114,"path":115,"stem":116,"children":117,"page":95},"Agents and harnesses","\u002Fguides\u002Fharnesses","3.guides\u002F3.harnesses",[118,122,126,130],{"title":119,"path":120,"stem":121},"Switch a task to another harness","\u002Fguides\u002Fharnesses\u002Fswitch-harness","3.guides\u002F3.harnesses\u002F1.switch-harness",{"title":123,"path":124,"stem":125},"Add or override a harness","\u002Fguides\u002Fharnesses\u002Fadding-a-harness","3.guides\u002F3.harnesses\u002F2.adding-a-harness",{"title":127,"path":128,"stem":129},"Build a worker Kit","\u002Fguides\u002Fharnesses\u002Fworker-kit","3.guides\u002F3.harnesses\u002F3.worker-kit",{"title":131,"path":132,"stem":133},"Give a worker its login","\u002Fguides\u002Fharnesses\u002Fgive-a-worker-its-login","3.guides\u002F3.harnesses\u002F4.give-a-worker-its-login",{"title":135,"path":136,"stem":137,"children":138,"page":95},"Run the server","\u002Fguides\u002Frun","3.guides\u002F4.run",[139,143,147,151,155,159,163,167,171,175,179],{"title":140,"path":141,"stem":142},"Remote access","\u002Fguides\u002Frun\u002Fremote-access","3.guides\u002F4.run\u002F01.remote-access",{"title":144,"path":145,"stem":146},"Put a proxy in front of Kraft","\u002Fguides\u002Frun\u002Fput-a-proxy-in-front-of-kraft","3.guides\u002F4.run\u002F02.put-a-proxy-in-front-of-kraft",{"title":148,"path":149,"stem":150},"Restart Kraft without ending running agents","\u002Fguides\u002Frun\u002Frestart-kraft","3.guides\u002F4.run\u002F03.restart-kraft",{"title":152,"path":153,"stem":154},"Back up and restore the database","\u002Fguides\u002Frun\u002Fback-up-and-restore","3.guides\u002F4.run\u002F04.back-up-and-restore",{"title":156,"path":157,"stem":158},"Logs and disk space","\u002Fguides\u002Frun\u002Flogs-and-disk-space","3.guides\u002F4.run\u002F05.logs-and-disk-space",{"title":160,"path":161,"stem":162},"Run Kraft as a service","\u002Fguides\u002Frun\u002Frun-as-a-service","3.guides\u002F4.run\u002F06.run-as-a-service",{"title":164,"path":165,"stem":166},"Upgrade Kraft","\u002Fguides\u002Frun\u002Fupgrade-kraft","3.guides\u002F4.run\u002F07.upgrade-kraft",{"title":168,"path":169,"stem":170},"Upgrade your configuration","\u002Fguides\u002Frun\u002Fupgrade-your-configuration","3.guides\u002F4.run\u002F08.upgrade-your-configuration",{"title":172,"path":173,"stem":174},"Upgrade from 1.4","\u002Fguides\u002Frun\u002Fupgrade-from-1-4","3.guides\u002F4.run\u002F09.upgrade-from-1-4",{"title":176,"path":177,"stem":178},"Upgrade from 0.x or a release candidate","\u002Fguides\u002Frun\u002Fupgrade-from-0-x-or-a-release-candidate","3.guides\u002F4.run\u002F10.upgrade-from-0-x-or-a-release-candidate",{"title":180,"path":181,"stem":182},"Roll back to 1.4","\u002Fguides\u002Frun\u002Froll-back","3.guides\u002F4.run\u002F11.roll-back",{"title":184,"path":185,"stem":186},"Kraft Lite","\u002Fguides\u002Fkraft-lite","3.guides\u002F5.kraft-lite",{"title":188,"path":189,"stem":190,"children":191},"Troubleshooting","\u002Ftroubleshooting","4.troubleshooting",[192,194,198,202,206,210],{"title":10,"path":189,"stem":193},"4.troubleshooting\u002Findex",{"title":195,"path":196,"stem":197},"Why did my item stop?","\u002Ftroubleshooting\u002Fwhy-did-my-item-stop","4.troubleshooting\u002F1.why-did-my-item-stop",{"title":199,"path":200,"stem":201},"Stop reasons in detail","\u002Ftroubleshooting\u002Fstop-reasons-in-detail","4.troubleshooting\u002F2.stop-reasons-in-detail",{"title":203,"path":204,"stem":205},"Starting and reaching Kraft","\u002Ftroubleshooting\u002Fstarting-and-reaching-kraft","4.troubleshooting\u002F3.starting-and-reaching-kraft",{"title":207,"path":208,"stem":209},"Doctor failures","\u002Ftroubleshooting\u002Fdoctor-failures","4.troubleshooting\u002F4.doctor-failures",{"title":211,"path":212,"stem":213},"Sandbox and Kit stops","\u002Ftroubleshooting\u002Fsandbox-and-kit-stops","4.troubleshooting\u002F5.sandbox-and-kit-stops",{"title":215,"path":216,"stem":217,"children":218},"Reference","\u002Freference","5.reference",[219,221,259,281,285,375,393,419,423,427,461,465],{"title":10,"path":216,"stem":220},"5.reference\u002Findex",{"title":222,"path":223,"stem":224,"children":225},"Web UI","\u002Freference\u002Fweb-ui","5.reference\u002F00.web-ui\u002Findex",[226,227,231,235,239,243,247,251,255],{"title":10,"path":223,"stem":224},{"title":228,"path":229,"stem":230},"Sidebar, search, and keyboard","\u002Freference\u002Fweb-ui\u002Fsidebar-search-and-keyboard","5.reference\u002F00.web-ui\u002F0.sidebar-search-and-keyboard",{"title":232,"path":233,"stem":234},"The board","\u002Freference\u002Fweb-ui\u002Fboard","5.reference\u002F00.web-ui\u002F1.board",{"title":236,"path":237,"stem":238},"An item's page","\u002Freference\u002Fweb-ui\u002Fitem-page","5.reference\u002F00.web-ui\u002F2.item-page",{"title":240,"path":241,"stem":242},"Fix loops and test scopes","\u002Freference\u002Fweb-ui\u002Ffix-loops-and-test-scopes","5.reference\u002F00.web-ui\u002F3.fix-loops-and-test-scopes",{"title":244,"path":245,"stem":246},"Config before an item starts","\u002Freference\u002Fweb-ui\u002Fconfig-before-start","5.reference\u002F00.web-ui\u002F4.config-before-start",{"title":248,"path":249,"stem":250},"The review page","\u002Freference\u002Fweb-ui\u002Freview-page","5.reference\u002F00.web-ui\u002F5.review-page",{"title":252,"path":253,"stem":254},"Templates and Settings","\u002Freference\u002Fweb-ui\u002Ftemplates-and-settings","5.reference\u002F00.web-ui\u002F6.templates-and-settings",{"title":256,"path":257,"stem":258},"Analytics","\u002Freference\u002Fweb-ui\u002Fanalytics","5.reference\u002F00.web-ui\u002F7.analytics",{"title":260,"path":261,"stem":262,"children":263},"CLI","\u002Freference\u002Fcli","5.reference\u002F01.cli\u002Findex",[264,265,269,273,277],{"title":10,"path":261,"stem":262},{"title":266,"path":267,"stem":268},"Item verbs","\u002Freference\u002Fcli\u002Fitem","5.reference\u002F01.cli\u002F2.item",{"title":270,"path":271,"stem":272},"View verbs","\u002Freference\u002Fcli\u002Fview","5.reference\u002F01.cli\u002F3.view",{"title":274,"path":275,"stem":276},"Repo verbs","\u002Freference\u002Fcli\u002Frepo","5.reference\u002F01.cli\u002F4.repo",{"title":278,"path":279,"stem":280},"Admin verbs","\u002Freference\u002Fcli\u002Fadmin","5.reference\u002F01.cli\u002F5.admin",{"title":282,"path":283,"stem":284},"Work item statuses","\u002Freference\u002Fstatuses","5.reference\u002F02.statuses",{"title":286,"path":287,"stem":288,"children":289},"Configuration","\u002Freference\u002Fconfiguration","5.reference\u002F03.configuration\u002Findex",[290,291,309,313,317,321,325,329,333,337,371],{"title":10,"path":287,"stem":288},{"title":292,"path":293,"stem":294,"children":295},"repos.yaml","\u002Freference\u002Fconfiguration\u002Frepos","5.reference\u002F03.configuration\u002F02.repos\u002Findex",[296,297,301,305],{"title":10,"path":293,"stem":294},{"title":298,"path":299,"stem":300},"How connect proposes commands","\u002Freference\u002Fconfiguration\u002Frepos\u002Fconnect-proposals","5.reference\u002F03.configuration\u002F02.repos\u002F1.connect-proposals",{"title":302,"path":303,"stem":304},"detectors.yaml","\u002Freference\u002Fconfiguration\u002Frepos\u002Fdetectors","5.reference\u002F03.configuration\u002F02.repos\u002F2.detectors",{"title":306,"path":307,"stem":308},"Workspaces","\u002Freference\u002Fconfiguration\u002Frepos\u002Fworkspaces","5.reference\u002F03.configuration\u002F02.repos\u002F3.workspaces",{"title":310,"path":311,"stem":312},"policy.yaml","\u002Freference\u002Fconfiguration\u002Fpolicy","5.reference\u002F03.configuration\u002F03.policy",{"title":314,"path":315,"stem":316},"Library and chains","\u002Freference\u002Fconfiguration\u002Flibrary-and-chains","5.reference\u002F03.configuration\u002F04.library-and-chains",{"title":318,"path":319,"stem":320},"harnesses.yaml","\u002Freference\u002Fconfiguration\u002Fharnesses-file","5.reference\u002F03.configuration\u002F05.harnesses-file",{"title":322,"path":323,"stem":324},"access.yaml","\u002Freference\u002Fconfiguration\u002Faccess","5.reference\u002F03.configuration\u002F06.access",{"title":326,"path":327,"stem":328},"intake.yaml","\u002Freference\u002Fconfiguration\u002Fintake","5.reference\u002F03.configuration\u002F07.intake",{"title":330,"path":331,"stem":332},"notify.yaml","\u002Freference\u002Fconfiguration\u002Fnotify","5.reference\u002F03.configuration\u002F08.notify",{"title":334,"path":335,"stem":336},"theme.yaml","\u002Freference\u002Fconfiguration\u002Ftheme","5.reference\u002F03.configuration\u002F09.theme",{"title":338,"path":339,"stem":340,"children":341},"Sandboxed workers","\u002Freference\u002Fconfiguration\u002Fsandbox","5.reference\u002F03.configuration\u002F10.sandbox\u002Findex",[342,343,347,351,355,359,363,367],{"title":10,"path":339,"stem":340},{"title":344,"path":345,"stem":346},"Resource limits","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fresource-limits","5.reference\u002F03.configuration\u002F10.sandbox\u002F1.resource-limits",{"title":348,"path":349,"stem":350},"Callbacks from a sandbox","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fcallbacks","5.reference\u002F03.configuration\u002F10.sandbox\u002F2.callbacks",{"title":352,"path":353,"stem":354},"Network policy","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fnetwork-policy","5.reference\u002F03.configuration\u002F10.sandbox\u002F3.network-policy",{"title":356,"path":357,"stem":358},"Credentials","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fcredentials","5.reference\u002F03.configuration\u002F10.sandbox\u002F4.credentials",{"title":360,"path":361,"stem":362},"Kits","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fkits","5.reference\u002F03.configuration\u002F10.sandbox\u002F5.kits",{"title":364,"path":365,"stem":366},"sandbox.yaml","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fsandbox-yaml","5.reference\u002F03.configuration\u002F10.sandbox\u002F6.sandbox-yaml",{"title":368,"path":369,"stem":370},"Git in a sandbox","\u002Freference\u002Fconfiguration\u002Fsandbox\u002Fgit-in-a-sandbox","5.reference\u002F03.configuration\u002F10.sandbox\u002F7.git-in-a-sandbox",{"title":372,"path":373,"stem":374},"Environment variables","\u002Freference\u002Fconfiguration\u002Fenvironment-variables","5.reference\u002F03.configuration\u002F11.environment-variables",{"title":376,"path":377,"stem":378,"children":379},"Chain file keys","\u002Freference\u002Fchain-nodes","5.reference\u002F04.chain-nodes\u002Findex",[380,381,385,389],{"title":10,"path":377,"stem":378},{"title":382,"path":383,"stem":384},"Subprocess tasks","\u002Freference\u002Fchain-nodes\u002Fsubprocess-tasks","5.reference\u002F04.chain-nodes\u002F2.subprocess-tasks",{"title":386,"path":387,"stem":388},"Fix loop and judge","\u002Freference\u002Fchain-nodes\u002Ffix-loop","5.reference\u002F04.chain-nodes\u002F3.fix-loop",{"title":390,"path":391,"stem":392},"Result file","\u002Freference\u002Fchain-nodes\u002Fresult-file","5.reference\u002F04.chain-nodes\u002F4.result-file",{"title":394,"path":395,"stem":396,"children":397},"Agent harnesses","\u002Freference\u002Fharnesses","5.reference\u002F05.harnesses\u002Findex",[398,399,403,407,411,415],{"title":10,"path":395,"stem":396},{"title":400,"path":401,"stem":402},"Unattended runs","\u002Freference\u002Fharnesses\u002Funattended-runs","5.reference\u002F05.harnesses\u002F2.unattended-runs",{"title":404,"path":405,"stem":406},"Agent profiles","\u002Freference\u002Fharnesses\u002Fagent-profiles","5.reference\u002F05.harnesses\u002F3.agent-profiles",{"title":408,"path":409,"stem":410},"Harness definition files","\u002Freference\u002Fharnesses\u002Fharness-files","5.reference\u002F05.harnesses\u002F4.harness-files",{"title":412,"path":413,"stem":414},"Fallback and escalation","\u002Freference\u002Fharnesses\u002Ffallback-and-escalation","5.reference\u002F05.harnesses\u002F5.fallback-and-escalation",{"title":416,"path":417,"stem":418},"Cost reporting","\u002Freference\u002Fharnesses\u002Fcost-reporting","5.reference\u002F05.harnesses\u002F6.cost-reporting",{"title":420,"path":421,"stem":422},"Permission gate","\u002Freference\u002Fpermissions","5.reference\u002F06.permissions",{"title":424,"path":425,"stem":426},"Inbound triggers","\u002Freference\u002Ftriggers","5.reference\u002F07.triggers",{"title":428,"path":429,"stem":430,"children":431},"HTTP API","\u002Freference\u002Fhttp-api","5.reference\u002F08.http-api\u002Findex",[432,433,437,441,445,449,453,457],{"title":10,"path":429,"stem":430},{"title":434,"path":435,"stem":436},"Filing, reading and changing work items","\u002Freference\u002Fhttp-api\u002Fwork-items","5.reference\u002F08.http-api\u002F2.work-items",{"title":438,"path":439,"stem":440},"Gates, run control, ending and retry","\u002Freference\u002Fhttp-api\u002Fgates-run-control-and-ending","5.reference\u002F08.http-api\u002F3.gates-run-control-and-ending",{"title":442,"path":443,"stem":444},"The work item object","\u002Freference\u002Fhttp-api\u002Fwork-item-object","5.reference\u002F08.http-api\u002F4.work-item-object",{"title":446,"path":447,"stem":448},"Budget, events, diff and documents","\u002Freference\u002Fhttp-api\u002Fbudget-and-events","5.reference\u002F08.http-api\u002F5.budget-and-events",{"title":450,"path":451,"stem":452},"Repos, chains, harnesses and the server","\u002Freference\u002Fhttp-api\u002Frepos-chains-harnesses-and-server","5.reference\u002F08.http-api\u002F6.repos-chains-harnesses-and-server",{"title":454,"path":455,"stem":456},"Drafts","\u002Freference\u002Fhttp-api\u002Fdrafts","5.reference\u002F08.http-api\u002F7.drafts",{"title":458,"path":459,"stem":460},"Ops for each draft area","\u002Freference\u002Fhttp-api\u002Fdraft-ops","5.reference\u002F08.http-api\u002F8.draft-ops",{"title":462,"path":463,"stem":464},"MCP tools","\u002Freference\u002Fmcp-tools","5.reference\u002F09.mcp-tools",{"title":466,"path":467,"stem":468},"Events","\u002Freference\u002Fevents","5.reference\u002F10.events",{"title":470,"path":471,"stem":472,"children":473},"Security and project","\u002Fproject","6.project",[474,476,480,484,488,492,496,500],{"title":10,"path":471,"stem":475},"6.project\u002Findex",{"title":477,"path":478,"stem":479},"Security","\u002Fproject\u002Fsecurity","6.project\u002F1.security",{"title":481,"path":482,"stem":483},"Data and privacy","\u002Fproject\u002Fdata-and-privacy","6.project\u002F2.data-and-privacy",{"title":485,"path":486,"stem":487},"What's new in 2.0","\u002Fproject\u002Fwhats-new","6.project\u002F3.whats-new",{"title":489,"path":490,"stem":491},"Status and support","\u002Fproject\u002Fstatus-and-support","6.project\u002F4.status-and-support",{"title":493,"path":494,"stem":495},"Architecture","\u002Fproject\u002Farchitecture","6.project\u002F5.architecture",{"title":497,"path":498,"stem":499},"Source map","\u002Fproject\u002Fsource-map","6.project\u002F6.source-map",{"title":501,"path":502,"stem":503},"Contributing","\u002Fproject\u002Fcontributing","6.project\u002F7.contributing",{"id":505,"title":434,"body":506,"description":2186,"extension":2187,"links":2188,"meta":2189,"navigation":2190,"path":435,"seo":2191,"stem":436,"__hash__":2192},"docs\u002F5.reference\u002F08.http-api\u002F2.work-items.md",{"type":507,"value":508,"toc":2163},"minimark",[509,525,550,648,653,658,664,687,1035,1057,1070,1133,1157,1242,1249,1273,1278,1288,1339,1347,1406,1410,1415,1472,1507,1512,1522,1526,1531,1537,1670,1681,1701,1723,1845,1867,1872,1879,1922,1991,1994,2062,2078,2119,2123,2159],[510,511,512,513,518,519,521,522,524],"p",{},"This page lists the board's routes for filing, reading and changing a ",[514,515,517],"a",{"href":516},"\u002Fconcepts\u002Fvocabulary#work-item","work item",". The routes that decide a gate, pause, resume, skip, escalate, end and retry an item are on ",[514,520,438],{"href":439},". The shapes the routes answer with are on ",[514,523,442],{"href":443},".",[510,526,527,528,532,533,537,538,541,542,545,546,549],{},"Every route under ",[529,530,531],"code",{},"\u002Fapi\u002F"," except the ",[514,534,536],{"href":535},"\u002Freference\u002Fhttp-api#stable-routes","stable routes",", and the ",[529,539,540],{},"\u002Fapi\u002Fws\u002Fevents"," WebSocket, exists for the board and can change in any release. For those, prefer the ",[529,543,544],{},"kraft"," command with ",[529,547,548],{},"--json",", which is stable.",[551,552,553,566],"table",{},[554,555,556],"thead",{},[557,558,559,563],"tr",{},[560,561,562],"th",{},"Route",[560,564,565],{},"What it does",[567,568,569,583,596,609,622,635],"tbody",{},[557,570,571,580],{},[572,573,574],"td",{},[514,575,577],{"href":576},"#post-apiwork-items",[529,578,579],{},"POST \u002Fapi\u002Fwork-items",[572,581,582],{},"Files a work item, paused unless the body starts it.",[557,584,585,593],{},[572,586,587],{},[514,588,590],{"href":589},"#post-apiwork-itemsidduplicate",[529,591,592],{},"POST \u002Fapi\u002Fwork-items\u002F{id}\u002Fduplicate",[572,594,595],{},"Files a fresh paused item from an existing one.",[557,597,598,606],{},[572,599,600],{},[514,601,603],{"href":602},"#get-apiwork-items",[529,604,605],{},"GET \u002Fapi\u002Fwork-items",[572,607,608],{},"Lists the items on the board.",[557,610,611,619],{},[572,612,613],{},[514,614,616],{"href":615},"#get-apiwork-itemsid",[529,617,618],{},"GET \u002Fapi\u002Fwork-items\u002F{id}",[572,620,621],{},"Answers one item in full.",[557,623,624,632],{},[572,625,626],{},[514,627,629],{"href":628},"#patch-apiwork-itemsid",[529,630,631],{},"PATCH \u002Fapi\u002Fwork-items\u002F{id}",[572,633,634],{},"Changes an item's title, description, chain, overrides, budget, policy or attachments.",[557,636,637,645],{},[572,638,639],{},[514,640,642],{"href":641},"#post-apiwork-itemsbulk",[529,643,644],{},"POST \u002Fapi\u002Fwork-items\u002Fbulk",[572,646,647],{},"Pauses, cancels, archives or restores several items.",[510,649,650,651,524],{},"Routes that read an item's budget, events, diff and documents are on ",[514,652,446],{"href":447},[654,655,657],"h2",{"id":656},"filing-a-work-item","Filing a work item",[659,660,662],"h3",{"id":661},"post-apiwork-items",[529,663,579],{},[510,665,666,667,670,671,674,675,678,679,682,683,524],{},"Files a work item. The item is paused unless the body sets ",[529,668,669],{},"autostart: true",", like ",[529,672,673],{},"kraft item create"," without ",[529,676,677],{},"--autostart",". ",[529,680,681],{},"POST \u002Fapi\u002Fwork-items?dry_run=1"," runs the same checks and files nothing: see ",[514,684,686],{"href":685},"\u002Freference\u002Fhttp-api\u002Fbudget-and-events#post-apiwork-itemsdry_run1","Dry run",[551,688,689,705],{},[554,690,691],{},[557,692,693,696,699,702],{},[560,694,695],{},"Field",[560,697,698],{},"Type",[560,700,701],{},"Default",[560,703,704],{},"Meaning",[567,706,707,723,740,754,780,824,847,883,899,917,938,954,970,991,1015],{},[557,708,709,714,717,720],{},[572,710,711],{},[529,712,713],{},"title",[572,715,716],{},"string",[572,718,719],{},"required",[572,721,722],{},"One line of plain text, up to 500 characters, with no tab, escape or other control character.",[557,724,725,730,732,737],{},[572,726,727],{},[529,728,729],{},"description",[572,731,716],{},[572,733,734],{},[529,735,736],{},"\"\"",[572,738,739],{},"The brief: prose the spec node writes a design from.",[557,741,742,747,749,751],{},[572,743,744],{},[529,745,746],{},"repo",[572,748,716],{},[572,750,719],{},[572,752,753],{},"The absolute path of a connected repo.",[557,755,756,761,763,769],{},[572,757,758],{},[529,759,760],{},"chain",[572,762,716],{},[572,764,765,766],{},"the repo's ",[529,767,768],{},"default_chain",[572,770,771,772,775,776,779],{},"The chain to run. The pre-2.0 name ",[529,773,774],{},"chain_template"," is still read, by ",[529,777,778],{},"PATCH"," too.",[557,781,782,794,797,807],{},[572,783,784,787,788,787,791],{},[529,785,786],{},"workspace",", ",[529,789,790],{},"members",[529,792,793],{},"root_pointer_policy",[572,795,796],{},"string, list, string",[572,798,799,787,802,787,805],{},[529,800,801],{},"null",[529,803,804],{},"[]",[529,806,801],{},[572,808,809,810,812,813,816,817,820,821,524],{},"A workspace item: the workspace ",[529,811,746],{}," is the root of, the members it selects, and ",[529,814,815],{},"ignore"," or ",[529,818,819],{},"bump",". An unset policy is the workspace's ",[529,822,823],{},"root_pointer_default",[557,825,826,831,833,837],{},[572,827,828],{},[529,829,830],{},"base_branch",[572,832,716],{},[572,834,835],{},[529,836,801],{},[572,838,839,840,842,843,846],{},"The branch the work starts from and the merge request targets: the repo's default branch when ",[529,841,801],{},". Refused unless ",[529,844,845],{},"origin"," has it.",[557,848,849,854,857,861],{},[572,850,851],{},[529,852,853],{},"attachments",[572,855,856],{},"list",[572,858,859],{},[529,860,804],{},[572,862,863,864,867,868,871,872,816,875,878,879,882],{},"Existing documents, ",[529,865,866],{},"{kind, path}"," with ",[529,869,870],{},"kind"," ",[529,873,874],{},"spec",[529,876,877],{},"plan"," and ",[529,880,881],{},"path"," inside the repo. At most one per kind. They trim the gates they satisfy.",[557,884,885,890,892,896],{},[572,886,887],{},[529,888,889],{},"cwd",[572,891,716],{},[572,893,894],{},[529,895,801],{},[572,897,898],{},"The caller's working directory, sent only with attachment paths. A path is also read from another working tree of the same repo there.",[557,900,901,906,909,914],{},[572,902,903],{},[529,904,905],{},"autostart",[572,907,908],{},"boolean",[572,910,911],{},[529,912,913],{},"false",[572,915,916],{},"Start the item now instead of filing it paused.",[557,918,919,924,926,931],{},[572,920,921],{},[529,922,923],{},"auto_gate",[572,925,908],{},[572,927,928],{},[529,929,930],{},"true",[572,932,933,934,937],{},"Arms agent review for the item's ",[529,935,936],{},"auto_escalate"," gates.",[557,939,940,945,947,951],{},[572,941,942],{},[529,943,944],{},"implements_beads",[572,946,856],{},[572,948,949],{},[529,950,804],{},[572,952,953],{},"Bead ids the item implements, closed when it completes.",[557,955,956,961,963,967],{},[572,957,958],{},[529,959,960],{},"skip_nodes",[572,962,856],{},[572,964,965],{},[529,966,804],{},[572,968,969],{},"Node ids to drop from the chain. An id that is no node of the chain is refused.",[557,971,972,977,982,985],{},[572,973,974],{},[529,975,976],{},"budget_usd",[572,978,979,980],{},"number or ",[529,981,801],{},[572,983,984],{},"the policy default",[572,986,987,988,990],{},"The item's own dollar cap. Omitted uses the policy default, ",[529,989,801],{}," means no cap.",[557,992,993,998,1001,1006],{},[572,994,995],{},[529,996,997],{},"node_overrides",[572,999,1000],{},"object",[572,1002,1003],{},[529,1004,1005],{},"{}",[572,1007,1008,1011,1012,1014],{},[529,1009,1010],{},"{node_id: {field: value}}",", as ",[529,1013,778],{}," takes it.",[557,1016,1017,1022,1024,1028],{},[572,1018,1019],{},[529,1020,1021],{},"policy",[572,1023,1000],{},[572,1025,1026],{},[529,1027,801],{},[572,1029,1030,1031,524],{},"The item's own ",[514,1032,1034],{"href":1033},"\u002Freference\u002Fcli\u002Fitem#a-work-items-own-policy","policy override",[510,1036,1037,1038,816,1041,1043,1044,878,1046,1048,1049,1052,1053,1056],{},"A ",[529,1039,1040],{},"POST",[529,1042,778],{}," body naming two different chains under ",[529,1045,760],{},[529,1047,774],{}," is refused with ",[529,1050,1051],{},"422",", its ",[529,1054,1055],{},"detail"," one sentence naming both. The same chain twice is fine.",[510,1058,1059,1060,867,1063,1066,1067,1069],{},"The answer is ",[529,1061,1062],{},"201",[529,1064,1065],{},"{\"id\": \"...\", \"status\": \"paused\"}"," for an item filed paused, and also when ",[529,1068,669],{}," found every slot busy. These keys appear only when they apply:",[551,1071,1072,1082],{},[554,1073,1074],{},[557,1075,1076,1079],{},[560,1077,1078],{},"Key",[560,1080,1081],{},"When",[567,1083,1084,1103,1113,1123],{},[557,1085,1086,1091],{},[572,1087,1088],{},[529,1089,1090],{},"slots",[572,1092,1093,1095,1096,1099,1100,524],{},[529,1094,669],{}," was sent but every slot (",[529,1097,1098],{},"max_concurrent",") was busy, so the item was filed paused: ",[529,1101,1102],{},"{\"busy\": 3, \"limit\": 3}",[557,1104,1105,1110],{},[572,1106,1107],{},[529,1108,1109],{},"repo_warning",[572,1111,1112],{},"The repo declares no setup command, or no test command nor test scopes. It says where the item will stop.",[557,1114,1115,1120],{},[572,1116,1117],{},[529,1118,1119],{},"duplicate_warning",[572,1121,1122],{},"Another open item has the same title or implements a bead the body names.",[557,1124,1125,1130],{},[572,1126,1127],{},[529,1128,1129],{},"bead_warning",[572,1131,1132],{},"Why no bead was filed for the item.",[510,1134,1135,1136,867,1138,787,1141,787,1144,878,1147,1150,1151,878,1154,524],{},"An item that starts at once answers ",[529,1137,1062],{},[529,1139,1140],{},"bead_id",[529,1142,1143],{},"chain_definition",[529,1145,1146],{},"materialized_chain",[529,1148,1149],{},"current_node_id"," beside ",[529,1152,1153],{},"id",[529,1155,1156],{},"status",[551,1158,1159,1168],{},[554,1160,1161],{},[557,1162,1163,1166],{},[560,1164,1165],{},"Status",[560,1167,1081],{},[567,1169,1170,1186,1205,1214,1232],{},[557,1171,1172,1177],{},[572,1173,1174],{},[529,1175,1176],{},"503",[572,1178,1179,1181,1182,1185],{},[529,1180,310],{}," does not load. It is checked first, before the ",[529,1183,1184],{},"403",". Kraft refuses new work until the file loads.",[557,1187,1188,1192],{},[572,1189,1190],{},[529,1191,1184],{},[572,1193,1194,1196,1197,1200,1201,1204],{},[529,1195,669],{}," came on a request that carries ",[529,1198,1199],{},"X-Kraft-Session-Id"," (a worker session) or ",[529,1202,1203],{},"X-Kraft-Client: mcp"," (the MCP server). An agent files work paused, and you start it.",[557,1206,1207,1211],{},[572,1208,1209],{},[529,1210,1176],{},[572,1212,1213],{},"The library or a chain does not load.",[557,1215,1216,1220],{},[572,1217,1218],{},[529,1219,1051],{},[572,1221,1222,1223,1225,1226,1228,1229,1231],{},"A field is refused: a relative or unconnected ",[529,1224,746],{},", an unknown chain, a title or description that fails its check, a missing attachment, an unknown ",[529,1227,960],{}," id, an unknown ",[529,1230,830],{},", or an override the chain or policy refuses.",[557,1233,1234,1239],{},[572,1235,1236],{},[529,1237,1238],{},"502",[572,1240,1241],{},"Filing the item failed after the checks passed.",[510,1243,1244,1245,1248],{},"The server cannot tell a coding agent that runs ",[529,1246,1247],{},"kraft item create --autostart"," in its own shell from a person, so that call starts the item.",[510,1250,1251,1252,787,1254,878,1257,1260,1261,1263,1264,816,1266,1269,1270,524],{},"Every repo path you send must be absolute: the server would read a relative one against its own directory, not yours. ",[529,1253,579],{},[529,1255,1256],{},"POST \u002Fapi\u002Frepos",[529,1258,1259],{},"POST \u002Fapi\u002Ftriggers"," refuse a relative path with ",[529,1262,1051],{},", and ",[529,1265,778],{},[529,1267,1268],{},"DELETE \u002Fapi\u002Frepos?path="," answer ",[529,1271,1272],{},"404",[659,1274,1276],{"id":1275},"post-apiwork-itemsidduplicate",[529,1277,592],{},[510,1279,1280,1281,1284,1285,1287],{},"Files a fresh, paused item from the item ",[529,1282,1283],{},"{id}",": its title, description, repo, chain, workspace selection and attachments, snapshotted again under the new item's own id. Any source status is accepted, archived and cancelled included. No run state, override, policy override, budget or bead link carries over. This is a fresh intake, not a clone of the row. Agent review of the item's ",[529,1286,936],{}," gates is armed, as for an ordinary create, whatever the source had. The body is empty.",[1289,1290,1295],"pre",{"className":1291,"code":1292,"language":1293,"meta":1294,"style":1294},"language-json shiki shiki-themes github-light-high-contrast github-light-high-contrast github-dark-high-contrast","{\"id\": \"...\", \"status\": \"paused\", \"duplicate_warning\": \"...\"}\n","json","",[529,1296,1297],{"__ignoreMap":1294},[1298,1299,1302,1306,1310,1313,1317,1319,1322,1324,1327,1329,1332,1334,1336],"span",{"class":1300,"line":1301},"line",1,[1298,1303,1305],{"class":1304},"s7iLA","{",[1298,1307,1309],{"class":1308},"sb7M8","\"id\"",[1298,1311,1312],{"class":1304},": ",[1298,1314,1316],{"class":1315},"semJd","\"...\"",[1298,1318,787],{"class":1304},[1298,1320,1321],{"class":1308},"\"status\"",[1298,1323,1312],{"class":1304},[1298,1325,1326],{"class":1315},"\"paused\"",[1298,1328,787],{"class":1304},[1298,1330,1331],{"class":1308},"\"duplicate_warning\"",[1298,1333,1312],{"class":1304},[1298,1335,1316],{"class":1315},[1298,1337,1338],{"class":1304},"}\n",[510,1340,1341,1343,1344,1346],{},[529,1342,1119],{}," is present only when another open item looks like a duplicate, the same check ",[529,1345,579],{}," makes.",[551,1348,1349,1357],{},[554,1350,1351],{},[557,1352,1353,1355],{},[560,1354,1165],{},[560,1356,1081],{},[567,1358,1359,1368,1378,1387,1395],{},[557,1360,1361,1365],{},[572,1362,1363],{},[529,1364,1272],{},[572,1366,1367],{},"There is no such item.",[557,1369,1370,1375],{},[572,1371,1372],{},[529,1373,1374],{},"409",[572,1376,1377],{},"The source's stored attachment copy has gone missing, as it does when the source is abandoned. The answer names it, before anything is filed.",[557,1379,1380,1384],{},[572,1381,1382],{},[529,1383,1051],{},[572,1385,1386],{},"The chain or workspace the source used is gone, or its title is empty.",[557,1388,1389,1393],{},[572,1390,1391],{},[529,1392,1238],{},[572,1394,1241],{},[557,1396,1397,1401],{},[572,1398,1399],{},[529,1400,1176],{},[572,1402,1403,1405],{},[529,1404,310],{},", the library or a chain does not load.",[654,1407,1409],{"id":1408},"reading-work-items","Reading work items",[659,1411,1413],{"id":1412},"get-apiwork-items",[529,1414,605],{},[510,1416,1417,1418,678,1421,1424,1425,1428,1429,1433,1434,787,1437,1440,1441,787,1444,878,1447,1450,1451,787,1454,878,1457,1440,1460,1463,1464,787,1467,816,1469,524],{},"Answers the board: ",[529,1419,1420],{},"{\"items\": [...], \"cursor\": N}",[529,1422,1423],{},"cursor"," is the highest event ",[529,1426,1427],{},"seq"," at the time of the read. Each row is ",[514,1430,1432],{"href":1431},"\u002Freference\u002Fhttp-api\u002Fwork-item-object#the-list-row","the list row",": a short subset of the item's fields, with ",[529,1435,1436],{},"display_status",[529,1438,1439],{},"stop"," (without ",[529,1442,1443],{},"facts",[529,1445,1446],{},"task",[529,1448,1449],{},"attempt","), ",[529,1452,1453],{},"step",[529,1455,1456],{},"mr_ref",[529,1458,1459],{},"progress",[529,1461,1462],{},"tasks",") in place of the detail's per-row lookups. It carries no ",[529,1465,1466],{},"agent_overrides",[529,1468,997],{},[529,1470,1471],{},"policy_override",[551,1473,1474,1483],{},[554,1475,1476],{},[557,1477,1478,1481],{},[560,1479,1480],{},"Query",[560,1482,704],{},[567,1484,1485,1498],{},[557,1486,1487,1492],{},[572,1488,1489],{},[529,1490,1491],{},"archived=true",[572,1493,1494,1495,524],{},"Only archived items. Without it, archived items are left out. An archived item that was cancelled or abandoned also needs ",[529,1496,1497],{},"include_abandoned=true",[557,1499,1500,1504],{},[572,1501,1502],{},[529,1503,1497],{},[572,1505,1506],{},"Include cancelled and abandoned items. Without it they are left out, archived or not.",[659,1508,1510],{"id":1509},"get-apiwork-itemsid",[529,1511,618],{},[510,1513,1514,1515,1263,1519,1521],{},"Answers one item as ",[514,1516,1518],{"href":1517},"\u002Freference\u002Fhttp-api\u002Fwork-item-object#the-detail-object","the detail object",[529,1520,1272],{}," for an id that names no item.",[654,1523,1525],{"id":1524},"changing-a-work-item","Changing a work item",[659,1527,1529],{"id":1528},"patch-apiwork-itemsid",[529,1530,631],{},[510,1532,1533,1534,1536],{},"Changes the fields the body names and leaves the rest. A body naming none is refused with ",[529,1535,1051],{},". The write is one transaction, so a body that changes several fields never lands half.",[551,1538,1539,1549],{},[554,1540,1541],{},[557,1542,1543,1545,1547],{},[560,1544,695],{},[560,1546,698],{},[560,1548,704],{},[567,1550,1551,1562,1576,1587,1598,1609,1625,1641,1659],{},[557,1552,1553,1557,1559],{},[572,1554,1555],{},[529,1556,713],{},[572,1558,716],{},[572,1560,1561],{},"The new title. It cannot be empty and is one line.",[557,1563,1564,1568,1570],{},[572,1565,1566],{},[529,1567,729],{},[572,1569,716],{},[572,1571,1572,1573,1575],{},"The new brief. ",[529,1574,736],{}," clears it.",[557,1577,1578,1582,1584],{},[572,1579,1580],{},[529,1581,760],{},[572,1583,716],{},[572,1585,1586],{},"Switches a not-yet-started item onto that chain.",[557,1588,1589,1593,1595],{},[572,1590,1591],{},[529,1592,1466],{},[572,1594,1000],{},[572,1596,1597],{},"Replaces the item's whole model and effort override. See below.",[557,1599,1600,1604,1606],{},[572,1601,1602],{},[529,1603,997],{},[572,1605,1000],{},[572,1607,1608],{},"Merges per node. See below.",[557,1610,1611,1615,1619],{},[572,1612,1613],{},[529,1614,976],{},[572,1616,979,1617],{},[529,1618,801],{},[572,1620,1621,1622,1624],{},"The item's own dollar cap. ",[529,1623,801],{}," sets no cap, and leaving the field out leaves the cap alone.",[557,1626,1627,1631,1633],{},[572,1628,1629],{},[529,1630,1021],{},[572,1632,1000],{},[572,1634,1635,1636,678,1638,1640],{},"Replaces the item's ",[514,1637,1034],{"href":1033},[529,1639,1005],{}," clears it. A change applies from the next node the item enters and the next time it observes a wait.",[557,1642,1643,1647,1649],{},[572,1644,1645],{},[529,1646,853],{},[572,1648,1000],{},[572,1650,1651,1654,1655,1658],{},[529,1652,1653],{},"{\"spec\": PATH}"," snapshots that kind again, ",[529,1656,1657],{},"{\"spec\": null}"," drops it and puts back the gate it trimmed. A kind not named keeps its copy.",[557,1660,1661,1665,1667],{},[572,1662,1663],{},[529,1664,889],{},[572,1666,716],{},[572,1668,1669],{},"The caller's working directory, as at create.",[510,1671,1672,1674,1675,1677,1678,1680],{},[529,1673,1466],{}," replaces the override as a whole. A field you leave out, or send as ",[529,1676,801],{},", is dropped, and ",[529,1679,1005],{}," clears the override.",[510,1682,1683,1685,1686,1689,1690,1693,1694,1697,1698,1700],{},[529,1684,997],{}," merges per node. ",[529,1687,1688],{},"{\"plan\": {\"effort\": \"high\"}}"," sets that field and keeps the node's others, ",[529,1691,1692],{},"{\"plan\": {\"effort\": null}}"," drops one field, and ",[529,1695,1696],{},"{\"plan\": {}}"," drops the node's overrides. ",[529,1699,1005],{}," resets every node.",[510,1702,1059,1703,1706,1707,1709,1710,678,1712,878,1714,1716,1717,1719,1720,1722],{},[529,1704,1705],{},"{\"id\": \"...\", ...}"," with each field you sent. A ",[529,1708,760],{}," you sent is echoed as ",[529,1711,774],{},[529,1713,1466],{},[529,1715,997],{}," are echoed as stored: ",[529,1718,1005],{}," once an override is cleared, and for ",[529,1721,997],{}," only the nodes you named.",[551,1724,1725,1733],{},[554,1726,1727],{},[557,1728,1729,1731],{},[560,1730,1165],{},[560,1732,1081],{},[567,1734,1735,1757,1769,1778,1791,1805,1814,1830],{},[557,1736,1737,1741],{},[572,1738,1739],{},[529,1740,1184],{},[572,1742,1743,1744,1746,1747,1749,1750,1752,1753,878,1755,779],{},"A worker session sent ",[529,1745,853],{},", an override, a ",[529,1748,1021],{}," or a ",[529,1751,976],{}," for its own item. An escalation turn is refused ",[529,1754,1021],{},[529,1756,976],{},[557,1758,1759,1763],{},[572,1760,1761],{},[529,1762,1272],{},[572,1764,1765,1766,1768],{},"There is no such item, or ",[529,1767,760],{}," names a chain that does not exist.",[557,1770,1771,1775],{},[572,1772,1773],{},[529,1774,1374],{},[572,1776,1777],{},"The item has ended.",[557,1779,1780,1784],{},[572,1781,1782],{},[529,1783,1374],{},[572,1785,1786,816,1788,1790],{},[529,1787,760],{},[529,1789,853],{}," was sent for an item that has started: its chain and documents are fixed for its life. Another write changed them meanwhile.",[557,1792,1793,1797],{},[572,1794,1795],{},[529,1796,1374],{},[572,1798,1799,1801,1802,1804],{},[529,1800,997],{}," names a node that has started, or is ",[529,1803,1005],{}," for an item that has.",[557,1806,1807,1811],{},[572,1808,1809],{},[529,1810,1051],{},[572,1812,1813],{},"The body names no field to change.",[557,1815,1816,1820],{},[572,1817,1818],{},[529,1819,1051],{},[572,1821,1822,1823,1825,1826,1829],{},"A field is refused, and ",[529,1824,1055],{}," says which: an unknown node id or field, a model or effort the harness refuses, a limit above the policy's ",[529,1827,1828],{},"maxima",", or a path that is not a file in the repo.",[557,1831,1832,1836],{},[572,1833,1834],{},[529,1835,1051],{},[572,1837,1838,1841,1842,524],{},[529,1839,1840],{},"auto_escalate: true"," on a gate that declares no ",[529,1843,1844],{},"auto_review",[510,1846,1847,1848,816,1851,1854,1855,1858,1859,787,1861,816,1863,1866],{},"A started node accepts one exception. On an item stopped at that node because its stored ",[529,1849,1850],{},"model",[529,1852,1853],{},"escalate_model"," is not a model id, clearing that node (",[529,1856,1857],{},"{\"\u003Cnode>\": {}}",") and changing ",[529,1860,1850],{},[529,1862,1853],{},[529,1864,1865],{},"effort"," alone are accepted, so the stop can be repaired.",[659,1868,1870],{"id":1869},"post-apiwork-itemsbulk",[529,1871,644],{},[510,1873,1874,1875,1878],{},"Applies one action to several items, each through the single-item route, in ",[529,1876,1877],{},"ids"," order, each in its own write.",[1289,1880,1882],{"className":1291,"code":1881,"language":1293,"meta":1294,"style":1294},"{\"action\": \"pause\", \"ids\": [\"...\", \"...\"], \"reason\": \"...\"}\n",[529,1883,1884],{"__ignoreMap":1294},[1298,1885,1886,1888,1891,1893,1896,1898,1901,1904,1906,1908,1910,1913,1916,1918,1920],{"class":1300,"line":1301},[1298,1887,1305],{"class":1304},[1298,1889,1890],{"class":1308},"\"action\"",[1298,1892,1312],{"class":1304},[1298,1894,1895],{"class":1315},"\"pause\"",[1298,1897,787],{"class":1304},[1298,1899,1900],{"class":1308},"\"ids\"",[1298,1902,1903],{"class":1304},": [",[1298,1905,1316],{"class":1315},[1298,1907,787],{"class":1304},[1298,1909,1316],{"class":1315},[1298,1911,1912],{"class":1304},"], ",[1298,1914,1915],{"class":1308},"\"reason\"",[1298,1917,1312],{"class":1304},[1298,1919,1316],{"class":1315},[1298,1921,1338],{"class":1304},[551,1923,1924,1934],{},[554,1925,1926],{},[557,1927,1928,1930,1932],{},[560,1929,695],{},[560,1931,698],{},[560,1933,704],{},[567,1935,1936,1959,1970],{},[557,1937,1938,1943,1945],{},[572,1939,1940],{},[529,1941,1942],{},"action",[572,1944,716],{},[572,1946,1947,787,1950,787,1953,816,1956,524],{},[529,1948,1949],{},"pause",[529,1951,1952],{},"cancel",[529,1954,1955],{},"archive",[529,1957,1958],{},"restore",[557,1960,1961,1965,1967],{},[572,1962,1963],{},[529,1964,1877],{},[572,1966,856],{},[572,1968,1969],{},"From 1 to 200 item ids.",[557,1971,1972,1977,1979],{},[572,1973,1974],{},[529,1975,1976],{},"reason",[572,1978,716],{},[572,1980,1981,1982,1984,1985,1987,1988,1990],{},"Required when ",[529,1983,1942],{}," is ",[529,1986,1952],{},", and checked before anything is touched (",[529,1989,1051],{}," otherwise). The other actions ignore it.",[510,1992,1993],{},"The answer is one result per id, in order:",[1289,1995,1997],{"className":1291,"code":1996,"language":1293,"meta":1294,"style":1294},"{\"results\": [{\"id\": \"...\", \"ok\": true, \"status\": \"paused\"}, {\"id\": \"...\", \"ok\": false, \"error\": \"...\"}]}\n",[529,1998,1999],{"__ignoreMap":1294},[1298,2000,2001,2003,2006,2009,2011,2013,2015,2017,2020,2022,2025,2027,2029,2031,2033,2036,2038,2040,2042,2044,2046,2048,2050,2052,2055,2057,2059],{"class":1300,"line":1301},[1298,2002,1305],{"class":1304},[1298,2004,2005],{"class":1308},"\"results\"",[1298,2007,2008],{"class":1304},": [{",[1298,2010,1309],{"class":1308},[1298,2012,1312],{"class":1304},[1298,2014,1316],{"class":1315},[1298,2016,787],{"class":1304},[1298,2018,2019],{"class":1308},"\"ok\"",[1298,2021,1312],{"class":1304},[1298,2023,930],{"class":2024},"ssYy9",[1298,2026,787],{"class":1304},[1298,2028,1321],{"class":1308},[1298,2030,1312],{"class":1304},[1298,2032,1326],{"class":1315},[1298,2034,2035],{"class":1304},"}, {",[1298,2037,1309],{"class":1308},[1298,2039,1312],{"class":1304},[1298,2041,1316],{"class":1315},[1298,2043,787],{"class":1304},[1298,2045,2019],{"class":1308},[1298,2047,1312],{"class":1304},[1298,2049,913],{"class":2024},[1298,2051,787],{"class":1304},[1298,2053,2054],{"class":1308},"\"error\"",[1298,2056,1312],{"class":1304},[1298,2058,1316],{"class":1315},[1298,2060,2061],{"class":1304},"}]}\n",[510,2063,2064,2065,2068,2069,2072,2073,678,2075,2077],{},"An id whose action raises, an item in the wrong status for example, becomes ",[529,2066,2067],{},"{id, ok: false, error, status}",", and the rest of the batch still runs. An id that names no item answers ",[529,2070,2071],{},"{id, ok: false, error: \"not found\"}"," with no ",[529,2074,1156],{},[529,2076,1156],{}," is the item's stored status after the action ran.",[551,2079,2080,2088],{},[554,2081,2082],{},[557,2083,2084,2086],{},[560,2085,1165],{},[560,2087,1081],{},[567,2089,2090],{},[557,2091,2092,2096],{},[572,2093,2094],{},[529,2095,1051],{},[572,2097,2098,2100,2101,2103,2104,2107,2108,2111,2112,1984,2114,878,2116,2118],{},[529,2099,1942],{}," is none of the four, ",[529,2102,1877],{}," holds fewer than ",[529,2105,2106],{},"1"," or more than ",[529,2109,2110],{},"200"," ids, or ",[529,2113,1942],{},[529,2115,1952],{},[529,2117,1976],{}," is blank. Nothing is touched.",[654,2120,2122],{"id":2121},"related","Related",[2124,2125,2126,2132,2137,2146,2152],"ul",{},[2127,2128,2129,2131],"li",{},[514,2130,438],{"href":439},": the routes that decide, pause, resume, skip, escalate, end and retry an item.",[2127,2133,2134,2136],{},[514,2135,442],{"href":443},": the stored row, the list row and the detail object these routes answer with.",[2127,2138,2139,2141,2142,2145],{},[514,2140,266],{"href":267},": the ",[529,2143,2144],{},"kraft item"," command behind each action here, with its flags and output.",[2127,2147,2148,2151],{},[514,2149,462],{"href":2150},"\u002Freference\u002Fmcp-tools#who-may-call-what",": which of these an agent may call on its own item.",[2127,2153,2154,2158],{},[514,2155,2157],{"href":2156},"\u002Fproject\u002Fsecurity#agents-and-gates","Agents and gates",": why a worker session is refused some of these, and what that check does not stop.",[2160,2161,2162],"style",{},"html pre.shiki code .s7iLA, html code.shiki .s7iLA{--shiki-light:#0E1116;--shiki-default:#0E1116;--shiki-dark:#F0F3F6}html pre.shiki code .sb7M8, html code.shiki .sb7M8{--shiki-light:#024C1A;--shiki-default:#024C1A;--shiki-dark:#72F088}html pre.shiki code .semJd, html code.shiki .semJd{--shiki-light:#032563;--shiki-default:#032563;--shiki-dark:#ADDCFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}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 .ssYy9, html code.shiki .ssYy9{--shiki-light:#023B95;--shiki-default:#023B95;--shiki-dark:#91CBFF}",{"title":1294,"searchDepth":2164,"depth":2164,"links":2165},2,[2166,2173,2179,2185],{"id":656,"depth":2164,"text":657,"children":2167},[2168,2171],{"id":661,"depth":2169,"text":2170},3,"POST \u002Fapi\u002F​work-​items",{"id":1275,"depth":2169,"text":2172},"POST \u002Fapi\u002F​work-​items\u002F​{id}\u002F​duplicate",{"id":1408,"depth":2164,"text":1409,"children":2174},[2175,2177],{"id":1412,"depth":2169,"text":2176},"GET \u002Fapi\u002F​work-​items",{"id":1509,"depth":2169,"text":2178},"GET \u002Fapi\u002F​work-​items\u002F​{id}",{"id":1524,"depth":2164,"text":1525,"children":2180},[2181,2183],{"id":1528,"depth":2169,"text":2182},"PATCH \u002Fapi\u002F​work-​items\u002F​{id}",{"id":1869,"depth":2169,"text":2184},"POST \u002Fapi\u002F​work-​items\u002F​bulk",{"id":2121,"depth":2164,"text":2122},"The board's routes for filing a work item, duplicating it, reading the board and one item, changing an item, and acting on several at once.","md",null,{},true,{"title":434,"description":2186},"rGnWIxi_FLeT2biUJHQ_iWKhmsNJyk1aQ4VbuLPlcQ4",[2194,2196],{"title":10,"path":429,"stem":430,"description":2195,"children":-1},"Which of Kraft's HTTP routes are stable, which the pages here document, where the full schema is, and who may call them.",{"title":438,"path":439,"stem":440,"description":2197,"children":-1},"The board's routes for deciding a gate, pausing, resuming, skipping, escalating, ending, archiving and retrying a work item, and the routes a worker calls.",1791801259739]