@dxos/assistant-toolkit 0.8.4-main.abd8ff62ef → 0.8.4-main.bc2380dfbc
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/LICENSE +102 -5
- package/dist/lib/neutral/{add-artifact-BA5WQRDU.mjs → add-artifact-4IVGW6CI.mjs} +4 -4
- package/dist/lib/neutral/{add-artifact-BA5WQRDU.mjs.map → add-artifact-4IVGW6CI.mjs.map} +3 -3
- package/dist/lib/neutral/{agent-M2EW5M36.mjs → agent-F4L7UXME.mjs} +5 -5
- package/dist/lib/neutral/{agent-M2EW5M36.mjs.map → agent-F4L7UXME.mjs.map} +2 -2
- package/dist/lib/neutral/{chunk-CLHVRIYF.mjs → chunk-5GPL2WXU.mjs} +35 -36
- package/dist/lib/neutral/chunk-5GPL2WXU.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-CVUA23QI.mjs → chunk-7UCYAP3T.mjs} +17 -17
- package/dist/lib/neutral/chunk-7UCYAP3T.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-TO5IX24K.mjs → chunk-ANSF2BHN.mjs} +3 -3
- package/dist/lib/neutral/chunk-ANSF2BHN.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-D5MG5OKX.mjs → chunk-BCT55UTL.mjs} +2 -2
- package/dist/lib/neutral/{chunk-J37DYY7A.mjs → chunk-COL54UJ3.mjs} +12 -3
- package/dist/lib/neutral/chunk-COL54UJ3.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-E2XRNXWP.mjs → chunk-KS3IA6FQ.mjs} +11 -10
- package/dist/lib/neutral/chunk-KS3IA6FQ.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-KY2TIPJ5.mjs → chunk-MMQ7HFL4.mjs} +4 -5
- package/dist/lib/neutral/chunk-MMQ7HFL4.mjs.map +7 -0
- package/dist/lib/neutral/chunk-PLGEBNTO.mjs +65 -0
- package/dist/lib/neutral/chunk-PLGEBNTO.mjs.map +7 -0
- package/dist/lib/neutral/{chunk-JCYLFOFK.mjs → chunk-W2722TC5.mjs} +5 -5
- package/dist/lib/neutral/{chunk-JCYLFOFK.mjs.map → chunk-W2722TC5.mjs.map} +3 -3
- package/dist/lib/neutral/{context-add-IIDPRRVB.mjs → context-add-S5MBW2NA.mjs} +4 -4
- package/dist/lib/neutral/context-add-S5MBW2NA.mjs.map +7 -0
- package/dist/lib/neutral/{context-remove-RDYV4PD4.mjs → context-remove-35O5T5N5.mjs} +4 -4
- package/dist/lib/neutral/context-remove-35O5T5N5.mjs.map +7 -0
- package/dist/lib/neutral/{create-project-GLDEAWTT.mjs → create-project-3AGXJ4TD.mjs} +5 -5
- package/dist/lib/neutral/{enable-blueprints-LBDZH2CY.mjs → enable-blueprints-IVKST3WH.mjs} +4 -4
- package/dist/lib/neutral/enable-blueprints-IVKST3WH.mjs.map +7 -0
- package/dist/lib/neutral/{fetch-messages-PWGUG5G3.mjs → fetch-messages-QOBBCTGC.mjs} +2 -2
- package/dist/lib/neutral/{get-context-B55SX5Y4.mjs → get-context-FBYWIP72.mjs} +4 -4
- package/dist/lib/neutral/{get-context-B55SX5Y4.mjs.map → get-context-FBYWIP72.mjs.map} +3 -3
- package/dist/lib/neutral/index.mjs +67 -57
- package/dist/lib/neutral/index.mjs.map +3 -3
- package/dist/lib/neutral/{load-LI7HHVD6.mjs → load-GAT3T2AD.mjs} +2 -2
- package/dist/lib/neutral/meta.json +1 -1
- package/dist/lib/neutral/{object-create-52Z7YKIA.mjs → object-create-PL3WRP74.mjs} +3 -3
- package/dist/lib/neutral/{object-delete-I266YAXI.mjs → object-delete-PZJQN5KW.mjs} +2 -2
- package/dist/lib/neutral/{object-update-HY4GI7LA.mjs → object-update-R43N3VJX.mjs} +2 -2
- package/dist/lib/neutral/{project-2YBPW5N7.mjs → project-VVXXUMAI.mjs} +4 -4
- package/dist/lib/neutral/{project-rules-XUBEPDP6.mjs → project-rules-KSVSOZJV.mjs} +3 -3
- package/dist/lib/neutral/{prompt-2WZQERT4.mjs → prompt-INL55Q2B.mjs} +10 -7
- package/dist/lib/neutral/{prompt-2WZQERT4.mjs.map → prompt-INL55Q2B.mjs.map} +3 -3
- package/dist/lib/neutral/{qualifier-2AC2ICOB.mjs → qualifier-DAF4H7V3.mjs} +11 -11
- package/dist/lib/neutral/qualifier-DAF4H7V3.mjs.map +7 -0
- package/dist/lib/neutral/{query-B3NOYFCK.mjs → query-MP5NSQKO.mjs} +3 -4
- package/dist/lib/neutral/query-MP5NSQKO.mjs.map +7 -0
- package/dist/lib/neutral/{query-blueprints-KXADGHSA.mjs → query-blueprints-PLWYVOI3.mjs} +2 -2
- package/dist/lib/neutral/{relation-create-Z3NGW4VU.mjs → relation-create-YAAAFTR2.mjs} +3 -3
- package/dist/lib/neutral/{relation-delete-LXY7W2YO.mjs → relation-delete-IEPKERFR.mjs} +2 -2
- package/dist/lib/neutral/{schema-add-4TXJO2V7.mjs → schema-add-5BNIINRS.mjs} +2 -2
- package/dist/lib/neutral/{schema-list-PJS5AFZ3.mjs → schema-list-54UK7S4R.mjs} +2 -2
- package/dist/lib/neutral/{sync-issues-LOLHZNFL.mjs → sync-issues-DWY76B3M.mjs} +6 -7
- package/dist/lib/neutral/sync-issues-DWY76B3M.mjs.map +7 -0
- package/dist/lib/neutral/{sync-triggers-EYJM4QWR.mjs → sync-triggers-NOIQLELD.mjs} +8 -9
- package/dist/lib/neutral/{sync-triggers-EYJM4QWR.mjs.map → sync-triggers-NOIQLELD.mjs.map} +3 -3
- package/dist/lib/neutral/{tag-add-5NOHUTIE.mjs → tag-add-NLVRGTC6.mjs} +2 -2
- package/dist/lib/neutral/{tag-remove-QTKYDJAW.mjs → tag-remove-N4HFBIA2.mjs} +2 -2
- package/dist/lib/neutral/testing/index.mjs +3 -3
- package/dist/lib/neutral/testing/index.mjs.map +3 -3
- package/dist/lib/neutral/{update-blueprints-N2AK2VUR.mjs → update-blueprints-2SNK6HLG.mjs} +2 -2
- package/dist/lib/neutral/update-tasks-QQUR53RN.mjs +13 -0
- package/dist/lib/neutral/update-tasks-QQUR53RN.mjs.map +7 -0
- package/dist/types/src/blueprints/blueprint-manager/functions/definitions.d.ts +10 -8
- package/dist/types/src/blueprints/blueprint-manager/functions/definitions.d.ts.map +1 -1
- package/dist/types/src/blueprints/blueprint-manager/functions/enable-blueprints.d.ts +6 -5
- package/dist/types/src/blueprints/blueprint-manager/functions/enable-blueprints.d.ts.map +1 -1
- package/dist/types/src/blueprints/blueprint-manager/functions/query-blueprints.d.ts +4 -3
- package/dist/types/src/blueprints/database/functions/context-add.d.ts +2 -2
- package/dist/types/src/blueprints/database/functions/context-add.d.ts.map +1 -1
- package/dist/types/src/blueprints/database/functions/context-remove.d.ts +2 -2
- package/dist/types/src/blueprints/database/functions/context-remove.d.ts.map +1 -1
- package/dist/types/src/blueprints/database/functions/definitions.d.ts +3 -3
- package/dist/types/src/blueprints/database/functions/definitions.d.ts.map +1 -1
- package/dist/types/src/blueprints/database/functions/query.d.ts +1 -2
- package/dist/types/src/blueprints/database/functions/query.d.ts.map +1 -1
- package/dist/types/src/blueprints/linear/functions/sync-issues.d.ts.map +1 -1
- package/dist/types/src/blueprints/planning/functions/index.d.ts +1 -1
- package/dist/types/src/blueprints/planning/functions/index.d.ts.map +1 -1
- package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts +14 -1
- package/dist/types/src/blueprints/planning/functions/update-tasks.d.ts.map +1 -1
- package/dist/types/src/blueprints/planning/functions/update-tasks.test.d.ts +2 -0
- package/dist/types/src/blueprints/planning/functions/update-tasks.test.d.ts.map +1 -0
- package/dist/types/src/blueprints/project/functions/add-artifact.d.ts +1 -5
- package/dist/types/src/blueprints/project/functions/add-artifact.d.ts.map +1 -1
- package/dist/types/src/blueprints/project/functions/definitions.d.ts +16 -8
- package/dist/types/src/blueprints/project/functions/definitions.d.ts.map +1 -1
- package/dist/types/src/blueprints/project/functions/get-context.d.ts +1 -12
- package/dist/types/src/blueprints/project/functions/get-context.d.ts.map +1 -1
- package/dist/types/src/blueprints/project/functions/qualifier.d.ts +8 -4
- package/dist/types/src/blueprints/project/functions/qualifier.d.ts.map +1 -1
- package/dist/types/src/blueprints/project-wizard/functions/create-project.d.ts +6 -2
- package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts +12 -4
- package/dist/types/src/blueprints/project-wizard/functions/definitions.d.ts.map +1 -1
- package/dist/types/src/blueprints/project-wizard/functions/sync-triggers.d.ts +6 -2
- package/dist/types/src/blueprints/testing.d.ts +4 -4
- package/dist/types/src/blueprints/testing.d.ts.map +1 -1
- package/dist/types/src/crud/graph.d.ts +5 -7
- package/dist/types/src/crud/graph.d.ts.map +1 -1
- package/dist/types/src/functions/agent/definitions.d.ts +6 -5
- package/dist/types/src/functions/agent/definitions.d.ts.map +1 -1
- package/dist/types/src/sync/sync.d.ts +1 -2
- package/dist/types/src/sync/sync.d.ts.map +1 -1
- package/dist/types/src/types/Agent.d.ts +9 -7
- package/dist/types/src/types/Agent.d.ts.map +1 -1
- package/dist/types/src/types/McpServer.d.ts +4 -1
- package/dist/types/src/types/McpServer.d.ts.map +1 -1
- package/dist/types/src/types/Plan.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +26 -26
- package/src/blueprints/automation/blueprint.ts +1 -1
- package/src/blueprints/blueprint-manager/blueprint.conversations.json +1 -1
- package/src/blueprints/blueprint-manager/blueprint.test.ts +21 -17
- package/src/blueprints/blueprint-manager/blueprint.ts +2 -2
- package/src/blueprints/blueprint-manager/functions/definitions.ts +2 -2
- package/src/blueprints/blueprint-manager/functions/enable-blueprints.ts +2 -2
- package/src/blueprints/browser/blueprint.test.ts +3 -3
- package/src/blueprints/browser/blueprint.ts +1 -1
- package/src/blueprints/database/blueprint.conversations.json +1 -1
- package/src/blueprints/database/blueprint.test.ts +6 -6
- package/src/blueprints/database/blueprint.ts +1 -1
- package/src/blueprints/database/functions/context-add.ts +2 -2
- package/src/blueprints/database/functions/context-remove.ts +2 -2
- package/src/blueprints/database/functions/definitions.ts +16 -16
- package/src/blueprints/database/functions/query.ts +2 -3
- package/src/blueprints/discord/blueprint.ts +1 -1
- package/src/blueprints/discord/functions/fetch-messages.test.ts +7 -2
- package/src/blueprints/linear/blueprint.ts +1 -1
- package/src/blueprints/linear/functions/linear.test.ts +1 -2
- package/src/blueprints/linear/functions/sync-issues.ts +1 -2
- package/src/blueprints/memory/blueprint.conversations.json +1 -1
- package/src/blueprints/memory/blueprint.ts +1 -1
- package/src/blueprints/planning/blueprint.ts +1 -1
- package/src/blueprints/planning/functions/index.ts +1 -1
- package/src/blueprints/planning/functions/{definitions.ts → update-tasks.md} +29 -50
- package/src/blueprints/planning/functions/update-tasks.test.ts +55 -0
- package/src/blueprints/planning/functions/update-tasks.ts +25 -3
- package/src/blueprints/project/blueprint.conversations.json +1 -1
- package/src/blueprints/project/blueprint.test.ts +15 -17
- package/src/blueprints/project/blueprint.ts +2 -2
- package/src/blueprints/project/functions/add-artifact.ts +1 -0
- package/src/blueprints/project/functions/agent.ts +1 -1
- package/src/blueprints/project/functions/definitions.ts +8 -8
- package/src/blueprints/project/functions/get-context.ts +1 -0
- package/src/blueprints/project/functions/qualifier.ts +5 -5
- package/src/blueprints/project-wizard/functions/sync-triggers.ts +4 -9
- package/src/blueprints/testing.ts +10 -4
- package/src/blueprints/websearch/blueprint.conversations.json +1 -1
- package/src/crud/graph.test.ts +1 -1
- package/src/crud/graph.ts +125 -127
- package/src/functions/agent/definitions.ts +8 -3
- package/src/functions/agent/prompt.conversations.json +1 -1
- package/src/functions/agent/prompt.test.ts +8 -11
- package/src/functions/agent/prompt.ts +5 -2
- package/src/sync/sync.ts +1 -2
- package/src/types/Agent.ts +28 -29
- package/src/types/McpServer.ts +5 -5
- package/src/types/Plan.ts +1 -0
- package/dist/lib/neutral/chunk-CLHVRIYF.mjs.map +0 -7
- package/dist/lib/neutral/chunk-CVUA23QI.mjs.map +0 -7
- package/dist/lib/neutral/chunk-E2XRNXWP.mjs.map +0 -7
- package/dist/lib/neutral/chunk-J37DYY7A.mjs.map +0 -7
- package/dist/lib/neutral/chunk-KY2TIPJ5.mjs.map +0 -7
- package/dist/lib/neutral/chunk-MMTKJBB5.mjs +0 -140
- package/dist/lib/neutral/chunk-MMTKJBB5.mjs.map +0 -7
- package/dist/lib/neutral/chunk-TO5IX24K.mjs.map +0 -7
- package/dist/lib/neutral/context-add-IIDPRRVB.mjs.map +0 -7
- package/dist/lib/neutral/context-remove-RDYV4PD4.mjs.map +0 -7
- package/dist/lib/neutral/enable-blueprints-LBDZH2CY.mjs.map +0 -7
- package/dist/lib/neutral/qualifier-2AC2ICOB.mjs.map +0 -7
- package/dist/lib/neutral/query-B3NOYFCK.mjs.map +0 -7
- package/dist/lib/neutral/sync-issues-LOLHZNFL.mjs.map +0 -7
- package/dist/lib/neutral/update-tasks-ML2FCYU5.mjs +0 -46
- package/dist/lib/neutral/update-tasks-ML2FCYU5.mjs.map +0 -7
- package/dist/types/src/blueprints/planning/functions/definitions.d.ts +0 -11
- package/dist/types/src/blueprints/planning/functions/definitions.d.ts.map +0 -1
- /package/dist/lib/neutral/{chunk-D5MG5OKX.mjs.map → chunk-BCT55UTL.mjs.map} +0 -0
- /package/dist/lib/neutral/{create-project-GLDEAWTT.mjs.map → create-project-3AGXJ4TD.mjs.map} +0 -0
- /package/dist/lib/neutral/{fetch-messages-PWGUG5G3.mjs.map → fetch-messages-QOBBCTGC.mjs.map} +0 -0
- /package/dist/lib/neutral/{load-LI7HHVD6.mjs.map → load-GAT3T2AD.mjs.map} +0 -0
- /package/dist/lib/neutral/{object-create-52Z7YKIA.mjs.map → object-create-PL3WRP74.mjs.map} +0 -0
- /package/dist/lib/neutral/{object-delete-I266YAXI.mjs.map → object-delete-PZJQN5KW.mjs.map} +0 -0
- /package/dist/lib/neutral/{object-update-HY4GI7LA.mjs.map → object-update-R43N3VJX.mjs.map} +0 -0
- /package/dist/lib/neutral/{project-2YBPW5N7.mjs.map → project-VVXXUMAI.mjs.map} +0 -0
- /package/dist/lib/neutral/{project-rules-XUBEPDP6.mjs.map → project-rules-KSVSOZJV.mjs.map} +0 -0
- /package/dist/lib/neutral/{query-blueprints-KXADGHSA.mjs.map → query-blueprints-PLWYVOI3.mjs.map} +0 -0
- /package/dist/lib/neutral/{relation-create-Z3NGW4VU.mjs.map → relation-create-YAAAFTR2.mjs.map} +0 -0
- /package/dist/lib/neutral/{relation-delete-LXY7W2YO.mjs.map → relation-delete-IEPKERFR.mjs.map} +0 -0
- /package/dist/lib/neutral/{schema-add-4TXJO2V7.mjs.map → schema-add-5BNIINRS.mjs.map} +0 -0
- /package/dist/lib/neutral/{schema-list-PJS5AFZ3.mjs.map → schema-list-54UK7S4R.mjs.map} +0 -0
- /package/dist/lib/neutral/{tag-add-5NOHUTIE.mjs.map → tag-add-NLVRGTC6.mjs.map} +0 -0
- /package/dist/lib/neutral/{tag-remove-QTKYDJAW.mjs.map → tag-remove-N4HFBIA2.mjs.map} +0 -0
- /package/dist/lib/neutral/{update-blueprints-N2AK2VUR.mjs.map → update-blueprints-2SNK6HLG.mjs.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ObjectCreate
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7UCYAP3T.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/database/functions/object-create.ts
|
|
@@ -10,7 +10,7 @@ import { Database, Entity, Obj, Type } from "@dxos/echo";
|
|
|
10
10
|
import { EncodedReference } from "@dxos/echo-protocol";
|
|
11
11
|
import { invariant } from "@dxos/invariant";
|
|
12
12
|
import { deepMapValues } from "@dxos/util";
|
|
13
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/core/assistant-toolkit/src/blueprints/database/functions/object-create.ts";
|
|
13
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/core/compute/assistant-toolkit/src/blueprints/database/functions/object-create.ts";
|
|
14
14
|
var object_create_default = ObjectCreate.pipe(Operation.withHandler(Effect.fn(function* ({ typename, data }) {
|
|
15
15
|
const { db } = yield* Database.Service;
|
|
16
16
|
const schema = yield* Effect.promise(() => db.schemaRegistry.query({
|
|
@@ -32,4 +32,4 @@ var object_create_default = ObjectCreate.pipe(Operation.withHandler(Effect.fn(fu
|
|
|
32
32
|
export {
|
|
33
33
|
object_create_default as default
|
|
34
34
|
};
|
|
35
|
-
//# sourceMappingURL=object-create-
|
|
35
|
+
//# sourceMappingURL=object-create-PL3WRP74.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ObjectDelete
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7UCYAP3T.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/database/functions/object-delete.ts
|
|
@@ -15,4 +15,4 @@ var object_delete_default = ObjectDelete.pipe(Operation.withHandler(Effect.fn(fu
|
|
|
15
15
|
export {
|
|
16
16
|
object_delete_default as default
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=object-delete-
|
|
18
|
+
//# sourceMappingURL=object-delete-PZJQN5KW.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ObjectUpdate
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7UCYAP3T.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/database/functions/object-update.ts
|
|
@@ -25,4 +25,4 @@ var object_update_default = ObjectUpdate.pipe(Operation.withHandler(Effect.fn(fu
|
|
|
25
25
|
export {
|
|
26
26
|
object_update_default as default
|
|
27
27
|
};
|
|
28
|
-
//# sourceMappingURL=object-update-
|
|
28
|
+
//# sourceMappingURL=object-update-R43N3VJX.mjs.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AgentBlueprintHandlers,
|
|
3
3
|
blueprint_default
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-W2722TC5.mjs";
|
|
5
5
|
import {
|
|
6
6
|
AddArtifact,
|
|
7
7
|
AgentWorker,
|
|
8
8
|
GetContext,
|
|
9
9
|
Qualifier
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-KS3IA6FQ.mjs";
|
|
11
|
+
import "./chunk-5GPL2WXU.mjs";
|
|
12
12
|
import "./chunk-NR3GTWRC.mjs";
|
|
13
13
|
import "./chunk-KGU725LW.mjs";
|
|
14
14
|
import "./chunk-J5LGTIGS.mjs";
|
|
@@ -20,4 +20,4 @@ export {
|
|
|
20
20
|
GetContext,
|
|
21
21
|
Qualifier
|
|
22
22
|
};
|
|
23
|
-
//# sourceMappingURL=project-
|
|
23
|
+
//# sourceMappingURL=project-VVXXUMAI.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AgentRules
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-BCT55UTL.mjs";
|
|
4
|
+
import "./chunk-5GPL2WXU.mjs";
|
|
5
5
|
import "./chunk-NR3GTWRC.mjs";
|
|
6
6
|
import "./chunk-KGU725LW.mjs";
|
|
7
7
|
import "./chunk-J5LGTIGS.mjs";
|
|
@@ -75,4 +75,4 @@ var project_rules_default = AgentRules.pipe(Operation.withHandler(Effect.fnUntra
|
|
|
75
75
|
export {
|
|
76
76
|
project_rules_default as default
|
|
77
77
|
};
|
|
78
|
-
//# sourceMappingURL=project-rules-
|
|
78
|
+
//# sourceMappingURL=project-rules-KSVSOZJV.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AgentPrompt
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-COL54UJ3.mjs";
|
|
4
4
|
import {
|
|
5
5
|
Chat
|
|
6
6
|
} from "./chunk-NR3GTWRC.mjs";
|
|
@@ -37,7 +37,7 @@ var PromptError = class extends BaseError.extend("PromptError") {
|
|
|
37
37
|
};
|
|
38
38
|
|
|
39
39
|
// src/functions/agent/prompt.ts
|
|
40
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/core/assistant-toolkit/src/functions/agent/prompt.ts";
|
|
40
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/core/compute/assistant-toolkit/src/functions/agent/prompt.ts";
|
|
41
41
|
var DEFAULT_MODEL = "@anthropic/claude-opus-4-6";
|
|
42
42
|
var prompt_default = AgentPrompt.pipe(Operation.withHandler(Effect.fnUntraced(function* (data) {
|
|
43
43
|
log.info("processing input", {
|
|
@@ -88,7 +88,7 @@ ${data.systemInstructions}`;
|
|
|
88
88
|
resultSink
|
|
89
89
|
});
|
|
90
90
|
const runtime2 = yield* Effect.runtime();
|
|
91
|
-
const session = yield* acquireReleaseResource(() => new AiSession({
|
|
91
|
+
const session = yield* acquireReleaseResource(() => new AiSession.Session({
|
|
92
92
|
feed,
|
|
93
93
|
runtime: runtime2
|
|
94
94
|
}));
|
|
@@ -113,7 +113,10 @@ ${data.systemInstructions}`;
|
|
|
113
113
|
}), makeToolResolverFromOperations())));
|
|
114
114
|
return yield* Deferred.poll(resultSink).pipe(Effect.flatten, Effect.flatten, Effect.catchTag("NoSuchElementException", () => Effect.fail(new PromptError("Agent did not signal task completion.", {}))));
|
|
115
115
|
})));
|
|
116
|
-
}, Effect.
|
|
116
|
+
}, Effect.tapBoth({
|
|
117
|
+
onSuccess: () => Database.flush(),
|
|
118
|
+
onFailure: () => Database.flush()
|
|
119
|
+
}), Effect.scoped)), Operation.opaqueHandler);
|
|
117
120
|
var makePromptAgentToolkit = (options) => {
|
|
118
121
|
class PromptAgentToolkit extends Toolkit.make(Tool.make("completeJob", {
|
|
119
122
|
parameters: {
|
|
@@ -150,13 +153,13 @@ var ToolExecutionService = ({ feed }) => Layer.unwrapEffect(Effect.gen(function*
|
|
|
150
153
|
log("invoking operation", {
|
|
151
154
|
operationDef,
|
|
152
155
|
input
|
|
153
|
-
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L:
|
|
156
|
+
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 133, S: this });
|
|
154
157
|
const result = yield* operationInvoker.invoke(operationDef, input, {
|
|
155
158
|
conversation: Obj.getDXN(feed).toString()
|
|
156
159
|
}).pipe(Effect.orDie);
|
|
157
160
|
log("result", {
|
|
158
161
|
result
|
|
159
|
-
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L:
|
|
162
|
+
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 140, S: this });
|
|
160
163
|
return result;
|
|
161
164
|
})
|
|
162
165
|
});
|
|
@@ -164,4 +167,4 @@ var ToolExecutionService = ({ feed }) => Layer.unwrapEffect(Effect.gen(function*
|
|
|
164
167
|
export {
|
|
165
168
|
prompt_default as default
|
|
166
169
|
};
|
|
167
|
-
//# sourceMappingURL=prompt-
|
|
170
|
+
//# sourceMappingURL=prompt-INL55Q2B.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/functions/agent/prompt.ts", "../../../src/errors.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Tool from '@effect/ai/Tool';\nimport * as Toolkit from '@effect/ai/Toolkit';\nimport * as Array from 'effect/Array';\nimport * as Deferred from 'effect/Deferred';\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\nimport * as Layer from 'effect/Layer';\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\n\nimport { AiService, OpaqueToolkit, ModelName } from '@dxos/ai';\nimport {\n AiSession,\n getOperationFromTool,\n makeToolExecutionService,\n makeToolResolverFromOperations,\n} from '@dxos/assistant';\nimport { Template, Trace, Operation } from '@dxos/compute';\nimport { Database, Feed, Obj, Ref } from '@dxos/echo';\nimport { acquireReleaseResource } from '@dxos/effect';\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\nimport { trim } from '@dxos/util';\n\nimport { PromptError } from '../../errors';\nimport * as Chat from '../../types/Chat';\nimport { AgentPrompt } from './definitions';\n\nconst DEFAULT_MODEL: ModelName = '@anthropic/claude-opus-4-6';\n\nexport default AgentPrompt.pipe(\n Operation.withHandler(\n Effect.fnUntraced(\n function* (data) {\n log.info('processing input', { input: data.input });\n\n const input = yield* Ref.isRef(data.input)\n ? Database.load(data.input).pipe(Effect.map(Obj.toJSON))\n : Effect.succeed(data.input);\n\n yield* Database.flush();\n const prompt = yield* Database.load(data.prompt);\n yield* Trace.emitStatus(`Running ${prompt.id}`);\n\n log.info('starting agent', { prompt: prompt.id, input });\n\n const blueprints = yield* Function.pipe(\n prompt.blueprints,\n Effect.forEach(Database.loadOption),\n Effect.map(Array.filter(Option.isSome)),\n Effect.map(Array.map((option) => option.value)),\n );\n\n const objects = yield* Function.pipe(\n prompt.context,\n Effect.forEach(Database.loadOption),\n Effect.map(Array.filter(Option.isSome)),\n Effect.map(Array.map((option) => option.value)),\n );\n\n const promptInstructions = yield* Database.load(prompt.instructions.source);\n let promptText = Template.process(promptInstructions.content, input);\n\n if (input !== undefined) {\n promptText += `\\n<input>${JSON.stringify(input)}</input>`;\n }\n\n let systemText = trim`\n You are an agent running in the non-interactive mode.\n The user is unable to see what you are doing, and cannot answer any questions.\n Do not ask questions.\n Complete the task before you, and at the end call [completeJob] with the output.\n If you are unable to complete the task, call [completeJob] with the failure reason.\n If no output is required, call [completeJob] with an empty object: {}\n Do not stop until you call [completeJob].\n `;\n if (data.systemInstructions) {\n systemText += `\\n\\n${data.systemInstructions}`;\n }\n\n const modelLayer = AiService.model(data.model ?? DEFAULT_MODEL);\n\n let feed: Feed.Feed;\n if (data.chat) {\n const chat = yield* Database.load(data.chat);\n invariant(Obj.instanceOf(Chat.Chat, chat), 'Expected Chat object.');\n feed = yield* Database.load(chat.feed);\n } else {\n feed = yield* Database.add(Feed.make());\n }\n\n const resultSink = yield* Deferred.make<unknown, PromptError>();\n const promptToolkit = makePromptAgentToolkit({\n output: Schema.Any, // TODO(dmaretskyi): Use prompt's output schema.\n resultSink,\n });\n\n const runtime = yield* Effect.runtime<Feed.FeedService>();\n const session = yield* acquireReleaseResource(() => new AiSession({ feed, runtime }));\n\n yield* Effect.promise(() =>\n session.context.bind({\n blueprints: blueprints.map((blueprint) => Ref.make(blueprint)),\n objects: objects.map((object) => Ref.make(object as Obj.Unknown)),\n }),\n );\n\n yield* session\n .createRequest({\n prompt: promptText,\n system: systemText,\n toolkit: promptToolkit,\n })\n .pipe(\n Effect.provide(\n Layer.mergeAll(modelLayer, ToolExecutionService({ feed }), makeToolResolverFromOperations()),\n ),\n );\n\n return yield* Deferred.poll(resultSink).pipe(\n Effect.flatten,\n Effect.flatten,\n Effect.catchTag('NoSuchElementException', () =>\n Effect.gen(function* () {\n yield* session\n .createRequest({\n prompt: 'You must signal task completion by calling [completeJob] with the output or failure reason.',\n system: systemText,\n toolkit: promptToolkit,\n })\n .pipe(\n Effect.provide(\n Layer.mergeAll(modelLayer, ToolExecutionService({ feed }), makeToolResolverFromOperations()),\n ),\n );\n\n return yield* Deferred.poll(resultSink).pipe(\n Effect.flatten,\n Effect.flatten,\n Effect.catchTag('NoSuchElementException', () =>\n Effect.fail(new PromptError('Agent did not signal task completion.', {})),\n ),\n );\n }),\n ),\n );\n },\n Effect.
|
|
5
|
-
"mappings": ";;;;;;;;;AAIA,YAAYA,UAAU;AACtB,YAAYC,aAAa;AACzB,YAAYC,WAAW;AACvB,YAAYC,cAAc;AAC1B,YAAYC,YAAY;AACxB,YAAYC,cAAc;AAC1B,YAAYC,WAAW;AACvB,YAAYC,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,WAAWC,qBAAgC;AACpD,SACEC,WACAC,sBACAC,0BACAC,sCACK;AACP,SAASC,UAAUC,OAAOC,iBAAiB;AAC3C,SAASC,UAAUC,MAAMC,KAAKC,WAAW;AACzC,SAASC,8BAA8B;AACvC,SAASC,iBAAiB;AAC1B,SAASC,WAAW;AACpB,SAASC,YAAY;;;ACtBrB,SAASC,iBAAiB;AAMnB,IAAMC,cAAN,cAA0BD,UAAUE,OAAO,aAAA,EAAA;EAChD,YACEC,SACAC,SAKA;AACA,UAAM;MACJD;MACAC;IACF,CAAA;EACF;AACF;;;ADQA,IAAA,eAAMC;IAMEC,gBAAS;qBAA6BC,YAAU,KAAA,UAAA,YAAA,kBAAA,WAAA,MAAA;AAAC,MAAA,KAAA,oBAAA;IAEjD,OAAMC,KAAQ;EAId,GAAA,EAAA,YAAOC,YAAc,GAAA,cAAA,GAAA,IAAA,GAAA,KAAA,CAAA;AACrB,QAAMC,QAAAA,OAAS,IAAOD,MAASE,KAAKJ,KAAKG,IAAAA,SAAM,KAAA,KAAA,KAAA,EAAA,KAAA,WAAA,IAAA,MAAA,CAAA,IAAA,eAAA,KAAA,KAAA;AAC/C,SAAOE,SAAMC,MAAAA;AAEbP,QAAIQ,SAAK,OAAA,SAAkB,KAAA,KAAA,MAAA;SAAEJ,MAAQA,WAAS,WAAA,OAAA,EAAA,EAAA;MAAEF,KAAAA,kBAAAA;IAAM,QAAA,OAAA;IAEtD;EAOA,GAAA,EAAA,YAAMO,YAAiBC,GAAAA,cACrBN,GAAAA,IAAOO,GAAAA,KAAO,CAAA;AAMhB,QAAMC,aAAAA,OAA4BT,cAAAA,OAAa,YAAQU,eAAmB,SAAA,UAAA,GAAA,WAAA,aAAA,aAAA,CAAA,GAAA,WAAA,UAAA,CAAA,WAAA,OAAA,KAAA,CAAA,CAAA;AAC1E,QAAIC,UAAAA,OAAsBC,cAAQH,OAAAA,SAA0B,eAAEV,SAAAA,UAAAA,GAAAA,WAAAA,aAAAA,aAAAA,CAAAA,GAAAA,WAAAA,UAAAA,CAAAA,WAAAA,OAAAA,KAAAA,CAAAA,CAAAA;AAE9D,QAAIA,qBAAqB,OAAA,SAAA,KAAA,OAAA,aAAA,MAAA;MACvBY,aAAAA,SAAe,QAAWE,mBAAsB,SAAS,KAAA;AAC3D,MAAA,UAAA,QAAA;AAEIC,kBAAaC;SAAK,KAAA,UAAA,KAAA,CAAA;;;;;;;;;;;AAWtB,MAAA,KAAA,oBAAA;AAEA,kBAAMC;;EAAaC,KAAUC,kBAAgB;EAE7C;AACA,QAAIpB,aAAW,UAAA,MAAA,KAAA,SAAA,aAAA;MACb;MACAqB,KAAAA,MAAUC;AACVC,UAAAA,OAAO,OAAOrB,SAAcsB,KAAKD,KAAI,IAAA;AACvC,cAAO,IAAA,WAAA,MAAA,IAAA,GAAA,yBAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,MAAA,GAAA,CAAA,mCAAA,yBAAA,EAAA,CAAA;AACLA,WAAO,OAAOrB,SAASuB,KAAIC,KAAKC,IAAI;EACtC,OAAA;AAEA,WAAMC,OAAAA,SAAoBC,IAAAA,KAASF,KAAI,CAAA;EACvC;QACEG,aAAeC,OAAG,cAAA;QAClBH,gBAAAA,uBAAAA;IACF,QAAA;IAEA;EACA,CAAA;
|
|
6
|
-
"names": ["Tool", "Toolkit", "Array", "Deferred", "Effect", "Function", "Layer", "Option", "Schema", "AiService", "OpaqueToolkit", "AiSession", "getOperationFromTool", "makeToolExecutionService", "makeToolResolverFromOperations", "Template", "Trace", "Operation", "Database", "Feed", "Obj", "Ref", "acquireReleaseResource", "invariant", "log", "trim", "BaseError", "PromptError", "extend", "message", "context", "DEFAULT_MODEL", "log", "data", "input", "Database", "prompt", "load", "Trace", "emitStatus", "info", "objects", "Function", "context", "promptInstructions", "instructions", "promptText", "process", "JSON", "systemText", "trim", "modelLayer", "AiService", "model", "invariant", "Obj", "feed", "chat", "add", "Feed", "make", "resultSink", "Deferred", "output", "Any", "runtime", "Effect", "map", "object", "Ref", "session", "createRequest", "system", "toolkit", "pipe", "makeToolResolverFromOperations", "
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Tool from '@effect/ai/Tool';\nimport * as Toolkit from '@effect/ai/Toolkit';\nimport * as Array from 'effect/Array';\nimport * as Deferred from 'effect/Deferred';\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\nimport * as Layer from 'effect/Layer';\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\n\nimport { AiService, OpaqueToolkit, ModelName } from '@dxos/ai';\nimport {\n AiSession,\n getOperationFromTool,\n makeToolExecutionService,\n makeToolResolverFromOperations,\n} from '@dxos/assistant';\nimport { Template, Trace, Operation } from '@dxos/compute';\nimport { Database, Feed, Obj, Ref } from '@dxos/echo';\nimport { acquireReleaseResource } from '@dxos/effect';\nimport { invariant } from '@dxos/invariant';\nimport { log } from '@dxos/log';\nimport { trim } from '@dxos/util';\n\nimport { PromptError } from '../../errors';\nimport * as Chat from '../../types/Chat';\nimport { AgentPrompt } from './definitions';\n\nconst DEFAULT_MODEL: ModelName = '@anthropic/claude-opus-4-6';\n\nexport default AgentPrompt.pipe(\n Operation.withHandler(\n Effect.fnUntraced(\n function* (data) {\n log.info('processing input', { input: data.input });\n\n const input = yield* Ref.isRef(data.input)\n ? Database.load(data.input).pipe(Effect.map(Obj.toJSON))\n : Effect.succeed(data.input);\n\n yield* Database.flush();\n const prompt = yield* Database.load(data.prompt);\n yield* Trace.emitStatus(`Running ${prompt.id}`);\n\n log.info('starting agent', { prompt: prompt.id, input });\n\n const blueprints = yield* Function.pipe(\n prompt.blueprints,\n Effect.forEach(Database.loadOption),\n Effect.map(Array.filter(Option.isSome)),\n Effect.map(Array.map((option) => option.value)),\n );\n\n const objects = yield* Function.pipe(\n prompt.context,\n Effect.forEach(Database.loadOption),\n Effect.map(Array.filter(Option.isSome)),\n Effect.map(Array.map((option) => option.value)),\n );\n\n const promptInstructions = yield* Database.load(prompt.instructions.source);\n let promptText = Template.process(promptInstructions.content, input);\n\n if (input !== undefined) {\n promptText += `\\n<input>${JSON.stringify(input)}</input>`;\n }\n\n let systemText = trim`\n You are an agent running in the non-interactive mode.\n The user is unable to see what you are doing, and cannot answer any questions.\n Do not ask questions.\n Complete the task before you, and at the end call [completeJob] with the output.\n If you are unable to complete the task, call [completeJob] with the failure reason.\n If no output is required, call [completeJob] with an empty object: {}\n Do not stop until you call [completeJob].\n `;\n if (data.systemInstructions) {\n systemText += `\\n\\n${data.systemInstructions}`;\n }\n\n const modelLayer = AiService.model(data.model ?? DEFAULT_MODEL);\n\n let feed: Feed.Feed;\n if (data.chat) {\n const chat = yield* Database.load(data.chat);\n invariant(Obj.instanceOf(Chat.Chat, chat), 'Expected Chat object.');\n feed = yield* Database.load(chat.feed);\n } else {\n feed = yield* Database.add(Feed.make());\n }\n\n const resultSink = yield* Deferred.make<unknown, PromptError>();\n const promptToolkit = makePromptAgentToolkit({\n output: Schema.Any, // TODO(dmaretskyi): Use prompt's output schema.\n resultSink,\n });\n\n const runtime = yield* Effect.runtime<Feed.FeedService>();\n const session = yield* acquireReleaseResource(() => new AiSession.Session({ feed, runtime }));\n\n yield* Effect.promise(() =>\n session.context.bind({\n blueprints: blueprints.map((blueprint) => Ref.make(blueprint)),\n objects: objects.map((object) => Ref.make(object as Obj.Unknown)),\n }),\n );\n\n yield* session\n .createRequest({\n prompt: promptText,\n system: systemText,\n toolkit: promptToolkit,\n })\n .pipe(\n Effect.provide(\n Layer.mergeAll(modelLayer, ToolExecutionService({ feed }), makeToolResolverFromOperations()),\n ),\n );\n\n return yield* Deferred.poll(resultSink).pipe(\n Effect.flatten,\n Effect.flatten,\n Effect.catchTag('NoSuchElementException', () =>\n Effect.gen(function* () {\n yield* session\n .createRequest({\n prompt: 'You must signal task completion by calling [completeJob] with the output or failure reason.',\n system: systemText,\n toolkit: promptToolkit,\n })\n .pipe(\n Effect.provide(\n Layer.mergeAll(modelLayer, ToolExecutionService({ feed }), makeToolResolverFromOperations()),\n ),\n );\n\n return yield* Deferred.poll(resultSink).pipe(\n Effect.flatten,\n Effect.flatten,\n Effect.catchTag('NoSuchElementException', () =>\n Effect.fail(new PromptError('Agent did not signal task completion.', {})),\n ),\n );\n }),\n ),\n );\n },\n Effect.tapBoth({\n onSuccess: () => Database.flush(),\n onFailure: () => Database.flush(),\n }),\n Effect.scoped,\n ),\n ),\n Operation.opaqueHandler,\n);\n\nconst makePromptAgentToolkit = (options: {\n output: Schema.Schema.Any;\n resultSink: Deferred.Deferred<unknown, PromptError>;\n}) => {\n class PromptAgentToolkit extends Toolkit.make(\n Tool.make('completeJob', {\n parameters: {\n success: Schema.optional(Schema.Any), // TODO(dmaretskyi): Pipe output schema here.\n failure: Schema.optional(\n Schema.Struct({\n message: Schema.String.annotations({\n description: 'Short message describing the error.',\n }),\n description: Schema.optional(Schema.String).annotations({\n description: 'Optional longer message describing in detail what went wrong',\n }),\n }),\n ),\n },\n }),\n ) {}\n const layer = PromptAgentToolkit.toLayer({\n completeJob: Effect.fnUntraced(function* (result) {\n if (result.failure) {\n yield* Deferred.fail(\n options.resultSink,\n new PromptError(result.failure.message, {\n description: result.failure.description,\n }),\n );\n } else {\n yield* Deferred.succeed(options.resultSink, result.success);\n }\n }),\n });\n\n return OpaqueToolkit.make(PromptAgentToolkit, layer);\n};\n\ninterface ToolExecutionServiceOptions {\n feed: Feed.Feed;\n}\n\nconst ToolExecutionService = ({ feed }: ToolExecutionServiceOptions) =>\n Layer.unwrapEffect(\n Effect.gen(function* () {\n const operationInvoker = yield* Operation.Service;\n return makeToolExecutionService({\n invoke: (tool, input) =>\n Effect.gen(function* () {\n const operationDef = getOperationFromTool(tool).pipe(Option.getOrThrow);\n log('invoking operation', { operationDef, input });\n const result = yield* operationInvoker\n .invoke(operationDef, input, {\n conversation: Obj.getDXN(feed).toString(),\n })\n .pipe(Effect.orDie);\n log('result', { result });\n return result;\n }),\n });\n }),\n );\n", "//\n// Copyright 2026 DXOS.org\n//\n\nimport { BaseError } from '@dxos/errors';\nimport { DXN } from '@dxos/keys';\n\n/**\n * Agent could not execute prompt.\n */\nexport class PromptError extends BaseError.extend('PromptError') {\n constructor(\n message: string,\n context: {\n description?: string;\n prompt?: DXN.String;\n chat?: DXN.String;\n },\n ) {\n super({\n message,\n context,\n });\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Tool", "Toolkit", "Array", "Deferred", "Effect", "Function", "Layer", "Option", "Schema", "AiService", "OpaqueToolkit", "AiSession", "getOperationFromTool", "makeToolExecutionService", "makeToolResolverFromOperations", "Template", "Trace", "Operation", "Database", "Feed", "Obj", "Ref", "acquireReleaseResource", "invariant", "log", "trim", "BaseError", "PromptError", "extend", "message", "context", "DEFAULT_MODEL", "log", "data", "input", "Database", "prompt", "load", "Trace", "emitStatus", "info", "objects", "Function", "context", "promptInstructions", "instructions", "promptText", "process", "JSON", "systemText", "trim", "modelLayer", "AiService", "model", "invariant", "Obj", "feed", "chat", "add", "Feed", "make", "resultSink", "Deferred", "output", "Any", "runtime", "Effect", "map", "object", "Ref", "session", "createRequest", "system", "toolkit", "pipe", "makeToolResolverFromOperations", "tapBoth", "onSuccess", "onFailure", "scoped", "Operation", "opaqueHandler", "makePromptAgentToolkit", "options", "PromptAgentToolkit", "Toolkit", "failure", "Schema", "annotations", "description", "result", "ToolExecutionService", "unwrapEffect", "makeToolExecutionService", "invoke", "operationDef", "conversation", "getDXN", "toString", "orDie"]
|
|
7
7
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Qualifier
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KS3IA6FQ.mjs";
|
|
4
4
|
import {
|
|
5
5
|
Agent_exports,
|
|
6
6
|
Plan_exports
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-5GPL2WXU.mjs";
|
|
8
8
|
import "./chunk-NR3GTWRC.mjs";
|
|
9
9
|
import "./chunk-KGU725LW.mjs";
|
|
10
10
|
import "./chunk-J5LGTIGS.mjs";
|
|
@@ -16,15 +16,15 @@ import * as Effect from "effect/Effect";
|
|
|
16
16
|
import * as Schema from "effect/Schema";
|
|
17
17
|
import { AiService } from "@dxos/ai";
|
|
18
18
|
import { Operation } from "@dxos/compute";
|
|
19
|
-
import { Database, Obj, Ref } from "@dxos/echo";
|
|
19
|
+
import { Database, Feed, Obj, Ref } from "@dxos/echo";
|
|
20
20
|
import { invariant } from "@dxos/invariant";
|
|
21
21
|
import { trim } from "@dxos/util";
|
|
22
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/core/assistant-toolkit/src/blueprints/project/functions/qualifier.ts";
|
|
22
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/core/compute/assistant-toolkit/src/blueprints/project/functions/qualifier.ts";
|
|
23
23
|
var qualifier_default = Qualifier.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ agent: agentRef, event }) {
|
|
24
24
|
const agent = yield* Database.load(agentRef);
|
|
25
25
|
invariant(Obj.instanceOf(Agent_exports.Agent, agent), void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 17, S: this, A: ["Obj.instanceOf(Agent.Agent, agent)", ""] });
|
|
26
26
|
invariant(agent.chat, "Agent has no chat.", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 18, S: this, A: ["agent.chat", "'Agent has no chat.'"] });
|
|
27
|
-
const { id, name, queue } = agent;
|
|
27
|
+
const { id, name, feed: queue } = agent;
|
|
28
28
|
if (!queue) {
|
|
29
29
|
throw new Error("Agent has no queue.");
|
|
30
30
|
}
|
|
@@ -66,17 +66,17 @@ var qualifier_default = Qualifier.pipe(Operation.withHandler(Effect.fnUntraced(f
|
|
|
66
66
|
}));
|
|
67
67
|
const { isRelevant } = value;
|
|
68
68
|
if (isRelevant) {
|
|
69
|
-
const
|
|
69
|
+
const feedTarget = yield* Database.load(queue);
|
|
70
70
|
if ("queue" in event && event.item) {
|
|
71
71
|
const obj = event.item;
|
|
72
|
-
yield*
|
|
72
|
+
yield* Feed.append(feedTarget, [
|
|
73
73
|
obj
|
|
74
|
-
])
|
|
74
|
+
]);
|
|
75
75
|
} else if ("subject" in event && Ref.isRef(event.subject)) {
|
|
76
76
|
const obj = yield* Database.load(event.subject);
|
|
77
|
-
yield*
|
|
77
|
+
yield* Feed.append(feedTarget, [
|
|
78
78
|
obj
|
|
79
|
-
])
|
|
79
|
+
]);
|
|
80
80
|
} else {
|
|
81
81
|
throw new Error("Invalid event.");
|
|
82
82
|
}
|
|
@@ -85,4 +85,4 @@ var qualifier_default = Qualifier.pipe(Operation.withHandler(Effect.fnUntraced(f
|
|
|
85
85
|
export {
|
|
86
86
|
qualifier_default as default
|
|
87
87
|
};
|
|
88
|
-
//# sourceMappingURL=qualifier-
|
|
88
|
+
//# sourceMappingURL=qualifier-DAF4H7V3.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/blueprints/project/functions/qualifier.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2026 DXOS.org\n//\n\nimport * as LanguageModel from '@effect/ai/LanguageModel';\nimport * as Prompt from '@effect/ai/Prompt';\nimport * as Effect from 'effect/Effect';\nimport * as Schema from 'effect/Schema';\n\nimport { AiService } from '@dxos/ai';\nimport { Operation } from '@dxos/compute';\nimport { Database, Feed, Obj, Ref } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { trim } from '@dxos/util';\n\nimport { Plan, Agent } from '../../../types';\nimport { Qualifier } from './definitions';\n\nexport default Qualifier.pipe(\n Operation.withHandler(\n Effect.fnUntraced(\n function* ({ agent: agentRef, event }) {\n const agent = yield* Database.load(agentRef);\n invariant(Obj.instanceOf(Agent.Agent, agent));\n invariant(agent.chat, 'Agent has no chat.');\n\n const { id, name, feed: queue } = agent;\n if (!queue) {\n throw new Error('Agent has no queue.');\n }\n\n const plan = yield* Database.load(agent.plan);\n const instructions = yield* Database.load(agent.instructions);\n\n const { value } = yield* Effect.scoped(\n LanguageModel.generateObject({\n schema: Schema.Struct({\n isRelevant: Schema.Boolean,\n }),\n prompt: Prompt.fromMessages([\n Prompt.systemMessage({\n content: trim`\n You are a qualifying agent that determines if the event is relevant to the agent.\n Respond with true if the event is relevant to the agent, false otherwise.\n If you are not sure, return true.\n The qualified events will be forwarded to the larger agent that will process them.\n <agent id=\"${id}\" name=\"${name}\">\n <instructions>\n ${instructions.content}\n </instructions>\n <plan>\n ${Plan.formatPlan(plan)}\n </plan>\n </agent>\n `,\n }),\n Prompt.userMessage({\n content: [\n Prompt.makePart('text', {\n text: trim`\n <event>\n ${JSON.stringify(event, null, 2)}\n </event>\n `,\n }),\n ],\n }),\n ]),\n }),\n );\n\n const { isRelevant } = value as { isRelevant: boolean };\n\n if (isRelevant) {\n const feedTarget = yield* Database.load(queue);\n if ('queue' in event && event.item) {\n const obj = event.item;\n yield* Feed.append(feedTarget, [obj]);\n } else if ('subject' in event && Ref.isRef(event.subject)) {\n const obj = yield* Database.load(event.subject);\n yield* Feed.append(feedTarget, [obj]);\n } else {\n throw new Error('Invalid event.');\n }\n }\n },\n Effect.provide(AiService.model('@anthropic/claude-sonnet-4-5')),\n ),\n ),\n);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;AAIA,YAAYA,mBAAmB;AAC/B,YAAYC,YAAY;AACxB,YAAYC,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,UAAUC,MAAMC,KAAKC,WAAW;AACzC,SAASC,iBAAiB;AAC1B,SAASC,YAAY;AAKrB,IAAA,eAAeC;IAKPC,oBAAUC,UAAIC,KAAWC,UAAW,YAAEC,kBAAAA,WAAAA,EAAAA,OAAAA,UAAAA,MAAAA,GAAAA;AACtCJ,QAAAA,QAAUI,OAAU,SAAE,KAAA,QAAA;AAEtB,YAAU,IAAEC,WAAYC,cAAO,OAAGF,KAAAA,GAAAA,QAAAA,EAAAA,YAAAA,YAAAA,GAAAA,cAAAA,GAAAA,IAAAA,GAAAA,MAAAA,GAAAA,CAAAA,sCAAAA,EAAAA,EAAAA,CAAAA;AAClC,YAAKE,MAAO,MAAA,sBAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,MAAA,GAAA,CAAA,cAAA,sBAAA,EAAA,CAAA;QACV,EAAA,IAAM,MAAIC,MAAM,MAAA,IAAA;AAClB,MAAA,CAAA,OAAA;AAEA,UAAMC,IAAO,MAAOC,qBAAoBD;EACxC;AAEA,QAAM,OAAO,OAAK,SAAOE,KAAOC,MAC9BC,IAAAA;QACEC,eAAeC,OAAO,SAAA,KAAA,MAAA,YAAA;UACpBC,MAAAA,IAAAA,OAAmBC,cAAO,6BAAA;IAC5B,QAAA,cAAA;MACAC,YAAeC;;YAEXC,oBAAc;;;;;;;+BAORC,EAAAA,WAAqB,IAAA;;;;;;;;;;yBAUlBC;iBACLC;;YAEI,MAAEC;;0BAEL,KAAA,UAAA,OAAA,MAAA,CAAA,CAAA;;;UAGP,CAAA;QACD;MACH,CAAA;IAGF,CAAA;EAEA,CAAA,CAAA;QACE,EAAA,WAAMC,IAAa;MACnB,YAAI;UACF,aAAYC,OAAU,SAAA,KAAA,KAAA;QACtB,WAAOC,SAAYF,MAAAA,MAAY;YAACG,MAAAA,MAAAA;aAAI,KAAA,OAAA,YAAA;QAC/B;MACL,CAAA;eACOD,aAAYF,SAAAA,IAAY,MAAA,MAAA,OAAA,GAAA;YAACG,MAAAA,OAAAA,SAAAA,KAAAA,MAAAA,OAAAA;aAAI,KAAA,OAAA,YAAA;QAC/B;MACL,CAAA;IACF,OAAA;AACF,YAAA,IAAA,MAAA,gBAAA;IAEFjB;;;",
|
|
6
|
+
"names": ["LanguageModel", "Prompt", "Effect", "Schema", "AiService", "Operation", "Database", "Feed", "Obj", "Ref", "invariant", "trim", "Qualifier", "invariant", "Obj", "instanceOf", "Agent", "agent", "name", "queue", "Error", "plan", "Database", "Effect", "scoped", "LanguageModel", "schema", "Struct", "isRelevant", "Boolean", "prompt", "fromMessages", "content", "instructions", "makePart", "text", "JSON", "feedTarget", "event", "Feed", "obj"]
|
|
7
|
+
}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Query
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7UCYAP3T.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/database/functions/query.ts
|
|
7
7
|
import * as Effect from "effect/Effect";
|
|
8
8
|
import { Operation } from "@dxos/compute";
|
|
9
|
-
import { Entity, Filter, Obj, Query as EchoQuery } from "@dxos/echo";
|
|
10
|
-
import { Database } from "@dxos/echo";
|
|
9
|
+
import { Database, Entity, Filter, Obj, Query as EchoQuery } from "@dxos/echo";
|
|
11
10
|
var query_default = Query.pipe(Operation.withHandler(Effect.fn(function* ({ in: parents, typename, text, includeContent = false, limit = 10, includeQueues = false }) {
|
|
12
11
|
const { db } = yield* Database.Service;
|
|
13
12
|
let query;
|
|
@@ -67,4 +66,4 @@ var query_default = Query.pipe(Operation.withHandler(Effect.fn(function* ({ in:
|
|
|
67
66
|
export {
|
|
68
67
|
query_default as default
|
|
69
68
|
};
|
|
70
|
-
//# sourceMappingURL=query-
|
|
69
|
+
//# sourceMappingURL=query-MP5NSQKO.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/blueprints/database/functions/query.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Operation } from '@dxos/compute';\nimport { Database, Entity, Filter, Obj, Query as EchoQuery } from '@dxos/echo';\n\nimport { Query } from './definitions';\n\n// TODO(burdon): Move to toolkit (i.e., tool not function).\nexport default Query.pipe(\n Operation.withHandler(\n Effect.fn(function* ({ in: parents, typename, text, includeContent = false, limit = 10, includeQueues = false }) {\n const { db } = yield* Database.Service;\n let query: EchoQuery.Any;\n if (text) {\n query = EchoQuery.all(\n ...text.split(' ').map((term) => EchoQuery.select(Filter.text(term, { type: 'full-text' }))),\n );\n if (typename !== undefined) {\n const schema = yield* Database.runSchemaQuery({ typename, location: ['database', 'runtime'] });\n if (schema.length === 0) {\n return yield* Effect.fail(new Error(`Schema ${typename} not found`));\n }\n query = query.select(Filter.type(schema[0]));\n }\n } else if (typename) {\n const schema = yield* Database.runSchemaQuery({ typename, location: ['database', 'runtime'] });\n if (schema.length === 0) {\n return yield* Effect.fail(new Error(`Schema ${typename} not found`));\n }\n query = EchoQuery.select(Filter.type(schema[0]));\n } else {\n query = EchoQuery.select(Filter.everything());\n }\n\n if (parents && parents.length > 0) {\n query = query.select(Filter.childOf(parents));\n }\n\n query = query.limit(limit);\n if (includeQueues) {\n // Must scope to the current space: `from({ allFeedsFromSpaces: true })` alone has no spaceIds, so the SQL\n // index returns nothing (see ObjectMetaIndex.buildSourceCondition / early returns when spaceIds are empty).\n query = query.from(db, { includeFeeds: true });\n }\n\n yield* Database.flush();\n const results = yield* Database.runQuery(query);\n if (includeContent) {\n return results.map((obj) => Entity.toJSON(obj));\n } else {\n return results.map((obj) => ({\n dxn: Obj.getDXN(obj).toString(),\n typename: Obj.getTypename(obj),\n label: Obj.getLabel(obj),\n }));\n }\n }),\n ),\n);\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAC1B,SAASC,UAAUC,QAAQC,QAAQC,KAAKC,SAASC,iBAAiB;AAKlE,IAAA,gBAAeC,MAAMC,KACnBC,UAAUC,YACDC,UAAG,WAAW,EAAEC,IAAIC,SAASC,UAAUC,MAAMC,iBAAiB,OAAOC,QAAQ,IAAIC,gBAAgB,MAAK,GAAE;AAC7G,QAAM,EAAEC,GAAE,IAAK,OAAOC,SAASC;AAC/B,MAAIC;AACJ,MAAIP,MAAM;AACRO,YAAQC,UAAUC,IAAG,GAChBT,KAAKU,MAAM,GAAA,EAAKC,IAAI,CAACC,SAASJ,UAAUK,OAAOC,OAAOd,KAAKY,MAAM;MAAEG,MAAM;IAAY,CAAA,CAAA,CAAA,CAAA;AAE1F,QAAIhB,aAAaiB,QAAW;AAC1B,YAAMC,SAAS,OAAOZ,SAASa,eAAe;QAAEnB;QAAUoB,UAAU;UAAC;UAAY;;MAAW,CAAA;AAC5F,UAAIF,OAAOG,WAAW,GAAG;AACvB,eAAO,OAAcC,YAAK,IAAIC,MAAM,UAAUvB,QAAAA,YAAoB,CAAA;MACpE;AACAQ,cAAQA,MAAMM,OAAOC,OAAOC,KAAKE,OAAO,CAAA,CAAE,CAAA;IAC5C;EACF,WAAWlB,UAAU;AACnB,UAAMkB,SAAS,OAAOZ,SAASa,eAAe;MAAEnB;MAAUoB,UAAU;QAAC;QAAY;;IAAW,CAAA;AAC5F,QAAIF,OAAOG,WAAW,GAAG;AACvB,aAAO,OAAcC,YAAK,IAAIC,MAAM,UAAUvB,QAAAA,YAAoB,CAAA;IACpE;AACAQ,YAAQC,UAAUK,OAAOC,OAAOC,KAAKE,OAAO,CAAA,CAAE,CAAA;EAChD,OAAO;AACLV,YAAQC,UAAUK,OAAOC,OAAOS,WAAU,CAAA;EAC5C;AAEA,MAAIzB,WAAWA,QAAQsB,SAAS,GAAG;AACjCb,YAAQA,MAAMM,OAAOC,OAAOU,QAAQ1B,OAAAA,CAAAA;EACtC;AAEAS,UAAQA,MAAML,MAAMA,KAAAA;AACpB,MAAIC,eAAe;AAGjBI,YAAQA,MAAMkB,KAAKrB,IAAI;MAAEsB,cAAc;IAAK,CAAA;EAC9C;AAEA,SAAOrB,SAASsB,MAAK;AACrB,QAAMC,UAAU,OAAOvB,SAASwB,SAAStB,KAAAA;AACzC,MAAIN,gBAAgB;AAClB,WAAO2B,QAAQjB,IAAI,CAACmB,QAAQC,OAAOC,OAAOF,GAAAA,CAAAA;EAC5C,OAAO;AACL,WAAOF,QAAQjB,IAAI,CAACmB,SAAS;MAC3BG,KAAKC,IAAIC,OAAOL,GAAAA,EAAKM,SAAQ;MAC7BrC,UAAUmC,IAAIG,YAAYP,GAAAA;MAC1BQ,OAAOJ,IAAIK,SAAST,GAAAA;IACtB,EAAA;EACF;AACF,CAAA,CAAA,CAAA;",
|
|
6
|
+
"names": ["Effect", "Operation", "Database", "Entity", "Filter", "Obj", "Query", "EchoQuery", "Query", "pipe", "Operation", "withHandler", "fn", "in", "parents", "typename", "text", "includeContent", "limit", "includeQueues", "db", "Database", "Service", "query", "EchoQuery", "all", "split", "map", "term", "select", "Filter", "type", "undefined", "schema", "runSchemaQuery", "location", "length", "fail", "Error", "everything", "childOf", "from", "includeFeeds", "flush", "results", "runQuery", "obj", "Entity", "toJSON", "dxn", "Obj", "getDXN", "toString", "getTypename", "label", "getLabel"]
|
|
7
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
QueryBlueprints
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ANSF2BHN.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/blueprint-manager/functions/query-blueprints.ts
|
|
@@ -13,4 +13,4 @@ var query_blueprints_default = QueryBlueprints.pipe(Operation.withHandler(Effect
|
|
|
13
13
|
export {
|
|
14
14
|
query_blueprints_default as default
|
|
15
15
|
};
|
|
16
|
-
//# sourceMappingURL=query-blueprints-
|
|
16
|
+
//# sourceMappingURL=query-blueprints-PLWYVOI3.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
RelationCreate
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7UCYAP3T.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/database/functions/relation-create.ts
|
|
@@ -8,7 +8,7 @@ import * as Effect from "effect/Effect";
|
|
|
8
8
|
import { Operation } from "@dxos/compute";
|
|
9
9
|
import { Database, Entity, Relation, Type } from "@dxos/echo";
|
|
10
10
|
import { invariant } from "@dxos/invariant";
|
|
11
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/core/assistant-toolkit/src/blueprints/database/functions/relation-create.ts";
|
|
11
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/core/compute/assistant-toolkit/src/blueprints/database/functions/relation-create.ts";
|
|
12
12
|
var relation_create_default = RelationCreate.pipe(Operation.withHandler(Effect.fn(function* ({ typename, source, target, properties }) {
|
|
13
13
|
const { db } = yield* Database.Service;
|
|
14
14
|
const schema = yield* Effect.promise(() => db.schemaRegistry.query({
|
|
@@ -31,4 +31,4 @@ var relation_create_default = RelationCreate.pipe(Operation.withHandler(Effect.f
|
|
|
31
31
|
export {
|
|
32
32
|
relation_create_default as default
|
|
33
33
|
};
|
|
34
|
-
//# sourceMappingURL=relation-create-
|
|
34
|
+
//# sourceMappingURL=relation-create-YAAAFTR2.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
RelationDelete
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7UCYAP3T.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/database/functions/relation-delete.ts
|
|
@@ -15,4 +15,4 @@ var relation_delete_default = RelationDelete.pipe(Operation.withHandler(Effect.f
|
|
|
15
15
|
export {
|
|
16
16
|
relation_delete_default as default
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=relation-delete-
|
|
18
|
+
//# sourceMappingURL=relation-delete-IEPKERFR.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SchemaAdd
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7UCYAP3T.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/database/functions/schema-add.ts
|
|
@@ -21,4 +21,4 @@ var schema_add_default = SchemaAdd.pipe(Operation.withHandler(Effect.fn(function
|
|
|
21
21
|
export {
|
|
22
22
|
schema_add_default as default
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=schema-add-
|
|
24
|
+
//# sourceMappingURL=schema-add-5BNIINRS.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SchemaList
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7UCYAP3T.mjs";
|
|
4
4
|
import "./chunk-J5LGTIGS.mjs";
|
|
5
5
|
|
|
6
6
|
// src/blueprints/database/functions/schema-list.ts
|
|
@@ -35,4 +35,4 @@ var schema_list_default = SchemaList.pipe(Operation.withHandler(Effect.fn(functi
|
|
|
35
35
|
export {
|
|
36
36
|
schema_list_default as default
|
|
37
37
|
};
|
|
38
|
-
//# sourceMappingURL=schema-list-
|
|
38
|
+
//# sourceMappingURL=schema-list-54UK7S4R.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SyncIssues,
|
|
3
3
|
syncObjects
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-MMQ7HFL4.mjs";
|
|
5
5
|
import "./chunk-J5LGTIGS.mjs";
|
|
6
6
|
|
|
7
7
|
// src/blueprints/linear/functions/sync-issues.ts
|
|
@@ -11,8 +11,7 @@ import * as Array from "effect/Array";
|
|
|
11
11
|
import * as Effect from "effect/Effect";
|
|
12
12
|
import * as Function from "effect/Function";
|
|
13
13
|
import { Credential, Operation } from "@dxos/compute";
|
|
14
|
-
import { Filter, Obj, Query, Ref } from "@dxos/echo";
|
|
15
|
-
import { Database } from "@dxos/echo";
|
|
14
|
+
import { Database, Filter, Obj, Query, Ref } from "@dxos/echo";
|
|
16
15
|
import { withAuthorization } from "@dxos/functions";
|
|
17
16
|
import { log } from "@dxos/log";
|
|
18
17
|
import { Person, Pipeline, Task } from "@dxos/types";
|
|
@@ -25,7 +24,7 @@ var graphqlRequestBody = (query, variables = {}) => HttpBody.json({
|
|
|
25
24
|
});
|
|
26
25
|
|
|
27
26
|
// src/blueprints/linear/functions/sync-issues.ts
|
|
28
|
-
var __dxlog_file = "/__w/dxos/dxos/packages/core/assistant-toolkit/src/blueprints/linear/functions/sync-issues.ts";
|
|
27
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/core/compute/assistant-toolkit/src/blueprints/linear/functions/sync-issues.ts";
|
|
29
28
|
var queryIssues = `
|
|
30
29
|
query Issues($teamId: String!, $after: DateTimeOrDuration!) {
|
|
31
30
|
team(id: $teamId) {
|
|
@@ -73,7 +72,7 @@ var sync_issues_default = SyncIssues.pipe(Operation.withHandler(Effect.fnUntrace
|
|
|
73
72
|
const after = yield* getLatestUpdateTimestamp(team, Task.Task);
|
|
74
73
|
log.info("will fetch", {
|
|
75
74
|
after
|
|
76
|
-
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L:
|
|
75
|
+
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 62, S: this });
|
|
77
76
|
const response = yield* client.post("https://api.linear.app/graphql", {
|
|
78
77
|
body: yield* graphqlRequestBody(queryIssues, {
|
|
79
78
|
teamId: team,
|
|
@@ -86,7 +85,7 @@ var sync_issues_default = SyncIssues.pipe(Operation.withHandler(Effect.fnUntrace
|
|
|
86
85
|
}));
|
|
87
86
|
log.info("Fetched tasks", {
|
|
88
87
|
count: tasks.length
|
|
89
|
-
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L:
|
|
88
|
+
}, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 75, S: this });
|
|
90
89
|
return {
|
|
91
90
|
objects: yield* syncObjects(tasks, {
|
|
92
91
|
foreignKeyId: LINEAR_ID_KEY
|
|
@@ -164,4 +163,4 @@ export {
|
|
|
164
163
|
LINEAR_UPDATED_AT_KEY,
|
|
165
164
|
sync_issues_default as default
|
|
166
165
|
};
|
|
167
|
-
//# sourceMappingURL=sync-issues-
|
|
166
|
+
//# sourceMappingURL=sync-issues-DWY76B3M.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/blueprints/linear/functions/sync-issues.ts", "../../../src/util/graphql.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as FetchHttpClient from '@effect/platform/FetchHttpClient';\nimport * as HttpClient from '@effect/platform/HttpClient';\nimport * as Array from 'effect/Array';\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\n\nimport { Credential, Operation } from '@dxos/compute';\nimport { Database, Filter, Obj, Query, Ref, type Type } from '@dxos/echo';\nimport { withAuthorization } from '@dxos/functions';\nimport { log } from '@dxos/log';\nimport { Person, Pipeline, Task } from '@dxos/types';\n\nimport { syncObjects } from '../../../sync';\nimport { graphqlRequestBody } from '../../../util';\nimport { SyncIssues } from './definitions';\n\nconst queryIssues = `\nquery Issues($teamId: String!, $after: DateTimeOrDuration!) {\n team(id: $teamId) {\n id\n name\n\n\n issues(last: 150, orderBy: updatedAt, filter: {\n updatedAt: { gt: $after }\n }) {\n edges {\n node {\n id\n title\n createdAt\n updatedAt\n description\n assignee { id, name }\n state {\n name\n }\n project {\n id\n name\n }\n }\n cursor\n }\n pageInfo {\n hasNextPage\n endCursor\n }\n }\n }\n}\n`;\n\ntype LinearIssue = {\n id: string;\n title: string;\n createdAt: string;\n updatedAt: string;\n description: string;\n assignee: LinearPerson;\n state: { name: string };\n project: { id: string; name: string };\n};\n\ntype LinearPerson = {\n id: string;\n name: string;\n};\n\nexport const LINEAR_ID_KEY = 'linear.app/id';\nexport const LINEAR_TEAM_ID_KEY = 'linear.app/teamId';\nexport const LINEAR_UPDATED_AT_KEY = 'linear.app/updatedAt';\n\nexport default SyncIssues.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ team }) {\n const credential = yield* Credential.CredentialsService.getCredential({ service: 'linear.app' });\n const client = yield* HttpClient.HttpClient.pipe(Effect.map(withAuthorization(credential.apiKey!)));\n\n const after = yield* getLatestUpdateTimestamp(team, Task.Task);\n log.info('will fetch', { after });\n\n const response = yield* client.post('https://api.linear.app/graphql', {\n body: yield* graphqlRequestBody(queryIssues, {\n teamId: team,\n after,\n }),\n });\n const json: any = yield* response.json;\n const tasks = (json.data.team.issues.edges as any[]).map((edge: any) =>\n mapLinearIssue(edge.node as LinearIssue, { teamId: team }),\n );\n log.info('Fetched tasks', { count: tasks.length });\n\n return {\n objects: yield* syncObjects(tasks, { foreignKeyId: LINEAR_ID_KEY }),\n syncComplete: tasks.length < 150,\n };\n }, Effect.provide(FetchHttpClient.layer)),\n ),\n);\n\nconst getLatestUpdateTimestamp: (\n teamId: string,\n dataType: Type.AnyObj,\n) => Effect.Effect<string, never, Database.Service> = Effect.fnUntraced(function* (teamId, dataType) {\n const existingTasks = yield* Database.runQuery(\n Query.type(dataType).select(Filter.foreignKeys(dataType, [{ source: LINEAR_TEAM_ID_KEY, id: teamId }])),\n );\n return Function.pipe(\n existingTasks,\n Array.map((task) => Obj.getKeys(task, LINEAR_UPDATED_AT_KEY).at(0)?.id),\n Array.filter((x) => x !== undefined),\n Array.reduce('2025-01-01T00:00:00.000Z', (acc: string, x: string) => (x > acc ? x : acc)),\n );\n});\n\nconst mapLinearPerson = (person: LinearPerson, { teamId }: { teamId: string }): Person.Person =>\n Obj.make(Person.Person, {\n [Obj.Meta]: {\n keys: [\n {\n id: person.id,\n source: LINEAR_ID_KEY,\n },\n {\n id: teamId,\n source: LINEAR_TEAM_ID_KEY,\n },\n ],\n },\n nickname: person.name,\n });\n\nconst mapLinearIssue = (issue: LinearIssue, { teamId }: { teamId: string }): Task.Task =>\n Obj.make(Task.Task, {\n [Obj.Meta]: {\n keys: [\n {\n id: issue.id,\n source: LINEAR_ID_KEY,\n },\n {\n id: issue.updatedAt,\n source: LINEAR_UPDATED_AT_KEY,\n },\n {\n id: teamId,\n source: LINEAR_TEAM_ID_KEY,\n },\n ],\n },\n title: issue.title ?? undefined,\n description: issue.description ?? undefined,\n assigned: !issue.assignee ? undefined : Ref.make(mapLinearPerson(issue.assignee, { teamId })),\n // TODO(dmaretskyi): Sync those (+ linear team as org?).\n // state: issue.state.name,\n\n project: !issue.project\n ? undefined\n : Ref.make(\n Pipeline.make({\n [Obj.Meta]: {\n keys: [\n {\n id: issue.project.id,\n source: LINEAR_ID_KEY,\n },\n {\n id: teamId,\n source: LINEAR_TEAM_ID_KEY,\n },\n ],\n },\n name: issue.project.name,\n }),\n ),\n });\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as HttpBody from '@effect/platform/HttpBody';\n\n/**\n * Template tag literal to get syntax highlighting for the query.\n *\n * @example\n * ```ts\n * const query = gql`\n * query Team($teamId: String!) {\n * team(id: $teamId) {\n * id\n * name\n * }\n * }\n * `;\n * ```\n */\nexport const gql = (query: string) => query;\n\n/**\n * @returns JSON body for the graphql request.\n */\nexport const graphqlRequestBody = (query: string, variables: Record<string, any> = {}) =>\n HttpBody.json({\n query,\n variables,\n });\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["FetchHttpClient", "HttpClient", "Array", "Effect", "Function", "Credential", "Operation", "Database", "Filter", "Obj", "Query", "Ref", "withAuthorization", "log", "Person", "Pipeline", "Task", "HttpBody", "graphqlRequestBody", "query", "variables", "json", "queryIssues", "LINEAR_UPDATED_AT_KEY", "Operation", "credential", "Credential", "service", "client", "log", "info", "after", "graphqlRequestBody", "team", "teamId", "json", "count", "syncObjects", "syncComplete", "tasks", "Effect", "FetchHttpClient", "layer", "existingTasks", "Database", "runQuery", "LINEAR_TEAM_ID_KEY", "mapLinearPerson", "person", "Obj", "make", "Person", "nickname", "mapLinearIssue", "issue", "title", "description", "assigned", "assignee", "keys", "name"]
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SyncTriggers
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-BCT55UTL.mjs";
|
|
4
|
+
import "./chunk-5GPL2WXU.mjs";
|
|
5
5
|
import "./chunk-NR3GTWRC.mjs";
|
|
6
6
|
import "./chunk-KGU725LW.mjs";
|
|
7
7
|
import "./chunk-J5LGTIGS.mjs";
|
|
@@ -37,7 +37,7 @@ var syncAgentTriggers = (agent) => Effect.gen(function* () {
|
|
|
37
37
|
yield* Database.remove(trigger);
|
|
38
38
|
}
|
|
39
39
|
const triggersEnabled = agent.enabled ?? true;
|
|
40
|
-
const { Qualifier, AgentWorker } = yield* Effect.promise(() => import("./project-
|
|
40
|
+
const { Qualifier, AgentWorker } = yield* Effect.promise(() => import("./project-VVXXUMAI.mjs"));
|
|
41
41
|
for (const subscription of agent.subscriptions) {
|
|
42
42
|
const targetOption = yield* Database.loadOption(subscription);
|
|
43
43
|
if (Option.isNone(targetOption)) {
|
|
@@ -51,8 +51,7 @@ var syncAgentTriggers = (agent) => Effect.gen(function* () {
|
|
|
51
51
|
const feedRef = target.feed;
|
|
52
52
|
feedObj = feedRef ? Option.getOrUndefined(yield* Database.loadOption(feedRef)) : void 0;
|
|
53
53
|
}
|
|
54
|
-
|
|
55
|
-
if (!queueDxn) {
|
|
54
|
+
if (!feedObj || !Obj.instanceOf(Feed.Feed, feedObj) || !Feed.getQueueDxn(feedObj)) {
|
|
56
55
|
continue;
|
|
57
56
|
}
|
|
58
57
|
const filterEvents = agent.filterEvents ?? true;
|
|
@@ -71,7 +70,7 @@ var syncAgentTriggers = (agent) => Effect.gen(function* () {
|
|
|
71
70
|
]
|
|
72
71
|
},
|
|
73
72
|
enabled: triggersEnabled,
|
|
74
|
-
spec: Trigger.
|
|
73
|
+
spec: Trigger.specFeed(feedObj),
|
|
75
74
|
function: Ref.make(Operation.serialize(filterEvents ? Qualifier : AgentWorker)),
|
|
76
75
|
input: {
|
|
77
76
|
agent: Ref.make(agent),
|
|
@@ -80,7 +79,7 @@ var syncAgentTriggers = (agent) => Effect.gen(function* () {
|
|
|
80
79
|
concurrency: filterEvents ? 5 : void 0
|
|
81
80
|
}));
|
|
82
81
|
}
|
|
83
|
-
if ((agent.filterEvents ?? true) && agent.
|
|
82
|
+
if ((agent.filterEvents ?? true) && agent.feed) {
|
|
84
83
|
yield* Database.add(Trigger.make({
|
|
85
84
|
[Obj.Parent]: agent,
|
|
86
85
|
[Obj.Meta]: {
|
|
@@ -97,7 +96,7 @@ var syncAgentTriggers = (agent) => Effect.gen(function* () {
|
|
|
97
96
|
},
|
|
98
97
|
function: Ref.make(Operation.serialize(AgentWorker)),
|
|
99
98
|
enabled: triggersEnabled,
|
|
100
|
-
spec: Trigger.specQueue(agent.
|
|
99
|
+
spec: Trigger.specQueue(agent.feed.dxn.toString()),
|
|
101
100
|
input: {
|
|
102
101
|
agent: Ref.make(agent),
|
|
103
102
|
event: "{{event}}"
|
|
@@ -133,4 +132,4 @@ var syncAgentTriggers = (agent) => Effect.gen(function* () {
|
|
|
133
132
|
export {
|
|
134
133
|
sync_triggers_default as default
|
|
135
134
|
};
|
|
136
|
-
//# sourceMappingURL=sync-triggers-
|
|
135
|
+
//# sourceMappingURL=sync-triggers-NOIQLELD.mjs.map
|