agentix-cli 0.70.0 → 0.70.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/{App-Z66ABY7H.js → App-LFQTOADB.js} +2 -2
  2. package/dist/{ChatApp-Z2LZ7IM3.js → ChatApp-RNMG2HWX.js} +2 -2
  3. package/dist/{agent-V223TG6H.js → agent-7IW6472I.js} +2 -2
  4. package/dist/{board-dashboard-HR3PQPFW.js → board-dashboard-MYWXVYU3.js} +4 -4
  5. package/dist/{board-dashboard-HR3PQPFW.js.map → board-dashboard-MYWXVYU3.js.map} +1 -1
  6. package/dist/{chunk-FBDIJEKL.js → chunk-2DWDXT7G.js} +9 -9
  7. package/dist/chunk-2DWDXT7G.js.map +1 -0
  8. package/dist/{chunk-P2RYUODK.js → chunk-3ZRFES25.js} +2 -2
  9. package/dist/{chunk-LHLNARRW.js → chunk-4HCQEGXO.js} +167 -167
  10. package/dist/chunk-4HCQEGXO.js.map +1 -0
  11. package/dist/{chunk-ML6CNRBK.js → chunk-4J4YVJFH.js} +2 -2
  12. package/dist/{chunk-ML6CNRBK.js.map → chunk-4J4YVJFH.js.map} +1 -1
  13. package/dist/{chunk-FSYA4GNU.js → chunk-5FD7HE2J.js} +2 -2
  14. package/dist/{chunk-FUR3T3IN.js → chunk-7334DGUO.js} +2 -2
  15. package/dist/{chunk-YBF2QVZ7.js → chunk-7PWXCN22.js} +2 -2
  16. package/dist/{chunk-OVX6NRMD.js → chunk-D3RJMC37.js} +2 -2
  17. package/dist/chunk-DXAWW7ZQ.js +49 -0
  18. package/dist/chunk-DXAWW7ZQ.js.map +1 -0
  19. package/dist/{chunk-3IY2YWXP.js → chunk-E6CYC4HQ.js} +2 -2
  20. package/dist/{chunk-YL223TEU.js → chunk-FEQ4W4XA.js} +2 -2
  21. package/dist/{chunk-6QDOUOKD.js → chunk-KTGPH77J.js} +2 -2
  22. package/dist/{chunk-KLHG5ZQH.js → chunk-KTNOY4LW.js} +2 -2
  23. package/dist/{chunk-SN5N2FPG.js → chunk-LKA5UUGT.js} +2 -2
  24. package/dist/{chunk-YK7GFEGO.js → chunk-MOUSATFW.js} +2 -2
  25. package/dist/{chunk-PHDS2HIN.js → chunk-MTPCD4NV.js} +226 -225
  26. package/dist/chunk-MTPCD4NV.js.map +1 -0
  27. package/dist/{chunk-3RC4LO2G.js → chunk-N4EIYNN4.js} +2 -2
  28. package/dist/{chunk-BBIWAJRX.js → chunk-O2QVQVOV.js} +2 -2
  29. package/dist/{chunk-W7SEPJFH.js → chunk-RKZGENSE.js} +2 -2
  30. package/dist/chunk-RN7G3D53.js +6 -0
  31. package/dist/chunk-RN7G3D53.js.map +1 -0
  32. package/dist/{chunk-TTVVXBCM.js → chunk-WPNRDEHW.js} +2 -2
  33. package/dist/{chunk-DTX4I5LQ.js → chunk-XXBW7CFN.js} +2 -2
  34. package/dist/{chunk-DTX4I5LQ.js.map → chunk-XXBW7CFN.js.map} +1 -1
  35. package/dist/{chunk-OPUPVGYP.js → chunk-YFROK44Z.js} +2 -2
  36. package/dist/cli.js +1 -1
  37. package/dist/cli.js.map +1 -1
  38. package/dist/client-IQIBHXVS.js +2 -0
  39. package/dist/{config-FZ4D4EAV.js → config-7AK5TI2D.js} +2 -2
  40. package/dist/config-mutator-EI5JNMY4.js +2 -0
  41. package/dist/doctor-CTWQODQG.js +2 -0
  42. package/dist/index.d.ts +51 -9
  43. package/dist/index.js +1 -1
  44. package/dist/index.js.map +1 -1
  45. package/dist/migrate-v2-W7RRFM24.js +4 -0
  46. package/dist/{migrate-v2-ZOIMGITH.js.map → migrate-v2-W7RRFM24.js.map} +1 -1
  47. package/dist/program-ZKGWGTPV.js +2 -0
  48. package/dist/promote-USGFU5NN.js +2 -0
  49. package/dist/query-NLSKOIWJ.js +2 -0
  50. package/dist/registry-T7SCVP55.js +2 -0
  51. package/dist/{request-planner-NMOAOZIM.js → request-planner-VOWMXWRI.js} +2 -2
  52. package/dist/{review-candidates-FLY6HZEN.js → review-candidates-F6RLNHS2.js} +2 -2
  53. package/dist/{routing-SMIZ77CT.js → routing-2LAWEIUG.js} +2 -2
  54. package/dist/schedule-tool-GOQFT2XQ.js +2 -0
  55. package/dist/scheduler-GJVRJQ7K.js +2 -0
  56. package/dist/{seat-F3S2HG5G.js → seat-4LLK2XBM.js} +2 -2
  57. package/dist/{select-5GC7CTPQ.js → select-NJHTHKEQ.js} +2 -2
  58. package/dist/{set-enabled-53ZPZ5GR.js → set-enabled-HPR6VJCG.js} +2 -2
  59. package/dist/{tool-FRTZS4TT.js → tool-XQMGKZP5.js} +2 -2
  60. package/dist/wiki-RQ5P4WWJ.js +2 -0
  61. package/package.json +1 -1
  62. package/dist/chunk-FBDIJEKL.js.map +0 -1
  63. package/dist/chunk-LHLNARRW.js.map +0 -1
  64. package/dist/chunk-PHDS2HIN.js.map +0 -1
  65. package/dist/chunk-TFVUOC2C.js +0 -2
  66. package/dist/chunk-TFVUOC2C.js.map +0 -1
  67. package/dist/chunk-TLDQWTSW.js +0 -49
  68. package/dist/chunk-TLDQWTSW.js.map +0 -1
  69. package/dist/chunk-WLMQ5JMX.js +0 -6
  70. package/dist/chunk-WLMQ5JMX.js.map +0 -1
  71. package/dist/client-GDTX6LFH.js +0 -2
  72. package/dist/config-mutator-ETG5V4C5.js +0 -2
  73. package/dist/doctor-JBIRBRLB.js +0 -2
  74. package/dist/graph-FJ53FDWK.js +0 -2
  75. package/dist/migrate-v2-ZOIMGITH.js +0 -4
  76. package/dist/program-UTELWTXC.js +0 -2
  77. package/dist/promote-B5AOKPQR.js +0 -2
  78. package/dist/query-QLJNQUUP.js +0 -2
  79. package/dist/registry-CTZFLXGB.js +0 -2
  80. package/dist/schedule-tool-NJFROYKY.js +0 -2
  81. package/dist/scheduler-5N4FC2FQ.js +0 -2
  82. package/dist/wiki-X76JUHXT.js +0 -2
  83. package/dist/wiki-X76JUHXT.js.map +0 -1
  84. /package/dist/{App-Z66ABY7H.js.map → App-LFQTOADB.js.map} +0 -0
  85. /package/dist/{ChatApp-Z2LZ7IM3.js.map → ChatApp-RNMG2HWX.js.map} +0 -0
  86. /package/dist/{agent-V223TG6H.js.map → agent-7IW6472I.js.map} +0 -0
  87. /package/dist/{chunk-P2RYUODK.js.map → chunk-3ZRFES25.js.map} +0 -0
  88. /package/dist/{chunk-FSYA4GNU.js.map → chunk-5FD7HE2J.js.map} +0 -0
  89. /package/dist/{chunk-FUR3T3IN.js.map → chunk-7334DGUO.js.map} +0 -0
  90. /package/dist/{chunk-YBF2QVZ7.js.map → chunk-7PWXCN22.js.map} +0 -0
  91. /package/dist/{chunk-OVX6NRMD.js.map → chunk-D3RJMC37.js.map} +0 -0
  92. /package/dist/{chunk-3IY2YWXP.js.map → chunk-E6CYC4HQ.js.map} +0 -0
  93. /package/dist/{chunk-YL223TEU.js.map → chunk-FEQ4W4XA.js.map} +0 -0
  94. /package/dist/{chunk-6QDOUOKD.js.map → chunk-KTGPH77J.js.map} +0 -0
  95. /package/dist/{chunk-KLHG5ZQH.js.map → chunk-KTNOY4LW.js.map} +0 -0
  96. /package/dist/{chunk-SN5N2FPG.js.map → chunk-LKA5UUGT.js.map} +0 -0
  97. /package/dist/{chunk-YK7GFEGO.js.map → chunk-MOUSATFW.js.map} +0 -0
  98. /package/dist/{chunk-3RC4LO2G.js.map → chunk-N4EIYNN4.js.map} +0 -0
  99. /package/dist/{chunk-BBIWAJRX.js.map → chunk-O2QVQVOV.js.map} +0 -0
  100. /package/dist/{chunk-W7SEPJFH.js.map → chunk-RKZGENSE.js.map} +0 -0
  101. /package/dist/{chunk-TTVVXBCM.js.map → chunk-WPNRDEHW.js.map} +0 -0
  102. /package/dist/{chunk-OPUPVGYP.js.map → chunk-YFROK44Z.js.map} +0 -0
  103. /package/dist/{client-GDTX6LFH.js.map → client-IQIBHXVS.js.map} +0 -0
  104. /package/dist/{config-FZ4D4EAV.js.map → config-7AK5TI2D.js.map} +0 -0
  105. /package/dist/{config-mutator-ETG5V4C5.js.map → config-mutator-EI5JNMY4.js.map} +0 -0
  106. /package/dist/{doctor-JBIRBRLB.js.map → doctor-CTWQODQG.js.map} +0 -0
  107. /package/dist/{graph-FJ53FDWK.js.map → program-ZKGWGTPV.js.map} +0 -0
  108. /package/dist/{program-UTELWTXC.js.map → promote-USGFU5NN.js.map} +0 -0
  109. /package/dist/{promote-B5AOKPQR.js.map → query-NLSKOIWJ.js.map} +0 -0
  110. /package/dist/{query-QLJNQUUP.js.map → registry-T7SCVP55.js.map} +0 -0
  111. /package/dist/{request-planner-NMOAOZIM.js.map → request-planner-VOWMXWRI.js.map} +0 -0
  112. /package/dist/{review-candidates-FLY6HZEN.js.map → review-candidates-F6RLNHS2.js.map} +0 -0
  113. /package/dist/{registry-CTZFLXGB.js.map → routing-2LAWEIUG.js.map} +0 -0
  114. /package/dist/{routing-SMIZ77CT.js.map → schedule-tool-GOQFT2XQ.js.map} +0 -0
  115. /package/dist/{schedule-tool-NJFROYKY.js.map → scheduler-GJVRJQ7K.js.map} +0 -0
  116. /package/dist/{scheduler-5N4FC2FQ.js.map → seat-4LLK2XBM.js.map} +0 -0
  117. /package/dist/{select-5GC7CTPQ.js.map → select-NJHTHKEQ.js.map} +0 -0
  118. /package/dist/{set-enabled-53ZPZ5GR.js.map → set-enabled-HPR6VJCG.js.map} +0 -0
  119. /package/dist/{tool-FRTZS4TT.js.map → tool-XQMGKZP5.js.map} +0 -0
  120. /package/dist/{seat-F3S2HG5G.js.map → wiki-RQ5P4WWJ.js.map} +0 -0
