@invergent/agent-chat-react 2.7.9 → 2.8.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.d.cts CHANGED
@@ -953,6 +953,16 @@ interface AgentChatProps {
953
953
  * Like `deepResearchEnabled`, the host owns the capability gate.
954
954
  */
955
955
  codeAgentsEnabled?: boolean;
956
+ /**
957
+ * Slash-command capability group (per-agent). These gate the always-on
958
+ * lightweight builtins and default to shown when omitted, so a host that
959
+ * hasn't wired them keeps the current menu. `/clear` has no flag and is
960
+ * always available; the host owns the capability gate.
961
+ */
962
+ loopsEnabled?: boolean;
963
+ missionsEnabled?: boolean;
964
+ goalsEnabled?: boolean;
965
+ compressEnabled?: boolean;
956
966
  /**
957
967
  * Called when the user clicks the integrations band under the composer.
958
968
  * Hosts navigate to their Integrations route. When omitted, the band is
@@ -967,7 +977,7 @@ interface AgentChatProps {
967
977
  */
968
978
  onOpenBilling?: () => void;
969
979
  }
970
- declare function AgentChat({ adapter, agentId, sessionId, onSessionChange, onFileSelect, onMessagesChange, disabled, onComposerError, deepResearchEnabled, researchEnabled, codeAgentsEnabled, onOpenIntegrations, onOpenBilling, }: AgentChatProps): react_jsx_runtime.JSX.Element;
980
+ declare function AgentChat({ adapter, agentId, sessionId, onSessionChange, onFileSelect, onMessagesChange, disabled, onComposerError, deepResearchEnabled, researchEnabled, codeAgentsEnabled, loopsEnabled, missionsEnabled, goalsEnabled, compressEnabled, onOpenIntegrations, onOpenBilling, }: AgentChatProps): react_jsx_runtime.JSX.Element;
971
981
 
