@agenticmail/enterprise 0.5.319 → 0.5.321
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.
- package/CHANGELOG.md +68 -0
- package/CODE_OF_CONDUCT.md +31 -0
- package/README.md +118 -38
- package/SECURITY.md +42 -0
- package/dist/agent-heartbeat-3FWNHZFX.js +510 -0
- package/dist/agent-heartbeat-4RWHZR7H.js +510 -0
- package/dist/agent-heartbeat-6ZGB5ILY.js +510 -0
- package/dist/agent-heartbeat-BIVHLKFM.js +510 -0
- package/dist/agent-heartbeat-HRKVFK2T.js +510 -0
- package/dist/agent-heartbeat-JC5GWVXD.js +510 -0
- package/dist/agent-heartbeat-K6A4HMHB.js +510 -0
- package/dist/agent-heartbeat-LCDXWFVB.js +510 -0
- package/dist/agent-heartbeat-P7HZCZAQ.js +510 -0
- package/dist/agent-heartbeat-PUIRSNIO.js +510 -0
- package/dist/agent-heartbeat-SN5ILQ6Y.js +510 -0
- package/dist/agent-heartbeat-TW5YTDYC.js +510 -0
- package/dist/agent-heartbeat-Z2QQXROL.js +510 -0
- package/dist/agent-notify-OEQBCZLN.js +43 -0
- package/dist/{agent-tools-263HM5QU.js → agent-tools-3W7XLUYA.js} +1 -1
- package/dist/agent-tools-4QK7LLNP.js +9 -0
- package/dist/agent-tools-54VZGT6L.js +9 -0
- package/dist/{agent-tools-AT4D276V.js → agent-tools-AYYDPO27.js} +7 -7
- package/dist/{agent-tools-MSTAPX2I.js → agent-tools-F2X47FKF.js} +7 -7
- package/dist/{agent-tools-FA26SY5O.js → agent-tools-O6W3QAZL.js} +11 -6
- package/dist/agent-tools-OAWVZBMW.js +9 -0
- package/dist/agent-tools-QCCU74PN.js +13949 -0
- package/dist/chunk-2LHUARN6.js +4929 -0
- package/dist/chunk-2WVCNCYC.js +5087 -0
- package/dist/{chunk-6PWDS7KY.js → chunk-3FM6YQUK.js} +20 -20
- package/dist/chunk-3UAFHUEC.js +212 -0
- package/dist/{chunk-WJO57PMO.js → chunk-46GOWZT4.js} +20 -20
- package/dist/{chunk-BNRE7TSX.js → chunk-5KYJAUZV.js} +3 -3
- package/dist/chunk-6C5PKREN.js +467 -0
- package/dist/{chunk-447MTPZF.js → chunk-6ZMLNEHB.js} +3 -3
- package/dist/chunk-BPZQT5N5.js +25652 -0
- package/dist/chunk-BQM7MBPS.js +1380 -0
- package/dist/{chunk-ZRFKGPIU.js → chunk-C52OQNNY.js} +20 -20
- package/dist/chunk-C7HGQF4Y.js +25652 -0
- package/dist/chunk-CAHNZGGK.js +25656 -0
- package/dist/{chunk-FL3CH3ET.js → chunk-CK7R6UHE.js} +51 -27
- package/dist/chunk-D36RPWB7.js +25652 -0
- package/dist/{chunk-36NM2B4C.js → chunk-DJK2UPFH.js} +63 -93
- package/dist/chunk-DM7FTF7W.js +4929 -0
- package/dist/chunk-DMD24UFZ.js +5101 -0
- package/dist/{chunk-36XNMIHA.js → chunk-DXZGPUAF.js} +20 -20
- package/dist/chunk-F46WB5IL.js +5087 -0
- package/dist/chunk-F5QG5SQH.js +5087 -0
- package/dist/{chunk-JGEVQZDR.js → chunk-FLQ5FLHW.js} +13 -16
- package/dist/chunk-H7GP733U.js +5087 -0
- package/dist/{chunk-OZSQLOV6.js → chunk-HHBXWB5U.js} +415 -19
- package/dist/{chunk-D24JY75H.js → chunk-IMXS4N6W.js} +3 -3
- package/dist/{chunk-6PVBV6ZP.js → chunk-JNMDD7JY.js} +3 -3
- package/dist/chunk-JTV5LA47.js +1519 -0
- package/dist/chunk-KV6G7NZX.js +1519 -0
- package/dist/chunk-MU5MEBIK.js +1519 -0
- package/dist/chunk-NLT5MC7X.js +465 -0
- package/dist/{chunk-GTFZZUXX.js → chunk-NVLYIM4J.js} +51 -27
- package/dist/{chunk-6G5SXLXC.js → chunk-NZY2BIZH.js} +63 -93
- package/dist/chunk-O42L6G67.js +1519 -0
- package/dist/chunk-OCNERGGM.js +4891 -0
- package/dist/chunk-OJSNHONE.js +1519 -0
- package/dist/{chunk-2TAZJWJN.js → chunk-OWL3QVH7.js} +18 -0
- package/dist/{chunk-P3HVY2HS.js → chunk-OWTLNV4Q.js} +382 -7
- package/dist/chunk-PCNYEP6T.js +4891 -0
- package/dist/{chunk-YL3Z5KPR.js → chunk-PI4AQ4Z6.js} +438 -15
- package/dist/chunk-PN3EGTCA.js +194 -0
- package/dist/chunk-Q37UKNRC.js +1519 -0
- package/dist/chunk-QXTC6J7H.js +5087 -0
- package/dist/{chunk-SPBQVNDI.js → chunk-RKERL5LZ.js} +25 -21
- package/dist/chunk-RVBK2IOX.js +25652 -0
- package/dist/chunk-SAKODCZ5.js +4891 -0
- package/dist/{chunk-XV4TU65E.js → chunk-SALGFC5L.js} +51 -27
- package/dist/chunk-STGWZ2MS.js +1519 -0
- package/dist/chunk-UY3ZVQDP.js +25652 -0
- package/dist/chunk-V6OSD62M.js +5087 -0
- package/dist/chunk-VP6YAHX4.js +1519 -0
- package/dist/chunk-WDYJOEAI.js +5087 -0
- package/dist/chunk-WEAFQNOS.js +195 -0
- package/dist/chunk-XKUSAZGP.js +5087 -0
- package/dist/chunk-Z6K5FKAB.js +548 -0
- package/dist/chunk-ZGE3XAXY.js +1519 -0
- package/dist/chunk-ZGYVXYQQ.js +3296 -0
- package/dist/cli-agent-7TB2BWS6.js +2370 -0
- package/dist/cli-agent-AKXFFST2.js +2370 -0
- package/dist/cli-agent-DZTKLITB.js +2357 -0
- package/dist/cli-agent-FOF7PFEP.js +2357 -0
- package/dist/cli-agent-H74M2ZYN.js +2357 -0
- package/dist/cli-agent-HORWVPHB.js +2370 -0
- package/dist/cli-agent-HSZT6SKF.js +2423 -0
- package/dist/cli-agent-JLUQ4ZU6.js +2424 -0
- package/dist/cli-agent-MVCDH4HV.js +2370 -0
- package/dist/cli-agent-NZXOEPJ2.js +2357 -0
- package/dist/cli-agent-PADN3QRC.js +2357 -0
- package/dist/cli-agent-QAYEX3BE.js +2441 -0
- package/dist/cli-agent-QT64DT5J.js +2370 -0
- package/dist/cli-agent-TFL2M6UK.js +2424 -0
- package/dist/cli-agent-UIKXATTD.js +2357 -0
- package/dist/cli-agent-UJN6FYTO.js +2370 -0
- package/dist/cli-agent-VIQAYVY4.js +2357 -0
- package/dist/cli-agent-WNWFVOFM.js +2370 -0
- package/dist/cli-agent-XBQX67VJ.js +2423 -0
- package/dist/cli-agent-ZLSC6FF4.js +2357 -0
- package/dist/cli-serve-2IL5DTEY.js +153 -0
- package/dist/cli-serve-47N5UKKW.js +153 -0
- package/dist/cli-serve-4XGZFUV2.js +140 -0
- package/dist/cli-serve-6OT3UEAN.js +140 -0
- package/dist/cli-serve-7L6EY5UH.js +153 -0
- package/dist/cli-serve-BDGOOOKQ.js +260 -0
- package/dist/cli-serve-BFNIW2LF.js +153 -0
- package/dist/cli-serve-C7MN6U5Q.js +153 -0
- package/dist/cli-serve-CR3OY3IM.js +153 -0
- package/dist/cli-serve-DAJFRWQ7.js +153 -0
- package/dist/cli-serve-FW6FHFW4.js +153 -0
- package/dist/cli-serve-GEEOQS77.js +153 -0
- package/dist/cli-serve-H562I3ZK.js +153 -0
- package/dist/cli-serve-HDQZF4C4.js +153 -0
- package/dist/cli-serve-LICAOMEB.js +140 -0
- package/dist/cli-serve-LLGYLWFS.js +153 -0
- package/dist/cli-serve-N3OISDNB.js +153 -0
- package/dist/cli-serve-TIZ27EVR.js +153 -0
- package/dist/cli-serve-TUNI2RCN.js +153 -0
- package/dist/cli-serve-WNOZMAWD.js +153 -0
- package/dist/cli-validate-Z726VJCN.js +150 -0
- package/dist/cli.js +4 -4
- package/dist/connection-manager-KAWEUWUR.js +9 -0
- package/dist/dashboard/app.js +9 -3
- package/dist/dashboard/components/knowledge-link.js +15 -0
- package/dist/dashboard/components/settings-help.js +4 -2
- package/dist/dashboard/docs/agent-deployment.html +33 -1
- package/dist/dashboard/docs/settings-network.html +321 -0
- package/dist/dashboard/docs/settings-security.html +347 -0
- package/dist/dashboard/docs/settings-tool-security.html +176 -0
- package/dist/dashboard/docs/settings.html +36 -16
- package/dist/dashboard/pages/agent-detail/deployment.js +39 -6
- package/dist/dashboard/pages/agent-detail/tools.js +10 -0
- package/dist/dashboard/pages/database-access.js +4 -3
- package/dist/dashboard/pages/settings.js +174 -37
- package/dist/dashboard/pages/task-pipeline.js +400 -843
- package/dist/db-adapter-2T56ORSD.js +7 -0
- package/dist/db-adapter-IRHOUMVC.js +7 -0
- package/dist/index.js +41 -41
- package/dist/microsoft-VREAZ7M2.js +3955 -0
- package/dist/routes-3MMLQTB6.js +90 -0
- package/dist/routes-4ZUIJ4HE.js +90 -0
- package/dist/routes-5MXHKKH4.js +90 -0
- package/dist/routes-64NJFK3B.js +90 -0
- package/dist/routes-6AKQ2LBV.js +90 -0
- package/dist/routes-CRRBUDO4.js +90 -0
- package/dist/routes-DIAF3MC3.js +90 -0
- package/dist/routes-KMUNU6CY.js +90 -0
- package/dist/routes-LRRLXIZR.js +90 -0
- package/dist/routes-N647AJYG.js +90 -0
- package/dist/routes-SSSELAAR.js +90 -0
- package/dist/routes-STERVGKJ.js +90 -0
- package/dist/routes-ZEZZACZP.js +90 -0
- package/dist/runtime-5EQN4GFM.js +45 -0
- package/dist/runtime-5LP7PUD4.js +45 -0
- package/dist/runtime-6BULDBR3.js +45 -0
- package/dist/runtime-6YEENDN3.js +45 -0
- package/dist/runtime-7LQFRG3B.js +45 -0
- package/dist/runtime-AMXJU2MB.js +45 -0
- package/dist/runtime-D6WSE7FG.js +45 -0
- package/dist/runtime-EYVN7NFJ.js +45 -0
- package/dist/runtime-F6RPWQVW.js +45 -0
- package/dist/runtime-FYMJURFC.js +45 -0
- package/dist/runtime-JRNBL4O4.js +45 -0
- package/dist/runtime-OM2NIBMI.js +45 -0
- package/dist/runtime-QWPVD7CY.js +45 -0
- package/dist/runtime-YLIIPTE4.js +45 -0
- package/dist/runtime-YU6P22CG.js +45 -0
- package/dist/screen-unlock-4RPZBHOI.js +118 -0
- package/dist/server-AMCSXINC.js +28 -0
- package/dist/server-CU6LVQS4.js +28 -0
- package/dist/server-DFYGH2CV.js +28 -0
- package/dist/server-EELWOC3X.js +28 -0
- package/dist/server-EN5E2OWQ.js +28 -0
- package/dist/server-GW2HYJYI.js +28 -0
- package/dist/server-J25NCRWJ.js +28 -0
- package/dist/server-JDGNOTFV.js +28 -0
- package/dist/server-NE5HD5DJ.js +28 -0
- package/dist/server-NQOT7W77.js +28 -0
- package/dist/server-PWE5PQTR.js +28 -0
- package/dist/server-Q2Q32H2B.js +28 -0
- package/dist/server-Q77ME7TL.js +28 -0
- package/dist/server-WLLH4WST.js +28 -0
- package/dist/server-WTUJ2O3F.js +28 -0
- package/dist/server-X4CJTHHF.js +28 -0
- package/dist/server-XK3ILCJC.js +28 -0
- package/dist/server-ZRD3NDJE.js +28 -0
- package/dist/setup-44VBAO4J.js +20 -0
- package/dist/setup-4ONNQBWB.js +20 -0
- package/dist/setup-4OSBXSCL.js +20 -0
- package/dist/setup-4QFGRBLZ.js +20 -0
- package/dist/setup-6766SGAR.js +20 -0
- package/dist/setup-AYY24DKM.js +20 -0
- package/dist/setup-B34N4HPU.js +20 -0
- package/dist/setup-E2YLC2EY.js +20 -0
- package/dist/setup-ER6NXTY5.js +20 -0
- package/dist/setup-H2AGCBW5.js +20 -0
- package/dist/setup-ICOZRKCX.js +20 -0
- package/dist/setup-JFTJH7UF.js +20 -0
- package/dist/setup-PRFNI6YW.js +20 -0
- package/dist/setup-RAHBMYHE.js +20 -0
- package/dist/setup-TXPR5UQX.js +20 -0
- package/dist/setup-XCJMELVU.js +20 -0
- package/dist/setup-XIYEIFVK.js +20 -0
- package/dist/setup-Z4PZSHBI.js +20 -0
- package/dist/skills-FR7I5V7H.js +16 -0
- package/dist/skills-HCVBA6PK.js +16 -0
- package/dist/system-prompts-TM7OA32C.js +913 -0
- package/dist/task-queue-O7IVZYUO.js +9 -0
- package/dist/transport-encryption-2T7PIXKG.js +25 -0
- package/logs/cloudflared-error.log +61 -0
- package/logs/cloudflared-out.log +0 -0
- package/logs/enterprise-error.log +0 -0
- package/logs/enterprise-out.log +3 -0
- package/logs/fola-error.log +0 -0
- package/logs/fola-out.log +0 -0
- package/logs/john-error.log +8 -0
- package/logs/john-out.log +0 -0
- package/package.json +31 -3
- package/src/agent-tools/tool-resolver.ts +50 -61
- package/src/agent-tools/tools/enterprise-database.ts +5 -5
- package/src/agent-tools/tools/local/dependency-manager.ts +2 -2
- package/src/agent-tools/tools/microsoft/graph-api.ts +137 -26
- package/src/agent-tools/tools/microsoft/outlook-mail.ts +392 -100
- package/src/agent-tools/tools/microsoft/teams.ts +267 -48
- package/src/auth/routes.ts +4 -4
- package/src/cli-agent.ts +108 -8
- package/src/cli-serve.ts +140 -0
- package/src/dashboard/app.js +9 -3
- package/src/dashboard/components/knowledge-link.js +15 -0
- package/src/dashboard/components/settings-help.js +4 -2
- package/src/dashboard/docs/agent-deployment.html +33 -1
- package/src/dashboard/docs/settings-network.html +321 -0
- package/src/dashboard/docs/settings-security.html +347 -0
- package/src/dashboard/docs/settings-tool-security.html +176 -0
- package/src/dashboard/docs/settings.html +36 -16
- package/src/dashboard/pages/agent-detail/deployment.js +39 -6
- package/src/dashboard/pages/agent-detail/tools.js +10 -0
- package/src/dashboard/pages/database-access.js +4 -3
- package/src/dashboard/pages/settings.js +174 -37
- package/src/dashboard/pages/task-pipeline.js +400 -843
- package/src/database-access/agent-tools.ts +78 -63
- package/src/database-access/connection-manager.ts +13 -2
- package/src/database-access/routes.ts +13 -1
- package/src/db/adapter.ts +1 -0
- package/src/engine/agent-memory.ts +2 -1
- package/src/engine/agent-notify.ts +50 -0
- package/src/engine/agent-routes.ts +257 -4
- package/src/engine/db-adapter.ts +16 -0
- package/src/engine/lifecycle.ts +4 -0
- package/src/engine/routes.ts +4 -3
- package/src/engine/screen-unlock.ts +136 -0
- package/src/engine/skills/database-access.ts +78 -0
- package/src/engine/skills/index.ts +3 -2
- package/src/engine/skills.ts +2 -0
- package/src/engine/task-queue-routes.ts +18 -0
- package/src/engine/task-queue.ts +15 -2
- package/src/middleware/transport-encryption.ts +1 -4
- package/src/runtime/agent-loop.ts +4 -0
- package/src/runtime/index.ts +15 -6
- package/src/server.ts +14 -1
- package/src/system-prompts/google/index.ts +1 -2
- package/src/system-prompts/index.ts +1 -1
- package/src/system-prompts/microsoft/contacts.ts +34 -0
- package/src/system-prompts/microsoft/excel.ts +52 -0
- package/src/system-prompts/microsoft/index.ts +31 -0
- package/src/system-prompts/microsoft/onedrive.ts +41 -0
- package/src/system-prompts/microsoft/onenote.ts +36 -0
- package/src/system-prompts/microsoft/outlook-calendar.ts +37 -0
- package/src/system-prompts/microsoft/outlook-mail.ts +46 -0
- package/src/system-prompts/microsoft/planner.ts +37 -0
- package/src/system-prompts/microsoft/powerbi.ts +38 -0
- package/src/system-prompts/microsoft/powerpoint.ts +35 -0
- package/src/system-prompts/microsoft/sharepoint.ts +44 -0
- package/src/system-prompts/microsoft/teams.ts +49 -0
- package/src/system-prompts/microsoft/todo.ts +37 -0
- package/src/types/hono-env.ts +4 -0
- package/.github/CODEOWNERS +0 -23
- package/.github/workflows/publish-community-skills.yml +0 -121
- package/.github/workflows/validate-community-skills.yml +0 -172
- package/agriculture_southwest_nigeria_research.txt +0 -10
- package/boa_credit_cards_research.txt +0 -10
- package/customer_support_research_feb2026.txt +0 -10
- package/dist/agent-tools-LRA7PPXG.js +0 -13922
- package/dist/agent-tools-VAU5DOQB.js +0 -13910
- package/dist/agent-tools-VWV7OWXU.js +0 -13922
- package/dist/chunk-2Z7MWTCX.js +0 -4977
- package/dist/chunk-3T4XU3VV.js +0 -5010
- package/dist/chunk-445QM4NX.js +0 -5061
- package/dist/chunk-5TW3Y7DJ.js +0 -1519
- package/dist/chunk-6I7VY3LT.js +0 -5060
- package/dist/chunk-6W5EK3UP.js +0 -4977
- package/dist/chunk-AQMSHJQT.js +0 -5069
- package/dist/chunk-ASSQW7HX.js +0 -5051
- package/dist/chunk-CIN27FGC.js +0 -5037
- package/dist/chunk-CMXY3NUB.js +0 -4977
- package/dist/chunk-DRLMRUDP.js +0 -5052
- package/dist/chunk-EHI7Z446.js +0 -1519
- package/dist/chunk-FEAILFAQ.js +0 -1519
- package/dist/chunk-GA3PYBZL.js +0 -1519
- package/dist/chunk-GWX63G5J.js +0 -1519
- package/dist/chunk-HHMZ4UY6.js +0 -1519
- package/dist/chunk-HVQMNF7E.js +0 -4921
- package/dist/chunk-HXM7F3YN.js +0 -1519
- package/dist/chunk-K6NGOUXG.js +0 -5060
- package/dist/chunk-KPG5WINJ.js +0 -4977
- package/dist/chunk-LBCUBYDL.js +0 -1519
- package/dist/chunk-LIRQSWLR.js +0 -5014
- package/dist/chunk-LRCKO5KE.js +0 -1519
- package/dist/chunk-M7XL3DJD.js +0 -5069
- package/dist/chunk-MHJULEIQ.js +0 -1519
- package/dist/chunk-MJGGW6MC.js +0 -106
- package/dist/chunk-MMYBDHDB.js +0 -4921
- package/dist/chunk-MQT5FXKD.js +0 -1519
- package/dist/chunk-OIMPEQF5.js +0 -4977
- package/dist/chunk-OOU7JUYE.js +0 -542
- package/dist/chunk-OW4GLBHP.js +0 -1519
- package/dist/chunk-Q4K4MMLU.js +0 -4977
- package/dist/chunk-RUK4CRPF.js +0 -1519
- package/dist/chunk-T7H65XQY.js +0 -1519
- package/dist/chunk-TQVFWG57.js +0 -5064
- package/dist/chunk-UEPK3IMC.js +0 -1519
- package/dist/chunk-VUWTXJH6.js +0 -1519
- package/dist/chunk-WCPGGSAD.js +0 -1519
- package/dist/chunk-WO63NZOJ.js +0 -1519
- package/dist/chunk-YPJDRVUM.js +0 -5064
- package/dist/chunk-ZROMH5DL.js +0 -4921
- package/src/dashboard/docs/_template.txt +0 -92
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import {
|
|
2
|
+
init_messaging_history,
|
|
3
|
+
storeMessage
|
|
4
|
+
} from "./chunk-Z7NVD3OQ.js";
|
|
1
5
|
import {
|
|
2
6
|
AgentMemoryManager,
|
|
3
7
|
MEMORY_CATEGORIES,
|
|
@@ -19,28 +23,24 @@ import {
|
|
|
19
23
|
DatabaseConnectionManager,
|
|
20
24
|
init_connection_manager,
|
|
21
25
|
init_query_sanitizer
|
|
22
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-BQM7MBPS.js";
|
|
23
27
|
import {
|
|
24
28
|
init_agent_tools,
|
|
25
29
|
init_types
|
|
26
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-3UAFHUEC.js";
|
|
27
31
|
import {
|
|
28
32
|
BUILTIN_SKILLS,
|
|
29
33
|
PRESET_PROFILES,
|
|
30
34
|
PermissionEngine,
|
|
31
35
|
SKILL_SUITES,
|
|
32
36
|
init_skills as init_skills2
|
|
33
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-6C5PKREN.js";
|
|
34
38
|
import {
|
|
35
39
|
AgentConfigGenerator,
|
|
36
40
|
DeploymentEngine,
|
|
37
41
|
init_agent_config,
|
|
38
42
|
init_deployer
|
|
39
43
|
} from "./chunk-3FMK32KQ.js";
|
|
40
|
-
import {
|
|
41
|
-
init_messaging_history,
|
|
42
|
-
storeMessage
|
|
43
|
-
} from "./chunk-Z7NVD3OQ.js";
|
|
44
44
|
import {
|
|
45
45
|
init_resilience,
|
|
46
46
|
withRetry
|
|
@@ -52,7 +52,7 @@ import {
|
|
|
52
52
|
setSettingsDb,
|
|
53
53
|
setTransportEncryptionConfig,
|
|
54
54
|
transportEncryptionMiddleware
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-FLQ5FLHW.js";
|
|
56
56
|
import {
|
|
57
57
|
SecureVault,
|
|
58
58
|
init_vault
|
|
@@ -62,7 +62,7 @@ import {
|
|
|
62
62
|
FULL_SKILL_DEFINITIONS,
|
|
63
63
|
init_emoji,
|
|
64
64
|
init_skills
|
|
65
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-ZGYVXYQQ.js";
|
|
66
66
|
import {
|
|
67
67
|
VALID_CATEGORIES,
|
|
68
68
|
init_skill_validator,
|
|
@@ -1463,6 +1463,8 @@ var init_lifecycle = __esm({
|
|
|
1463
1463
|
if (agent) {
|
|
1464
1464
|
await this.persistAgent(agent);
|
|
1465
1465
|
configBus.emitAgentConfig(agentId, "_save", void 0, "lifecycle");
|
|
1466
|
+
import("./agent-notify-OEQBCZLN.js").then(({ notifyAgent }) => notifyAgent(agentId, "config", this)).catch(() => {
|
|
1467
|
+
});
|
|
1466
1468
|
}
|
|
1467
1469
|
}
|
|
1468
1470
|
async persistAgent(agent) {
|
|
@@ -6563,7 +6565,11 @@ function createAgentRoutes(opts) {
|
|
|
6563
6565
|
});
|
|
6564
6566
|
router.get("/agents", (c) => {
|
|
6565
6567
|
const orgId = c.req.query("orgId");
|
|
6566
|
-
const
|
|
6568
|
+
const clientOrgId = c.req.query("clientOrgId");
|
|
6569
|
+
let agents = orgId ? lifecycle2.getAgentsByOrg(orgId) : lifecycle2.getAllAgents();
|
|
6570
|
+
if (clientOrgId) {
|
|
6571
|
+
agents = agents.filter((a) => a.clientOrgId === clientOrgId || a.client_org_id === clientOrgId);
|
|
6572
|
+
}
|
|
6567
6573
|
return c.json({ agents, total: agents.length });
|
|
6568
6574
|
});
|
|
6569
6575
|
router.get("/agents/:id", async (c) => {
|
|
@@ -6751,7 +6757,10 @@ function createAgentRoutes(opts) {
|
|
|
6751
6757
|
router.put("/agents/:id/budget", async (c) => {
|
|
6752
6758
|
const config = await c.req.json();
|
|
6753
6759
|
try {
|
|
6754
|
-
|
|
6760
|
+
const aid = c.req.param("id");
|
|
6761
|
+
await lifecycle2.setBudgetConfig(aid, config);
|
|
6762
|
+
import("./agent-notify-OEQBCZLN.js").then(({ notifyAgent }) => notifyAgent(aid, "budget", lifecycle2)).catch(() => {
|
|
6763
|
+
});
|
|
6755
6764
|
return c.json({ success: true, budgetConfig: config });
|
|
6756
6765
|
} catch (e) {
|
|
6757
6766
|
return c.json({ error: e.message }, 400);
|
|
@@ -6847,6 +6856,175 @@ function createAgentRoutes(opts) {
|
|
|
6847
6856
|
return c.json({ success: false, error: e.message, hint: "Try running: sudo npm install -g pm2" }, 500);
|
|
6848
6857
|
}
|
|
6849
6858
|
});
|
|
6859
|
+
router.post("/system/check-port", async (c) => {
|
|
6860
|
+
try {
|
|
6861
|
+
const { port } = await c.req.json();
|
|
6862
|
+
const p = parseInt(port);
|
|
6863
|
+
if (!p || p < 1 || p > 65535) {
|
|
6864
|
+
return c.json({ available: false, error: "Invalid port number (1-65535)" });
|
|
6865
|
+
}
|
|
6866
|
+
const net = await import("net");
|
|
6867
|
+
const tryBind = (host) => new Promise((resolve) => {
|
|
6868
|
+
const server = net.createServer();
|
|
6869
|
+
server.once("error", () => resolve(false));
|
|
6870
|
+
server.once("listening", () => {
|
|
6871
|
+
server.close(() => resolve(true));
|
|
6872
|
+
});
|
|
6873
|
+
server.listen(p, host);
|
|
6874
|
+
});
|
|
6875
|
+
const [availAll, availLocal] = await Promise.all([tryBind("0.0.0.0"), tryBind("127.0.0.1")]);
|
|
6876
|
+
const available = availAll && availLocal;
|
|
6877
|
+
if (!available) {
|
|
6878
|
+
let processInfo = "";
|
|
6879
|
+
try {
|
|
6880
|
+
const { execSync } = await import("child_process");
|
|
6881
|
+
if (process.platform === "darwin" || process.platform === "linux") {
|
|
6882
|
+
const lsofBin = process.platform === "darwin" ? "/usr/sbin/lsof" : "lsof";
|
|
6883
|
+
const out = execSync(`${lsofBin} -i :${p} -P -n 2>/dev/null | head -5`, { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }).trim();
|
|
6884
|
+
if (out) {
|
|
6885
|
+
const lines = out.split("\n").slice(1);
|
|
6886
|
+
if (lines.length > 0) {
|
|
6887
|
+
const parts = lines[0].split(/\s+/);
|
|
6888
|
+
processInfo = parts[0] ? `${parts[0]} (PID ${parts[1]})` : "";
|
|
6889
|
+
}
|
|
6890
|
+
}
|
|
6891
|
+
} else if (process.platform === "win32") {
|
|
6892
|
+
const out = execSync(`netstat -ano | findstr :${p}`, { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }).trim();
|
|
6893
|
+
if (out) {
|
|
6894
|
+
const parts = out.split(/\s+/);
|
|
6895
|
+
processInfo = `PID ${parts[parts.length - 1]}`;
|
|
6896
|
+
}
|
|
6897
|
+
}
|
|
6898
|
+
} catch {
|
|
6899
|
+
}
|
|
6900
|
+
return c.json({ available: false, port: p, inUse: true, process: processInfo || "Unknown process" });
|
|
6901
|
+
}
|
|
6902
|
+
return c.json({ available: true, port: p });
|
|
6903
|
+
} catch (e) {
|
|
6904
|
+
return c.json({ available: false, error: e.message });
|
|
6905
|
+
}
|
|
6906
|
+
});
|
|
6907
|
+
router.post("/system/unlock-screen", async (c) => {
|
|
6908
|
+
try {
|
|
6909
|
+
const platform = process.platform;
|
|
6910
|
+
if (platform === "darwin") {
|
|
6911
|
+
const { execSync } = await import("child_process");
|
|
6912
|
+
try {
|
|
6913
|
+
execSync("caffeinate -u -t 2", { stdio: "pipe", timeout: 5e3 });
|
|
6914
|
+
} catch {
|
|
6915
|
+
}
|
|
6916
|
+
const isLocked = (() => {
|
|
6917
|
+
try {
|
|
6918
|
+
const out = execSync(`python3 -c "import Quartz; d=Quartz.CGSessionCopyCurrentDictionary(); print(d.get('CGSSessionScreenIsLocked', 0))"`, { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }).trim();
|
|
6919
|
+
return out === "1" || out === "True";
|
|
6920
|
+
} catch {
|
|
6921
|
+
try {
|
|
6922
|
+
const out = execSync(`osascript -e 'tell application "System Events" to get name of first application process whose frontmost is true'`, { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }).trim();
|
|
6923
|
+
return out === "loginwindow" || out === "ScreenSaverEngine";
|
|
6924
|
+
} catch {
|
|
6925
|
+
return false;
|
|
6926
|
+
}
|
|
6927
|
+
}
|
|
6928
|
+
})();
|
|
6929
|
+
if (!isLocked) {
|
|
6930
|
+
return c.json({ success: true, wasLocked: false, message: "Screen is already unlocked" });
|
|
6931
|
+
}
|
|
6932
|
+
const body = await c.req.json().catch(() => ({}));
|
|
6933
|
+
const password = body.password;
|
|
6934
|
+
if (!password) {
|
|
6935
|
+
return c.json({ success: false, locked: true, error: "Screen is locked but no password provided. Configure the system password in Settings > Security or the agent's Permissions tab." });
|
|
6936
|
+
}
|
|
6937
|
+
try {
|
|
6938
|
+
execSync(`osascript -e 'tell application "System Events" to keystroke "${password.replace(/["\\]/g, "\\$&")}"' -e 'delay 0.3' -e 'tell application "System Events" to key code 36'`, {
|
|
6939
|
+
stdio: "pipe",
|
|
6940
|
+
timeout: 1e4
|
|
6941
|
+
});
|
|
6942
|
+
await new Promise((r) => setTimeout(r, 2e3));
|
|
6943
|
+
const stillLocked = (() => {
|
|
6944
|
+
try {
|
|
6945
|
+
const out = execSync(`python3 -c "import Quartz; d=Quartz.CGSessionCopyCurrentDictionary(); print(d.get('CGSSessionScreenIsLocked', 0))"`, { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }).trim();
|
|
6946
|
+
return out === "1" || out === "True";
|
|
6947
|
+
} catch {
|
|
6948
|
+
return false;
|
|
6949
|
+
}
|
|
6950
|
+
})();
|
|
6951
|
+
if (stillLocked) {
|
|
6952
|
+
return c.json({ success: false, error: "Failed to unlock \u2014 password may be incorrect" });
|
|
6953
|
+
}
|
|
6954
|
+
return c.json({ success: true, wasLocked: true, message: "Screen unlocked successfully" });
|
|
6955
|
+
} catch (e) {
|
|
6956
|
+
return c.json({ success: false, error: "Unlock attempt failed: " + e.message });
|
|
6957
|
+
}
|
|
6958
|
+
} else if (platform === "linux") {
|
|
6959
|
+
const { execSync } = await import("child_process");
|
|
6960
|
+
const body = await c.req.json().catch(() => ({}));
|
|
6961
|
+
const password = body.password;
|
|
6962
|
+
try {
|
|
6963
|
+
execSync("loginctl unlock-session $(loginctl list-sessions --no-legend | head -1 | awk '{print $1}')", { stdio: "pipe", timeout: 5e3 });
|
|
6964
|
+
return c.json({ success: true, message: "Session unlocked via loginctl" });
|
|
6965
|
+
} catch {
|
|
6966
|
+
}
|
|
6967
|
+
if (password) {
|
|
6968
|
+
try {
|
|
6969
|
+
execSync(`xdotool key --clearmodifiers super; sleep 0.5; xdotool type --clearmodifiers "${password.replace(/["\\]/g, "\\$&")}"; xdotool key Return`, { stdio: "pipe", timeout: 1e4 });
|
|
6970
|
+
return c.json({ success: true, message: "Unlock attempted via xdotool" });
|
|
6971
|
+
} catch {
|
|
6972
|
+
}
|
|
6973
|
+
}
|
|
6974
|
+
return c.json({ success: false, error: "Could not unlock Linux session. Supported: loginctl, xdotool." });
|
|
6975
|
+
} else if (platform === "win32") {
|
|
6976
|
+
return c.json({ success: false, error: "Windows unlock not yet supported. Use Remote Desktop or disable lock screen." });
|
|
6977
|
+
} else {
|
|
6978
|
+
return c.json({ success: false, error: `Unsupported platform: ${platform}` });
|
|
6979
|
+
}
|
|
6980
|
+
} catch (e) {
|
|
6981
|
+
return c.json({ success: false, error: e.message });
|
|
6982
|
+
}
|
|
6983
|
+
});
|
|
6984
|
+
router.get("/system/screen-status", async (c) => {
|
|
6985
|
+
try {
|
|
6986
|
+
const platform = process.platform;
|
|
6987
|
+
if (platform === "darwin") {
|
|
6988
|
+
const { execSync } = await import("child_process");
|
|
6989
|
+
const isLocked = (() => {
|
|
6990
|
+
try {
|
|
6991
|
+
const out = execSync(`python3 -c "import Quartz; d=Quartz.CGSessionCopyCurrentDictionary(); print(d.get('CGSSessionScreenIsLocked', 0))"`, { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }).trim();
|
|
6992
|
+
return out === "1" || out === "True";
|
|
6993
|
+
} catch {
|
|
6994
|
+
try {
|
|
6995
|
+
const out = execSync(`osascript -e 'tell application "System Events" to get name of first application process whose frontmost is true'`, { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }).trim();
|
|
6996
|
+
return out === "loginwindow" || out === "ScreenSaverEngine";
|
|
6997
|
+
} catch {
|
|
6998
|
+
return false;
|
|
6999
|
+
}
|
|
7000
|
+
}
|
|
7001
|
+
})();
|
|
7002
|
+
const displayAsleep = (() => {
|
|
7003
|
+
try {
|
|
7004
|
+
const out = execSync('ioreg -r -d 1 -k IODisplayWrangler | grep -i "currentpowerstate"', { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 });
|
|
7005
|
+
return out.includes("= 0") || out.includes("= 1");
|
|
7006
|
+
} catch {
|
|
7007
|
+
return false;
|
|
7008
|
+
}
|
|
7009
|
+
})();
|
|
7010
|
+
return c.json({ locked: isLocked, displayAsleep, platform: "macOS" });
|
|
7011
|
+
} else if (platform === "linux") {
|
|
7012
|
+
const { execSync } = await import("child_process");
|
|
7013
|
+
const isLocked = (() => {
|
|
7014
|
+
try {
|
|
7015
|
+
const out = execSync("loginctl show-session $(loginctl list-sessions --no-legend | head -1 | awk '{print $1}') -p LockedHint --value", { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }).trim();
|
|
7016
|
+
return out === "yes";
|
|
7017
|
+
} catch {
|
|
7018
|
+
return false;
|
|
7019
|
+
}
|
|
7020
|
+
})();
|
|
7021
|
+
return c.json({ locked: isLocked, platform: "Linux" });
|
|
7022
|
+
}
|
|
7023
|
+
return c.json({ locked: false, platform });
|
|
7024
|
+
} catch (e) {
|
|
7025
|
+
return c.json({ locked: false, error: e.message });
|
|
7026
|
+
}
|
|
7027
|
+
});
|
|
6850
7028
|
router.post("/bridge/agents", async (c) => {
|
|
6851
7029
|
const { orgId, name, email, displayName, role, model, deployment, permissionProfile, presetName, createdBy, persona, permissions: permissionsData, skills, knowledgeBases, description, soulId, deployTarget } = await c.req.json();
|
|
6852
7030
|
if (!name || !orgId) {
|
|
@@ -6896,7 +7074,7 @@ function createAgentRoutes(opts) {
|
|
|
6896
7074
|
if (presetName || permissionsData) {
|
|
6897
7075
|
let profile = { id: agentId, name: presetName || "Custom", createdAt: (/* @__PURE__ */ new Date()).toISOString(), updatedAt: (/* @__PURE__ */ new Date()).toISOString() };
|
|
6898
7076
|
if (presetName) {
|
|
6899
|
-
const { PRESET_PROFILES: PRESET_PROFILES2 } = await import("./skills-
|
|
7077
|
+
const { PRESET_PROFILES: PRESET_PROFILES2 } = await import("./skills-FR7I5V7H.js");
|
|
6900
7078
|
const preset = PRESET_PROFILES2.find((p) => p.name === presetName);
|
|
6901
7079
|
if (preset) Object.assign(profile, preset);
|
|
6902
7080
|
}
|
|
@@ -6924,7 +7102,7 @@ function createAgentRoutes(opts) {
|
|
|
6924
7102
|
}
|
|
6925
7103
|
const managedAgent = await lifecycle2.createAgent(orgId, config, actor);
|
|
6926
7104
|
try {
|
|
6927
|
-
const { knowledgeBase: kbEngine } = await import("./routes-
|
|
7105
|
+
const { knowledgeBase: kbEngine } = await import("./routes-LRRLXIZR.js");
|
|
6928
7106
|
const allKbs = kbEngine.getAllKnowledgeBases();
|
|
6929
7107
|
const clientOrgId = managedAgent?.clientOrgId || config?.clientOrgId || null;
|
|
6930
7108
|
let kbAssigned = 0;
|
|
@@ -7867,6 +8045,212 @@ function createAgentRoutes(opts) {
|
|
|
7867
8045
|
icon: Emoji.telegram || Emoji.chat,
|
|
7868
8046
|
requiresIntegration: "telegram",
|
|
7869
8047
|
tools: ["telegram_send", "telegram_send_media", "telegram_get_me", "telegram_get_chat"]
|
|
8048
|
+
},
|
|
8049
|
+
// ── Microsoft 365 ──────────────────────────────────
|
|
8050
|
+
{
|
|
8051
|
+
id: "outlook_mail",
|
|
8052
|
+
name: "Outlook Mail",
|
|
8053
|
+
description: "Full email management \u2014 inbox, send, reply, forward, search, threads, drafts, rules, auto-reply, categories",
|
|
8054
|
+
icon: Emoji.envelope,
|
|
8055
|
+
requiresOAuth: "microsoft",
|
|
8056
|
+
tools: [
|
|
8057
|
+
"outlook_mail_list",
|
|
8058
|
+
"outlook_mail_read",
|
|
8059
|
+
"outlook_mail_thread",
|
|
8060
|
+
"outlook_mail_send",
|
|
8061
|
+
"outlook_mail_reply",
|
|
8062
|
+
"outlook_mail_forward",
|
|
8063
|
+
"outlook_mail_move",
|
|
8064
|
+
"outlook_mail_delete",
|
|
8065
|
+
"outlook_mail_update",
|
|
8066
|
+
"outlook_mail_search",
|
|
8067
|
+
"outlook_mail_draft",
|
|
8068
|
+
"outlook_mail_send_draft",
|
|
8069
|
+
"outlook_mail_folders",
|
|
8070
|
+
"outlook_mail_create_folder",
|
|
8071
|
+
"outlook_mail_attachment_download",
|
|
8072
|
+
"outlook_mail_auto_reply",
|
|
8073
|
+
"outlook_mail_get_auto_reply",
|
|
8074
|
+
"outlook_mail_rules",
|
|
8075
|
+
"outlook_mail_categories",
|
|
8076
|
+
"outlook_mail_profile"
|
|
8077
|
+
]
|
|
8078
|
+
},
|
|
8079
|
+
{
|
|
8080
|
+
id: "outlook_calendar",
|
|
8081
|
+
name: "Outlook Calendar",
|
|
8082
|
+
description: "Calendar events, scheduling, free/busy lookup, Teams meeting creation, invite responses",
|
|
8083
|
+
icon: Emoji.calendar,
|
|
8084
|
+
requiresOAuth: "microsoft",
|
|
8085
|
+
tools: [
|
|
8086
|
+
"outlook_calendar_list",
|
|
8087
|
+
"outlook_calendar_events",
|
|
8088
|
+
"outlook_calendar_create",
|
|
8089
|
+
"outlook_calendar_update",
|
|
8090
|
+
"outlook_calendar_delete",
|
|
8091
|
+
"outlook_calendar_respond",
|
|
8092
|
+
"outlook_calendar_freebusy"
|
|
8093
|
+
]
|
|
8094
|
+
},
|
|
8095
|
+
{
|
|
8096
|
+
id: "onedrive",
|
|
8097
|
+
name: "OneDrive",
|
|
8098
|
+
description: "Cloud file management \u2014 list, search, read, upload, share, create folders",
|
|
8099
|
+
icon: Emoji.folder,
|
|
8100
|
+
requiresOAuth: "microsoft",
|
|
8101
|
+
tools: [
|
|
8102
|
+
"onedrive_list",
|
|
8103
|
+
"onedrive_search",
|
|
8104
|
+
"onedrive_read",
|
|
8105
|
+
"onedrive_upload",
|
|
8106
|
+
"onedrive_create_folder",
|
|
8107
|
+
"onedrive_delete",
|
|
8108
|
+
"onedrive_share"
|
|
8109
|
+
]
|
|
8110
|
+
},
|
|
8111
|
+
{
|
|
8112
|
+
id: "teams",
|
|
8113
|
+
name: "Microsoft Teams",
|
|
8114
|
+
description: "Team messaging, channels, chats, file sharing, presence, member management",
|
|
8115
|
+
icon: Emoji.chat,
|
|
8116
|
+
requiresOAuth: "microsoft",
|
|
8117
|
+
tools: [
|
|
8118
|
+
"teams_list_teams",
|
|
8119
|
+
"teams_list_channels",
|
|
8120
|
+
"teams_create_channel",
|
|
8121
|
+
"teams_send_channel_message",
|
|
8122
|
+
"teams_reply_to_message",
|
|
8123
|
+
"teams_read_channel_messages",
|
|
8124
|
+
"teams_list_chats",
|
|
8125
|
+
"teams_send_chat_message",
|
|
8126
|
+
"teams_read_chat_messages",
|
|
8127
|
+
"teams_list_members",
|
|
8128
|
+
"teams_add_member",
|
|
8129
|
+
"teams_share_file",
|
|
8130
|
+
"teams_presence",
|
|
8131
|
+
"teams_set_status"
|
|
8132
|
+
]
|
|
8133
|
+
},
|
|
8134
|
+
{
|
|
8135
|
+
id: "todo",
|
|
8136
|
+
name: "Microsoft To Do",
|
|
8137
|
+
description: "Task lists, task CRUD with due dates, reminders, and importance",
|
|
8138
|
+
icon: Emoji.check,
|
|
8139
|
+
requiresOAuth: "microsoft",
|
|
8140
|
+
tools: ["todo_list_lists", "todo_list_tasks", "todo_create_task", "todo_update_task", "todo_delete_task", "todo_create_list"]
|
|
8141
|
+
},
|
|
8142
|
+
{
|
|
8143
|
+
id: "outlook_contacts",
|
|
8144
|
+
name: "Outlook Contacts",
|
|
8145
|
+
description: "Contact management, address book, people search",
|
|
8146
|
+
icon: Emoji.people,
|
|
8147
|
+
requiresOAuth: "microsoft",
|
|
8148
|
+
tools: ["outlook_contacts_list", "outlook_contacts_create", "outlook_contacts_update", "outlook_contacts_delete", "outlook_people_search"]
|
|
8149
|
+
},
|
|
8150
|
+
{
|
|
8151
|
+
id: "excel",
|
|
8152
|
+
name: "Microsoft Excel",
|
|
8153
|
+
description: "Read/write cells, ranges, tables, worksheets, formulas, charts, formatting",
|
|
8154
|
+
icon: Emoji.chartUp,
|
|
8155
|
+
requiresOAuth: "microsoft",
|
|
8156
|
+
tools: [
|
|
8157
|
+
"excel_list_worksheets",
|
|
8158
|
+
"excel_read_range",
|
|
8159
|
+
"excel_write_range",
|
|
8160
|
+
"excel_add_row",
|
|
8161
|
+
"excel_list_tables",
|
|
8162
|
+
"excel_read_table",
|
|
8163
|
+
"excel_create_worksheet",
|
|
8164
|
+
"excel_create_session",
|
|
8165
|
+
"excel_close_session",
|
|
8166
|
+
"excel_evaluate_formula",
|
|
8167
|
+
"excel_named_ranges",
|
|
8168
|
+
"excel_read_named_range",
|
|
8169
|
+
"excel_list_charts",
|
|
8170
|
+
"excel_chart_image",
|
|
8171
|
+
"excel_pivot_refresh",
|
|
8172
|
+
"excel_set_cell_format"
|
|
8173
|
+
]
|
|
8174
|
+
},
|
|
8175
|
+
{
|
|
8176
|
+
id: "sharepoint",
|
|
8177
|
+
name: "SharePoint",
|
|
8178
|
+
description: "Sites, document libraries, lists, search, file management across SharePoint Online",
|
|
8179
|
+
icon: Emoji.database,
|
|
8180
|
+
requiresOAuth: "microsoft",
|
|
8181
|
+
tools: [
|
|
8182
|
+
"sharepoint_list_sites",
|
|
8183
|
+
"sharepoint_get_site",
|
|
8184
|
+
"sharepoint_list_drives",
|
|
8185
|
+
"sharepoint_list_files",
|
|
8186
|
+
"sharepoint_upload_file",
|
|
8187
|
+
"sharepoint_list_lists",
|
|
8188
|
+
"sharepoint_list_items",
|
|
8189
|
+
"sharepoint_create_list_item",
|
|
8190
|
+
"sharepoint_update_list_item",
|
|
8191
|
+
"sharepoint_search"
|
|
8192
|
+
]
|
|
8193
|
+
},
|
|
8194
|
+
{
|
|
8195
|
+
id: "onenote",
|
|
8196
|
+
name: "OneNote",
|
|
8197
|
+
description: "Notebooks, sections, pages \u2014 read, create, and update notes",
|
|
8198
|
+
icon: Emoji.note,
|
|
8199
|
+
requiresOAuth: "microsoft",
|
|
8200
|
+
tools: [
|
|
8201
|
+
"onenote_list_notebooks",
|
|
8202
|
+
"onenote_list_sections",
|
|
8203
|
+
"onenote_list_pages",
|
|
8204
|
+
"onenote_read_page",
|
|
8205
|
+
"onenote_create_page",
|
|
8206
|
+
"onenote_update_page"
|
|
8207
|
+
]
|
|
8208
|
+
},
|
|
8209
|
+
{
|
|
8210
|
+
id: "powerpoint",
|
|
8211
|
+
name: "PowerPoint",
|
|
8212
|
+
description: "Presentation metadata, PDF export, thumbnails, templates, embed URLs",
|
|
8213
|
+
icon: Emoji.art,
|
|
8214
|
+
requiresOAuth: "microsoft",
|
|
8215
|
+
tools: [
|
|
8216
|
+
"powerpoint_get_info",
|
|
8217
|
+
"powerpoint_export_pdf",
|
|
8218
|
+
"powerpoint_get_thumbnails",
|
|
8219
|
+
"powerpoint_create_from_template",
|
|
8220
|
+
"powerpoint_get_embed_url"
|
|
8221
|
+
]
|
|
8222
|
+
},
|
|
8223
|
+
{
|
|
8224
|
+
id: "planner",
|
|
8225
|
+
name: "Microsoft Planner",
|
|
8226
|
+
description: "Project boards \u2014 plans, buckets, tasks (Kanban-style task management)",
|
|
8227
|
+
icon: Emoji.clipboard,
|
|
8228
|
+
requiresOAuth: "microsoft",
|
|
8229
|
+
tools: [
|
|
8230
|
+
"planner_list_plans",
|
|
8231
|
+
"planner_list_buckets",
|
|
8232
|
+
"planner_list_tasks",
|
|
8233
|
+
"planner_create_task",
|
|
8234
|
+
"planner_update_task",
|
|
8235
|
+
"planner_delete_task"
|
|
8236
|
+
]
|
|
8237
|
+
},
|
|
8238
|
+
{
|
|
8239
|
+
id: "powerbi",
|
|
8240
|
+
name: "Power BI",
|
|
8241
|
+
description: "Workspaces, reports, dashboards, datasets, DAX queries, data refresh",
|
|
8242
|
+
icon: Emoji.barChart,
|
|
8243
|
+
requiresOAuth: "microsoft",
|
|
8244
|
+
tools: [
|
|
8245
|
+
"powerbi_list_workspaces",
|
|
8246
|
+
"powerbi_list_reports",
|
|
8247
|
+
"powerbi_list_dashboards",
|
|
8248
|
+
"powerbi_list_datasets",
|
|
8249
|
+
"powerbi_refresh_dataset",
|
|
8250
|
+
"powerbi_refresh_history",
|
|
8251
|
+
"powerbi_execute_query",
|
|
8252
|
+
"powerbi_dashboard_tiles"
|
|
8253
|
+
]
|
|
7870
8254
|
}
|
|
7871
8255
|
];
|
|
7872
8256
|
router.get("/bridge/system/capabilities", async (c) => {
|
|
@@ -8355,7 +8739,7 @@ function createAgentRoutes(opts) {
|
|
|
8355
8739
|
if (body.requireApproval) profile.requireApproval = body.requireApproval;
|
|
8356
8740
|
if (body.rateLimits) profile.rateLimits = body.rateLimits;
|
|
8357
8741
|
if (body.constraints) profile.constraints = body.constraints;
|
|
8358
|
-
permissions.setProfile(agentId, profile, managed.
|
|
8742
|
+
permissions.setProfile(agentId, profile, managed.orgId);
|
|
8359
8743
|
}
|
|
8360
8744
|
managed.updatedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
8361
8745
|
await lifecycle2.saveAgent(agentId);
|
|
@@ -8443,7 +8827,7 @@ function createAgentRoutes(opts) {
|
|
|
8443
8827
|
}
|
|
8444
8828
|
profile.tools.blocked = [...newBlocked];
|
|
8445
8829
|
profile.tools.allowed = [...newAllowed];
|
|
8446
|
-
permissions.setProfile(agentId, profile, managed.
|
|
8830
|
+
permissions.setProfile(agentId, profile, managed.orgId);
|
|
8447
8831
|
}
|
|
8448
8832
|
managed.updatedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
8449
8833
|
await lifecycle2.saveAgent(agentId);
|
|
@@ -24033,6 +24417,13 @@ Manager: ${node.managerName} (external) \u2014 ${node.managerEmail}`);
|
|
|
24033
24417
|
|
|
24034
24418
|
// src/database-access/routes.ts
|
|
24035
24419
|
import { Hono as Hono28 } from "hono";
|
|
24420
|
+
async function notifyAgentReload(agentId) {
|
|
24421
|
+
try {
|
|
24422
|
+
const { notifyAgent } = await import("./agent-notify-OEQBCZLN.js");
|
|
24423
|
+
await notifyAgent(agentId, "db-access");
|
|
24424
|
+
} catch {
|
|
24425
|
+
}
|
|
24426
|
+
}
|
|
24036
24427
|
function createDatabaseAccessRoutes(manager) {
|
|
24037
24428
|
const router = new Hono28();
|
|
24038
24429
|
router.get("/connections", async (c) => {
|
|
@@ -24142,6 +24533,8 @@ function createDatabaseAccessRoutes(manager) {
|
|
|
24142
24533
|
requireApproval: body.requireApproval ?? false,
|
|
24143
24534
|
enabled: true
|
|
24144
24535
|
});
|
|
24536
|
+
notifyAgentReload(body.agentId).catch(() => {
|
|
24537
|
+
});
|
|
24145
24538
|
return c.json(access, 201);
|
|
24146
24539
|
});
|
|
24147
24540
|
router.put("/connections/:connId/agents/:agentId", async (c) => {
|
|
@@ -24151,7 +24544,10 @@ function createDatabaseAccessRoutes(manager) {
|
|
|
24151
24544
|
return c.json(updated);
|
|
24152
24545
|
});
|
|
24153
24546
|
router.delete("/connections/:connId/agents/:agentId", async (c) => {
|
|
24154
|
-
|
|
24547
|
+
const agentId = c.req.param("agentId");
|
|
24548
|
+
await manager.revokeAccess(agentId, c.req.param("connId"));
|
|
24549
|
+
notifyAgentReload(agentId).catch(() => {
|
|
24550
|
+
});
|
|
24155
24551
|
return c.json({ ok: true });
|
|
24156
24552
|
});
|
|
24157
24553
|
router.get("/agents/:agentId/connections", async (c) => {
|
|
@@ -24502,7 +24898,7 @@ function mountRuntimeApp(app) {
|
|
|
24502
24898
|
function setRuntime(runtime) {
|
|
24503
24899
|
_runtime = runtime;
|
|
24504
24900
|
}
|
|
24505
|
-
var engine, _engineApp, permissionEngine, configGen, deployer, approvals, lifecycle, knowledgeBase, tenants, activity, agentStatus, dlp, commBus, guardrails, journal, compliance, communityRegistry, workforce, policyEngine, memoryManager, onboarding, vault, orgIntegrations, storageManager, policyImporter, knowledgeContribution, hierarchyManager, knowledgeImport, taskQueue, skillUpdater, databaseManager,
|
|
24901
|
+
var engine, _engineApp, _engineDb, _adminDb, permissionEngine, configGen, deployer, approvals, lifecycle, knowledgeBase, tenants, activity, agentStatus, dlp, commBus, guardrails, journal, compliance, communityRegistry, workforce, policyEngine, memoryManager, onboarding, vault, orgIntegrations, storageManager, policyImporter, knowledgeContribution, hierarchyManager, knowledgeImport, taskQueue, skillUpdater, databaseManager, _chatPoller, _emailPoller, _messagingPoller, _runtimeApp, _runtime;
|
|
24506
24902
|
var init_routes3 = __esm({
|
|
24507
24903
|
"src/engine/routes.ts"() {
|
|
24508
24904
|
init_skills2();
|
|
@@ -24568,6 +24964,8 @@ var init_routes3 = __esm({
|
|
|
24568
24964
|
init_database_access();
|
|
24569
24965
|
engine = new Hono29();
|
|
24570
24966
|
_engineApp = engine;
|
|
24967
|
+
_engineDb = null;
|
|
24968
|
+
_adminDb = null;
|
|
24571
24969
|
permissionEngine = new PermissionEngine(FULL_SKILL_DEFINITIONS);
|
|
24572
24970
|
{
|
|
24573
24971
|
const totalTools = FULL_SKILL_DEFINITIONS.reduce((s, sk) => s + sk.tools.length, 0);
|
|
@@ -25161,8 +25559,6 @@ var init_routes3 = __esm({
|
|
|
25161
25559
|
await poller.rediscover();
|
|
25162
25560
|
return c.json({ ok: true });
|
|
25163
25561
|
});
|
|
25164
|
-
_engineDb = null;
|
|
25165
|
-
_adminDb = null;
|
|
25166
25562
|
_chatPoller = null;
|
|
25167
25563
|
_emailPoller = null;
|
|
25168
25564
|
_messagingPoller = null;
|
|
@@ -1046,7 +1046,7 @@ async function provision(config, ora, chalk) {
|
|
|
1046
1046
|
const engineDbInterface = db.getEngineDB();
|
|
1047
1047
|
if (engineDbInterface) {
|
|
1048
1048
|
spinner.start("Initializing engine...");
|
|
1049
|
-
const { EngineDatabase } = await import("./db-adapter-
|
|
1049
|
+
const { EngineDatabase } = await import("./db-adapter-2T56ORSD.js");
|
|
1050
1050
|
const dialectMap = {
|
|
1051
1051
|
sqlite: "sqlite",
|
|
1052
1052
|
postgres: "postgres",
|
|
@@ -1188,7 +1188,7 @@ async function deploy(config, db, jwtSecret, vaultKey, spinner, chalk) {
|
|
|
1188
1188
|
const { deployTarget, company, database, domain, tunnel, cloud } = config;
|
|
1189
1189
|
if (deployTarget === "cloudflare-tunnel" && tunnel) {
|
|
1190
1190
|
spinner.start(`Starting local server on port ${tunnel.port}...`);
|
|
1191
|
-
const { createServer: createServer2 } = await import("./server-
|
|
1191
|
+
const { createServer: createServer2 } = await import("./server-X4CJTHHF.js");
|
|
1192
1192
|
const server2 = createServer2({ port: tunnel.port, db, jwtSecret });
|
|
1193
1193
|
const handle2 = await server2.start();
|
|
1194
1194
|
spinner.succeed("Server running");
|
|
@@ -1341,7 +1341,7 @@ async function deploy(config, db, jwtSecret, vaultKey, spinner, chalk) {
|
|
|
1341
1341
|
return {};
|
|
1342
1342
|
}
|
|
1343
1343
|
spinner.start("Starting local server...");
|
|
1344
|
-
const { createServer } = await import("./server-
|
|
1344
|
+
const { createServer } = await import("./server-X4CJTHHF.js");
|
|
1345
1345
|
const server = createServer({ port: 3e3, db, jwtSecret });
|
|
1346
1346
|
const handle = await server.start();
|
|
1347
1347
|
spinner.succeed("Server running");
|
|
@@ -1046,7 +1046,7 @@ async function provision(config, ora, chalk) {
|
|
|
1046
1046
|
const engineDbInterface = db.getEngineDB();
|
|
1047
1047
|
if (engineDbInterface) {
|
|
1048
1048
|
spinner.start("Initializing engine...");
|
|
1049
|
-
const { EngineDatabase } = await import("./db-adapter-
|
|
1049
|
+
const { EngineDatabase } = await import("./db-adapter-2T56ORSD.js");
|
|
1050
1050
|
const dialectMap = {
|
|
1051
1051
|
sqlite: "sqlite",
|
|
1052
1052
|
postgres: "postgres",
|
|
@@ -1188,7 +1188,7 @@ async function deploy(config, db, jwtSecret, vaultKey, spinner, chalk) {
|
|
|
1188
1188
|
const { deployTarget, company, database, domain, tunnel, cloud } = config;
|
|
1189
1189
|
if (deployTarget === "cloudflare-tunnel" && tunnel) {
|
|
1190
1190
|
spinner.start(`Starting local server on port ${tunnel.port}...`);
|
|
1191
|
-
const { createServer: createServer2 } = await import("./server-
|
|
1191
|
+
const { createServer: createServer2 } = await import("./server-PWE5PQTR.js");
|
|
1192
1192
|
const server2 = createServer2({ port: tunnel.port, db, jwtSecret });
|
|
1193
1193
|
const handle2 = await server2.start();
|
|
1194
1194
|
spinner.succeed("Server running");
|
|
@@ -1341,7 +1341,7 @@ async function deploy(config, db, jwtSecret, vaultKey, spinner, chalk) {
|
|
|
1341
1341
|
return {};
|
|
1342
1342
|
}
|
|
1343
1343
|
spinner.start("Starting local server...");
|
|
1344
|
-
const { createServer } = await import("./server-
|
|
1344
|
+
const { createServer } = await import("./server-PWE5PQTR.js");
|
|
1345
1345
|
const server = createServer({ port: 3e3, db, jwtSecret });
|
|
1346
1346
|
const handle = await server.start();
|
|
1347
1347
|
spinner.succeed("Server running");
|