@@ -11,5 +11,5 @@ Searched: ${n.join(", ")}`);let r;try{r=JSON.parse(a)}catch(d){throw new Error(`
11
11
  ${p.join(`
12
12
 
13
13
  `)}`:"";throw new Error(`Config validation failed (${o}):
14
- ${d}${k}`)}return l.data}function mt(t){let n=[];for(let[a,o]of Object.entries(t.agents)){if(!y(o.workspace)){n.push(`Agent "${a}": workspace not found at ${o.workspace}`);continue}if(o.tier==="claude-code"){let l=x(o.workspace,".claude");y(l)||n.push(`Agent "${a}": no .claude/ directory in workspace ${o.workspace}. Claude Code native features (hooks, MCP, skills) won't be available.`)}let r=o.provider||"claude",i=t.providers[r];!["claude-code","codex-cli","opencode"].includes(o.tier)&&(!i||!i.apiKey)&&n.push(`Agent "${a}": provider "${r}" has no API key configured. Set providers.${r}.apiKey in config or use a CLI-backed tier ("claude-code", "codex-cli", or "opencode").`)}for(let[a,o]of Object.entries(t.crons))t.agents[o.agent]||n.push(`Cron "${a}": references unknown agent "${o.agent}"`);if(t.channels.telegram.enabled)for(let[a,o]of Object.entries(t.channels.telegram.accounts))t.agents[o.agentBinding]||n.push(`Telegram account "${a}": references unknown agent "${o.agentBinding}"`);return n}var qe,Ke,Ne,Ze,Ge,Ye,Ve,q,K,h,N,Z,Xe,Je,Qe,et,tt,nt,ot,at,rt,it,st,lt,ut,dt,G,Y,gt=m(()=>{E();$();O();F();W();qe=e.object({apiKey:e.string().optional(),defaultModel:e.string().optional(),baseUrl:e.string().optional(),thinking:e.boolean().optional()}),Ke=e.object({type:e.literal("stdio").optional(),command:e.string(),args:e.array(e.string()).default([]),env:e.record(e.string(),e.string()).optional()}),Ne=e.object({type:e.literal("http"),url:e.string().url(),headers:e.record(e.string(),e.string()).optional()}),Ze=e.union([Ne,Ke]),Ge=e.object({tokenEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),privateAppTokenEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),apiKeyEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),refreshTokenEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),clientIdEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),clientSecretEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),auth:e.literal("keyring").optional(),sessionDir:e.string().optional()}).strict(),Ye=e.object({kind:e.string().min(1),label:e.string().min(1),credentials:Ge.default({}),metadata:e.record(e.string(),e.union([e.string(),e.number(),e.boolean()])).default({}),enabled:e.boolean().default(!0)}),Ve=["telegram-bot","whatsapp","gitlab-user","github-user","gmail","hotmail","smtp","hubspot","salesforce","pipedrive","odoo","trello","linear","asana","jira","notion","stripe","sentry","vercel","twilio","custom"],q=e.enum(["system","elevenlabs"]),K=e.union([e.string(),e.record(e.string(),e.string())]),h=e.string().superRefine((t,n)=>{let a=z(t);a&&n.addIssue({code:e.ZodIssueCode.custom,message:`shortcut ${a}`})}),N=e.object({provider:q.optional(),system:K.optional(),elevenlabsVoiceId:e.string().optional(),gender:e.enum(["female","male","neutral"]).optional(),style:e.string().optional(),intro:e.string().optional(),narrate:e.enum(["off","on","all"]).optional(),rate:e.number().min(.75).max(1.5).optional(),priority:e.enum(["high","normal","low"]).optional(),hotkey:h.optional()}),Z=e.object({kinds:e.array(e.string().min(1)).min(1),agents:e.array(e.string().min(1)).optional(),nodes:e.array(e.string().min(1)).optional(),match:e.string().min(1).optional(),delivery:e.enum(["pull","digest","wake"]).default("pull"),maxPerHour:e.number().int().min(1).max(60).default(4)}),Xe=e.object({name:e.string(),workspace:e.string(),tier:e.enum(["claude-code","codex-cli","opencode","sdk","orchestrator"]).default("claude-code"),provider:e.string().optional(),model:e.string().optional(),systemPrompt:e.string().optional(),mentions:e.array(e.string()).default([]),intents:e.array(e.string()).default([]),maxDelegationDepth:e.number().int().min(0).max(50).default(5),mcp:e.record(e.string(),Ze).optional(),codegraph:e.boolean().default(!1),contextStrategy:e.enum(["layered","planner"]).optional(),contextReferences:e.boolean().default(!1),richMessages:e.boolean().default(!0),maxConcurrent:e.number().default(1),maxExecutionMinutes:e.number().int().min(1).max(240).default(20),preSpawnTimeoutSec:e.number().int().min(10).max(3600).default(300),drainTimeoutSeconds:e.number().int().min(0).max(86400).optional(),permissionMode:e.string().default("default"),billing:e.enum(["subscription","api"]).default("subscription"),toolUseRequired:e.array(e.string()).default([]),gitlabAutoReply:e.boolean().optional(),persistentProcess:e.boolean().default(!1),queueMode:e.enum(["collect","followup","drop"]).default("collect"),heartbeat:e.object({enabled:e.boolean().default(!1),intervalMinutes:e.number().default(30),prompt:e.string().default("Check inbox, pending tasks, and system health. Report anything that needs attention."),channel:e.string().default("heartbeat")}).default({}),access:e.enum(["private","public"]).default("private"),admin:e.boolean().optional(),subscriptions:e.array(Z).default([]),integrations:e.array(Ye).default([]),voice:N.optional(),presence:e.object({color:e.string().regex(/^#[0-9a-fA-F]{6}$/).optional(),palette:e.enum(U).optional(),initial:e.string().max(2).optional(),label:e.string().optional(),allowActions:e.boolean().optional()}).optional()}),Je=e.object({token:e.string(),agentBinding:e.string(),allowFrom:e.array(e.string()).optional(),pollInbound:e.boolean().default(!0)}),Qe=e.object({telegram:e.object({enabled:e.boolean().default(!1),accounts:e.record(e.string(),Je).default({}),policy:e.object({dm:e.enum(["pair","block"]).default("pair"),group:e.enum(["mention-required","all"]).default("mention-required"),allowFrom:e.array(e.string()).optional()}).default({})}).default({}),whatsapp:e.object({enabled:e.boolean().default(!1),sessionDir:e.string().default(".agentx/whatsapp-sessions"),defaultAgent:e.string().optional(),allowFrom:e.array(e.string()).optional(),routes:e.array(e.object({contact:e.string().optional(),group:e.string().optional(),agent:e.string()})).default([]),ingest:e.object({enabled:e.boolean().default(!1),mode:e.enum(["metadata-only","messages"]).default("metadata-only"),allowContacts:e.array(e.string()).default([]),allowGroups:e.array(e.string()).default([]),denyContacts:e.array(e.string()).default([]),denyGroups:e.array(e.string()).default([]),messageCap:e.number().int().min(1).max(500).default(50),historyDays:e.number().int().min(1).max(365).default(30),contactRefreshDays:e.number().int().min(1).max(90).default(7),throttle:e.object({minMsBetweenCalls:e.number().int().min(100).default(1500),maxCallsPerMinute:e.number().int().min(1).default(20),maxChatsPerSweep:e.number().int().min(1).default(25)}).default({}),retentionDays:e.number().int().min(0).default(0)}).default({})}).default({}),gitlab:e.object({enabled:e.boolean().default(!1),webhookPort:e.number().default(18810),webhookSecret:e.string().optional(),host:e.string().default("https://gitlab.com"),token:e.string().optional(),autoReplyLegacy:e.boolean().default(!0),routes:e.array(e.object({project:e.string(),agent:e.string()})).default([]),agentMappings:e.array(e.object({agentId:e.string(),gitlabUsernames:e.array(e.string()).default([]),keywords:e.array(e.string()).default([]),token:e.string().optional(),node:e.string().optional()})).default([]),agentUsernamePrefixes:e.array(e.string().min(1)).default([])}).default({}),github:e.object({enabled:e.boolean().default(!1),autoReplyLegacy:e.boolean().default(!0),token:e.string().optional(),tokenFile:e.string().optional(),appId:e.number().optional(),clientId:e.string().optional(),privateKeyFile:e.string().optional(),webhookSecret:e.string().optional(),routes:e.array(e.object({repo:e.string(),agent:e.string()})).default([]),agentMappings:e.array(e.object({agentId:e.string(),githubUsernames:e.array(e.string()).default([]),token:e.string().optional(),tokenFile:e.string().optional(),node:e.string().optional()})).default([])}).default({}),ntfy:e.object({enabled:e.boolean().default(!1),server:e.string().default("https://ntfy.sh"),topic:e.string().optional(),token:e.string().optional(),defaultPriority:e.number().int().min(1).max(5).default(3),defaultTitle:e.string().optional()}).default({}),push:e.object({enabled:e.boolean().default(!1),keysFile:e.string().default(".agentx/push-keys.json"),subject:e.string().regex(/^(mailto:|https:\/\/)/,"must start with mailto: or https://").optional(),relayTo:e.string().optional(),ttlSeconds:e.number().int().min(0).max(2419200).default(86400),keepRecent:e.number().int().min(0).max(1e3).default(50),allowedHosts:e.array(e.string().min(1)).default(["fcm.googleapis.com","push.services.mozilla.com","push.apple.com","notify.windows.com"])}).default({}),webrtc:e.object({enabled:e.boolean().default(!1),stunServers:e.array(e.string()).default(["stun:stun.l.google.com:19302"]),turnServers:e.array(e.object({urls:e.string(),username:e.string().optional(),credential:e.string().optional()})).default([]),allowedCallers:e.array(e.string()).default([]),ringNotify:e.array(e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()})).default([]),callUrlBase:e.string().optional(),bot:e.object({enabled:e.boolean().default(!1),defaultAgentId:e.string().optional(),whisperBackend:e.enum(["auto","mlx","openai"]).default("auto"),whisperModel:e.string().optional(),whisperLanguage:e.string().default("auto"),mlxBinary:e.string().optional(),transcriptChannel:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional(),maxCallMinutes:e.number().int().min(1).max(240).default(30)}).default({})}).default({})}),et=e.object({enabled:e.boolean().default(!0),schedule:e.string(),timezone:e.string().default("UTC"),agent:e.string(),prompt:e.string().default(""),command:e.string().optional(),timeout:e.number().default(600),model:e.string().optional(),maxOutputTokens:e.number().int().min(50).max(8e3).optional(),autonomy:_.optional(),onError:e.union([e.enum(["log","notify","disable"]),e.array(e.enum(["log","notify","disable"]))]).default("log").transform(t=>Array.isArray(t)?t:[t]),notify:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional(),fireToken:e.string().optional(),createdBy:e.string().optional(),approval:e.object({action:e.enum(["create","delete"]),requestedBy:e.string(),requestedAt:e.string()}).optional()}).refine(t=>!!(t.command?.trim()||t.prompt?.trim()),{message:"a cron needs either a prompt (dispatch an agent) or a command (run it directly)"}).refine(t=>!(t.command?.trim()&&t.autonomy&&t.autonomy!=="act"),{message:"autonomy applies to agent routines; a command cron runs no agent (remove autonomy or the command)"}),tt=e.object({name:e.string(),triggers:e.array(e.object({pattern:e.string(),channel:e.string().optional()})),allowedContacts:e.array(e.string()).optional(),agent:e.string(),prompt:e.string(),schedule:e.string().optional(),timezone:e.string().default("UTC"),notify:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional()}),nt=e.object({url:e.string(),name:e.string(),token:e.string().optional()}),ot=e.object({name:e.string(),agent:e.string(),enabled:e.boolean().default(!0)}),at=e.object({enabled:e.boolean().default(!1),peers:e.array(nt).default([]),inboxes:e.array(ot).default([]),discovery:e.enum(["static","mdns"]).default("static"),healthCheck:e.object({interval:e.number().default(60),timeout:e.number().default(10)}).default({}),feed:e.object({enabled:e.boolean().default(!0),skipTypes:e.array(e.string().min(1)).default(["task:step"])}).default({}),delegation:e.object({asyncWhenHuman:e.boolean().default(!0),timeoutMinutes:e.number().int().min(1).max(240).default(30)}).default({})}),rt=e.object({enabled:e.boolean().default(!1),baseDir:e.string().default(".agentx/graph"),draftAgent:e.string().optional(),reviewAgent:e.string().optional(),autoApproveStructure:e.enum(["strict","extend-leaves","any"]).default("extend-leaves"),autoApproveConfidence:e.number().min(0).max(1).default(1),classifierModel:e.string().default("claude-haiku-4-5-20251001"),retrievalWeights:e.object({graph:e.number().min(0).default(.6),bm25:e.number().min(0).default(.4)}).default({})}).default({}),it=e.object({mode:e.enum(["off","shadow","active"]).default("off"),backend:e.string().optional(),model:e.string().optional(),timeoutMs:e.number().int().min(100).default(1e4),temperature:e.number().min(.01).default(1),explore:e.number().min(0).max(1).default(.15),holdout:e.number().min(0).max(1).optional()}).default({}),st=e.object({enabled:e.boolean().default(!1),dbPath:e.string().default(".agentx/decisions/decisions.sqlite"),redactState:e.boolean().default(!1),keepStateRows:e.number().int().min(0).default(2e3),defaultBackend:e.string().default("local"),backends:e.object({local:e.object({provider:e.string().default("claude-code"),model:e.string().default("claude-haiku-4-5-20251001"),structureMode:e.enum(["auto","tool","text"]).default("auto"),normalizeProbabilities:e.boolean().default(!0),nRetryMalformedStructure:e.number().int().min(0).max(3).default(1),maxStateChars:e.number().int().min(500).default(24e3)}).default({}),simpleJev:e.object({baseUrl:e.string().default("http://127.0.0.1:8000/v1"),model:e.string().optional(),apiKeyEnv:e.string().optional(),timeoutMs:e.number().int().min(100).default(3e4),maxStateChars:e.number().int().min(500).default(6e3),maxChoiceOptions:e.number().int().min(2).max(255).default(50)}).default({}),jev:e.object({baseUrl:e.string().default("https://openrouter.ai/api/alpha"),path:e.string().default("/decisions"),model:e.string().default("jev-latest"),apiKeyEnv:e.string().default("OPENROUTER_API_KEY"),timeoutMs:e.number().int().min(100).default(3e4),maxStateChars:e.number().int().min(500).default(9e4),maxChoiceOptions:e.number().int().min(2).max(255).default(255)}).default({}),typesafe:e.object({baseUrl:e.string().default("https://api.typesafe.ai/v1"),path:e.string().default("/systemone"),model:e.string().default("jev-latest"),apiKeyEnv:e.string().default("TYPESAFE_API_KEY"),timeoutMs:e.number().int().min(100).default(3e4),maxStateChars:e.number().int().min(500).default(9e4),maxChoiceOptions:e.number().int().min(2).max(255).default(255)}).default({})}).default({}),seats:e.record(e.string(),it).default({}),routing:e.object({cheapModel:e.string().optional(),cheapModels:e.object({"claude-code":e.string().optional(),"codex-cli":e.string().optional()}).optional()}).default({})}).default({}),lt=e.object({longTaskThreshold:e.number().default(30),destination:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional(),channel:e.string().optional(),on:e.object({taskComplete:e.boolean().default(!0),taskError:e.boolean().default(!0),taskQueued:e.boolean().default(!1)}).default({}),local:e.object({banner:e.boolean().default(!0),sound:e.boolean().default(!0),soundName:e.string().regex(/^[\w -]+$/).default("Glass"),volume:e.number().min(0).max(1).default(.4),icon:e.string().optional()}).default({})}).default({}),ut=e.object({x:e.number(),y:e.number(),width:e.number().positive(),height:e.number().positive()}),dt=e.object({maxPixels:e.number().int().positive().default(12e5),timeoutMs:e.number().int().positive().default(5e3),intervalMs:e.number().int().positive().default(100),changeThreshold:e.number().min(0).max(1).default(.015),stableMs:e.number().int().nonnegative().default(400),regions:e.record(e.string().regex(/^[a-z][\w-]*$/),ut).default({}),buffer:e.object({enabled:e.boolean().default(!1),seconds:e.number().positive().max(120).default(10),fps:e.number().positive().max(10).default(2),region:e.string().default("screen"),maxPixels:e.number().int().positive().default(3e5)}).default({})}).default({}),G=e.object({defaultExpiryDays:e.number().positive().max(365).default(3),maxExpiryDays:e.number().positive().max(365).default(30),laterHours:e.number().positive().max(24*30).default(24),notifyAgent:e.boolean().default(!0),digest:e.object({enabled:e.boolean().default(!0),time:e.string().regex(/^([01]\d|2[0-3]):[0-5]\d$/,"use HH:MM, 24-hour").default("09:00"),timezone:e.string().refine(t=>{try{return new Intl.DateTimeFormat("en-US",{timeZone:t}),!0}catch{return!1}},"unknown timezone").optional(),destination:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional()}).default({})}).default({}),Y=e.object({node:e.object({id:e.string(),name:e.string(),bind:e.string().default("127.0.0.1:18800"),defaultAgent:e.string().optional()}),providers:e.record(e.string(),qe).default({}),agents:e.record(e.string(),Xe).default({}),channels:Qe.default({}),crons:e.record(e.string(),et).default({}),services:e.record(e.string(),tt).default({}),notifications:lt,approvals:G,shutdown:e.object({drainTimeoutSeconds:e.number().int().min(0).max(86400).optional()}).default({}),resume:e.object({enabled:e.boolean().default(!0),maxAgeMinutes:e.number().int().positive().default(30),maxAttempts:e.number().int().min(0).default(1),reportOnlyChannels:e.array(e.string()).default([]),directChannels:e.array(e.string()).default([]),crashLoop:e.object({restarts:e.number().int().positive().default(3),windowMinutes:e.number().positive().default(10)}).default({})}).default({}),reminders:e.object({enabled:e.boolean().default(!1),lists:e.array(e.string().min(1)).default(["AgentX"]),pollSeconds:e.number().int().min(15).default(60),lookbackHours:e.number().positive().default(24),command:e.string().min(1).default("remindctl")}).default({}),events:e.object({ringSize:e.number().int().min(1).max(1e5).default(1e3)}).default({}),screen:dt,mesh:at.default({}),meshVoices:e.record(e.string(),N.omit({rate:!0,priority:!0,hotkey:!0}).extend({name:e.string().optional()})).default({}),voice:e.object({provider:q.default("system"),fallback:e.enum(["system","none"]).default("system"),system:K.optional(),locale:e.string().default("en"),listener:e.string().optional(),stt:e.enum(["auto","elevenlabs","local"]).default("auto"),allowUnmeasured:e.boolean().default(!1),localStt:e.enum(["mlx-whisper","parakeet"]).default("mlx-whisper"),endOfTurn:e.enum(["vad","volume"]).default("vad"),hotkeys:e.object({talk:h.default(b.talk),stop:h.default(b.stop),paste:h.default(b.paste)}).default({}),card:e.object({timeout:e.number().min(0).max(600).default(30),maxHeight:e.number().min(120).max(800).default(320)}).default({})}).default({}),business:j.optional(),boards:A,dashboard:T,graph:rt,decisions:st,workflows:e.object({enabled:e.boolean().default(!1),dir:e.string().default(".agentx/workflows"),n8n:e.object({baseUrl:e.string().default(""),apiKey:e.string().default("")}).default({baseUrl:"",apiKey:""}),matching:e.object({enabled:e.boolean().default(!1),mode:e.enum(["suggest","auto"]).default("suggest"),autoRunThreshold:e.number().min(0).max(1).default(.85),suggestThreshold:e.number().min(0).max(1).default(.65)}).default({}),editor:e.enum(["disabled","readonly","edit"]).default("edit")}).default({}),procedures:e.object({enabled:e.boolean().default(!0),dir:e.string().default(".agentx/procedures"),extraction:e.object({enabled:e.boolean().default(!1),onTaskCompletion:e.boolean().default(!1),minOccurrences:e.number().int().min(2).default(3),sinceDays:e.number().int().min(1).default(7),maxClusters:e.number().int().min(1).default(5),via:e.string().optional()}).default({}),injection:e.object({enabled:e.boolean().default(!0),maxProcedures:e.number().int().min(1).default(2),minScore:e.number().min(0).max(1).default(.5)}).default({})}).default({}),webhooks:e.array(e.object({id:e.string().regex(/^[a-z0-9][a-z0-9_-]*$/,"webhook id must be lowercase slug"),source:e.string().min(1),agentId:e.string(),secretEnv:e.string().optional(),description:e.string().optional(),enabled:e.boolean().default(!0),node:e.string().optional(),triggers:e.record(e.string(),e.string()).optional(),defaultWorkflow:e.string().optional()})).default([]),session:e.object({staleMinutes:e.number().int().min(1).max(1440).default(720),maxTurnsPerSession:e.number().int().min(2).max(200).default(40),tierTwoThresholdTokens:e.number().int().min(5e4).max(2e5).default(18e4),contextStrategy:e.enum(["layered","planner"]).default("layered"),maxClaudeCodeDispatchesPerHour:e.number().int().min(1).max(1e4).default(80),maxClaudeCodeDispatchesPer5h:e.number().int().min(1).max(5e4).default(180),continuityStateTurns:e.number().int().min(0).max(5).default(0)}).default({}),plugins:e.array(e.string()).default([]),processPool:e.object({maxIdleSeconds:e.number().int().min(5).max(86400).default(30),maxAgeSeconds:e.number().int().min(60).max(86400).default(2700),sweepIntervalSeconds:e.number().int().min(1).max(300).default(5)}).default({})})});export{xt as a,St as b,$ as c,_ as d,vt as e,jt as f,Et as g,O as h,Fe as i,Tt as j,b as k,F as l,g as m,U as n,We as o,Ct as p,W as q,Ve as r,Z as s,G as t,Y as u,S as v,pt as w,mt as x,ft as y,gt as z};
15
- //# sourceMappingURL=chunk-DTX4I5LQ.js.map
14
+ ${d}${k}`)}return l.data}function mt(t){let n=[];for(let[a,o]of Object.entries(t.agents)){if(!y(o.workspace)){n.push(`Agent "${a}": workspace not found at ${o.workspace}`);continue}if(o.tier==="claude-code"){let l=x(o.workspace,".claude");y(l)||n.push(`Agent "${a}": no .claude/ directory in workspace ${o.workspace}. Claude Code native features (hooks, MCP, skills) won't be available.`)}let r=o.provider||"claude",i=t.providers[r];!["claude-code","codex-cli","opencode"].includes(o.tier)&&(!i||!i.apiKey)&&n.push(`Agent "${a}": provider "${r}" has no API key configured. Set providers.${r}.apiKey in config or use a CLI-backed tier ("claude-code", "codex-cli", or "opencode").`)}for(let[a,o]of Object.entries(t.crons))t.agents[o.agent]||n.push(`Cron "${a}": references unknown agent "${o.agent}"`);if(t.channels.telegram.enabled)for(let[a,o]of Object.entries(t.channels.telegram.accounts))t.agents[o.agentBinding]||n.push(`Telegram account "${a}": references unknown agent "${o.agentBinding}"`);return n}var qe,Ke,Ne,Ze,Ge,Ye,Ve,q,K,h,N,Z,Xe,Je,Qe,et,tt,nt,ot,at,rt,it,st,lt,ut,dt,G,Y,gt=m(()=>{E();$();O();F();W();qe=e.object({apiKey:e.string().optional(),defaultModel:e.string().optional(),baseUrl:e.string().optional(),thinking:e.boolean().optional()}),Ke=e.object({type:e.literal("stdio").optional(),command:e.string(),args:e.array(e.string()).default([]),env:e.record(e.string(),e.string()).optional()}),Ne=e.object({type:e.literal("http"),url:e.string().url(),headers:e.record(e.string(),e.string()).optional()}),Ze=e.union([Ne,Ke]),Ge=e.object({tokenEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),privateAppTokenEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),apiKeyEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),refreshTokenEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),clientIdEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),clientSecretEnv:e.string().regex(/^[A-Z][A-Z0-9_]*$/).optional(),auth:e.literal("keyring").optional(),sessionDir:e.string().optional()}).strict(),Ye=e.object({kind:e.string().min(1),label:e.string().min(1),credentials:Ge.default({}),metadata:e.record(e.string(),e.union([e.string(),e.number(),e.boolean()])).default({}),enabled:e.boolean().default(!0)}),Ve=["telegram-bot","whatsapp","gitlab-user","github-user","gmail","hotmail","smtp","hubspot","salesforce","pipedrive","odoo","trello","linear","asana","jira","notion","stripe","sentry","vercel","twilio","custom"],q=e.enum(["system","elevenlabs"]),K=e.union([e.string(),e.record(e.string(),e.string())]),h=e.string().superRefine((t,n)=>{let a=z(t);a&&n.addIssue({code:e.ZodIssueCode.custom,message:`shortcut ${a}`})}),N=e.object({provider:q.optional(),system:K.optional(),elevenlabsVoiceId:e.string().optional(),gender:e.enum(["female","male","neutral"]).optional(),style:e.string().optional(),intro:e.string().optional(),narrate:e.enum(["off","on","all"]).optional(),rate:e.number().min(.75).max(1.5).optional(),priority:e.enum(["high","normal","low"]).optional(),hotkey:h.optional()}),Z=e.object({kinds:e.array(e.string().min(1)).min(1),agents:e.array(e.string().min(1)).optional(),nodes:e.array(e.string().min(1)).optional(),match:e.string().min(1).optional(),delivery:e.enum(["pull","digest","wake"]).default("pull"),maxPerHour:e.number().int().min(1).max(60).default(4)}),Xe=e.object({name:e.string(),workspace:e.string(),tier:e.enum(["claude-code","codex-cli","opencode","sdk","orchestrator"]).default("claude-code"),provider:e.string().optional(),model:e.string().optional(),systemPrompt:e.string().optional(),mentions:e.array(e.string()).default([]),intents:e.array(e.string()).default([]),maxDelegationDepth:e.number().int().min(0).max(50).default(5),mcp:e.record(e.string(),Ze).optional(),codegraph:e.boolean().default(!1),contextStrategy:e.enum(["layered","planner"]).optional(),contextReferences:e.boolean().default(!1),richMessages:e.boolean().default(!0),maxConcurrent:e.number().default(1),maxExecutionMinutes:e.number().int().min(1).max(240).default(20),preSpawnTimeoutSec:e.number().int().min(10).max(3600).default(300),drainTimeoutSeconds:e.number().int().min(0).max(86400).optional(),permissionMode:e.string().default("default"),billing:e.enum(["subscription","api"]).default("subscription"),toolUseRequired:e.array(e.string()).default([]),gitlabAutoReply:e.boolean().optional(),persistentProcess:e.boolean().default(!1),queueMode:e.enum(["collect","followup","drop"]).default("collect"),heartbeat:e.object({enabled:e.boolean().default(!1),intervalMinutes:e.number().default(30),prompt:e.string().default("Check inbox, pending tasks, and system health. Report anything that needs attention."),channel:e.string().default("heartbeat")}).default({}),access:e.enum(["private","public"]).default("private"),admin:e.boolean().optional(),subscriptions:e.array(Z).default([]),integrations:e.array(Ye).default([]),voice:N.optional(),presence:e.object({color:e.string().regex(/^#[0-9a-fA-F]{6}$/).optional(),palette:e.enum(U).optional(),initial:e.string().max(2).optional(),label:e.string().optional(),allowActions:e.boolean().optional()}).optional()}),Je=e.object({token:e.string(),agentBinding:e.string(),allowFrom:e.array(e.string()).optional(),pollInbound:e.boolean().default(!0)}),Qe=e.object({telegram:e.object({enabled:e.boolean().default(!1),accounts:e.record(e.string(),Je).default({}),policy:e.object({dm:e.enum(["pair","block"]).default("pair"),group:e.enum(["mention-required","all"]).default("mention-required"),allowFrom:e.array(e.string()).optional()}).default({})}).default({}),whatsapp:e.object({enabled:e.boolean().default(!1),sessionDir:e.string().default(".agentx/whatsapp-sessions"),defaultAgent:e.string().optional(),allowFrom:e.array(e.string()).optional(),routes:e.array(e.object({contact:e.string().optional(),group:e.string().optional(),agent:e.string()})).default([]),ingest:e.object({enabled:e.boolean().default(!1),mode:e.enum(["metadata-only","messages"]).default("metadata-only"),allowContacts:e.array(e.string()).default([]),allowGroups:e.array(e.string()).default([]),denyContacts:e.array(e.string()).default([]),denyGroups:e.array(e.string()).default([]),messageCap:e.number().int().min(1).max(500).default(50),historyDays:e.number().int().min(1).max(365).default(30),contactRefreshDays:e.number().int().min(1).max(90).default(7),throttle:e.object({minMsBetweenCalls:e.number().int().min(100).default(1500),maxCallsPerMinute:e.number().int().min(1).default(20),maxChatsPerSweep:e.number().int().min(1).default(25)}).default({}),retentionDays:e.number().int().min(0).default(0)}).default({})}).default({}),gitlab:e.object({enabled:e.boolean().default(!1),webhookPort:e.number().default(18810),webhookSecret:e.string().optional(),host:e.string().default("https://gitlab.com"),token:e.string().optional(),autoReplyLegacy:e.boolean().default(!0),routes:e.array(e.object({project:e.string(),agent:e.string()})).default([]),agentMappings:e.array(e.object({agentId:e.string(),gitlabUsernames:e.array(e.string()).default([]),keywords:e.array(e.string()).default([]),token:e.string().optional(),node:e.string().optional()})).default([]),agentUsernamePrefixes:e.array(e.string().min(1)).default([])}).default({}),github:e.object({enabled:e.boolean().default(!1),autoReplyLegacy:e.boolean().default(!0),token:e.string().optional(),tokenFile:e.string().optional(),appId:e.number().optional(),clientId:e.string().optional(),privateKeyFile:e.string().optional(),webhookSecret:e.string().optional(),routes:e.array(e.object({repo:e.string(),agent:e.string()})).default([]),agentMappings:e.array(e.object({agentId:e.string(),githubUsernames:e.array(e.string()).default([]),token:e.string().optional(),tokenFile:e.string().optional(),node:e.string().optional()})).default([])}).default({}),ntfy:e.object({enabled:e.boolean().default(!1),server:e.string().default("https://ntfy.sh"),topic:e.string().optional(),token:e.string().optional(),defaultPriority:e.number().int().min(1).max(5).default(3),defaultTitle:e.string().optional()}).default({}),push:e.object({enabled:e.boolean().default(!1),keysFile:e.string().default(".agentx/push-keys.json"),subject:e.string().regex(/^(mailto:|https:\/\/)/,"must start with mailto: or https://").optional(),relayTo:e.string().optional(),ttlSeconds:e.number().int().min(0).max(2419200).default(86400),keepRecent:e.number().int().min(0).max(1e3).default(50),allowedHosts:e.array(e.string().min(1)).default(["fcm.googleapis.com","push.services.mozilla.com","push.apple.com","notify.windows.com"])}).default({}),webrtc:e.object({enabled:e.boolean().default(!1),stunServers:e.array(e.string()).default(["stun:stun.l.google.com:19302"]),turnServers:e.array(e.object({urls:e.string(),username:e.string().optional(),credential:e.string().optional()})).default([]),allowedCallers:e.array(e.string()).default([]),ringNotify:e.array(e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()})).default([]),callUrlBase:e.string().optional(),bot:e.object({enabled:e.boolean().default(!1),defaultAgentId:e.string().optional(),whisperBackend:e.enum(["auto","mlx","openai"]).default("auto"),whisperModel:e.string().optional(),whisperLanguage:e.string().default("auto"),mlxBinary:e.string().optional(),transcriptChannel:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional(),maxCallMinutes:e.number().int().min(1).max(240).default(30)}).default({})}).default({})}),et=e.object({enabled:e.boolean().default(!0),schedule:e.string(),timezone:e.string().default("UTC"),agent:e.string(),prompt:e.string().default(""),command:e.string().optional(),timeout:e.number().default(600),model:e.string().optional(),maxOutputTokens:e.number().int().min(50).max(8e3).optional(),autonomy:_.optional(),onError:e.union([e.enum(["log","notify","disable"]),e.array(e.enum(["log","notify","disable"]))]).default("log").transform(t=>Array.isArray(t)?t:[t]),notify:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional(),fireToken:e.string().optional(),createdBy:e.string().optional(),approval:e.object({action:e.enum(["create","delete"]),requestedBy:e.string(),requestedAt:e.string()}).optional()}).refine(t=>!!(t.command?.trim()||t.prompt?.trim()),{message:"a cron needs either a prompt (dispatch an agent) or a command (run it directly)"}).refine(t=>!(t.command?.trim()&&t.autonomy&&t.autonomy!=="act"),{message:"autonomy applies to agent routines; a command cron runs no agent (remove autonomy or the command)"}),tt=e.object({name:e.string(),triggers:e.array(e.object({pattern:e.string(),channel:e.string().optional()})),allowedContacts:e.array(e.string()).optional(),agent:e.string(),prompt:e.string(),schedule:e.string().optional(),timezone:e.string().default("UTC"),notify:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional()}),nt=e.object({url:e.string(),name:e.string(),token:e.string().optional()}),ot=e.object({name:e.string(),agent:e.string(),enabled:e.boolean().default(!0)}),at=e.object({enabled:e.boolean().default(!1),peers:e.array(nt).default([]),inboxes:e.array(ot).default([]),discovery:e.enum(["static","mdns"]).default("static"),healthCheck:e.object({interval:e.number().default(60),timeout:e.number().default(10)}).default({}),feed:e.object({enabled:e.boolean().default(!0),skipTypes:e.array(e.string().min(1)).default(["task:step"])}).default({}),delegation:e.object({asyncWhenHuman:e.boolean().default(!0),timeoutMinutes:e.number().int().min(1).max(240).default(30)}).default({})}),rt=e.object({enabled:e.boolean().default(!1),baseDir:e.string().default(".agentx/graph"),draftAgent:e.string().optional(),reviewAgent:e.string().optional(),autoApproveStructure:e.enum(["strict","extend-leaves","any"]).default("extend-leaves"),autoApproveConfidence:e.number().min(0).max(1).default(1),classifierModel:e.string().default("claude-haiku-4-5-20251001"),retrievalWeights:e.object({graph:e.number().min(0).default(.6),bm25:e.number().min(0).default(.4)}).default({})}).default({}),it=e.object({mode:e.enum(["off","shadow","active"]).default("off"),backend:e.string().optional(),model:e.string().optional(),timeoutMs:e.number().int().min(100).default(1e4),temperature:e.number().min(.01).default(1),explore:e.number().min(0).max(1).default(.15),holdout:e.number().min(0).max(1).optional()}).default({}),st=e.object({enabled:e.boolean().default(!1),dbPath:e.string().default(".agentx/decisions/decisions.sqlite"),redactState:e.boolean().default(!1),keepStateRows:e.number().int().min(0).default(2e3),defaultBackend:e.string().default("local"),backends:e.object({local:e.object({provider:e.string().default("claude-code"),model:e.string().default("claude-haiku-4-5-20251001"),structureMode:e.enum(["auto","tool","text"]).default("auto"),normalizeProbabilities:e.boolean().default(!0),nRetryMalformedStructure:e.number().int().min(0).max(3).default(1),maxStateChars:e.number().int().min(500).default(24e3)}).default({}),simpleJev:e.object({baseUrl:e.string().default("http://127.0.0.1:8000/v1"),model:e.string().optional(),apiKeyEnv:e.string().optional(),timeoutMs:e.number().int().min(100).default(3e4),maxStateChars:e.number().int().min(500).default(6e3),maxChoiceOptions:e.number().int().min(2).max(255).default(50)}).default({}),jev:e.object({baseUrl:e.string().default("https://openrouter.ai/api/alpha"),path:e.string().default("/decisions"),model:e.string().default("jev-latest"),apiKeyEnv:e.string().default("OPENROUTER_API_KEY"),timeoutMs:e.number().int().min(100).default(3e4),maxStateChars:e.number().int().min(500).default(9e4),maxChoiceOptions:e.number().int().min(2).max(255).default(255)}).default({}),typesafe:e.object({baseUrl:e.string().default("https://api.typesafe.ai/v1"),path:e.string().default("/systemone"),model:e.string().default("jev-latest"),apiKeyEnv:e.string().default("TYPESAFE_API_KEY"),timeoutMs:e.number().int().min(100).default(3e4),maxStateChars:e.number().int().min(500).default(9e4),maxChoiceOptions:e.number().int().min(2).max(255).default(255)}).default({})}).default({}),seats:e.record(e.string(),it).default({}),routing:e.object({cheapModel:e.string().optional(),cheapModels:e.object({"claude-code":e.string().optional(),"codex-cli":e.string().optional()}).optional()}).default({})}).default({}),lt=e.object({longTaskThreshold:e.number().default(30),destination:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional(),channel:e.string().optional(),on:e.object({taskComplete:e.boolean().default(!0),taskError:e.boolean().default(!0),taskQueued:e.boolean().default(!1)}).default({}),local:e.object({banner:e.boolean().default(!0),sound:e.boolean().default(!0),soundName:e.string().regex(/^[\w -]+$/).default("Glass"),volume:e.number().min(0).max(1).default(.4),icon:e.string().optional()}).default({})}).default({}),ut=e.object({x:e.number(),y:e.number(),width:e.number().positive(),height:e.number().positive()}),dt=e.object({maxPixels:e.number().int().positive().default(12e5),timeoutMs:e.number().int().positive().default(5e3),intervalMs:e.number().int().positive().default(100),changeThreshold:e.number().min(0).max(1).default(.015),stableMs:e.number().int().nonnegative().default(400),regions:e.record(e.string().regex(/^[a-z][\w-]*$/),ut).default({}),buffer:e.object({enabled:e.boolean().default(!1),seconds:e.number().positive().max(120).default(10),fps:e.number().positive().max(10).default(2),region:e.string().default("screen"),maxPixels:e.number().int().positive().default(3e5)}).default({})}).default({}),G=e.object({defaultExpiryDays:e.number().positive().max(365).default(3),maxExpiryDays:e.number().positive().max(365).default(30),laterHours:e.number().positive().max(24*30).default(24),notifyAgent:e.boolean().default(!0),digest:e.object({enabled:e.boolean().default(!0),time:e.string().regex(/^([01]\d|2[0-3]):[0-5]\d$/,"use HH:MM, 24-hour").default("09:00"),timezone:e.string().refine(t=>{try{return new Intl.DateTimeFormat("en-US",{timeZone:t}),!0}catch{return!1}},"unknown timezone").optional(),destination:e.object({channel:e.string(),chatId:e.string(),accountId:e.string().optional()}).optional()}).default({})}).default({}),Y=e.object({node:e.object({id:e.string(),name:e.string(),bind:e.string().default("127.0.0.1:18800"),defaultAgent:e.string().optional()}),providers:e.record(e.string(),qe).default({}),agents:e.record(e.string(),Xe).default({}),channels:Qe.default({}),crons:e.record(e.string(),et).default({}),services:e.record(e.string(),tt).default({}),notifications:lt,approvals:G,shutdown:e.object({drainTimeoutSeconds:e.number().int().min(0).max(86400).optional()}).default({}),resume:e.object({enabled:e.boolean().default(!0),maxAgeMinutes:e.number().int().positive().default(30),maxAttempts:e.number().int().min(0).default(1),reportOnlyChannels:e.array(e.string()).default([]),directChannels:e.array(e.string()).default([]),crashLoop:e.object({restarts:e.number().int().positive().default(3),windowMinutes:e.number().positive().default(10)}).default({})}).default({}),reminders:e.object({enabled:e.boolean().default(!1),lists:e.array(e.string().min(1)).default(["AgentX"]),pollSeconds:e.number().int().min(15).default(60),lookbackHours:e.number().positive().default(24),command:e.string().min(1).default("remindctl")}).default({}),demo:e.object({startupTimeoutSeconds:e.number().int().positive().max(3600).optional()}).default({}),events:e.object({ringSize:e.number().int().min(1).max(1e5).default(1e3)}).default({}),screen:dt,mesh:at.default({}),meshVoices:e.record(e.string(),N.omit({rate:!0,priority:!0,hotkey:!0}).extend({name:e.string().optional()})).default({}),voice:e.object({provider:q.default("system"),fallback:e.enum(["system","none"]).default("system"),system:K.optional(),locale:e.string().default("en"),listener:e.string().optional(),stt:e.enum(["auto","elevenlabs","local"]).default("auto"),allowUnmeasured:e.boolean().default(!1),localStt:e.enum(["mlx-whisper","parakeet"]).default("mlx-whisper"),endOfTurn:e.enum(["vad","volume"]).default("vad"),hotkeys:e.object({talk:h.default(b.talk),stop:h.default(b.stop),paste:h.default(b.paste)}).default({}),card:e.object({timeout:e.number().min(0).max(600).default(30),maxHeight:e.number().min(120).max(800).default(320)}).default({})}).default({}),business:j.optional(),boards:A,dashboard:T,graph:rt,decisions:st,workflows:e.object({enabled:e.boolean().default(!1),dir:e.string().default(".agentx/workflows"),n8n:e.object({baseUrl:e.string().default(""),apiKey:e.string().default("")}).default({baseUrl:"",apiKey:""}),matching:e.object({enabled:e.boolean().default(!1),mode:e.enum(["suggest","auto"]).default("suggest"),autoRunThreshold:e.number().min(0).max(1).default(.85),suggestThreshold:e.number().min(0).max(1).default(.65)}).default({}),editor:e.enum(["disabled","readonly","edit"]).default("edit")}).default({}),procedures:e.object({enabled:e.boolean().default(!0),dir:e.string().default(".agentx/procedures"),extraction:e.object({enabled:e.boolean().default(!1),onTaskCompletion:e.boolean().default(!1),minOccurrences:e.number().int().min(2).default(3),sinceDays:e.number().int().min(1).default(7),maxClusters:e.number().int().min(1).default(5),via:e.string().optional()}).default({}),injection:e.object({enabled:e.boolean().default(!0),maxProcedures:e.number().int().min(1).default(2),minScore:e.number().min(0).max(1).default(.5)}).default({})}).default({}),webhooks:e.array(e.object({id:e.string().regex(/^[a-z0-9][a-z0-9_-]*$/,"webhook id must be lowercase slug"),source:e.string().min(1),agentId:e.string(),secretEnv:e.string().optional(),description:e.string().optional(),enabled:e.boolean().default(!0),node:e.string().optional(),triggers:e.record(e.string(),e.string()).optional(),defaultWorkflow:e.string().optional()})).default([]),session:e.object({staleMinutes:e.number().int().min(1).max(1440).default(720),maxTurnsPerSession:e.number().int().min(2).max(200).default(40),tierTwoThresholdTokens:e.number().int().min(5e4).max(2e5).default(18e4),contextStrategy:e.enum(["layered","planner"]).default("layered"),maxClaudeCodeDispatchesPerHour:e.number().int().min(1).max(1e4).default(80),maxClaudeCodeDispatchesPer5h:e.number().int().min(1).max(5e4).default(180),continuityStateTurns:e.number().int().min(0).max(5).default(0)}).default({}),plugins:e.array(e.string()).default([]),processPool:e.object({maxIdleSeconds:e.number().int().min(5).max(86400).default(30),maxAgeSeconds:e.number().int().min(60).max(86400).default(2700),sweepIntervalSeconds:e.number().int().min(1).max(300).default(5)}).default({})})});export{xt as a,St as b,$ as c,_ as d,vt as e,jt as f,Et as g,O as h,Fe as i,Tt as j,b as k,F as l,g as m,U as n,We as o,Ct as p,W as q,Ve as r,Z as s,G as t,Y as u,S as v,pt as w,mt as x,ft as y,gt as z};
15
+ //# sourceMappingURL=chunk-XXBW7CFN.js.map