@dudousxd/nestjs-agent-core 0.35.0 → 0.36.0
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/dist/index.cjs +31 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +37 -3
- package/dist/index.d.ts +37 -3
- package/dist/index.js +29 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -54,6 +54,7 @@ __export(src_exports, {
|
|
|
54
54
|
ASK_TOOL_NAME: () => ASK_TOOL_NAME,
|
|
55
55
|
AgentRegistry: () => AgentRegistry,
|
|
56
56
|
AgentStreamError: () => AgentStreamError,
|
|
57
|
+
ClosedRolesPolicy: () => ClosedRolesPolicy,
|
|
57
58
|
DEFAULT_HISTORY_SUMMARY_INSTRUCTION: () => DEFAULT_HISTORY_SUMMARY_INSTRUCTION,
|
|
58
59
|
DEFAULT_INCREMENTAL_LOOKBACK_CHARS: () => DEFAULT_INCREMENTAL_LOOKBACK_CHARS,
|
|
59
60
|
DEFAULT_INTAKE_PREAMBLE: () => DEFAULT_INTAKE_PREAMBLE,
|
|
@@ -104,6 +105,7 @@ __export(src_exports, {
|
|
|
104
105
|
buildMemoryBlock: () => buildMemoryBlock,
|
|
105
106
|
buildSkillsBlock: () => buildSkillsBlock,
|
|
106
107
|
canActorUseTool: () => canActorUseTool,
|
|
108
|
+
closeEmptyRoles: () => closeEmptyRoles,
|
|
107
109
|
compositeSkillProvider: () => compositeSkillProvider,
|
|
108
110
|
createFrameBuffer: () => createFrameBuffer,
|
|
109
111
|
createIncrementalGate: () => createIncrementalGate,
|
|
@@ -2907,15 +2909,40 @@ var DefaultRolesPolicy = class {
|
|
|
2907
2909
|
__name(this, "DefaultRolesPolicy");
|
|
2908
2910
|
}
|
|
2909
2911
|
defaultRoles;
|
|
2910
|
-
|
|
2912
|
+
/** What an empty roles list means here — see {@link EmptyRoles}. */
|
|
2913
|
+
emptyRoles;
|
|
2914
|
+
constructor(defaultRoles = [], options = {}) {
|
|
2911
2915
|
this.defaultRoles = defaultRoles;
|
|
2916
|
+
this.emptyRoles = options.emptyRoles ?? "allow";
|
|
2912
2917
|
}
|
|
2913
2918
|
can(actor, tool) {
|
|
2914
2919
|
const allowed = tool.roles ?? this.defaultRoles;
|
|
2915
|
-
if (allowed.length === 0) return
|
|
2920
|
+
if (allowed.length === 0) return this.emptyRoles === "allow";
|
|
2916
2921
|
return (actor.roles ?? []).some((role) => allowed.includes(role));
|
|
2917
2922
|
}
|
|
2918
2923
|
};
|
|
2924
|
+
var ClosedRolesPolicy = class extends DefaultRolesPolicy {
|
|
2925
|
+
static {
|
|
2926
|
+
__name(this, "ClosedRolesPolicy");
|
|
2927
|
+
}
|
|
2928
|
+
constructor(defaultRoles = []) {
|
|
2929
|
+
super(defaultRoles, {
|
|
2930
|
+
emptyRoles: "deny"
|
|
2931
|
+
});
|
|
2932
|
+
}
|
|
2933
|
+
};
|
|
2934
|
+
function closeEmptyRoles(inner) {
|
|
2935
|
+
const defaults = inner instanceof DefaultRolesPolicy ? inner.defaultRoles : [];
|
|
2936
|
+
return {
|
|
2937
|
+
can(actor, tool) {
|
|
2938
|
+
if (tool.ability === void 0 && (tool.roles ?? defaults).length === 0) {
|
|
2939
|
+
return false;
|
|
2940
|
+
}
|
|
2941
|
+
return inner.can(actor, tool);
|
|
2942
|
+
}
|
|
2943
|
+
};
|
|
2944
|
+
}
|
|
2945
|
+
__name(closeEmptyRoles, "closeEmptyRoles");
|
|
2919
2946
|
|
|
2920
2947
|
// src/agent-loop.ts
|
|
2921
2948
|
var import_node_crypto = require("crypto");
|
|
@@ -6014,6 +6041,7 @@ var InMemoryAgentStore = class {
|
|
|
6014
6041
|
ASK_TOOL_NAME,
|
|
6015
6042
|
AgentRegistry,
|
|
6016
6043
|
AgentStreamError,
|
|
6044
|
+
ClosedRolesPolicy,
|
|
6017
6045
|
DEFAULT_HISTORY_SUMMARY_INSTRUCTION,
|
|
6018
6046
|
DEFAULT_INCREMENTAL_LOOKBACK_CHARS,
|
|
6019
6047
|
DEFAULT_INTAKE_PREAMBLE,
|
|
@@ -6064,6 +6092,7 @@ var InMemoryAgentStore = class {
|
|
|
6064
6092
|
buildMemoryBlock,
|
|
6065
6093
|
buildSkillsBlock,
|
|
6066
6094
|
canActorUseTool,
|
|
6095
|
+
closeEmptyRoles,
|
|
6067
6096
|
compositeSkillProvider,
|
|
6068
6097
|
createFrameBuffer,
|
|
6069
6098
|
createIncrementalGate,
|