@askexenow/exe-os 0.9.178 → 0.9.180
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/deploy/compose/init-db.sql +76 -0
- package/dist/{backfill-metadata-RUPJUXIG.js → backfill-metadata-HPMDXCZX.js} +1 -1
- package/dist/bin/agentic-ontology-backfill.js +1 -1
- package/dist/bin/agentic-reflection-backfill.js +1 -1
- package/dist/bin/agentic-semantic-label.js +1 -1
- package/dist/bin/backfill-conversations.js +1 -1
- package/dist/bin/backfill-responses.js +1 -1
- package/dist/bin/backfill-vectors.js +2 -2
- package/dist/bin/bulk-sync-postgres.js +1 -1
- package/dist/bin/cleanup-stale-review-tasks.js +2 -2
- package/dist/bin/cli.js +5 -5
- package/dist/bin/exe-agent.js +3 -3
- package/dist/bin/exe-assign.js +1 -1
- package/dist/bin/exe-boot.js +6 -6
- package/dist/bin/exe-call.js +3 -3
- package/dist/bin/exe-dispatch.js +2 -2
- package/dist/bin/exe-doctor.js +1 -1
- package/dist/bin/exe-export-behaviors.js +2 -2
- package/dist/bin/exe-forget.js +3 -3
- package/dist/bin/exe-gateway.js +4 -4
- package/dist/bin/exe-heartbeat.js +2 -2
- package/dist/bin/exe-kill.js +3 -3
- package/dist/bin/exe-launch-agent.js +5 -5
- package/dist/bin/exe-new-employee.js +3 -3
- package/dist/bin/exe-pending-messages.js +3 -3
- package/dist/bin/exe-pending-notifications.js +2 -2
- package/dist/bin/exe-pending-reviews.js +2 -2
- package/dist/bin/exe-rename.js +3 -3
- package/dist/bin/exe-review.js +3 -3
- package/dist/bin/exe-search.js +2 -2
- package/dist/bin/exe-session-cleanup.js +5 -5
- package/dist/bin/exe-start-codex.js +2 -2
- package/dist/bin/exe-start-opencode.js +1 -1
- package/dist/bin/exe-status.js +3 -3
- package/dist/bin/exe-team.js +1 -1
- package/dist/bin/git-sweep.js +2 -2
- package/dist/bin/graph-backfill.js +1 -1
- package/dist/bin/graph-export.js +2 -2
- package/dist/bin/import-history.js +1 -1
- package/dist/bin/intercom-check.js +3 -3
- package/dist/bin/pre-publish.js +1 -1
- package/dist/bin/scan-tasks.js +2 -2
- package/dist/bin/setup.js +1 -1
- package/dist/bin/shard-migrate.js +1 -1
- package/dist/bin/stack-update.js +1 -1
- package/dist/bin/vps-health-gate.js +1 -1
- package/dist/{capacity-monitor-5O3LAPGD.js → capacity-monitor-OQUDVUQC.js} +2 -2
- package/dist/{catchup-brief-3YBGR6BS.js → catchup-brief-RYXZY7KB.js} +3 -3
- package/dist/{chunk-LOYXXG6M.js → chunk-25CVYGFX.js} +1 -1
- package/dist/{chunk-KH34KOGR.js → chunk-2IV3YWK5.js} +1 -1
- package/dist/{chunk-GSGT3QI5.js → chunk-3VLOR4S5.js} +1 -1
- package/dist/{chunk-WCKGOI5P.js → chunk-64GZ6HDC.js} +1 -1
- package/dist/{chunk-BAKUXZZO.js → chunk-6WIKWLPV.js} +2 -2
- package/dist/{chunk-ZKHX26H3.js → chunk-6Z53VOF7.js} +2 -2
- package/dist/{chunk-34RVMFJL.js → chunk-7E3E43AS.js} +1 -1
- package/dist/{chunk-ERA4FE5C.js → chunk-BHWEKC56.js} +1 -1
- package/dist/{chunk-WCYT54XP.js → chunk-BV7EZIL4.js} +29 -17
- package/dist/{chunk-QU62Q3YI.js → chunk-CD76FDBD.js} +10 -2
- package/dist/{chunk-SUUPTAK3.js → chunk-CPPE7RAI.js} +1 -1
- package/dist/{chunk-LGY2BIOT.js → chunk-EB6OU665.js} +7 -0
- package/dist/{chunk-AWODEQI5.js → chunk-EWINUEVJ.js} +27 -27
- package/dist/{chunk-WP3ZXXPB.js → chunk-FFJ7E5UY.js} +1 -1
- package/dist/{chunk-LJ4MEZP5.js → chunk-H5XWQ4WA.js} +1 -1
- package/dist/{chunk-H2762FYW.js → chunk-HBUTUNH2.js} +2 -2
- package/dist/{chunk-3XIZVQ6I.js → chunk-HKSEZXKE.js} +1 -1
- package/dist/{chunk-3MN7V2SR.js → chunk-HSIIGUNO.js} +1 -1
- package/dist/{chunk-GROYT25I.js → chunk-HW3QT5BC.js} +1 -1
- package/dist/{chunk-XDAJN7CD.js → chunk-HYBT5PXK.js} +2 -2
- package/dist/{chunk-X4OO7RXI.js → chunk-I7RMP3RW.js} +3 -3
- package/dist/{chunk-QLZ2UY7X.js → chunk-IATLKAGH.js} +1 -1
- package/dist/{chunk-2TARUE5G.js → chunk-L4YMK3VA.js} +1 -1
- package/dist/{chunk-KFDIV7EE.js → chunk-NJL7VJ5O.js} +4 -4
- package/dist/{chunk-Y6OHW3L7.js → chunk-OZOKIJUD.js} +2 -2
- package/dist/{chunk-ZXP72SMJ.js → chunk-T3VJ6SD7.js} +2 -2
- package/dist/{chunk-JEL26633.js → chunk-U2UQMLJ3.js} +1 -1
- package/dist/{chunk-N4B65WIH.js → chunk-UAP3COVL.js} +3 -3
- package/dist/{chunk-X56DHLUW.js → chunk-VMZJWKOI.js} +1 -1
- package/dist/{chunk-ONESYIVC.js → chunk-ZFMOZRTQ.js} +3 -3
- package/dist/{crm-webhook-3TRJK4ZC.js → crm-webhook-PBW7CPZW.js} +2 -2
- package/dist/{cto-delegation-gate-LLO7QYHQ.js → cto-delegation-gate-WT4KGVMH.js} +1 -1
- package/dist/{daemon-orchestration-XL2UYSHK.js → daemon-orchestration-CF5CT3DV.js} +3 -3
- package/dist/{exe-export-IYLD7DFY.js → exe-export-KCM5YOYE.js} +3 -3
- package/dist/{exe-import-SO5HSWSN.js → exe-import-JCF2TJJO.js} +3 -3
- package/dist/{fast-db-init-BA6F2QTN.js → fast-db-init-3TIBU435.js} +1 -1
- package/dist/gateway/index.js +5 -5
- package/dist/{git-task-sweep-JCJ2QNSY.js → git-task-sweep-CJDQXX5K.js} +2 -2
- package/dist/{global-procedures-ZAMSXV2K.js → global-procedures-Q6JIKQZT.js} +2 -2
- package/dist/hooks/bug-report-worker.js +3 -3
- package/dist/hooks/codex-stop-task-finalizer.js +3 -3
- package/dist/hooks/commit-complete.js +4 -4
- package/dist/hooks/error-recall.js +2 -2
- package/dist/hooks/ingest.js +2 -2
- package/dist/hooks/instructions-loaded.js +1 -1
- package/dist/hooks/notification.js +1 -1
- package/dist/hooks/post-compact.js +2 -2
- package/dist/hooks/post-tool-combined.js +2 -2
- package/dist/hooks/pre-compact.js +3 -3
- package/dist/hooks/pre-tool-use.js +100 -21
- package/dist/hooks/prompt-submit.js +8 -8
- package/dist/hooks/session-end.js +6 -6
- package/dist/hooks/session-start.js +4 -4
- package/dist/hooks/stop.js +5 -5
- package/dist/hooks/subagent-stop.js +2 -2
- package/dist/hooks/summary-worker.js +5 -5
- package/dist/index.js +8 -8
- package/dist/lib/consolidation.js +2 -2
- package/dist/lib/employee-templates.js +3 -3
- package/dist/lib/exe-daemon.js +11 -11
- package/dist/lib/hybrid-search.js +2 -2
- package/dist/lib/messaging.js +2 -2
- package/dist/lib/schedules.js +2 -2
- package/dist/lib/store.js +1 -1
- package/dist/lib/tasks.js +2 -2
- package/dist/lib/tmux-routing.js +1 -1
- package/dist/mcp/register-tools.js +24 -24
- package/dist/mcp/server.js +25 -25
- package/dist/mcp/tools/create-task.js +3 -3
- package/dist/mcp/tools/list-tasks.js +3 -3
- package/dist/mcp/tools/send-message.js +3 -3
- package/dist/mcp/tools/update-task.js +3 -3
- package/dist/{notifications-SGFDN7D4.js → notifications-2J7EAPDU.js} +1 -1
- package/dist/{orchestrator-6P55DLMF.js → orchestrator-OO5WF4JS.js} +2 -2
- package/dist/{review-polling-LUFX7TBF.js → review-polling-KIJVM4Y5.js} +2 -2
- package/dist/runtime/index.js +3 -3
- package/dist/{self-query-router-37VB3PKQ.js → self-query-router-VNUCMGFX.js} +15 -5
- package/dist/{session-events-QW53IKLI.js → session-events-DRTJ4D2L.js} +2 -2
- package/dist/{session-scope-GCMG466H.js → session-scope-UMJVV7SW.js} +1 -1
- package/dist/{setup-wizard-RYBPL4WR.js → setup-wizard-BS5DUIVT.js} +1 -1
- package/dist/{stack-update-2B2UXREV.js → stack-update-LEUGR7HP.js} +1 -1
- package/dist/{task-enforcement-B4GIMP3P.js → task-enforcement-OJAURWWJ.js} +1 -1
- package/dist/{task-scope-MCCHWZT3.js → task-scope-ZINRRB5G.js} +1 -1
- package/dist/{tasks-crud-FSFQEHQS.js → tasks-crud-PH24HPHF.js} +1 -1
- package/dist/{tasks-review-ZX2IWJTJ.js → tasks-review-A2UWRTGM.js} +1 -1
- package/dist/tui/App.js +10 -10
- package/dist/{tui-data-VS5J33MW.js → tui-data-FTXRDBRP.js} +1 -1
- package/dist/{worker-gate-PF3NYYBS.js → worker-gate-IVJSJBPD.js} +1 -1
- package/dist/{workflow-engine-JKDPHNI2.js → workflow-engine-WWVNS2YO.js} +2 -2
- package/package.json +1 -1
- /package/dist/{chunk-56O7ERGE.js → chunk-6RL7NSY7.js} +0 -0
- /package/dist/{chunk-BLMF7ZQE.js → chunk-7EQXVRA3.js} +0 -0
- /package/dist/{chunk-PILV2QE3.js → chunk-WCJKG4WW.js} +0 -0
- /package/dist/{chunk-5WHMIXVB.js → chunk-XUBWK2W7.js} +0 -0
- /package/dist/{core-memory-XXATFASI.js → core-memory-6IN5YJZ7.js} +0 -0
- /package/dist/{exe-key-ELN6UW2L.js → exe-key-QJFDXAPI.js} +0 -0
- /package/dist/{skill-refinement-4NZ2EF4P.js → skill-refinement-LC7WAD62.js} +0 -0
package/dist/bin/git-sweep.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
sweepTasks
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-OZOKIJUD.js";
|
|
5
|
+
import "../chunk-NJL7VJ5O.js";
|
|
6
6
|
import "../chunk-LOQCOHEW.js";
|
|
7
7
|
import "../chunk-QI4IXJN7.js";
|
|
8
8
|
import "../chunk-64WZEXXA.js";
|
package/dist/bin/graph-export.js
CHANGED
|
@@ -5,10 +5,10 @@ import {
|
|
|
5
5
|
} from "../chunk-46SQTBQW.js";
|
|
6
6
|
import {
|
|
7
7
|
fastDbInit
|
|
8
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-7EQXVRA3.js";
|
|
9
9
|
import {
|
|
10
10
|
disposeStore
|
|
11
|
-
} from "../chunk-
|
|
11
|
+
} from "../chunk-U2UQMLJ3.js";
|
|
12
12
|
import "../chunk-CHCA3ZM2.js";
|
|
13
13
|
import "../chunk-DOWW3EIO.js";
|
|
14
14
|
import "../chunk-MP2AFCGL.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
fastDbInit
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-7EQXVRA3.js";
|
|
5
5
|
import "../chunk-MLKGABMK.js";
|
|
6
6
|
|
|
7
7
|
// src/bin/intercom-check.ts
|
|
@@ -17,7 +17,7 @@ async function main() {
|
|
|
17
17
|
}
|
|
18
18
|
if (isCoordinator) {
|
|
19
19
|
try {
|
|
20
|
-
const { listPendingReviews, cleanupOrphanedReviews, formatAge, isStale } = await import("../tasks-review-
|
|
20
|
+
const { listPendingReviews, cleanupOrphanedReviews, formatAge, isStale } = await import("../tasks-review-A2UWRTGM.js");
|
|
21
21
|
const { extractRootExe } = await import("../lib/tmux-routing.js");
|
|
22
22
|
let sessionScope = process.env.EXE_SESSION ? extractRootExe(process.env.EXE_SESSION) ?? void 0 : void 0;
|
|
23
23
|
if (!sessionScope) {
|
|
@@ -115,7 +115,7 @@ async function main() {
|
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
try {
|
|
118
|
-
const { readUnreadNotifications, markAsRead } = await import("../notifications-
|
|
118
|
+
const { readUnreadNotifications, markAsRead } = await import("../notifications-2J7EAPDU.js");
|
|
119
119
|
const { resolveExeSession } = await import("../lib/tmux-routing.js");
|
|
120
120
|
const sessionScope = resolveExeSession();
|
|
121
121
|
const notifications = await readUnreadNotifications(agent, sessionScope);
|
package/dist/bin/pre-publish.js
CHANGED
package/dist/bin/scan-tasks.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
queryTaskRows
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-NJL7VJ5O.js";
|
|
5
5
|
import "../chunk-LOQCOHEW.js";
|
|
6
6
|
import "../chunk-QI4IXJN7.js";
|
|
7
7
|
import "../chunk-64WZEXXA.js";
|
|
@@ -72,7 +72,7 @@ function checkMcpHealth() {
|
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
async function scanFromDb(agentId, tmuxSession, projectName) {
|
|
75
|
-
const { fastDbInit } = await import("../fast-db-init-
|
|
75
|
+
const { fastDbInit } = await import("../fast-db-init-3TIBU435.js");
|
|
76
76
|
try {
|
|
77
77
|
await fastDbInit();
|
|
78
78
|
} catch (err) {
|
package/dist/bin/setup.js
CHANGED
package/dist/bin/stack-update.js
CHANGED
|
@@ -207,7 +207,7 @@ async function main(args) {
|
|
|
207
207
|
console.log("[health-gate] Starting rollback...");
|
|
208
208
|
restorePreDeployBackup();
|
|
209
209
|
try {
|
|
210
|
-
const { rollbackStackUpdate, defaultStackPaths } = await import("../stack-update-
|
|
210
|
+
const { rollbackStackUpdate, defaultStackPaths } = await import("../stack-update-LEUGR7HP.js");
|
|
211
211
|
const paths = defaultStackPaths();
|
|
212
212
|
await rollbackStackUpdate({
|
|
213
213
|
manifestRef: paths.manifestRef,
|
|
@@ -8,9 +8,9 @@ import {
|
|
|
8
8
|
isAtCapacity,
|
|
9
9
|
isWithinRelaunchCooldown,
|
|
10
10
|
pollCapacityDead
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-IATLKAGH.js";
|
|
12
12
|
import "./chunk-L4VM6PZ7.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-NJL7VJ5O.js";
|
|
14
14
|
import "./chunk-LOQCOHEW.js";
|
|
15
15
|
import "./chunk-QI4IXJN7.js";
|
|
16
16
|
import "./chunk-64WZEXXA.js";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
lightweightSearch
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-CD76FDBD.js";
|
|
4
|
+
import "./chunk-U2UQMLJ3.js";
|
|
5
5
|
import "./chunk-CHCA3ZM2.js";
|
|
6
6
|
import "./chunk-DOWW3EIO.js";
|
|
7
7
|
import {
|
|
8
8
|
sessionScopeFilter,
|
|
9
9
|
strictSessionScopeFilter
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-NJL7VJ5O.js";
|
|
11
11
|
import "./chunk-LOQCOHEW.js";
|
|
12
12
|
import "./chunk-QI4IXJN7.js";
|
|
13
13
|
import "./chunk-64WZEXXA.js";
|
|
@@ -111,7 +111,7 @@ function releaseBackfillLock() {
|
|
|
111
111
|
}
|
|
112
112
|
async function getTaskAwareCapacity() {
|
|
113
113
|
const { getClient } = await import("./lib/database.js");
|
|
114
|
-
const { sessionScopeFilter } = await import("./task-scope-
|
|
114
|
+
const { sessionScopeFilter } = await import("./task-scope-ZINRRB5G.js");
|
|
115
115
|
const client = getClient();
|
|
116
116
|
const scope = sessionScopeFilter();
|
|
117
117
|
const result = await client.execute({
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
import {
|
|
20
20
|
createCRMWebhookHandler,
|
|
21
21
|
parseTwentyWebhook
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-CPPE7RAI.js";
|
|
23
23
|
import {
|
|
24
24
|
BotRegistry,
|
|
25
25
|
BotRuntime,
|
|
@@ -42,7 +42,7 @@ import {
|
|
|
42
42
|
retryWithBackoff,
|
|
43
43
|
routeMessage,
|
|
44
44
|
validateGatewayConfig
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-7E3E43AS.js";
|
|
46
46
|
import {
|
|
47
47
|
OllamaProvider
|
|
48
48
|
} from "./chunk-FWFFZGSC.js";
|
|
@@ -762,16 +762,26 @@ async function runStackUpdate(options) {
|
|
|
762
762
|
}
|
|
763
763
|
async function fetchImageCredentials(options) {
|
|
764
764
|
if (!options.imageCredentialsUrl) return null;
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
765
|
+
try {
|
|
766
|
+
const res = await fetch(options.imageCredentialsUrl, {
|
|
767
|
+
method: "POST",
|
|
768
|
+
headers: {
|
|
769
|
+
"content-type": "application/json",
|
|
770
|
+
...options.manifestAuthToken ? { authorization: `Bearer ${options.manifestAuthToken}` } : {}
|
|
771
|
+
},
|
|
772
|
+
body: JSON.stringify({ deviceId: options.deviceId, licenseKey: options.licenseKey }),
|
|
773
|
+
signal: AbortSignal.timeout(1e4)
|
|
774
|
+
});
|
|
775
|
+
if (!res.ok) {
|
|
776
|
+
console.warn(`[stack-update] Image credentials unavailable (HTTP ${res.status}). Docker pull will use existing auth.`);
|
|
777
|
+
return null;
|
|
778
|
+
}
|
|
779
|
+
return await res.json();
|
|
780
|
+
} catch (err) {
|
|
781
|
+
const reason = err instanceof Error ? err.message : String(err);
|
|
782
|
+
console.warn(`[stack-update] Image credentials fetch failed: ${reason}. Docker pull will use existing auth.`);
|
|
783
|
+
return null;
|
|
784
|
+
}
|
|
775
785
|
}
|
|
776
786
|
function readCurrentStackVersion(lockFile) {
|
|
777
787
|
if (!existsSync(lockFile)) return void 0;
|
|
@@ -886,18 +896,20 @@ function defaultStackPaths() {
|
|
|
886
896
|
const cwdCompose = path.resolve("docker-compose.yml");
|
|
887
897
|
const cwdEnv = path.resolve(".env");
|
|
888
898
|
const packagedManifest = path.join(resolvePackageRoot(), "deploy", "stack-manifests", "v0.9.json");
|
|
889
|
-
const manifestRef = process.env.EXE_STACK_MANIFEST || (existsSync(packagedManifest) ? packagedManifest : "https://
|
|
899
|
+
const manifestRef = process.env.EXE_STACK_MANIFEST || (existsSync(packagedManifest) ? packagedManifest : "https://update.askexe.com/v1/stack-manifest.json");
|
|
900
|
+
const licenseKey = process.env.EXE_LICENSE_KEY || loadLicense() || process.env.EXE_STACK_UPDATE_TOKEN || void 0;
|
|
901
|
+
const isRemoteManifest = /^https?:\/\//.test(manifestRef);
|
|
902
|
+
const hasLicenseForRemote = !!licenseKey;
|
|
903
|
+
const updateServiceUrl = process.env.EXE_UPDATE_SERVICE_URL || "https://update.askexe.com";
|
|
890
904
|
return {
|
|
891
905
|
composeFile: process.env.EXE_STACK_COMPOSE_FILE || (existsSync(cwdCompose) ? cwdCompose : "/opt/exe-stack/docker-compose.yml"),
|
|
892
906
|
envFile: process.env.EXE_STACK_ENV_FILE || (existsSync(cwdEnv) ? cwdEnv : "/opt/exe-stack/.env"),
|
|
893
907
|
manifestRef,
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
imageCredentialsUrl: process.env.EXE_STACK_IMAGE_CREDENTIALS_URL || (/^https?:\/\//.test(manifestRef) ? "https://api.askexe.com/v1/image-credentials" : void 0),
|
|
898
|
-
// License key IS the auth token for api.askexe.com — no separate update token needed.
|
|
908
|
+
auditUrl: process.env.EXE_STACK_AUDIT_URL || (isRemoteManifest || hasLicenseForRemote ? `${updateServiceUrl}/v1/deploy-audits` : void 0),
|
|
909
|
+
imageCredentialsUrl: process.env.EXE_STACK_IMAGE_CREDENTIALS_URL || (isRemoteManifest || hasLicenseForRemote ? `${updateServiceUrl}/v1/image-credentials` : void 0),
|
|
910
|
+
// License key IS the auth token for update.askexe.com — no separate update token needed.
|
|
899
911
|
// EXE_STACK_UPDATE_TOKEN kept as legacy fallback during migration.
|
|
900
|
-
manifestAuthToken:
|
|
912
|
+
manifestAuthToken: licenseKey,
|
|
901
913
|
manifestPublicKey: loadDefaultPublicKey()
|
|
902
914
|
};
|
|
903
915
|
}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
buildRawVisibilityFilter,
|
|
4
4
|
buildWikiScopeFilter,
|
|
5
5
|
searchMemories
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-U2UQMLJ3.js";
|
|
7
7
|
import {
|
|
8
8
|
getClient
|
|
9
9
|
} from "./chunk-RD77OX3W.js";
|
|
@@ -201,12 +201,14 @@ async function hybridSearch(queryText, agentId, options) {
|
|
|
201
201
|
let effectiveQuery = queryText;
|
|
202
202
|
const effectiveOptions = { ...options };
|
|
203
203
|
let _isBroadQuery = false;
|
|
204
|
+
let inferredTerms = [];
|
|
204
205
|
if (config.selfQueryRouter && process.env.ANTHROPIC_API_KEY) {
|
|
205
206
|
try {
|
|
206
|
-
const { routeQuery } = await import("./self-query-router-
|
|
207
|
+
const { routeQuery } = await import("./self-query-router-VNUCMGFX.js");
|
|
207
208
|
const routed = await routeQuery(queryText, config.selfQueryModel);
|
|
208
209
|
effectiveQuery = routed.semanticQuery;
|
|
209
210
|
_isBroadQuery = routed.isBroadQuery;
|
|
211
|
+
inferredTerms = routed.inferredTerms ?? [];
|
|
210
212
|
if (routed.projectFilter && !effectiveOptions.projectName) {
|
|
211
213
|
effectiveOptions.projectName = routed.projectFilter;
|
|
212
214
|
}
|
|
@@ -266,6 +268,11 @@ async function hybridSearch(queryText, agentId, options) {
|
|
|
266
268
|
}
|
|
267
269
|
}
|
|
268
270
|
const entitySubqueries = extractEntitySubqueries(effectiveQuery);
|
|
271
|
+
if (inferredTerms.length > 0) {
|
|
272
|
+
entitySubqueries.push(...inferredTerms.filter(
|
|
273
|
+
(t) => !entitySubqueries.some((sq) => sq.toLowerCase() === t.toLowerCase())
|
|
274
|
+
));
|
|
275
|
+
}
|
|
269
276
|
const subqueryPromises = entitySubqueries.map(
|
|
270
277
|
(sq) => lightweightSearch(sq, agentId, { ...fetchOptions, limit: Math.min(fetchLimit, 20) }).catch(() => [])
|
|
271
278
|
);
|
|
@@ -444,6 +451,7 @@ async function hybridSearch(queryText, agentId, options) {
|
|
|
444
451
|
contradictionResolution: merged.length >= 2,
|
|
445
452
|
reranker: rerankedAndBlended !== null,
|
|
446
453
|
selfQueryRouter: effectiveQuery !== queryText,
|
|
454
|
+
inferredTerms: inferredTerms.length > 0 ? inferredTerms : void 0,
|
|
447
455
|
lowConfidence: finalResults[0]?._lowConfidence ?? false
|
|
448
456
|
},
|
|
449
457
|
topResults: finalResults.slice(0, 10).map((r, i) => {
|
|
@@ -193,6 +193,13 @@ var PLATFORM_PROCEDURES = [
|
|
|
193
193
|
priority: "p1",
|
|
194
194
|
content: "Fresh install: `npm install -g @askexenow/exe-os` then run `exe` to start the setup wizard. The wizard prompts for: encryption passphrase (creates master key), license key (exe_sk_* from AskExe team), COO name, and optional team members. No license key = free tier (1 employee, 5K memories). After setup: hooks install automatically, MCP server registers in ~/.claude.json, daemon starts. Verify health: run `exe-os healthcheck` or use mcp_ping() tool."
|
|
195
195
|
},
|
|
196
|
+
// --- Work discipline ---
|
|
197
|
+
{
|
|
198
|
+
title: "Never defer \u2014 fix it now or assign it now",
|
|
199
|
+
domain: "operations",
|
|
200
|
+
priority: "p0",
|
|
201
|
+
content: "NEVER defer work. If something is broken or needed, fix it in this session. Do NOT say 'we can do this later', 'save for next sprint', 'when prioritized', or 'not urgent right now'. Every defer is a broken promise \u2014 the work was identified but not done, which is worse than not identifying it. Deferred items pile up, get forgotten, block other work, and erode trust. If you find a bug while working on something else: fix it immediately, then continue your original task. If it's outside your scope: create_task to assign it to someone who can fix it NOW, not 'later'. If it genuinely cannot be done right now (missing credentials, needs external human action, blocked by third-party API), say exactly what's blocking and who needs to act \u2014 but never defer something within our control. The only acceptable reason to not fix something is 'it is physically impossible right now' \u2014 not 'it's not urgent'."
|
|
202
|
+
},
|
|
196
203
|
// --- Observability ---
|
|
197
204
|
{
|
|
198
205
|
title: "Daemon logs and session lifecycle \u2014 full transparency for debugging",
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
} from "./chunk-R4IK2YT3.js";
|
|
7
7
|
import {
|
|
8
8
|
AUTO_WAKE_MAX_RETRIES
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-HYBT5PXK.js";
|
|
10
10
|
import {
|
|
11
11
|
getToolCapabilityIndex
|
|
12
12
|
} from "./chunk-6BZF3TEG.js";
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
} from "./chunk-E6ORBQHP.js";
|
|
29
29
|
import {
|
|
30
30
|
listRecentSessionEvents
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-2IV3YWK5.js";
|
|
32
32
|
import {
|
|
33
33
|
analyzeBlastRadius,
|
|
34
34
|
buildCodeContextIndex,
|
|
@@ -42,7 +42,7 @@ import {
|
|
|
42
42
|
exportOrchestration,
|
|
43
43
|
importOrchestration,
|
|
44
44
|
validatePackage
|
|
45
|
-
} from "./chunk-
|
|
45
|
+
} from "./chunk-HW3QT5BC.js";
|
|
46
46
|
import {
|
|
47
47
|
runDriftProbes
|
|
48
48
|
} from "./chunk-ZR2ZH5CN.js";
|
|
@@ -52,7 +52,7 @@ import {
|
|
|
52
52
|
} from "./chunk-DH65L4XI.js";
|
|
53
53
|
import {
|
|
54
54
|
createOrRefreshResumeTask
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-IATLKAGH.js";
|
|
56
56
|
import {
|
|
57
57
|
registerCompleteReminder
|
|
58
58
|
} from "./chunk-UUZJU5NL.js";
|
|
@@ -61,16 +61,16 @@ import {
|
|
|
61
61
|
} from "./chunk-3KVMAWJO.js";
|
|
62
62
|
import {
|
|
63
63
|
registerSendMessage
|
|
64
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-L4YMK3VA.js";
|
|
65
65
|
import {
|
|
66
66
|
registerCreateTask
|
|
67
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-ZFMOZRTQ.js";
|
|
68
68
|
import {
|
|
69
69
|
registerListTasks
|
|
70
|
-
} from "./chunk-
|
|
70
|
+
} from "./chunk-HKSEZXKE.js";
|
|
71
71
|
import {
|
|
72
72
|
registerUpdateTask
|
|
73
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-6WIKWLPV.js";
|
|
74
74
|
import {
|
|
75
75
|
registerCreateReminder
|
|
76
76
|
} from "./chunk-BYVSOED6.js";
|
|
@@ -100,10 +100,10 @@ import {
|
|
|
100
100
|
import {
|
|
101
101
|
createSchedule,
|
|
102
102
|
parseHumanCron
|
|
103
|
-
} from "./chunk-
|
|
103
|
+
} from "./chunk-64GZ6HDC.js";
|
|
104
104
|
import {
|
|
105
105
|
status
|
|
106
|
-
} from "./chunk-
|
|
106
|
+
} from "./chunk-T3VJ6SD7.js";
|
|
107
107
|
import {
|
|
108
108
|
getAgentSpend
|
|
109
109
|
} from "./chunk-TY4SOOBC.js";
|
|
@@ -118,7 +118,7 @@ import {
|
|
|
118
118
|
import {
|
|
119
119
|
formatReport,
|
|
120
120
|
runAudit
|
|
121
|
-
} from "./chunk-
|
|
121
|
+
} from "./chunk-HBUTUNH2.js";
|
|
122
122
|
import {
|
|
123
123
|
runHealthCheck
|
|
124
124
|
} from "./chunk-J73N5EJ6.js";
|
|
@@ -129,15 +129,15 @@ import {
|
|
|
129
129
|
} from "./chunk-46Q3LLXC.js";
|
|
130
130
|
import {
|
|
131
131
|
renderClientCOOTemplate
|
|
132
|
-
} from "./chunk-
|
|
132
|
+
} from "./chunk-3VLOR4S5.js";
|
|
133
133
|
import {
|
|
134
134
|
deactivateGlobalProcedure,
|
|
135
135
|
loadGlobalProcedures,
|
|
136
136
|
storeGlobalProcedure
|
|
137
|
-
} from "./chunk-
|
|
137
|
+
} from "./chunk-HSIIGUNO.js";
|
|
138
138
|
import {
|
|
139
139
|
PLATFORM_PROCEDURES
|
|
140
|
-
} from "./chunk-
|
|
140
|
+
} from "./chunk-EB6OU665.js";
|
|
141
141
|
import {
|
|
142
142
|
clearCloudReuploadRequired,
|
|
143
143
|
cloudSync,
|
|
@@ -162,7 +162,7 @@ import {
|
|
|
162
162
|
groupMemories,
|
|
163
163
|
runConsolidation,
|
|
164
164
|
selectUnconsolidated
|
|
165
|
-
} from "./chunk-
|
|
165
|
+
} from "./chunk-VMZJWKOI.js";
|
|
166
166
|
import {
|
|
167
167
|
embed
|
|
168
168
|
} from "./chunk-7XKOGQJ2.js";
|
|
@@ -173,17 +173,17 @@ import {
|
|
|
173
173
|
} from "./chunk-T5YT64SZ.js";
|
|
174
174
|
import {
|
|
175
175
|
updateTask
|
|
176
|
-
} from "./chunk-
|
|
176
|
+
} from "./chunk-I7RMP3RW.js";
|
|
177
177
|
import {
|
|
178
178
|
fastDbInit
|
|
179
|
-
} from "./chunk-
|
|
179
|
+
} from "./chunk-7EQXVRA3.js";
|
|
180
180
|
import {
|
|
181
181
|
MAX_CONCURRENT_WORKERS
|
|
182
|
-
} from "./chunk-
|
|
182
|
+
} from "./chunk-25CVYGFX.js";
|
|
183
183
|
import {
|
|
184
184
|
hybridSearch,
|
|
185
185
|
recentRecords
|
|
186
|
-
} from "./chunk-
|
|
186
|
+
} from "./chunk-CD76FDBD.js";
|
|
187
187
|
import {
|
|
188
188
|
attachDocumentMetadata,
|
|
189
189
|
flushBatch,
|
|
@@ -191,7 +191,7 @@ import {
|
|
|
191
191
|
reserveVersions,
|
|
192
192
|
vectorToBlob,
|
|
193
193
|
writeMemory
|
|
194
|
-
} from "./chunk-
|
|
194
|
+
} from "./chunk-U2UQMLJ3.js";
|
|
195
195
|
import {
|
|
196
196
|
extractKeywords,
|
|
197
197
|
keywordsToString
|
|
@@ -206,7 +206,7 @@ import {
|
|
|
206
206
|
sessionScopeFilter,
|
|
207
207
|
updateTaskStatus,
|
|
208
208
|
writeCheckpoint
|
|
209
|
-
} from "./chunk-
|
|
209
|
+
} from "./chunk-NJL7VJ5O.js";
|
|
210
210
|
import {
|
|
211
211
|
listSessions
|
|
212
212
|
} from "./chunk-64WZEXXA.js";
|
|
@@ -242,7 +242,7 @@ import {
|
|
|
242
242
|
isScheduledTrigger,
|
|
243
243
|
loadTriggers,
|
|
244
244
|
sanitizeParam
|
|
245
|
-
} from "./chunk-
|
|
245
|
+
} from "./chunk-XUBWK2W7.js";
|
|
246
246
|
import {
|
|
247
247
|
EMPLOYEES_PATH,
|
|
248
248
|
addEmployee,
|
|
@@ -1553,7 +1553,7 @@ function registerMemory(server) {
|
|
|
1553
1553
|
if (action === "core_get" || action === "core_set" || action === "core_delete") {
|
|
1554
1554
|
const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-I6RTMUJQ.js");
|
|
1555
1555
|
const { agentId } = getActiveAgent2();
|
|
1556
|
-
const { getCoreMemory, setCoreMemory, deleteCoreMemory, formatCoreMemoryBlock } = await import("./core-memory-
|
|
1556
|
+
const { getCoreMemory, setCoreMemory, deleteCoreMemory, formatCoreMemoryBlock } = await import("./core-memory-6IN5YJZ7.js");
|
|
1557
1557
|
if (action === "core_get") {
|
|
1558
1558
|
const entries = await getCoreMemory(agentId);
|
|
1559
1559
|
const block = formatCoreMemoryBlock(entries);
|
|
@@ -2262,7 +2262,7 @@ function registerResumeEmployee(server) {
|
|
|
2262
2262
|
};
|
|
2263
2263
|
}
|
|
2264
2264
|
try {
|
|
2265
|
-
const { isTmuxSessionAlive } = await import("./tasks-crud-
|
|
2265
|
+
const { isTmuxSessionAlive } = await import("./tasks-crud-PH24HPHF.js");
|
|
2266
2266
|
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
2267
2267
|
for (const row of openTasks.rows) {
|
|
2268
2268
|
const status2 = String(row.status);
|
|
@@ -5200,7 +5200,7 @@ function registerGetDaemonHealth(server) {
|
|
|
5200
5200
|
lines.push(`| Requests served | ${health.requests_served.toLocaleString()} |`);
|
|
5201
5201
|
}
|
|
5202
5202
|
try {
|
|
5203
|
-
const { getQueryCacheStats } = await import("./self-query-router-
|
|
5203
|
+
const { getQueryCacheStats } = await import("./self-query-router-VNUCMGFX.js");
|
|
5204
5204
|
const cache = getQueryCacheStats();
|
|
5205
5205
|
lines.push(`| Query cache size | ${cache.size} / ${cache.maxSize} |`);
|
|
5206
5206
|
lines.push(`| Query cache hit rate | ${cache.hitRate} |`);
|
|
@@ -5421,7 +5421,7 @@ async function getAgentSessionLoad() {
|
|
|
5421
5421
|
return { sessions: [], totalLive: 0, busySessions: 0, idleSessions: 0 };
|
|
5422
5422
|
}
|
|
5423
5423
|
const { getClient: getClient2 } = await import("./lib/database.js");
|
|
5424
|
-
const { sessionScopeFilter: sessionScopeFilter2 } = await import("./task-scope-
|
|
5424
|
+
const { sessionScopeFilter: sessionScopeFilter2 } = await import("./task-scope-ZINRRB5G.js");
|
|
5425
5425
|
const client = getClient2();
|
|
5426
5426
|
const scope = sessionScopeFilter2();
|
|
5427
5427
|
for (const s of liveAgentSessions) {
|
|
@@ -9460,7 +9460,7 @@ function registerWorkflowTool(server) {
|
|
|
9460
9460
|
getWorkflowInstance,
|
|
9461
9461
|
listWorkflowInstances,
|
|
9462
9462
|
approveWorkflowStep
|
|
9463
|
-
} = await import("./workflow-engine-
|
|
9463
|
+
} = await import("./workflow-engine-WWVNS2YO.js");
|
|
9464
9464
|
try {
|
|
9465
9465
|
switch (input.action) {
|
|
9466
9466
|
case "create_workflow": {
|
|
@@ -849,7 +849,7 @@ function formatReport(report, flags) {
|
|
|
849
849
|
return lines.join("\n");
|
|
850
850
|
}
|
|
851
851
|
async function fixNullVectors() {
|
|
852
|
-
const { tryAcquireWorkerSlot, registerWorkerPid } = await import("./worker-gate-
|
|
852
|
+
const { tryAcquireWorkerSlot, registerWorkerPid } = await import("./worker-gate-IVJSJBPD.js");
|
|
853
853
|
if (!tryAcquireWorkerSlot()) {
|
|
854
854
|
process.stderr.write("[exe-doctor] Worker gate full \u2014 waiting for existing backfill workers to finish\n");
|
|
855
855
|
await new Promise((r) => setTimeout(r, 5e3));
|
|
@@ -970,7 +970,7 @@ function splitAtSentences(text, maxChunkSize) {
|
|
|
970
970
|
}
|
|
971
971
|
async function main(argv = process.argv.slice(2)) {
|
|
972
972
|
const flags = parseFlags(argv);
|
|
973
|
-
const { fastDbInit } = await import("./fast-db-init-
|
|
973
|
+
const { fastDbInit } = await import("./fast-db-init-3TIBU435.js");
|
|
974
974
|
const client = await fastDbInit();
|
|
975
975
|
const report = await runAudit(client, flags);
|
|
976
976
|
console.log(formatReport(report, flags));
|