[{"data":1,"prerenderedAt":2323},["ShallowReactive",2],{"navigation":3,"/sdks/workflows-nodejs":879,"/sdks/workflows-nodejs-surround":2318},[4,22,45,115,156,187,214,235,264,295,318,361,389,418,436,470,491,534,548,571,632,670,693,757,850],{"title":5,"path":6,"stem":7,"children":8,"icon":11},"Introduction","/introduction","01.introduction/1.index",[9,12,17],{"title":10,"path":6,"stem":7,"icon":11},"What is Orkestia?","i-lucide-sparkles",{"title":13,"path":14,"stem":15,"icon":16},"Core Philosophy","/introduction/core-philosophy","01.introduction/2.core-philosophy","i-lucide-shield-check",{"title":18,"path":19,"stem":20,"icon":21},"Key Benefits","/introduction/key-benefits","01.introduction/3.key-benefits","i-lucide-trophy",{"title":23,"path":24,"stem":25,"children":26,"icon":29},"Getting Started","/getting-started","02.getting-started/1.index",[27,30,35,40],{"title":28,"path":24,"stem":25,"icon":29},"Quick Start","i-lucide-rocket",{"title":31,"path":32,"stem":33,"icon":34},"Architecture Overview","/getting-started/architecture-overview","02.getting-started/2.architecture-overview","i-lucide-layout-dashboard",{"title":36,"path":37,"stem":38,"icon":39},"Concepts at a Glance","/getting-started/concepts","02.getting-started/3.concepts","i-lucide-list",{"title":41,"path":42,"stem":43,"icon":44},"Connect an AI Assistant","/getting-started/connect-an-ai-assistant","02.getting-started/4.connect-an-ai-assistant","i-lucide-bot",{"title":46,"path":47,"stem":48,"children":49,"icon":51},"Core Concepts","/concepts","03.concepts/01.index",[50,52,57,62,67,71,76,81,86,91,96,100,105,110],{"title":46,"path":47,"stem":48,"icon":51},"i-lucide-book-open",{"title":53,"path":54,"stem":55,"icon":56},"Workflows","/concepts/workflows","03.concepts/02.workflows","i-lucide-workflow",{"title":58,"path":59,"stem":60,"icon":61},"DGI — Dialog Generative Interface","/concepts/dgi","03.concepts/03.dgi","i-lucide-brain",{"title":63,"path":64,"stem":65,"icon":66},"Staff & AI Workforce Governance","/concepts/staff-governance","03.concepts/04.staff-governance","i-lucide-users-round",{"title":68,"path":69,"stem":70,"icon":44},"Agents — the execution substrate","/concepts/agents-platform","03.concepts/05.agents-platform",{"title":72,"path":73,"stem":74,"icon":75},"Runners & Execution Environments","/concepts/runners","03.concepts/06.runners","i-lucide-server-cog",{"title":77,"path":78,"stem":79,"icon":80},"Lumen Observability","/concepts/lumen","03.concepts/07.lumen","i-lucide-activity",{"title":82,"path":83,"stem":84,"icon":85},"Identity & Multi-Tenancy","/concepts/identity-multi-tenancy","03.concepts/08.identity-multi-tenancy","i-lucide-users",{"title":87,"path":88,"stem":89,"icon":90},"Billing, Pricing & Seats","/concepts/billing-and-seats","03.concepts/09.billing-and-seats","i-lucide-credit-card",{"title":92,"path":93,"stem":94,"icon":95},"App Data","/concepts/appdata","03.concepts/10.appdata","i-lucide-database",{"title":97,"path":98,"stem":99,"icon":61},"Engram","/concepts/engram","03.concepts/11.engram",{"title":101,"path":102,"stem":103,"icon":104},"DevKit","/concepts/devkit","03.concepts/12.devkit","i-lucide-terminal",{"title":106,"path":107,"stem":108,"icon":109},"App Host","/concepts/app-host","03.concepts/13.app-host","i-lucide-globe",{"title":111,"path":112,"stem":113,"icon":114},"Agent Exchange","/concepts/agent-exchange","03.concepts/14.agent-exchange","i-lucide-landmark",{"title":116,"path":117,"stem":118,"children":119,"icon":121},"Guides","/guides","04.guides/1.index",[120,122,127,132,137,142,147,151],{"title":116,"path":117,"stem":118,"icon":121},"i-lucide-compass",{"title":123,"path":124,"stem":125,"icon":126},"Building with DGI","/guides/building-with-dgi","04.guides/2.building-with-dgi","i-lucide-brain-circuit",{"title":128,"path":129,"stem":130,"icon":131},"Creating & Exposing Virtual Workflows","/guides/virtual-workflows","04.guides/4.virtual-workflows","i-lucide-blocks",{"title":133,"path":134,"stem":135,"icon":136},"Runner Management & Provisioning","/guides/runner-management","04.guides/5.runner-management","i-lucide-server",{"title":138,"path":139,"stem":140,"icon":141},"Security & Compliance","/guides/security-and-compliance","04.guides/7.security-and-compliance","i-lucide-shield",{"title":143,"path":144,"stem":145,"icon":146},"Tickets & Software Delivery","/guides/tickets-and-software-delivery","04.guides/8.tickets-and-software-delivery","i-lucide-ticket",{"title":148,"path":149,"stem":150},"Orkestia for AI-driven cloud infrastructure automation","/guides/cloud-automation-alternatives","04.guides/9.cloud-automation-alternatives",{"title":152,"path":153,"stem":154,"icon":155},"Typed decisions with TypeSafe","/guides/typed-decisions-with-typesafe","04.guides/9.typed-decisions-with-typesafe","i-lucide-git-branch",{"title":157,"path":158,"stem":159,"children":160,"icon":162},"Reference","/reference","05.reference/1.index",[161,163,168,173,177,182],{"title":157,"path":158,"stem":159,"icon":162},"i-lucide-library",{"title":164,"path":165,"stem":166,"icon":167},"Workflow Types & Registry","/reference/workflow-types-registry","05.reference/2.workflow-types-registry","i-lucide-list-tree",{"title":169,"path":170,"stem":171,"icon":172},"MCP Integration","/reference/mcp-integration","05.reference/3.mcp-integration","i-lucide-plug-zap",{"title":174,"path":175,"stem":176,"icon":104},"API & Tooling","/reference/api-tooling","05.reference/4.api-tooling",{"title":178,"path":179,"stem":180,"icon":181},"Integrations Catalog","/reference/integrations-catalog","05.reference/6.integrations-catalog","i-lucide-plug",{"title":183,"path":184,"stem":185,"icon":186},"Platform Services","/reference/platform-services","05.reference/7.platform-services","i-lucide-boxes",{"title":188,"path":189,"stem":190,"children":191,"icon":193},"Advanced Topics","/advanced","06.advanced/1.index",[192,194,199,204,209],{"title":188,"path":189,"stem":190,"icon":193},"i-lucide-flask-conical",{"title":195,"path":196,"stem":197,"icon":198},"Hybrid AI + Deterministic Execution","/advanced/hybrid-execution-model","06.advanced/2.hybrid-execution-model","i-lucide-git-merge",{"title":200,"path":201,"stem":202,"icon":203},"Drift Detection & Self-Healing","/advanced/drift-detection-self-healing","06.advanced/3.drift-detection-self-healing","i-lucide-heart-pulse",{"title":205,"path":206,"stem":207,"icon":208},"Governance & Approvals","/advanced/governance-and-approvals","06.advanced/4.governance-and-approvals","i-lucide-scale",{"title":210,"path":211,"stem":212,"icon":213},"Cost & Performance Optimization","/advanced/cost-and-performance","06.advanced/5.cost-and-performance","i-lucide-zap",{"title":215,"path":216,"stem":217,"children":218,"icon":220},"Operations","/operations","07.operations/1.index",[219,221,225,230],{"title":215,"path":216,"stem":217,"icon":220},"i-lucide-settings-2",{"title":222,"path":223,"stem":224,"icon":186},"Deployment Models","/operations/deployment-models","07.operations/2.deployment-models",{"title":226,"path":227,"stem":228,"icon":229},"Monitoring & Debugging","/operations/monitoring-and-debugging","07.operations/3.monitoring-and-debugging","i-lucide-bug",{"title":231,"path":232,"stem":233,"icon":234},"Best Practices","/operations/best-practices","07.operations/4.best-practices","i-lucide-check-check",{"title":236,"path":237,"stem":238,"children":239,"icon":241},"AWS Connections","/aws-connections","08.aws-connections/1.index",[240,242,245,250,255,260],{"title":236,"path":237,"stem":238,"icon":241},"i-simple-icons-amazonaws",{"title":23,"path":243,"stem":244,"icon":29},"/aws-connections/getting-started","08.aws-connections/2.getting-started",{"title":246,"path":247,"stem":248,"icon":249},"Setup Methods","/aws-connections/setup-methods","08.aws-connections/3.setup-methods","i-lucide-wrench",{"title":251,"path":252,"stem":253,"icon":254},"Managing Connections","/aws-connections/managing-connections","08.aws-connections/4.managing-connections","i-lucide-settings",{"title":256,"path":257,"stem":258,"icon":259},"Security Best Practices","/aws-connections/security-best-practices","08.aws-connections/5.security-best-practices","i-lucide-lock",{"title":261,"path":262,"stem":263,"icon":229},"Troubleshooting","/aws-connections/troubleshooting","08.aws-connections/6.troubleshooting",{"title":265,"path":266,"stem":267,"children":268,"icon":270},"Cloud Connections","/cloud-connections","09.cloud-connections/1.index",[269,271,276,281,286,291],{"title":265,"path":266,"stem":267,"icon":270},"i-lucide-cable",{"title":272,"path":273,"stem":274,"icon":275},"Google Cloud (GCP)","/cloud-connections/gcp","09.cloud-connections/2.gcp","i-simple-icons-googlecloud",{"title":277,"path":278,"stem":279,"icon":280},"Microsoft Azure","/cloud-connections/azure","09.cloud-connections/3.azure","i-simple-icons-microsoftazure",{"title":282,"path":283,"stem":284,"icon":285},"Magalu Cloud","/cloud-connections/magalu","09.cloud-connections/4.magalu","i-lucide-cloud",{"title":287,"path":288,"stem":289,"icon":290},"Kubernetes","/cloud-connections/kubernetes","09.cloud-connections/5.kubernetes","i-simple-icons-kubernetes",{"title":292,"path":293,"stem":294,"icon":208},"TypeSafe","/cloud-connections/typesafe","09.cloud-connections/6.typesafe",{"title":296,"path":297,"stem":298,"children":299,"icon":136},"DNS Providers","/dns-providers","10.dns-providers/1.index",[300,302,305,308,311,315],{"title":301,"path":297,"stem":298,"icon":136},"DNS Provider Connections",{"title":23,"path":303,"stem":304,"icon":29},"/dns-providers/getting-started","10.dns-providers/2.getting-started",{"title":246,"path":306,"stem":307,"icon":249},"/dns-providers/setup-methods","10.dns-providers/3.setup-methods",{"title":251,"path":309,"stem":310,"icon":254},"/dns-providers/managing-connections","10.dns-providers/4.managing-connections",{"title":312,"path":313,"stem":314,"icon":39},"Zones and Records","/dns-providers/zones-and-records","10.dns-providers/5.zones-and-records",{"title":261,"path":316,"stem":317,"icon":229},"/dns-providers/troubleshooting","10.dns-providers/6.troubleshooting",{"title":319,"path":320,"stem":321,"children":322,"icon":29},"Cloud Deploy","/cloud-deploy","11.cloud-deploy/01.index",[323,324,327,332,336,341,345,349,354,358],{"title":319,"path":320,"stem":321,"icon":29},{"title":23,"path":325,"stem":326,"icon":29},"/cloud-deploy/getting-started","11.cloud-deploy/02.getting-started",{"title":328,"path":329,"stem":330,"icon":331},"Creating a Site","/cloud-deploy/creating-a-site","11.cloud-deploy/03.creating-a-site","i-lucide-plus-circle",{"title":333,"path":334,"stem":335,"icon":34},"Site Overview and Deployments","/cloud-deploy/site-overview","11.cloud-deploy/04.site-overview",{"title":337,"path":338,"stem":339,"icon":340},"Deployment Progress and Success","/cloud-deploy/deployment-progress","11.cloud-deploy/05.deployment-progress","i-lucide-loader",{"title":342,"path":343,"stem":344,"icon":254},"Settings","/cloud-deploy/settings","11.cloud-deploy/06.settings",{"title":346,"path":347,"stem":348,"icon":109},"Custom Domains","/cloud-deploy/custom-domains","11.cloud-deploy/07.custom-domains",{"title":350,"path":351,"stem":352,"icon":353},"Resources, Releases, and Danger Zone","/cloud-deploy/resources-releases","11.cloud-deploy/08.resources-releases","i-lucide-package",{"title":355,"path":356,"stem":357,"icon":141},"Admin Dashboard","/cloud-deploy/admin-dashboard","11.cloud-deploy/09.admin-dashboard",{"title":261,"path":359,"stem":360,"icon":229},"/cloud-deploy/troubleshooting","11.cloud-deploy/10.troubleshooting",{"title":362,"path":363,"stem":364,"children":365,"icon":368},"User Onboarding","/user-onboarding","12.user-onboarding/1.index",[366,369,372,377,382,386],{"title":367,"path":363,"stem":364,"icon":368},"User Creation and Onboarding","i-lucide-user-plus",{"title":23,"path":370,"stem":371,"icon":29},"/user-onboarding/getting-started","12.user-onboarding/2.getting-started",{"title":373,"path":374,"stem":375,"icon":376},"Creating Your Organization","/user-onboarding/onboarding","12.user-onboarding/3.onboarding","i-lucide-building-2",{"title":378,"path":379,"stem":380,"icon":381},"Invitations","/user-onboarding/invitations","12.user-onboarding/4.invitations","i-lucide-mail",{"title":383,"path":384,"stem":385,"icon":254},"Managing Your Account","/user-onboarding/managing-account","12.user-onboarding/5.managing-account",{"title":261,"path":387,"stem":388,"icon":229},"/user-onboarding/troubleshooting","12.user-onboarding/6.troubleshooting",{"title":342,"path":390,"stem":391,"children":392,"icon":394},"/settings","13.settings/1.index",[393,395,400,404,409,413],{"title":342,"path":390,"stem":391,"icon":394},"i-lucide-sliders-horizontal",{"title":396,"path":397,"stem":398,"icon":399},"General Settings","/settings/general","13.settings/2.general","i-lucide-user",{"title":401,"path":402,"stem":403,"icon":85},"Members Settings","/settings/members","13.settings/3.members",{"title":405,"path":406,"stem":407,"icon":408},"Notifications Settings","/settings/notifications","13.settings/4.notifications","i-lucide-bell",{"title":410,"path":411,"stem":412,"icon":141},"Security Settings","/settings/security","13.settings/5.security",{"title":414,"path":415,"stem":416,"icon":417},"Signing Keys","/settings/keys","13.settings/6.keys","i-lucide-key-round",{"title":419,"path":420,"stem":421,"children":422,"icon":29},"App Enablement","/app-enablement","14.app-enablement/1.index",[423,424,428,432],{"title":419,"path":420,"stem":421,"icon":29},{"title":425,"path":426,"stem":427,"icon":417},"Sign in with Orkestia","/app-enablement/sign-in-with-orkestia","14.app-enablement/2.sign-in-with-orkestia",{"title":429,"path":430,"stem":431,"icon":95},"End-user data","/app-enablement/end-user-data","14.app-enablement/3.end-user-data",{"title":433,"path":434,"stem":435,"icon":131},"Compositions — use, invoke, share","/app-enablement/compositions","14.app-enablement/4.compositions",{"title":437,"path":438,"stem":439,"children":440,"icon":80},"Lumen","/lumen","15.lumen/1.index",[441,442,447,452,457,461,465],{"title":437,"path":438,"stem":439,"icon":80},{"title":443,"path":444,"stem":445,"icon":446},"Enable Lumen","/lumen/enable","15.lumen/2.enable","i-lucide-power",{"title":448,"path":449,"stem":450,"icon":451},"Send data","/lumen/send-data","15.lumen/3.send-data","i-lucide-upload",{"title":453,"path":454,"stem":455,"icon":456},"Collector","/lumen/collector","15.lumen/4.collector","i-lucide-container",{"title":458,"path":459,"stem":460,"icon":34},"Use Lumen","/lumen/observe","15.lumen/5.observe",{"title":462,"path":463,"stem":464,"icon":44},"Lumen MCP","/lumen/mcp","15.lumen/6.mcp",{"title":466,"path":467,"stem":468,"icon":469},"Query API","/lumen/query-api","15.lumen/7.query-api","i-lucide-search",{"title":471,"path":472,"stem":473,"children":474,"icon":476},"SDKs","/sdks","16.sdks/1.index",[475,477,482,487],{"title":471,"path":472,"stem":473,"icon":476},"i-lucide-code",{"title":478,"path":479,"stem":480,"icon":481},"Workflows SDK — Node / TypeScript","/sdks/workflows-nodejs","16.sdks/2.workflows-nodejs","i-lucide-file-ts",{"title":483,"path":484,"stem":485,"icon":486},"Workflows SDK — Python","/sdks/workflows-python","16.sdks/3.workflows-python","i-simple-icons-python",{"title":488,"path":489,"stem":490,"icon":417},"Auth SDK — Sign in with Orkestia","/sdks/auth","16.sdks/4.auth",{"title":92,"path":492,"stem":493,"children":494,"icon":95},"/appdata","17.appdata/1.index",[495,496,501,506,510,515,520,525,530],{"title":92,"path":492,"stem":493,"icon":95},{"title":497,"path":498,"stem":499,"icon":500},"Declare structures","/appdata/declare","17.appdata/2.declare","i-lucide-table",{"title":502,"path":503,"stem":504,"icon":505},"Records & Data API","/appdata/data-api","17.appdata/3.data-api","i-lucide-rows-3",{"title":507,"path":508,"stem":509,"icon":376},"Ownership & workspaces","/appdata/ownership","17.appdata/4.ownership",{"title":511,"path":512,"stem":513,"icon":514},"Expose App Data to end-users","/appdata/expose","17.appdata/5.expose","i-lucide-app-window",{"title":516,"path":517,"stem":518,"icon":519},"PostgREST HTTP","/appdata/postgrest","17.appdata/6.postgrest","i-lucide-unplug",{"title":521,"path":522,"stem":523,"icon":524},"Ordered append","/appdata/append","17.appdata/7.append","i-lucide-list-ordered",{"title":526,"path":527,"stem":528,"icon":529},"Databases and instances","/appdata/instances","17.appdata/8.instances","i-lucide-hard-drive",{"title":531,"path":532,"stem":533,"icon":104},"Query console and SQL","/appdata/query","17.appdata/9.query",{"title":97,"path":535,"stem":536,"children":537,"icon":61},"/engram","18.engram/1.index",[538,539,543],{"title":97,"path":535,"stem":536,"icon":61},{"title":540,"path":541,"stem":542,"icon":155},"Write & recall","/engram/write-recall","18.engram/2.write-recall",{"title":544,"path":545,"stem":546,"icon":547},"Field & feed","/engram/agent-memory","18.engram/3.agent-memory","i-lucide-radio",{"title":101,"path":549,"stem":550,"children":551,"icon":104},"/devkit","19.devkit/1.index",[552,553,558,562,567],{"title":101,"path":549,"stem":550,"icon":104},{"title":554,"path":555,"stem":556,"icon":557},"Install DevKit","/devkit/install","19.devkit/2.install","i-lucide-download",{"title":559,"path":560,"stem":561,"icon":519},"Hook redirect","/devkit/hooks","19.devkit/3.hooks",{"title":563,"path":564,"stem":565,"icon":566},"Local coding runner","/devkit/local-runner","19.devkit/4.local-runner","i-lucide-cpu",{"title":568,"path":569,"stem":570,"icon":131},"Compositions from DevKit","/devkit/compositions","19.devkit/5.compositions",{"title":572,"path":573,"stem":574,"children":575,"icon":44},"Staff & Agents","/staff-and-agents","20.staff-and-agents/01.index",[576,577,582,586,590,594,598,602,606,611,615,620,625,629],{"title":572,"path":573,"stem":574,"icon":44},{"title":578,"path":579,"stem":580,"icon":581},"Prerequisites","/staff-and-agents/prerequisites","20.staff-and-agents/02.prerequisites","i-lucide-list-checks",{"title":583,"path":584,"stem":585,"icon":368},"Hire an actor","/staff-and-agents/hire-an-actor","20.staff-and-agents/03.hire-an-actor",{"title":587,"path":588,"stem":589,"icon":34},"Console","/staff-and-agents/console","20.staff-and-agents/04.console",{"title":591,"path":592,"stem":593,"icon":11},"Configs, skills, and MCP","/staff-and-agents/configs-skills-mcp","20.staff-and-agents/05.configs-skills-mcp",{"title":595,"path":596,"stem":597,"icon":136},"Agent runner groups","/staff-and-agents/runner-groups","20.staff-and-agents/06.runner-groups",{"title":599,"path":600,"stem":601,"icon":16},"Governance","/staff-and-agents/governance","20.staff-and-agents/07.governance",{"title":603,"path":604,"stem":605,"icon":417},"Identity and tokens","/staff-and-agents/identity","20.staff-and-agents/08.identity",{"title":607,"path":608,"stem":609,"icon":610},"Memory and cost","/staff-and-agents/memory-and-cost","20.staff-and-agents/09.memory-and-cost","i-lucide-wallet",{"title":612,"path":613,"stem":614,"icon":155},"Coding agents","/staff-and-agents/coding-agents","20.staff-and-agents/10.coding-agents",{"title":616,"path":617,"stem":618,"icon":619},"Wire a repository for coding agents","/staff-and-agents/wire-a-repository","20.staff-and-agents/11.wire-a-repository","i-lucide-link",{"title":621,"path":622,"stem":623,"icon":624},"Run a ticket end to end","/staff-and-agents/run-a-ticket","20.staff-and-agents/12.run-a-ticket","i-lucide-play",{"title":626,"path":627,"stem":628,"icon":66},"Build a product team of actors","/staff-and-agents/build-a-product-team","20.staff-and-agents/13.build-a-product-team",{"title":261,"path":630,"stem":631,"icon":249},"/staff-and-agents/troubleshooting","20.staff-and-agents/14.troubleshooting",{"title":106,"path":633,"stem":634,"children":635,"icon":109},"/app-host","21.app-host/1.index",[636,637,641,644,649,653,658,662,666],{"title":106,"path":633,"stem":634,"icon":109},{"title":638,"path":639,"stem":640,"icon":514},"Your app and site","/app-host/your-app","21.app-host/2.your-app",{"title":92,"path":642,"stem":643,"icon":95},"/app-host/app-data","21.app-host/3.app-data",{"title":645,"path":646,"stem":647,"icon":648},"Website and process","/app-host/hosting","21.app-host/4.hosting","i-lucide-cloud-upload",{"title":650,"path":651,"stem":652,"icon":547},"Buzz","/app-host/buzz","21.app-host/5.buzz",{"title":654,"path":655,"stem":656,"icon":657},"Files","/app-host/files","21.app-host/6.files","i-lucide-folder",{"title":659,"path":660,"stem":661,"icon":109},"Your own domain","/app-host/your-domain","21.app-host/7.your-domain",{"title":663,"path":664,"stem":665,"icon":229},"Troubleshooting App Host","/app-host/troubleshooting","21.app-host/8.troubleshooting",{"title":667,"path":668,"stem":669,"icon":417},"Signing keys","/app-host/signing-keys","21.app-host/9.signing-keys",{"title":111,"path":671,"stem":672,"children":673,"icon":114},"/agent-exchange","22.agent-exchange/01.index",[674,675,678,682,686,690],{"title":111,"path":671,"stem":672,"icon":114},{"title":583,"path":676,"stem":677,"icon":368},"/agent-exchange/hire","22.agent-exchange/02.hire",{"title":679,"path":680,"stem":681,"icon":208},"List an actor","/agent-exchange/list","22.agent-exchange/03.list",{"title":683,"path":684,"stem":685,"icon":104},"Invoke & leases","/agent-exchange/invoke","22.agent-exchange/04.invoke",{"title":687,"path":688,"stem":689,"icon":141},"Settlement & trust","/agent-exchange/settlement","22.agent-exchange/05.settlement",{"title":53,"path":691,"stem":692,"icon":56},"/agent-exchange/workflows","22.agent-exchange/06.workflows",{"title":694,"path":695,"stem":696,"children":697,"icon":75},"Runners","/runners","23.runners/1.index",[698,700,704,709,713,717,721,726,730,734,738,741,745,749,753],{"title":699,"path":695,"stem":696,"icon":75},"Runner groups",{"title":701,"path":702,"stem":703,"icon":275},"Cloud Run","/runners/cloud-run","23.runners/10.cloud-run",{"title":705,"path":706,"stem":707,"icon":708},"DigitalOcean App Job","/runners/do-app-job","23.runners/11.do-app-job","i-simple-icons-digitalocean",{"title":710,"path":711,"stem":712,"icon":708},"DigitalOcean Droplet","/runners/do-droplet","23.runners/12.do-droplet",{"title":714,"path":715,"stem":716,"icon":285},"Magalu Cloud VM","/runners/magalu-vm","23.runners/13.magalu-vm",{"title":101,"path":718,"stem":719,"icon":720},"/runners/devkit","23.runners/14.devkit","i-lucide-laptop",{"title":722,"path":723,"stem":724,"icon":725},"Purposes & integrations","/runners/purposes","23.runners/16.purposes","i-lucide-layers",{"title":727,"path":728,"stem":729,"icon":241},"Fargate","/runners/fargate","23.runners/2.fargate",{"title":731,"path":732,"stem":733,"icon":241},"EC2 Auto Scaling","/runners/ec2-auto-scaling","23.runners/3.ec2-auto-scaling",{"title":735,"path":736,"stem":737,"icon":241},"EC2 VM","/runners/ec2-vm","23.runners/4.ec2-vm",{"title":287,"path":739,"stem":740,"icon":290},"/runners/kubernetes","23.runners/5.kubernetes",{"title":742,"path":743,"stem":744,"icon":280},"Azure Container Apps","/runners/azure-container-apps","23.runners/6.azure-container-apps",{"title":746,"path":747,"stem":748,"icon":280},"Azure VMSS","/runners/azure-vmss","23.runners/7.azure-vmss",{"title":750,"path":751,"stem":752,"icon":280},"Azure VM","/runners/azure-vm","23.runners/8.azure-vm",{"title":754,"path":755,"stem":756,"icon":275},"GCE","/runners/gce","23.runners/9.gce",{"title":758,"path":759,"stem":760,"children":761,"icon":763},"Chat","/chat","24.chat/01.index",[762,764,768,773,777,782,787,791,796,800,805,810,814,819,824,828,832,836,840,845],{"title":758,"path":759,"stem":760,"icon":763},"i-lucide-messages-square",{"title":765,"path":766,"stem":767,"icon":446},"Enable and publish","/chat/enable-and-publish","24.chat/02.enable-and-publish",{"title":769,"path":770,"stem":771,"icon":772},"Theme and customization","/chat/theme-and-customization","24.chat/03.theme-and-customization","i-lucide-palette",{"title":774,"path":775,"stem":776,"icon":85},"Members and moderation","/chat/members-and-moderation","24.chat/04.members-and-moderation",{"title":778,"path":779,"stem":780,"icon":781},"Channels","/chat/channels","24.chat/05.channels","i-lucide-hash",{"title":783,"path":784,"stem":785,"icon":786},"Using the chat","/chat/using-the-chat","24.chat/06.using-the-chat","i-lucide-message-circle",{"title":788,"path":789,"stem":790,"icon":44},"Actors in chat","/chat/actors-in-chat","24.chat/07.actors-in-chat",{"title":792,"path":793,"stem":794,"icon":795},"Internal support actor","/chat/internal-support-actor","24.chat/08.internal-support-actor","i-lucide-life-buoy",{"title":797,"path":798,"stem":799,"icon":104},"API and console","/chat/api-and-console","24.chat/09.api-and-console",{"title":801,"path":802,"stem":803,"icon":804},"Limits","/chat/limits","24.chat/10.limits","i-lucide-triangle-alert",{"title":806,"path":807,"stem":808,"icon":809},"Structured chat with DGI","/chat/structured-chat","24.chat/11.structured-chat","i-lucide-layout-list",{"title":811,"path":812,"stem":813,"icon":109},"Option A: hosted chat with DGI","/chat/option-a-hosted-chat","24.chat/12.option-a-hosted-chat",{"title":815,"path":816,"stem":817,"icon":818},"Option B: embed the chat component","/chat/option-b-embed-component","24.chat/13.option-b-embed-component","i-lucide-component",{"title":820,"path":821,"stem":822,"icon":823},"Option C: custom client (wire contract)","/chat/option-c-custom-client","24.chat/14.option-c-custom-client","i-lucide-braces",{"title":825,"path":826,"stem":827,"icon":394},"Responder configuration reference","/chat/responder-reference","24.chat/15.responder-reference",{"title":829,"path":830,"stem":831,"icon":547},"Cards, live updates and proactive posts","/chat/cards-live-and-proactive","24.chat/16.cards-live-and-proactive",{"title":833,"path":834,"stem":835,"icon":16},"Structured chat security model","/chat/structured-chat-security","24.chat/17.structured-chat-security",{"title":837,"path":838,"stem":839,"icon":181},"Option D: any app or API (dgi.chat)","/chat/option-d-chat-api","24.chat/18.option-d-chat-api",{"title":841,"path":842,"stem":843,"icon":844},"Card catalog","/chat/card-catalog","24.chat/19.card-catalog","i-lucide-layout-grid",{"title":846,"path":847,"stem":848,"icon":849},"Living Surfaces","/chat/living-surfaces","24.chat/20.living-surfaces","i-lucide-sprout",{"title":851,"path":852,"stem":853,"children":854,"icon":61},"DGI","/dgi","25.dgi/1.index",[855,857,862,866,870,874],{"title":856,"path":852,"stem":853,"icon":61},"What is DGI",{"title":858,"path":859,"stem":860,"icon":861},"How DGI works","/dgi/how-it-works","25.dgi/2.how-it-works","i-lucide-cog",{"title":863,"path":864,"stem":865,"icon":844},"Interfaces","/dgi/interfaces","25.dgi/3.interfaces",{"title":867,"path":868,"stem":869,"icon":29},"Quickstart","/dgi/quickstart","25.dgi/4.quickstart",{"title":871,"path":872,"stem":873,"icon":16},"Trust and safety","/dgi/trust-and-safety","25.dgi/5.trust-and-safety",{"title":875,"path":876,"stem":877,"icon":878},"FAQ","/dgi/faq","25.dgi/6.faq","i-lucide-circle-help",{"id":880,"title":478,"body":881,"description":2311,"extension":2312,"links":2313,"meta":2314,"navigation":2315,"path":479,"seo":2316,"stem":480,"__hash__":2317},"docs/16.sdks/2.workflows-nodejs.md",{"type":882,"value":883,"toc":2302},"minimark",[884,907,914,919,944,948,1309,1320,1337,1341,1351,1543,1560,1666,1672,1771,1775,1907,1925,1938,1942,1964,2053,2077,2081,2093,2264,2271,2275,2298],[885,886,887,894,895,902,903,906],"p",{},[888,889,890],"strong",{},[891,892,893],"code",{},"@ltinteg/workflows-sdk"," is the canonical typed client for the workflow engine. It is generated from the same catalog as ",[896,897,901],"a",{"href":898,"rel":899},"https://reference.orkestia.dev",[900],"nofollow","reference.orkestia.dev",": one ",[891,904,905],{},"start…"," binding per workflow, plus a small hand-written runtime for auth, retries, and SSE.",[885,908,909,910,913],{},"Requires ",[888,911,912],{},"Node ≥ 20",". ESM only.",[915,916,918],"h2",{"id":917},"install","Install",[920,921,926],"pre",{"className":922,"code":923,"language":924,"meta":925,"style":925},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm i @ltinteg/workflows-sdk\n","bash","",[891,927,928],{"__ignoreMap":925},[929,930,933,937,941],"span",{"class":931,"line":932},"line",1,[929,934,936],{"class":935},"sBMFI","npm",[929,938,940],{"class":939},"sfazB"," i",[929,942,943],{"class":939}," @ltinteg/workflows-sdk\n",[915,945,947],{"id":946},"start-a-run","Start a run",[920,949,953],{"className":950,"code":951,"language":952,"meta":925,"style":925},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { LtIntegWorkflowsClient, aws } from \"@ltinteg/workflows-sdk\"\n\nconst client = new LtIntegWorkflowsClient({\n  baseUrl: \"https://workflow-api.orkestia.dev\",\n  token: process.env.ORKESTIA_TOKEN, // org-member or end-user Bearer\n})\n\n// Optional: discover before you call\nawait client.catalog.listTypes({ prefix: \"aws.\" })\nawait client.catalog.getSchema(\"aws.s3.create_bucket\")\n\nconst run = await aws.s3.startCreateBucket(client, {\n  bucket: \"my-app-assets\",\n  connection_uuid: \"…\",\n  region: \"us-east-1\",\n})\n\nconsole.log(run.workflowId, run.stateName)\nconst output = await run.wait()\n","ts",[891,954,955,989,996,1021,1042,1070,1079,1084,1090,1130,1157,1162,1195,1212,1229,1246,1253,1258,1287],{"__ignoreMap":925},[929,956,957,961,965,969,972,975,978,981,984,986],{"class":931,"line":932},[929,958,960],{"class":959},"s7zQu","import",[929,962,964],{"class":963},"sMK4o"," {",[929,966,968],{"class":967},"sTEyZ"," LtIntegWorkflowsClient",[929,970,971],{"class":963},",",[929,973,974],{"class":967}," aws",[929,976,977],{"class":963}," }",[929,979,980],{"class":959}," from",[929,982,983],{"class":963}," \"",[929,985,893],{"class":939},[929,987,988],{"class":963},"\"\n",[929,990,992],{"class":931,"line":991},2,[929,993,995],{"emptyLinePlaceholder":994},true,"\n",[929,997,999,1003,1006,1009,1012,1015,1018],{"class":931,"line":998},3,[929,1000,1002],{"class":1001},"spNyl","const",[929,1004,1005],{"class":967}," client ",[929,1007,1008],{"class":963},"=",[929,1010,1011],{"class":963}," new",[929,1013,968],{"class":1014},"s2Zo4",[929,1016,1017],{"class":967},"(",[929,1019,1020],{"class":963},"{\n",[929,1022,1024,1028,1031,1033,1036,1039],{"class":931,"line":1023},4,[929,1025,1027],{"class":1026},"swJcz","  baseUrl",[929,1029,1030],{"class":963},":",[929,1032,983],{"class":963},[929,1034,1035],{"class":939},"https://workflow-api.orkestia.dev",[929,1037,1038],{"class":963},"\"",[929,1040,1041],{"class":963},",\n",[929,1043,1045,1048,1050,1053,1056,1059,1061,1064,1066],{"class":931,"line":1044},5,[929,1046,1047],{"class":1026},"  token",[929,1049,1030],{"class":963},[929,1051,1052],{"class":967}," process",[929,1054,1055],{"class":963},".",[929,1057,1058],{"class":967},"env",[929,1060,1055],{"class":963},[929,1062,1063],{"class":967},"ORKESTIA_TOKEN",[929,1065,971],{"class":963},[929,1067,1069],{"class":1068},"sHwdD"," // org-member or end-user Bearer\n",[929,1071,1073,1076],{"class":931,"line":1072},6,[929,1074,1075],{"class":963},"}",[929,1077,1078],{"class":967},")\n",[929,1080,1082],{"class":931,"line":1081},7,[929,1083,995],{"emptyLinePlaceholder":994},[929,1085,1087],{"class":931,"line":1086},8,[929,1088,1089],{"class":1068},"// Optional: discover before you call\n",[929,1091,1093,1096,1099,1101,1104,1106,1109,1111,1114,1117,1119,1121,1124,1126,1128],{"class":931,"line":1092},9,[929,1094,1095],{"class":959},"await",[929,1097,1098],{"class":967}," client",[929,1100,1055],{"class":963},[929,1102,1103],{"class":967},"catalog",[929,1105,1055],{"class":963},[929,1107,1108],{"class":1014},"listTypes",[929,1110,1017],{"class":967},[929,1112,1113],{"class":963},"{",[929,1115,1116],{"class":1026}," prefix",[929,1118,1030],{"class":963},[929,1120,983],{"class":963},[929,1122,1123],{"class":939},"aws.",[929,1125,1038],{"class":963},[929,1127,977],{"class":963},[929,1129,1078],{"class":967},[929,1131,1133,1135,1137,1139,1141,1143,1146,1148,1150,1153,1155],{"class":931,"line":1132},10,[929,1134,1095],{"class":959},[929,1136,1098],{"class":967},[929,1138,1055],{"class":963},[929,1140,1103],{"class":967},[929,1142,1055],{"class":963},[929,1144,1145],{"class":1014},"getSchema",[929,1147,1017],{"class":967},[929,1149,1038],{"class":963},[929,1151,1152],{"class":939},"aws.s3.create_bucket",[929,1154,1038],{"class":963},[929,1156,1078],{"class":967},[929,1158,1160],{"class":931,"line":1159},11,[929,1161,995],{"emptyLinePlaceholder":994},[929,1163,1165,1167,1170,1172,1175,1177,1179,1182,1184,1187,1190,1192],{"class":931,"line":1164},12,[929,1166,1002],{"class":1001},[929,1168,1169],{"class":967}," run ",[929,1171,1008],{"class":963},[929,1173,1174],{"class":959}," await",[929,1176,974],{"class":967},[929,1178,1055],{"class":963},[929,1180,1181],{"class":967},"s3",[929,1183,1055],{"class":963},[929,1185,1186],{"class":1014},"startCreateBucket",[929,1188,1189],{"class":967},"(client",[929,1191,971],{"class":963},[929,1193,1194],{"class":963}," {\n",[929,1196,1198,1201,1203,1205,1208,1210],{"class":931,"line":1197},13,[929,1199,1200],{"class":1026},"  bucket",[929,1202,1030],{"class":963},[929,1204,983],{"class":963},[929,1206,1207],{"class":939},"my-app-assets",[929,1209,1038],{"class":963},[929,1211,1041],{"class":963},[929,1213,1215,1218,1220,1222,1225,1227],{"class":931,"line":1214},14,[929,1216,1217],{"class":1026},"  connection_uuid",[929,1219,1030],{"class":963},[929,1221,983],{"class":963},[929,1223,1224],{"class":939},"…",[929,1226,1038],{"class":963},[929,1228,1041],{"class":963},[929,1230,1232,1235,1237,1239,1242,1244],{"class":931,"line":1231},15,[929,1233,1234],{"class":1026},"  region",[929,1236,1030],{"class":963},[929,1238,983],{"class":963},[929,1240,1241],{"class":939},"us-east-1",[929,1243,1038],{"class":963},[929,1245,1041],{"class":963},[929,1247,1249,1251],{"class":931,"line":1248},16,[929,1250,1075],{"class":963},[929,1252,1078],{"class":967},[929,1254,1256],{"class":931,"line":1255},17,[929,1257,995],{"emptyLinePlaceholder":994},[929,1259,1261,1264,1266,1269,1272,1274,1277,1279,1282,1284],{"class":931,"line":1260},18,[929,1262,1263],{"class":967},"console",[929,1265,1055],{"class":963},[929,1267,1268],{"class":1014},"log",[929,1270,1271],{"class":967},"(run",[929,1273,1055],{"class":963},[929,1275,1276],{"class":967},"workflowId",[929,1278,971],{"class":963},[929,1280,1281],{"class":967}," run",[929,1283,1055],{"class":963},[929,1285,1286],{"class":967},"stateName)\n",[929,1288,1290,1292,1295,1297,1299,1301,1303,1306],{"class":931,"line":1289},19,[929,1291,1002],{"class":1001},[929,1293,1294],{"class":967}," output ",[929,1296,1008],{"class":963},[929,1298,1174],{"class":959},[929,1300,1281],{"class":967},[929,1302,1055],{"class":963},[929,1304,1305],{"class":1014},"wait",[929,1307,1308],{"class":967},"()\n",[885,1310,1311,1312,1315,1316,1319],{},"Do ",[888,1313,1314],{},"not"," pass ",[891,1317,1318],{},"organization_uuid",". The server resolves it from the token.",[1321,1322,1323],"warning",{},[885,1324,1325,1326,1328,1329,1332,1333,1336],{},"The ",[891,1327,1152],{}," call above is illustrative. Resolve the live type name and input fields from the ",[896,1330,1103],{"href":898,"rel":1331},[900]," or ",[891,1334,1335],{},"client.catalog.getSchema()"," before you ship.",[915,1338,1340],{"id":1339},"stream-transitions","Stream transitions",[885,1342,1343,1346,1347,1350],{},[891,1344,1345],{},"run.events()"," opens ",[891,1348,1349],{},"GET /api/workflows/{id}/stream"," and yields typed events until the run is terminal.",[920,1352,1354],{"className":950,"code":1353,"language":952,"meta":925,"style":925},"for await (const evt of run.events({ streamTimeoutSecs: 600 })) {\n  if (evt.type === \"transition\") console.log(evt.from, \"->\", evt.to)\n  if (evt.type === \"completed\") break\n  if (evt.type === \"failed\") throw new Error(evt.error.message)\n}\n",[891,1355,1356,1401,1465,1491,1538],{"__ignoreMap":925},[929,1357,1358,1361,1363,1366,1368,1371,1374,1376,1378,1381,1383,1385,1388,1390,1394,1396,1399],{"class":931,"line":932},[929,1359,1360],{"class":959},"for",[929,1362,1174],{"class":959},[929,1364,1365],{"class":967}," (",[929,1367,1002],{"class":1001},[929,1369,1370],{"class":967}," evt ",[929,1372,1373],{"class":963},"of",[929,1375,1281],{"class":967},[929,1377,1055],{"class":963},[929,1379,1380],{"class":1014},"events",[929,1382,1017],{"class":967},[929,1384,1113],{"class":963},[929,1386,1387],{"class":1026}," streamTimeoutSecs",[929,1389,1030],{"class":963},[929,1391,1393],{"class":1392},"sbssI"," 600",[929,1395,977],{"class":963},[929,1397,1398],{"class":967},")) ",[929,1400,1020],{"class":963},[929,1402,1403,1406,1408,1411,1413,1416,1419,1421,1424,1426,1429,1431,1433,1435,1437,1439,1441,1444,1446,1448,1451,1453,1455,1458,1460,1463],{"class":931,"line":991},[929,1404,1405],{"class":959},"  if",[929,1407,1365],{"class":1026},[929,1409,1410],{"class":967},"evt",[929,1412,1055],{"class":963},[929,1414,1415],{"class":967},"type",[929,1417,1418],{"class":963}," ===",[929,1420,983],{"class":963},[929,1422,1423],{"class":939},"transition",[929,1425,1038],{"class":963},[929,1427,1428],{"class":1026},") ",[929,1430,1263],{"class":967},[929,1432,1055],{"class":963},[929,1434,1268],{"class":1014},[929,1436,1017],{"class":1026},[929,1438,1410],{"class":967},[929,1440,1055],{"class":963},[929,1442,1443],{"class":967},"from",[929,1445,971],{"class":963},[929,1447,983],{"class":963},[929,1449,1450],{"class":939},"->",[929,1452,1038],{"class":963},[929,1454,971],{"class":963},[929,1456,1457],{"class":967}," evt",[929,1459,1055],{"class":963},[929,1461,1462],{"class":967},"to",[929,1464,1078],{"class":1026},[929,1466,1467,1469,1471,1473,1475,1477,1479,1481,1484,1486,1488],{"class":931,"line":998},[929,1468,1405],{"class":959},[929,1470,1365],{"class":1026},[929,1472,1410],{"class":967},[929,1474,1055],{"class":963},[929,1476,1415],{"class":967},[929,1478,1418],{"class":963},[929,1480,983],{"class":963},[929,1482,1483],{"class":939},"completed",[929,1485,1038],{"class":963},[929,1487,1428],{"class":1026},[929,1489,1490],{"class":959},"break\n",[929,1492,1493,1495,1497,1499,1501,1503,1505,1507,1510,1512,1514,1517,1519,1522,1524,1526,1528,1531,1533,1536],{"class":931,"line":1023},[929,1494,1405],{"class":959},[929,1496,1365],{"class":1026},[929,1498,1410],{"class":967},[929,1500,1055],{"class":963},[929,1502,1415],{"class":967},[929,1504,1418],{"class":963},[929,1506,983],{"class":963},[929,1508,1509],{"class":939},"failed",[929,1511,1038],{"class":963},[929,1513,1428],{"class":1026},[929,1515,1516],{"class":959},"throw",[929,1518,1011],{"class":963},[929,1520,1521],{"class":1014}," Error",[929,1523,1017],{"class":1026},[929,1525,1410],{"class":967},[929,1527,1055],{"class":963},[929,1529,1530],{"class":967},"error",[929,1532,1055],{"class":963},[929,1534,1535],{"class":967},"message",[929,1537,1078],{"class":1026},[929,1539,1540],{"class":931,"line":1044},[929,1541,1542],{"class":963},"}\n",[885,1544,1545,1548,1549,1552,1553,1556,1557,1055],{},[891,1546,1547],{},"run.wait()"," (alias ",[891,1550,1551],{},"run.result()",") consumes that stream and resolves to the terminal ",[891,1554,1555],{},"state_data",", or throws ",[891,1558,1559],{},"WorkflowFailedError",[920,1561,1563],{"className":950,"code":1562,"language":952,"meta":925,"style":925},"import { WorkflowFailedError } from \"@ltinteg/workflows-sdk/errors\"\n\ntry {\n  const output = await run.wait()\n} catch (err) {\n  if (err instanceof WorkflowFailedError) console.error(err.failure)\n}\n",[891,1564,1565,1585,1589,1596,1617,1629,1662],{"__ignoreMap":925},[929,1566,1567,1569,1571,1574,1576,1578,1580,1583],{"class":931,"line":932},[929,1568,960],{"class":959},[929,1570,964],{"class":963},[929,1572,1573],{"class":967}," WorkflowFailedError",[929,1575,977],{"class":963},[929,1577,980],{"class":959},[929,1579,983],{"class":963},[929,1581,1582],{"class":939},"@ltinteg/workflows-sdk/errors",[929,1584,988],{"class":963},[929,1586,1587],{"class":931,"line":991},[929,1588,995],{"emptyLinePlaceholder":994},[929,1590,1591,1594],{"class":931,"line":998},[929,1592,1593],{"class":959},"try",[929,1595,1194],{"class":963},[929,1597,1598,1601,1604,1607,1609,1611,1613,1615],{"class":931,"line":1023},[929,1599,1600],{"class":1001},"  const",[929,1602,1603],{"class":967}," output",[929,1605,1606],{"class":963}," =",[929,1608,1174],{"class":959},[929,1610,1281],{"class":967},[929,1612,1055],{"class":963},[929,1614,1305],{"class":1014},[929,1616,1308],{"class":1026},[929,1618,1619,1621,1624,1627],{"class":931,"line":1044},[929,1620,1075],{"class":963},[929,1622,1623],{"class":959}," catch",[929,1625,1626],{"class":967}," (err) ",[929,1628,1020],{"class":963},[929,1630,1631,1633,1635,1638,1641,1643,1645,1647,1649,1651,1653,1655,1657,1660],{"class":931,"line":1072},[929,1632,1405],{"class":959},[929,1634,1365],{"class":1026},[929,1636,1637],{"class":967},"err",[929,1639,1640],{"class":963}," instanceof",[929,1642,1573],{"class":935},[929,1644,1428],{"class":1026},[929,1646,1263],{"class":967},[929,1648,1055],{"class":963},[929,1650,1530],{"class":1014},[929,1652,1017],{"class":1026},[929,1654,1637],{"class":967},[929,1656,1055],{"class":963},[929,1658,1659],{"class":967},"failure",[929,1661,1078],{"class":1026},[929,1663,1664],{"class":931,"line":1081},[929,1665,1542],{"class":963},[885,1667,1668,1671],{},[891,1669,1670],{},"AbortSignal"," is honored on start, get, and stream:",[920,1673,1675],{"className":950,"code":1674,"language":952,"meta":925,"style":925},"const ac = new AbortController()\nsetTimeout(() => ac.abort(), 5_000)\nfor await (const evt of run.events({ signal: ac.signal })) { /* … */ }\n",[891,1676,1677,1693,1723],{"__ignoreMap":925},[929,1678,1679,1681,1684,1686,1688,1691],{"class":931,"line":932},[929,1680,1002],{"class":1001},[929,1682,1683],{"class":967}," ac ",[929,1685,1008],{"class":963},[929,1687,1011],{"class":963},[929,1689,1690],{"class":1014}," AbortController",[929,1692,1308],{"class":967},[929,1694,1695,1698,1700,1703,1706,1709,1711,1714,1716,1718,1721],{"class":931,"line":991},[929,1696,1697],{"class":1014},"setTimeout",[929,1699,1017],{"class":967},[929,1701,1702],{"class":963},"()",[929,1704,1705],{"class":1001}," =>",[929,1707,1708],{"class":967}," ac",[929,1710,1055],{"class":963},[929,1712,1713],{"class":1014},"abort",[929,1715,1702],{"class":967},[929,1717,971],{"class":963},[929,1719,1720],{"class":1392}," 5_000",[929,1722,1078],{"class":967},[929,1724,1725,1727,1729,1731,1733,1735,1737,1739,1741,1743,1745,1747,1750,1752,1754,1756,1759,1761,1763,1765,1768],{"class":931,"line":998},[929,1726,1360],{"class":959},[929,1728,1174],{"class":959},[929,1730,1365],{"class":967},[929,1732,1002],{"class":1001},[929,1734,1370],{"class":967},[929,1736,1373],{"class":963},[929,1738,1281],{"class":967},[929,1740,1055],{"class":963},[929,1742,1380],{"class":1014},[929,1744,1017],{"class":967},[929,1746,1113],{"class":963},[929,1748,1749],{"class":1026}," signal",[929,1751,1030],{"class":963},[929,1753,1708],{"class":967},[929,1755,1055],{"class":963},[929,1757,1758],{"class":967},"signal ",[929,1760,1075],{"class":963},[929,1762,1398],{"class":967},[929,1764,1113],{"class":963},[929,1766,1767],{"class":1068}," /* … */",[929,1769,1770],{"class":963}," }\n",[915,1772,1774],{"id":1773},"catalog-and-lifecycle","Catalog and lifecycle",[1776,1777,1778,1794],"table",{},[1779,1780,1781],"thead",{},[1782,1783,1784,1788,1791],"tr",{},[1785,1786,1787],"th",{},"Call",[1785,1789,1790],{},"REST equivalent",[1785,1792,1793],{},"Purpose",[1795,1796,1797,1813,1831,1844,1859,1874,1892],"tbody",{},[1782,1798,1799,1805,1810],{},[1800,1801,1802],"td",{},[891,1803,1804],{},"client.catalog.listTypes({ prefix })",[1800,1806,1807],{},[891,1808,1809],{},"GET /api/workflows/types",[1800,1811,1812],{},"Discover types",[1782,1814,1815,1820,1825],{},[1800,1816,1817],{},[891,1818,1819],{},"client.catalog.getSchema(type)",[1800,1821,1822],{},[891,1823,1824],{},"GET /api/workflows/types/{type}/schema",[1800,1826,1827,1828],{},"Input / output + ",[891,1829,1830],{},"has_prerequisites",[1782,1832,1833,1838,1841],{},[1800,1834,1835],{},[891,1836,1837],{},"client.catalog.getDefinition(type)",[1800,1839,1840],{},"definition endpoint",[1800,1842,1843],{},"Full registered definition",[1782,1845,1846,1851,1856],{},[1800,1847,1848],{},[891,1849,1850],{},"client.workflows.get(id)",[1800,1852,1853],{},[891,1854,1855],{},"GET /api/workflows/{id}",[1800,1857,1858],{},"Current state",[1782,1860,1861,1866,1871],{},[1800,1862,1863],{},[891,1864,1865],{},"client.workflows.history(id)",[1800,1867,1868],{},[891,1869,1870],{},"GET /api/workflows/{id}/history",[1800,1872,1873],{},"Event-sourced log",[1782,1875,1876,1881,1886],{},[1800,1877,1878],{},[891,1879,1880],{},"client.workflows.retry(id)",[1800,1882,1883],{},[891,1884,1885],{},"POST /api/workflows/{id}/retry",[1800,1887,1888,1889,1281],{},"Re-drive a ",[891,1890,1891],{},"FAILED",[1782,1893,1894,1899,1904],{},[1800,1895,1896],{},[891,1897,1898],{},"client.workflows.list({ workflowType })",[1800,1900,1901],{},[891,1902,1903],{},"GET /api/workflows/find",[1800,1905,1906],{},"Find runs of one type",[885,1908,1909,1910,1913,1914,1917,1918,1921,1922,1055],{},"Generated bindings (",[891,1911,1912],{},"aws.s3.startCreateBucket",", ",[891,1915,1916],{},"github.startValidateToken",", …) are thin wrappers over ",[891,1919,1920],{},"client.start(...)"," that add typed inputs and return a ",[891,1923,1924],{},"WorkflowRunHandle",[1926,1927,1928],"note",{},[885,1929,1930,1933,1934,1937],{},[891,1931,1932],{},"client.workflows.cancel()"," throws ",[891,1935,1936],{},"WorkflowNotImplementedError"," — the deployed API has no cancel endpoint. The method exists so call sites type-check.",[915,1939,1941],{"id":1940},"errors","Errors",[885,1943,1944,1945,1948,1949,1952,1953,1956,1957,1960,1961,1055],{},"Every error extends ",[891,1946,1947],{},"WorkflowError"," (a real ",[891,1950,1951],{},"Error"," subclass, so ",[891,1954,1955],{},"instanceof"," works) and carries ",[891,1958,1959],{},"requestId"," when the server sent ",[891,1962,1963],{},"X-Request-Id",[1776,1965,1966,1976],{},[1779,1967,1968],{},[1782,1969,1970,1973],{},[1785,1971,1972],{},"Class",[1785,1974,1975],{},"When",[1795,1977,1978,1988,2001,2011,2022,2032,2041],{},[1782,1979,1980,1985],{},[1800,1981,1982],{},[891,1983,1984],{},"WorkflowStartError",[1800,1986,1987],{},"Start rejected (validation, auth, prerequisites)",[1782,1989,1990,1995],{},[1800,1991,1992],{},[891,1993,1994],{},"WorkflowNotFoundError",[1800,1996,1997,1998],{},"Unknown ",[891,1999,2000],{},"workflow_id",[1782,2002,2003,2008],{},[1800,2004,2005],{},[891,2006,2007],{},"WorkflowTimeoutError",[1800,2009,2010],{},"Stream / wait exceeded the timeout",[1782,2012,2013,2017],{},[1800,2014,2015],{},[891,2016,1559],{},[1800,2018,2019,2020],{},"Run reached ",[891,2021,1891],{},[1782,2023,2024,2029],{},[1800,2025,2026],{},[891,2027,2028],{},"WorkflowStreamError",[1800,2030,2031],{},"SSE transport failed",[1782,2033,2034,2038],{},[1800,2035,2036],{},[891,2037,1936],{},[1800,2039,2040],{},"Called a method the API does not expose",[1782,2042,2043,2048],{},[1800,2044,2045],{},[891,2046,2047],{},"WorkflowCancelledError",[1800,2049,2050,2051],{},"Aborted via ",[891,2052,1670],{},[920,2054,2056],{"className":950,"code":2055,"language":952,"meta":925,"style":925},"import { WorkflowStartError } from \"@ltinteg/workflows-sdk/errors\"\n",[891,2057,2058],{"__ignoreMap":925},[929,2059,2060,2062,2064,2067,2069,2071,2073,2075],{"class":931,"line":932},[929,2061,960],{"class":959},[929,2063,964],{"class":963},[929,2065,2066],{"class":967}," WorkflowStartError",[929,2068,977],{"class":963},[929,2070,980],{"class":959},[929,2072,983],{"class":963},[929,2074,1582],{"class":939},[929,2076,988],{"class":963},[915,2078,2080],{"id":2079},"auth","Auth",[885,2082,2083,2084,2089,2090,2092],{},"Pass either token kind into the client. For browser apps acting as an end-user, take the JWT from ",[896,2085,2086],{"href":489},[891,2087,2088],{},"@orkestia/auth"," and do ",[888,2091,1314],{}," embed an org-member token in the page.",[920,2094,2096],{"className":950,"code":2095,"language":952,"meta":925,"style":925},"import { createOrkestiaAuth } from \"@orkestia/auth\"\nimport { LtIntegWorkflowsClient } from \"@ltinteg/workflows-sdk\"\n\nconst auth = createOrkestiaAuth({ clientKey: \"orkestia_…\" })\nconst session = auth.getSession()\n\nconst client = new LtIntegWorkflowsClient({\n  baseUrl: \"https://workflow-api.orkestia.dev\",\n  token: session.token,\n  credentials: \"include\", // browsers only; omit in Node\n})\n",[891,2097,2098,2117,2135,2139,2170,2189,2193,2209,2223,2239,2258],{"__ignoreMap":925},[929,2099,2100,2102,2104,2107,2109,2111,2113,2115],{"class":931,"line":932},[929,2101,960],{"class":959},[929,2103,964],{"class":963},[929,2105,2106],{"class":967}," createOrkestiaAuth",[929,2108,977],{"class":963},[929,2110,980],{"class":959},[929,2112,983],{"class":963},[929,2114,2088],{"class":939},[929,2116,988],{"class":963},[929,2118,2119,2121,2123,2125,2127,2129,2131,2133],{"class":931,"line":991},[929,2120,960],{"class":959},[929,2122,964],{"class":963},[929,2124,968],{"class":967},[929,2126,977],{"class":963},[929,2128,980],{"class":959},[929,2130,983],{"class":963},[929,2132,893],{"class":939},[929,2134,988],{"class":963},[929,2136,2137],{"class":931,"line":998},[929,2138,995],{"emptyLinePlaceholder":994},[929,2140,2141,2143,2146,2148,2150,2152,2154,2157,2159,2161,2164,2166,2168],{"class":931,"line":1023},[929,2142,1002],{"class":1001},[929,2144,2145],{"class":967}," auth ",[929,2147,1008],{"class":963},[929,2149,2106],{"class":1014},[929,2151,1017],{"class":967},[929,2153,1113],{"class":963},[929,2155,2156],{"class":1026}," clientKey",[929,2158,1030],{"class":963},[929,2160,983],{"class":963},[929,2162,2163],{"class":939},"orkestia_…",[929,2165,1038],{"class":963},[929,2167,977],{"class":963},[929,2169,1078],{"class":967},[929,2171,2172,2174,2177,2179,2182,2184,2187],{"class":931,"line":1044},[929,2173,1002],{"class":1001},[929,2175,2176],{"class":967}," session ",[929,2178,1008],{"class":963},[929,2180,2181],{"class":967}," auth",[929,2183,1055],{"class":963},[929,2185,2186],{"class":1014},"getSession",[929,2188,1308],{"class":967},[929,2190,2191],{"class":931,"line":1072},[929,2192,995],{"emptyLinePlaceholder":994},[929,2194,2195,2197,2199,2201,2203,2205,2207],{"class":931,"line":1081},[929,2196,1002],{"class":1001},[929,2198,1005],{"class":967},[929,2200,1008],{"class":963},[929,2202,1011],{"class":963},[929,2204,968],{"class":1014},[929,2206,1017],{"class":967},[929,2208,1020],{"class":963},[929,2210,2211,2213,2215,2217,2219,2221],{"class":931,"line":1086},[929,2212,1027],{"class":1026},[929,2214,1030],{"class":963},[929,2216,983],{"class":963},[929,2218,1035],{"class":939},[929,2220,1038],{"class":963},[929,2222,1041],{"class":963},[929,2224,2225,2227,2229,2232,2234,2237],{"class":931,"line":1092},[929,2226,1047],{"class":1026},[929,2228,1030],{"class":963},[929,2230,2231],{"class":967}," session",[929,2233,1055],{"class":963},[929,2235,2236],{"class":967},"token",[929,2238,1041],{"class":963},[929,2240,2241,2244,2246,2248,2251,2253,2255],{"class":931,"line":1132},[929,2242,2243],{"class":1026},"  credentials",[929,2245,1030],{"class":963},[929,2247,983],{"class":963},[929,2249,2250],{"class":939},"include",[929,2252,1038],{"class":963},[929,2254,971],{"class":963},[929,2256,2257],{"class":1068}," // browsers only; omit in Node\n",[929,2259,2260,2262],{"class":931,"line":1159},[929,2261,1075],{"class":963},[929,2263,1078],{"class":967},[885,2265,2266,2267,2270],{},"See ",[896,2268,2269],{"href":175},"API & tooling"," for the two-token model.",[915,2272,2274],{"id":2273},"related","Related",[2276,2277,2278,2285,2291],"card-group",{},[2279,2280,2282],"card",{"icon":486,"title":2281,"to":484},"Python SDK",[885,2283,2284],{},"The same catalog, in Python.",[2279,2286,2288],{"icon":417,"title":2287,"to":489},"Auth SDK",[885,2289,2290],{},"Mint the end-user JWT this client can hold.",[2279,2292,2295],{"icon":2293,"title":2294,"to":175},"i-lucide-webhook","REST surface",[885,2296,2297],{},"Raw HTTP if you are not in Node.",[2299,2300,2301],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":925,"searchDepth":932,"depth":991,"links":2303},[2304,2305,2306,2307,2308,2309,2310],{"id":917,"depth":991,"text":918},{"id":946,"depth":991,"text":947},{"id":1339,"depth":991,"text":1340},{"id":1773,"depth":991,"text":1774},{"id":1940,"depth":991,"text":1941},{"id":2079,"depth":991,"text":2080},{"id":2273,"depth":991,"text":2274},"Typed ESM client for every Orkestia workflow — one autocompleted binding per type, SSE streaming, and wait-for-terminal","md",null,{},{"icon":481},{"title":478,"description":2311},"nDCgWnw25XOL3xwjXG2Jx9cFpCEKVpE5zBY8pyb7U0E",[2319,2321],{"title":471,"path":472,"stem":473,"description":2320,"icon":476,"children":-1},"Typed clients for Orkestia — Node and Python workflow SDKs, plus the browser OAuth SDK for Sign in with Orkestia",{"title":483,"path":484,"stem":485,"description":2322,"icon":486,"children":-1},"Pydantic-typed Python client for the Orkestia workflow API — the same catalog as the Node SDK",1790354053468]