972
982
  interface AgentChatAdapterContextValue {
973
983
  adapter: AgentChatAdapter;
package/dist/index.d.ts CHANGED
@@ -953,6 +953,16 @@ interface AgentChatProps {
953
953
  * Like `deepResearchEnabled`, the host owns the capability gate.
954
954
  */
955
955
  codeAgentsEnabled?: boolean;
956
+ /**
957
+ * Slash-command capability group (per-agent). These gate the always-on
958
+ * lightweight builtins and default to shown when omitted, so a host that
959
+ * hasn't wired them keeps the current menu. `/clear` has no flag and is
960
+ * always available; the host owns the capability gate.
961
+ */
962
+ loopsEnabled?: boolean;
963
+ missionsEnabled?: boolean;
964
+ goalsEnabled?: boolean;
965
+ compressEnabled?: boolean;
956
966
  /**
957
967
  * Called when the user clicks the integrations band under the composer.
958
968
  * Hosts navigate to their Integrations route. When omitted, the band is
@@ -967,7 +977,7 @@ interface AgentChatProps {
967
977
  */
968
978
  onOpenBilling?: () => void;
969
979
  }
970
- declare function AgentChat({ adapter, agentId, sessionId, onSessionChange, onFileSelect, onMessagesChange, disabled, onComposerError, deepResearchEnabled, researchEnabled, codeAgentsEnabled, onOpenIntegrations, onOpenBilling, }: AgentChatProps): react_jsx_runtime.JSX.Element;
980
+ declare function AgentChat({ adapter, agentId, sessionId, onSessionChange, onFileSelect, onMessagesChange, disabled, onComposerError, deepResearchEnabled, researchEnabled, codeAgentsEnabled, loopsEnabled, missionsEnabled, goalsEnabled, compressEnabled, onOpenIntegrations, onOpenBilling, }: AgentChatProps): react_jsx_runtime.JSX.Element;
971
981
 
972
982
  interface AgentChatAdapterContextValue {
973
983
  adapter: AgentChatAdapter;
package/dist/index.js CHANGED
@@ -6160,6 +6160,10 @@ function ChatComposerInner({
6160
6160
  deepResearchEnabled = false,
6161
6161
  researchEnabled = false,
6162
6162
  codeAgentsEnabled = false,
6163
+ loopsEnabled = true,
6164
+ missionsEnabled = true,
6165
+ goalsEnabled = true,
6166
+ compressEnabled = true,
6163
6167
  viewMode = "simple",
6164
6168
  onViewModeChange
6165
6169
  }) {
@@ -6206,22 +6210,38 @@ function ChatComposerInner({
6206
6210
  const builtinCommands = useMemo(
6207
6211
  () => {
6208
6212
  const base = [
6209
- { value: "/clear", label: "/clear", description: "Clear conversation" },
6210
- { value: "/compress", label: "/compress", description: "Compress context" },
6211
- { value: "/goal", label: "/goal", description: "Define an outcome goal" },
6212
- { value: "/goal status", label: "/goal status", description: "Show outcome goal status" },
6213
- { value: "/goal pause", label: "/goal pause", description: "Pause automatic goal continuation" },
6214
- { value: "/goal resume", label: "/goal resume", description: "Resume a paused goal" },
6215
- { value: "/goal clear", label: "/goal clear", description: "Clear the current goal" },
6216
- { value: "/mission ", label: "/mission", description: "Start an orchestrated rubric-judged mission" },
6217
- { value: "/mission status", label: "/mission status", description: "Show current mission status" },
6218
- { value: "/mission pause", label: "/mission pause", description: "Pause the mission evaluator" },
6219
- { value: "/mission resume", label: "/mission resume", description: "Resume a paused mission" },
6220
- { value: "/mission cancel", label: "/mission cancel", description: "Cancel the mission" },
6221
- { value: "/loop", label: "/loop", description: "Schedule recurring prompt" },
6222
- { value: "/loop list", label: "/loop list", description: "List active loops" },
6223
- { value: "/loop cancel", label: "/loop cancel", description: "Cancel a loop by ID" }
6213
+ { value: "/clear", label: "/clear", description: "Clear conversation" }
6224
6214
  ];
6215
+ if (compressEnabled) {
6216
+ base.push(
6217
+ { value: "/compress", label: "/compress", description: "Compress context" }
6218
+ );
6219
+ }
6220
+ if (goalsEnabled) {
6221
+ base.push(
6222
+ { value: "/goal", label: "/goal", description: "Define an outcome goal" },
6223
+ { value: "/goal status", label: "/goal status", description: "Show outcome goal status" },
6224
+ { value: "/goal pause", label: "/goal pause", description: "Pause automatic goal continuation" },
6225
+ { value: "/goal resume", label: "/goal resume", description: "Resume a paused goal" },
6226
+ { value: "/goal clear", label: "/goal clear", description: "Clear the current goal" }
6227
+ );
6228
+ }
6229
+ if (missionsEnabled) {
6230
+ base.push(
6231
+ { value: "/mission ", label: "/mission", description: "Start an orchestrated rubric-judged mission" },
6232
+ { value: "/mission status", label: "/mission status", description: "Show current mission status" },
6233
+ { value: "/mission pause", label: "/mission pause", description: "Pause the mission evaluator" },
6234
+ { value: "/mission resume", label: "/mission resume", description: "Resume a paused mission" },
6235
+ { value: "/mission cancel", label: "/mission cancel", description: "Cancel the mission" }
6236
+ );
6237
+ }
6238
+ if (loopsEnabled) {
6239
+ base.push(
6240
+ { value: "/loop", label: "/loop", description: "Schedule recurring prompt" },
6241
+ { value: "/loop list", label: "/loop list", description: "List active loops" },
6242
+ { value: "/loop cancel", label: "/loop cancel", description: "Cancel a loop by ID" }
6243
+ );
6244
+ }
6225
6245
  if (deepResearchEnabled) {
6226
6246
  base.push({
6227
6247
  value: "/deep-research ",
@@ -6247,7 +6267,15 @@ function ChatComposerInner({
6247
6267
  }
6248
6268
  return base;
6249
6269
  },
6250
- [deepResearchEnabled, researchEnabled, codeAgentsEnabled]
6270
+ [
6271
+ compressEnabled,
6272
+ goalsEnabled,
6273
+ missionsEnabled,
6274
+ loopsEnabled,
6275
+ deepResearchEnabled,
6276
+ researchEnabled,
6277
+ codeAgentsEnabled
6278
+ ]
6251
6279
  );
6252
6280
  const scheduledExamples = useMemo(
6253
6281
  () => [
@@ -6405,7 +6433,7 @@ function ChatComposerInner({
6405
6433
  ]
6406
6434
  }
6407
6435
  ),
6408
- /* @__PURE__ */ jsxs(
6436
+ loopsEnabled && /* @__PURE__ */ jsxs(
6409
6437
  Button,
6410
6438
  {
6411
6439
  type: "button",
@@ -9790,6 +9818,10 @@ function ChatThread({
9790
9818
  deepResearchEnabled = false,
9791
9819
  researchEnabled = false,
9792
9820
  codeAgentsEnabled = false,
9821
+ loopsEnabled = true,
9822
+ missionsEnabled = true,
9823
+ goalsEnabled = true,
9824
+ compressEnabled = true,
9793
9825
  researchSources = [],
9794
9826
  hideTurnSummary = false,
9795
9827
  agentId,
@@ -9856,7 +9888,11 @@ function ChatThread({
9856
9888
  onViewModeChange,
9857
9889
  deepResearchEnabled,
9858
9890
  researchEnabled,
9859
- codeAgentsEnabled
9891
+ codeAgentsEnabled,
9892
+ loopsEnabled,
9893
+ missionsEnabled,
9894
+ goalsEnabled,
9895
+ compressEnabled
9860
9896
  }
9861
9897
  ),
9862
9898
  onOpenIntegrations && /* @__PURE__ */ jsx(
@@ -12358,6 +12394,10 @@ function AgentChat({
12358
12394
  deepResearchEnabled = false,
12359
12395
  researchEnabled = false,
12360
12396
  codeAgentsEnabled = false,
12397
+ loopsEnabled = true,
12398
+ missionsEnabled = true,
12399
+ goalsEnabled = true,
12400
+ compressEnabled = true,
12361
12401
  onOpenIntegrations,
12362
12402
  onOpenBilling
12363
12403
  }) {
@@ -12511,6 +12551,10 @@ function AgentChat({
12511
12551
  deepResearchEnabled,
12512
12552
  researchEnabled,
12513
12553
  codeAgentsEnabled,
12554
+ loopsEnabled,
12555
+ missionsEnabled,
12556
+ goalsEnabled,
12557
+ compressEnabled,
12514
12558
  researchSources: runtime.researchSources,
12515
12559
  hideTurnSummary,
12516
12560
  agentId,