@ai-matrx/agents 0.59.255 → 0.59.257
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -1
- package/dist/catalog/native/index.cjs +11 -9
- package/dist/catalog/native/index.d.cts +27 -44
- package/dist/catalog/native/index.d.ts +27 -44
- package/dist/catalog/native/index.js +12 -16
- package/dist/catalog/react/index.cjs +11 -10
- package/dist/catalog/react/index.d.cts +27 -44
- package/dist/catalog/react/index.d.ts +27 -44
- package/dist/catalog/react/index.js +12 -17
- package/dist/content-transfer/react/index.cjs +0 -1
- package/dist/content-transfer/react/index.js +0 -1
- package/dist/intelligence/react/index.d.cts +0 -6
- package/dist/intelligence/react/index.d.ts +0 -6
- package/dist/runtime/react/index.cjs +0 -1
- package/dist/runtime/react/index.js +0 -1
- package/dist/settings/react/index.cjs +0 -1
- package/dist/settings/react/index.js +0 -1
- package/dist/skills/react/index.cjs +0 -1
- package/dist/skills/react/index.js +0 -1
- package/dist/sources/index.d.cts +8 -2
- package/dist/sources/index.d.ts +8 -2
- package/dist/sources/react/index.d.cts +8 -17
- package/dist/sources/react/index.d.ts +8 -17
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 0.59.
|
|
3
|
+
## 0.59.257
|
|
4
4
|
|
|
5
5
|
UNVERIFIED: this release has no Unreleased entry and the source comparison could not be made (the caller supplied no source comparison). Whether source changed is unknown; consumer action is unknown.
|
|
6
6
|
Check the package's gitHead on npm against this version's gitHead: `git diff <previous gitHead> <this gitHead> -- apps/shared/matrx-agents/src`.
|
|
7
7
|
|
|
8
|
+
## 0.59.256
|
|
9
|
+
|
|
10
|
+
Automatic changed-only republish (docs/metadata drift since the last published version; verified: `git diff be3d056be5 76b41cb76b -- apps/shared/matrx-agents/src`
|
|
11
|
+
has no shipped-source changes outside tests, fixtures and docs). No consumer action required.
|
|
12
|
+
|
|
13
|
+
## 0.59.255
|
|
14
|
+
|
|
15
|
+
Automatic changed-only republish (docs/metadata drift since the last published version; verified: `git diff 9137bf6ff3 be3d056be5 -- apps/shared/matrx-agents/src`
|
|
16
|
+
has no shipped-source changes outside tests, fixtures and docs). No consumer action required.
|
|
17
|
+
|
|
8
18
|
## 0.59.254
|
|
9
19
|
|
|
10
20
|
Automatic changed-only republish (docs/metadata drift since the last published version; verified: `git diff bc6abc5d4e 9137bf6ff3 -- apps/shared/matrx-agents/src`
|
|
@@ -266,7 +266,7 @@ var import_react_native12 = require("react-native");
|
|
|
266
266
|
var import_react6 = require("react");
|
|
267
267
|
var import_react_native11 = require("react-native");
|
|
268
268
|
|
|
269
|
-
// catalog/shared/useAgentListCore.ts
|
|
269
|
+
// catalog/shared/useAgentListCore-react.ts
|
|
270
270
|
var import_react4 = require("react");
|
|
271
271
|
|
|
272
272
|
// catalog/shared/useAgentConsumer.ts
|
|
@@ -841,14 +841,7 @@ function agentListFooterLabel(args) {
|
|
|
841
841
|
return archivedHiddenCount > 0 ? `${base} \xB7 ${archivedHiddenCount} archived hidden` : base;
|
|
842
842
|
}
|
|
843
843
|
|
|
844
|
-
// catalog/shared/useAgentListCore.ts
|
|
845
|
-
var HOVER_GRACE_MS = 900;
|
|
846
|
-
function coerceVisibleTab(current, allowed, initialTab) {
|
|
847
|
-
if (allowed.length === 0) return null;
|
|
848
|
-
if (allowed.includes(current)) return null;
|
|
849
|
-
return initialTab && allowed.includes(initialTab) ? initialTab : allowed[0] ?? null;
|
|
850
|
-
}
|
|
851
|
-
var EMPTY_EXCLUDES = [];
|
|
844
|
+
// catalog/shared/useAgentListCore-react.ts
|
|
852
845
|
function useAgentListCore({
|
|
853
846
|
consumerId,
|
|
854
847
|
onSelect,
|
|
@@ -1074,6 +1067,15 @@ function useAgentListCore({
|
|
|
1074
1067
|
handleDetailPanelMouseLeave
|
|
1075
1068
|
};
|
|
1076
1069
|
}
|
|
1070
|
+
|
|
1071
|
+
// catalog/shared/useAgentListCore.ts
|
|
1072
|
+
var HOVER_GRACE_MS = 900;
|
|
1073
|
+
function coerceVisibleTab(current, allowed, initialTab) {
|
|
1074
|
+
if (allowed.length === 0) return null;
|
|
1075
|
+
if (allowed.includes(current)) return null;
|
|
1076
|
+
return initialTab && allowed.includes(initialTab) ? initialTab : allowed[0] ?? null;
|
|
1077
|
+
}
|
|
1078
|
+
var EMPTY_EXCLUDES = [];
|
|
1077
1079
|
var selectStatus = (state) => state.status;
|
|
1078
1080
|
|
|
1079
1081
|
// catalog/native/AgentDetailCard.tsx
|
|
@@ -498,24 +498,6 @@ declare function AgentListSheet({ title, ...props }: AgentListSheetProps): react
|
|
|
498
498
|
type AgentListInlinePickerProps = AgentPickerProps;
|
|
499
499
|
declare function AgentListInlinePicker(props: AgentListInlinePickerProps): react.JSX.Element;
|
|
500
500
|
|
|
501
|
-
/**
|
|
502
|
-
* catalog/shared/useAgentConsumer.ts — VERBATIM port of matrx-frontend
|
|
503
|
-
* `features/agents/hooks/useAgentConsumer.ts`.
|
|
504
|
-
*
|
|
505
|
-
* Wraps a single consumer slot identified by `consumerId`. Registers the slot
|
|
506
|
-
* on mount, optionally unregisters on unmount, and returns every filter/sort/
|
|
507
|
-
* pagination value plus stable write helpers.
|
|
508
|
-
*
|
|
509
|
-
* Two seams inverted, nothing else:
|
|
510
|
-
* - `useAppSelector`/`useAppDispatch` → `useAgentCatalog()` + the store's
|
|
511
|
-
* own methods.
|
|
512
|
-
* - `useServerAgentSearch` (a separate frontend hook) is folded IN, because
|
|
513
|
-
* it was already wired here and nowhere else: EVERY agent surface that
|
|
514
|
-
* uses a consumer searches the full server-side set. A local-only search
|
|
515
|
-
* over a paginated list reports "no results" for agents that were merely
|
|
516
|
-
* never fetched — a wrong answer, not a missing feature.
|
|
517
|
-
*/
|
|
518
|
-
|
|
519
501
|
interface UseAgentConsumerReturn {
|
|
520
502
|
tab: AgentTab;
|
|
521
503
|
sortBy: AgentSortOption;
|
|
@@ -585,6 +567,33 @@ declare function useAgentConsumer(consumerId: string, options?: {
|
|
|
585
567
|
initialArchFilter?: AgentArchFilter;
|
|
586
568
|
}): UseAgentConsumerReturn;
|
|
587
569
|
|
|
570
|
+
declare function useAgentListCore({ consumerId, onSelect, navigateTo, activeAgentIdOverride, initialTab, includeSystemInAll, visibleTabs, initialArchFilter, excludeAgentIds, includeQuickAgents, defaultMandateKey, agentFilter, loadOnMount, }: AgentListCoreOptions): {
|
|
571
|
+
agents: AgentSummary[];
|
|
572
|
+
archivedHiddenCount: number;
|
|
573
|
+
footerLabel: string;
|
|
574
|
+
isLoading: boolean;
|
|
575
|
+
activeAgentId: string | null;
|
|
576
|
+
pinnedAgent: AgentSummary | null;
|
|
577
|
+
defaultRow: DefaultRowState | null;
|
|
578
|
+
/** The host filter's chip label while it narrows the list; else null. */
|
|
579
|
+
agentFilterLabel: string | null;
|
|
580
|
+
clearAgentFilter: () => void;
|
|
581
|
+
resumeAgentFilter: () => void;
|
|
582
|
+
allCategories: string[];
|
|
583
|
+
allTags: string[];
|
|
584
|
+
consumer: UseAgentConsumerReturn;
|
|
585
|
+
tabCounts: AgentListTabCounts;
|
|
586
|
+
activeFilterCount: number;
|
|
587
|
+
hoveredAgent: AgentSummary | null;
|
|
588
|
+
setHoveredAgent: react.Dispatch<react.SetStateAction<AgentSummary | null>>;
|
|
589
|
+
ensureLoaded: () => void;
|
|
590
|
+
handleSelectAgent: (agent: AgentSummary) => void;
|
|
591
|
+
handleAgentHover: (agent: AgentSummary, panelOpen: boolean) => void;
|
|
592
|
+
handleAgentHoverEnd: (agent: AgentSummary, onClear: () => void) => void;
|
|
593
|
+
handleDetailPanelMouseEnter: () => void;
|
|
594
|
+
handleDetailPanelMouseLeave: (onClear: () => void) => void;
|
|
595
|
+
};
|
|
596
|
+
|
|
588
597
|
/**
|
|
589
598
|
* The four ownership counts a tab strip prints. Declared HERE, beside the code
|
|
590
599
|
* that computes them, so both the web tab strip and the native one name the
|
|
@@ -699,32 +708,6 @@ declare const HOVER_GRACE_MS = 900;
|
|
|
699
708
|
* else the first allowed tab.
|
|
700
709
|
*/
|
|
701
710
|
declare function coerceVisibleTab(current: AgentTab, allowed: readonly AgentTab[], initialTab?: AgentTab): AgentTab | null;
|
|
702
|
-
declare function useAgentListCore({ consumerId, onSelect, navigateTo, activeAgentIdOverride, initialTab, includeSystemInAll, visibleTabs, initialArchFilter, excludeAgentIds, includeQuickAgents, defaultMandateKey, agentFilter, loadOnMount, }: AgentListCoreOptions): {
|
|
703
|
-
agents: AgentSummary[];
|
|
704
|
-
archivedHiddenCount: number;
|
|
705
|
-
footerLabel: string;
|
|
706
|
-
isLoading: boolean;
|
|
707
|
-
activeAgentId: string | null;
|
|
708
|
-
pinnedAgent: AgentSummary | null;
|
|
709
|
-
defaultRow: DefaultRowState | null;
|
|
710
|
-
/** The host filter's chip label while it narrows the list; else null. */
|
|
711
|
-
agentFilterLabel: string | null;
|
|
712
|
-
clearAgentFilter: () => void;
|
|
713
|
-
resumeAgentFilter: () => void;
|
|
714
|
-
allCategories: string[];
|
|
715
|
-
allTags: string[];
|
|
716
|
-
consumer: UseAgentConsumerReturn;
|
|
717
|
-
tabCounts: AgentListTabCounts;
|
|
718
|
-
activeFilterCount: number;
|
|
719
|
-
hoveredAgent: AgentSummary | null;
|
|
720
|
-
setHoveredAgent: react.Dispatch<react.SetStateAction<AgentSummary | null>>;
|
|
721
|
-
ensureLoaded: () => void;
|
|
722
|
-
handleSelectAgent: (agent: AgentSummary) => void;
|
|
723
|
-
handleAgentHover: (agent: AgentSummary, panelOpen: boolean) => void;
|
|
724
|
-
handleAgentHoverEnd: (agent: AgentSummary, onClear: () => void) => void;
|
|
725
|
-
handleDetailPanelMouseEnter: () => void;
|
|
726
|
-
handleDetailPanelMouseLeave: (onClear: () => void) => void;
|
|
727
|
-
};
|
|
728
711
|
|
|
729
712
|
interface AgentListContentProps {
|
|
730
713
|
agents: AgentSummary[];
|
|
@@ -498,24 +498,6 @@ declare function AgentListSheet({ title, ...props }: AgentListSheetProps): react
|
|
|
498
498
|
type AgentListInlinePickerProps = AgentPickerProps;
|
|
499
499
|
declare function AgentListInlinePicker(props: AgentListInlinePickerProps): react.JSX.Element;
|
|
500
500
|
|
|
501
|
-
/**
|
|
502
|
-
* catalog/shared/useAgentConsumer.ts — VERBATIM port of matrx-frontend
|
|
503
|
-
* `features/agents/hooks/useAgentConsumer.ts`.
|
|
504
|
-
*
|
|
505
|
-
* Wraps a single consumer slot identified by `consumerId`. Registers the slot
|
|
506
|
-
* on mount, optionally unregisters on unmount, and returns every filter/sort/
|
|
507
|
-
* pagination value plus stable write helpers.
|
|
508
|
-
*
|
|
509
|
-
* Two seams inverted, nothing else:
|
|
510
|
-
* - `useAppSelector`/`useAppDispatch` → `useAgentCatalog()` + the store's
|
|
511
|
-
* own methods.
|
|
512
|
-
* - `useServerAgentSearch` (a separate frontend hook) is folded IN, because
|
|
513
|
-
* it was already wired here and nowhere else: EVERY agent surface that
|
|
514
|
-
* uses a consumer searches the full server-side set. A local-only search
|
|
515
|
-
* over a paginated list reports "no results" for agents that were merely
|
|
516
|
-
* never fetched — a wrong answer, not a missing feature.
|
|
517
|
-
*/
|
|
518
|
-
|
|
519
501
|
interface UseAgentConsumerReturn {
|
|
520
502
|
tab: AgentTab;
|
|
521
503
|
sortBy: AgentSortOption;
|
|
@@ -585,6 +567,33 @@ declare function useAgentConsumer(consumerId: string, options?: {
|
|
|
585
567
|
initialArchFilter?: AgentArchFilter;
|
|
586
568
|
}): UseAgentConsumerReturn;
|
|
587
569
|
|
|
570
|
+
declare function useAgentListCore({ consumerId, onSelect, navigateTo, activeAgentIdOverride, initialTab, includeSystemInAll, visibleTabs, initialArchFilter, excludeAgentIds, includeQuickAgents, defaultMandateKey, agentFilter, loadOnMount, }: AgentListCoreOptions): {
|
|
571
|
+
agents: AgentSummary[];
|
|
572
|
+
archivedHiddenCount: number;
|
|
573
|
+
footerLabel: string;
|
|
574
|
+
isLoading: boolean;
|
|
575
|
+
activeAgentId: string | null;
|
|
576
|
+
pinnedAgent: AgentSummary | null;
|
|
577
|
+
defaultRow: DefaultRowState | null;
|
|
578
|
+
/** The host filter's chip label while it narrows the list; else null. */
|
|
579
|
+
agentFilterLabel: string | null;
|
|
580
|
+
clearAgentFilter: () => void;
|
|
581
|
+
resumeAgentFilter: () => void;
|
|
582
|
+
allCategories: string[];
|
|
583
|
+
allTags: string[];
|
|
584
|
+
consumer: UseAgentConsumerReturn;
|
|
585
|
+
tabCounts: AgentListTabCounts;
|
|
586
|
+
activeFilterCount: number;
|
|
587
|
+
hoveredAgent: AgentSummary | null;
|
|
588
|
+
setHoveredAgent: react.Dispatch<react.SetStateAction<AgentSummary | null>>;
|
|
589
|
+
ensureLoaded: () => void;
|
|
590
|
+
handleSelectAgent: (agent: AgentSummary) => void;
|
|
591
|
+
handleAgentHover: (agent: AgentSummary, panelOpen: boolean) => void;
|
|
592
|
+
handleAgentHoverEnd: (agent: AgentSummary, onClear: () => void) => void;
|
|
593
|
+
handleDetailPanelMouseEnter: () => void;
|
|
594
|
+
handleDetailPanelMouseLeave: (onClear: () => void) => void;
|
|
595
|
+
};
|
|
596
|
+
|
|
588
597
|
/**
|
|
589
598
|
* The four ownership counts a tab strip prints. Declared HERE, beside the code
|
|
590
599
|
* that computes them, so both the web tab strip and the native one name the
|
|
@@ -699,32 +708,6 @@ declare const HOVER_GRACE_MS = 900;
|
|
|
699
708
|
* else the first allowed tab.
|
|
700
709
|
*/
|
|
701
710
|
declare function coerceVisibleTab(current: AgentTab, allowed: readonly AgentTab[], initialTab?: AgentTab): AgentTab | null;
|
|
702
|
-
declare function useAgentListCore({ consumerId, onSelect, navigateTo, activeAgentIdOverride, initialTab, includeSystemInAll, visibleTabs, initialArchFilter, excludeAgentIds, includeQuickAgents, defaultMandateKey, agentFilter, loadOnMount, }: AgentListCoreOptions): {
|
|
703
|
-
agents: AgentSummary[];
|
|
704
|
-
archivedHiddenCount: number;
|
|
705
|
-
footerLabel: string;
|
|
706
|
-
isLoading: boolean;
|
|
707
|
-
activeAgentId: string | null;
|
|
708
|
-
pinnedAgent: AgentSummary | null;
|
|
709
|
-
defaultRow: DefaultRowState | null;
|
|
710
|
-
/** The host filter's chip label while it narrows the list; else null. */
|
|
711
|
-
agentFilterLabel: string | null;
|
|
712
|
-
clearAgentFilter: () => void;
|
|
713
|
-
resumeAgentFilter: () => void;
|
|
714
|
-
allCategories: string[];
|
|
715
|
-
allTags: string[];
|
|
716
|
-
consumer: UseAgentConsumerReturn;
|
|
717
|
-
tabCounts: AgentListTabCounts;
|
|
718
|
-
activeFilterCount: number;
|
|
719
|
-
hoveredAgent: AgentSummary | null;
|
|
720
|
-
setHoveredAgent: react.Dispatch<react.SetStateAction<AgentSummary | null>>;
|
|
721
|
-
ensureLoaded: () => void;
|
|
722
|
-
handleSelectAgent: (agent: AgentSummary) => void;
|
|
723
|
-
handleAgentHover: (agent: AgentSummary, panelOpen: boolean) => void;
|
|
724
|
-
handleAgentHoverEnd: (agent: AgentSummary, onClear: () => void) => void;
|
|
725
|
-
handleDetailPanelMouseEnter: () => void;
|
|
726
|
-
handleDetailPanelMouseLeave: (onClear: () => void) => void;
|
|
727
|
-
};
|
|
728
711
|
|
|
729
712
|
interface AgentListContentProps {
|
|
730
713
|
agents: AgentSummary[];
|
|
@@ -218,14 +218,8 @@ import { StyleSheet as StyleSheet9, Text as Text9, View as View7 } from "react-n
|
|
|
218
218
|
import { useEffect as useEffect3, useState as useState3 } from "react";
|
|
219
219
|
import { StyleSheet as StyleSheet8, View as View6 } from "react-native";
|
|
220
220
|
|
|
221
|
-
// catalog/shared/useAgentListCore.ts
|
|
222
|
-
import {
|
|
223
|
-
useCallback as useCallback3,
|
|
224
|
-
useEffect as useEffect2,
|
|
225
|
-
useMemo as useMemo3,
|
|
226
|
-
useRef as useRef2,
|
|
227
|
-
useState as useState2
|
|
228
|
-
} from "react";
|
|
221
|
+
// catalog/shared/useAgentListCore-react.ts
|
|
222
|
+
import { useCallback as useCallback3, useEffect as useEffect2, useMemo as useMemo3, useRef as useRef2, useState as useState2 } from "react";
|
|
229
223
|
|
|
230
224
|
// catalog/shared/useAgentConsumer.ts
|
|
231
225
|
import { useCallback as useCallback2, useEffect, useRef, useState } from "react";
|
|
@@ -799,14 +793,7 @@ function agentListFooterLabel(args) {
|
|
|
799
793
|
return archivedHiddenCount > 0 ? `${base} \xB7 ${archivedHiddenCount} archived hidden` : base;
|
|
800
794
|
}
|
|
801
795
|
|
|
802
|
-
// catalog/shared/useAgentListCore.ts
|
|
803
|
-
var HOVER_GRACE_MS = 900;
|
|
804
|
-
function coerceVisibleTab(current, allowed, initialTab) {
|
|
805
|
-
if (allowed.length === 0) return null;
|
|
806
|
-
if (allowed.includes(current)) return null;
|
|
807
|
-
return initialTab && allowed.includes(initialTab) ? initialTab : allowed[0] ?? null;
|
|
808
|
-
}
|
|
809
|
-
var EMPTY_EXCLUDES = [];
|
|
796
|
+
// catalog/shared/useAgentListCore-react.ts
|
|
810
797
|
function useAgentListCore({
|
|
811
798
|
consumerId,
|
|
812
799
|
onSelect,
|
|
@@ -1032,6 +1019,15 @@ function useAgentListCore({
|
|
|
1032
1019
|
handleDetailPanelMouseLeave
|
|
1033
1020
|
};
|
|
1034
1021
|
}
|
|
1022
|
+
|
|
1023
|
+
// catalog/shared/useAgentListCore.ts
|
|
1024
|
+
var HOVER_GRACE_MS = 900;
|
|
1025
|
+
function coerceVisibleTab(current, allowed, initialTab) {
|
|
1026
|
+
if (allowed.length === 0) return null;
|
|
1027
|
+
if (allowed.includes(current)) return null;
|
|
1028
|
+
return initialTab && allowed.includes(initialTab) ? initialTab : allowed[0] ?? null;
|
|
1029
|
+
}
|
|
1030
|
+
var EMPTY_EXCLUDES = [];
|
|
1035
1031
|
var selectStatus = (state) => state.status;
|
|
1036
1032
|
|
|
1037
1033
|
// catalog/native/AgentDetailCard.tsx
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
"use strict";
|
|
3
|
-
"use client";
|
|
4
3
|
var __defProp = Object.defineProperty;
|
|
5
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
@@ -398,7 +397,7 @@ function useAgentConsumer(consumerId, options) {
|
|
|
398
397
|
};
|
|
399
398
|
}
|
|
400
399
|
|
|
401
|
-
// catalog/shared/useAgentListCore.ts
|
|
400
|
+
// catalog/shared/useAgentListCore-react.ts
|
|
402
401
|
var import_react5 = require("react");
|
|
403
402
|
|
|
404
403
|
// catalog/score.ts
|
|
@@ -789,14 +788,7 @@ function agentListFooterLabel(args) {
|
|
|
789
788
|
return archivedHiddenCount > 0 ? `${base} \xB7 ${archivedHiddenCount} archived hidden` : base;
|
|
790
789
|
}
|
|
791
790
|
|
|
792
|
-
// catalog/shared/useAgentListCore.ts
|
|
793
|
-
var HOVER_GRACE_MS = 900;
|
|
794
|
-
function coerceVisibleTab(current, allowed, initialTab) {
|
|
795
|
-
if (allowed.length === 0) return null;
|
|
796
|
-
if (allowed.includes(current)) return null;
|
|
797
|
-
return initialTab && allowed.includes(initialTab) ? initialTab : allowed[0] ?? null;
|
|
798
|
-
}
|
|
799
|
-
var EMPTY_EXCLUDES = [];
|
|
791
|
+
// catalog/shared/useAgentListCore-react.ts
|
|
800
792
|
function useAgentListCore({
|
|
801
793
|
consumerId,
|
|
802
794
|
onSelect,
|
|
@@ -1022,6 +1014,15 @@ function useAgentListCore({
|
|
|
1022
1014
|
handleDetailPanelMouseLeave
|
|
1023
1015
|
};
|
|
1024
1016
|
}
|
|
1017
|
+
|
|
1018
|
+
// catalog/shared/useAgentListCore.ts
|
|
1019
|
+
var HOVER_GRACE_MS = 900;
|
|
1020
|
+
function coerceVisibleTab(current, allowed, initialTab) {
|
|
1021
|
+
if (allowed.length === 0) return null;
|
|
1022
|
+
if (allowed.includes(current)) return null;
|
|
1023
|
+
return initialTab && allowed.includes(initialTab) ? initialTab : allowed[0] ?? null;
|
|
1024
|
+
}
|
|
1025
|
+
var EMPTY_EXCLUDES = [];
|
|
1025
1026
|
var selectStatus = (state) => state.status;
|
|
1026
1027
|
|
|
1027
1028
|
// catalog/react/AgentListDropdown.tsx
|
|
@@ -572,24 +572,6 @@ declare function lookUpAgentOnce(catalog: AgentCatalog, agentId: string): Promis
|
|
|
572
572
|
*/
|
|
573
573
|
declare function useAgentSummary(catalog: AgentCatalog | null | undefined, agentId: string | null | undefined): AgentSummary | undefined;
|
|
574
574
|
|
|
575
|
-
/**
|
|
576
|
-
* catalog/shared/useAgentConsumer.ts — VERBATIM port of matrx-frontend
|
|
577
|
-
* `features/agents/hooks/useAgentConsumer.ts`.
|
|
578
|
-
*
|
|
579
|
-
* Wraps a single consumer slot identified by `consumerId`. Registers the slot
|
|
580
|
-
* on mount, optionally unregisters on unmount, and returns every filter/sort/
|
|
581
|
-
* pagination value plus stable write helpers.
|
|
582
|
-
*
|
|
583
|
-
* Two seams inverted, nothing else:
|
|
584
|
-
* - `useAppSelector`/`useAppDispatch` → `useAgentCatalog()` + the store's
|
|
585
|
-
* own methods.
|
|
586
|
-
* - `useServerAgentSearch` (a separate frontend hook) is folded IN, because
|
|
587
|
-
* it was already wired here and nowhere else: EVERY agent surface that
|
|
588
|
-
* uses a consumer searches the full server-side set. A local-only search
|
|
589
|
-
* over a paginated list reports "no results" for agents that were merely
|
|
590
|
-
* never fetched — a wrong answer, not a missing feature.
|
|
591
|
-
*/
|
|
592
|
-
|
|
593
575
|
interface UseAgentConsumerReturn {
|
|
594
576
|
tab: AgentTab;
|
|
595
577
|
sortBy: AgentSortOption;
|
|
@@ -659,6 +641,33 @@ declare function useAgentConsumer(consumerId: string, options?: {
|
|
|
659
641
|
initialArchFilter?: AgentArchFilter;
|
|
660
642
|
}): UseAgentConsumerReturn;
|
|
661
643
|
|
|
644
|
+
declare function useAgentListCore({ consumerId, onSelect, navigateTo, activeAgentIdOverride, initialTab, includeSystemInAll, visibleTabs, initialArchFilter, excludeAgentIds, includeQuickAgents, defaultMandateKey, agentFilter, loadOnMount, }: AgentListCoreOptions): {
|
|
645
|
+
agents: AgentSummary[];
|
|
646
|
+
archivedHiddenCount: number;
|
|
647
|
+
footerLabel: string;
|
|
648
|
+
isLoading: boolean;
|
|
649
|
+
activeAgentId: string | null;
|
|
650
|
+
pinnedAgent: AgentSummary | null;
|
|
651
|
+
defaultRow: DefaultRowState | null;
|
|
652
|
+
/** The host filter's chip label while it narrows the list; else null. */
|
|
653
|
+
agentFilterLabel: string | null;
|
|
654
|
+
clearAgentFilter: () => void;
|
|
655
|
+
resumeAgentFilter: () => void;
|
|
656
|
+
allCategories: string[];
|
|
657
|
+
allTags: string[];
|
|
658
|
+
consumer: UseAgentConsumerReturn;
|
|
659
|
+
tabCounts: AgentListTabCounts;
|
|
660
|
+
activeFilterCount: number;
|
|
661
|
+
hoveredAgent: AgentSummary | null;
|
|
662
|
+
setHoveredAgent: react.Dispatch<react.SetStateAction<AgentSummary | null>>;
|
|
663
|
+
ensureLoaded: () => void;
|
|
664
|
+
handleSelectAgent: (agent: AgentSummary) => void;
|
|
665
|
+
handleAgentHover: (agent: AgentSummary, panelOpen: boolean) => void;
|
|
666
|
+
handleAgentHoverEnd: (agent: AgentSummary, onClear: () => void) => void;
|
|
667
|
+
handleDetailPanelMouseEnter: () => void;
|
|
668
|
+
handleDetailPanelMouseLeave: (onClear: () => void) => void;
|
|
669
|
+
};
|
|
670
|
+
|
|
662
671
|
/**
|
|
663
672
|
* The four ownership counts a tab strip prints. Declared HERE, beside the code
|
|
664
673
|
* that computes them, so both the web tab strip and the native one name the
|
|
@@ -773,32 +782,6 @@ declare const HOVER_GRACE_MS = 900;
|
|
|
773
782
|
* else the first allowed tab.
|
|
774
783
|
*/
|
|
775
784
|
declare function coerceVisibleTab(current: AgentTab, allowed: readonly AgentTab[], initialTab?: AgentTab): AgentTab | null;
|
|
776
|
-
declare function useAgentListCore({ consumerId, onSelect, navigateTo, activeAgentIdOverride, initialTab, includeSystemInAll, visibleTabs, initialArchFilter, excludeAgentIds, includeQuickAgents, defaultMandateKey, agentFilter, loadOnMount, }: AgentListCoreOptions): {
|
|
777
|
-
agents: AgentSummary[];
|
|
778
|
-
archivedHiddenCount: number;
|
|
779
|
-
footerLabel: string;
|
|
780
|
-
isLoading: boolean;
|
|
781
|
-
activeAgentId: string | null;
|
|
782
|
-
pinnedAgent: AgentSummary | null;
|
|
783
|
-
defaultRow: DefaultRowState | null;
|
|
784
|
-
/** The host filter's chip label while it narrows the list; else null. */
|
|
785
|
-
agentFilterLabel: string | null;
|
|
786
|
-
clearAgentFilter: () => void;
|
|
787
|
-
resumeAgentFilter: () => void;
|
|
788
|
-
allCategories: string[];
|
|
789
|
-
allTags: string[];
|
|
790
|
-
consumer: UseAgentConsumerReturn;
|
|
791
|
-
tabCounts: AgentListTabCounts;
|
|
792
|
-
activeFilterCount: number;
|
|
793
|
-
hoveredAgent: AgentSummary | null;
|
|
794
|
-
setHoveredAgent: react.Dispatch<react.SetStateAction<AgentSummary | null>>;
|
|
795
|
-
ensureLoaded: () => void;
|
|
796
|
-
handleSelectAgent: (agent: AgentSummary) => void;
|
|
797
|
-
handleAgentHover: (agent: AgentSummary, panelOpen: boolean) => void;
|
|
798
|
-
handleAgentHoverEnd: (agent: AgentSummary, onClear: () => void) => void;
|
|
799
|
-
handleDetailPanelMouseEnter: () => void;
|
|
800
|
-
handleDetailPanelMouseLeave: (onClear: () => void) => void;
|
|
801
|
-
};
|
|
802
785
|
|
|
803
786
|
interface AgentListDropdownProps {
|
|
804
787
|
onSelect?: (agentId: string) => void;
|
|
@@ -572,24 +572,6 @@ declare function lookUpAgentOnce(catalog: AgentCatalog, agentId: string): Promis
|
|
|
572
572
|
*/
|
|
573
573
|
declare function useAgentSummary(catalog: AgentCatalog | null | undefined, agentId: string | null | undefined): AgentSummary | undefined;
|
|
574
574
|
|
|
575
|
-
/**
|
|
576
|
-
* catalog/shared/useAgentConsumer.ts — VERBATIM port of matrx-frontend
|
|
577
|
-
* `features/agents/hooks/useAgentConsumer.ts`.
|
|
578
|
-
*
|
|
579
|
-
* Wraps a single consumer slot identified by `consumerId`. Registers the slot
|
|
580
|
-
* on mount, optionally unregisters on unmount, and returns every filter/sort/
|
|
581
|
-
* pagination value plus stable write helpers.
|
|
582
|
-
*
|
|
583
|
-
* Two seams inverted, nothing else:
|
|
584
|
-
* - `useAppSelector`/`useAppDispatch` → `useAgentCatalog()` + the store's
|
|
585
|
-
* own methods.
|
|
586
|
-
* - `useServerAgentSearch` (a separate frontend hook) is folded IN, because
|
|
587
|
-
* it was already wired here and nowhere else: EVERY agent surface that
|
|
588
|
-
* uses a consumer searches the full server-side set. A local-only search
|
|
589
|
-
* over a paginated list reports "no results" for agents that were merely
|
|
590
|
-
* never fetched — a wrong answer, not a missing feature.
|
|
591
|
-
*/
|
|
592
|
-
|
|
593
575
|
interface UseAgentConsumerReturn {
|
|
594
576
|
tab: AgentTab;
|
|
595
577
|
sortBy: AgentSortOption;
|
|
@@ -659,6 +641,33 @@ declare function useAgentConsumer(consumerId: string, options?: {
|
|
|
659
641
|
initialArchFilter?: AgentArchFilter;
|
|
660
642
|
}): UseAgentConsumerReturn;
|
|
661
643
|
|
|
644
|
+
declare function useAgentListCore({ consumerId, onSelect, navigateTo, activeAgentIdOverride, initialTab, includeSystemInAll, visibleTabs, initialArchFilter, excludeAgentIds, includeQuickAgents, defaultMandateKey, agentFilter, loadOnMount, }: AgentListCoreOptions): {
|
|
645
|
+
agents: AgentSummary[];
|
|
646
|
+
archivedHiddenCount: number;
|
|
647
|
+
footerLabel: string;
|
|
648
|
+
isLoading: boolean;
|
|
649
|
+
activeAgentId: string | null;
|
|
650
|
+
pinnedAgent: AgentSummary | null;
|
|
651
|
+
defaultRow: DefaultRowState | null;
|
|
652
|
+
/** The host filter's chip label while it narrows the list; else null. */
|
|
653
|
+
agentFilterLabel: string | null;
|
|
654
|
+
clearAgentFilter: () => void;
|
|
655
|
+
resumeAgentFilter: () => void;
|
|
656
|
+
allCategories: string[];
|
|
657
|
+
allTags: string[];
|
|
658
|
+
consumer: UseAgentConsumerReturn;
|
|
659
|
+
tabCounts: AgentListTabCounts;
|
|
660
|
+
activeFilterCount: number;
|
|
661
|
+
hoveredAgent: AgentSummary | null;
|
|
662
|
+
setHoveredAgent: react.Dispatch<react.SetStateAction<AgentSummary | null>>;
|
|
663
|
+
ensureLoaded: () => void;
|
|
664
|
+
handleSelectAgent: (agent: AgentSummary) => void;
|
|
665
|
+
handleAgentHover: (agent: AgentSummary, panelOpen: boolean) => void;
|
|
666
|
+
handleAgentHoverEnd: (agent: AgentSummary, onClear: () => void) => void;
|
|
667
|
+
handleDetailPanelMouseEnter: () => void;
|
|
668
|
+
handleDetailPanelMouseLeave: (onClear: () => void) => void;
|
|
669
|
+
};
|
|
670
|
+
|
|
662
671
|
/**
|
|
663
672
|
* The four ownership counts a tab strip prints. Declared HERE, beside the code
|
|
664
673
|
* that computes them, so both the web tab strip and the native one name the
|
|
@@ -773,32 +782,6 @@ declare const HOVER_GRACE_MS = 900;
|
|
|
773
782
|
* else the first allowed tab.
|
|
774
783
|
*/
|
|
775
784
|
declare function coerceVisibleTab(current: AgentTab, allowed: readonly AgentTab[], initialTab?: AgentTab): AgentTab | null;
|
|
776
|
-
declare function useAgentListCore({ consumerId, onSelect, navigateTo, activeAgentIdOverride, initialTab, includeSystemInAll, visibleTabs, initialArchFilter, excludeAgentIds, includeQuickAgents, defaultMandateKey, agentFilter, loadOnMount, }: AgentListCoreOptions): {
|
|
777
|
-
agents: AgentSummary[];
|
|
778
|
-
archivedHiddenCount: number;
|
|
779
|
-
footerLabel: string;
|
|
780
|
-
isLoading: boolean;
|
|
781
|
-
activeAgentId: string | null;
|
|
782
|
-
pinnedAgent: AgentSummary | null;
|
|
783
|
-
defaultRow: DefaultRowState | null;
|
|
784
|
-
/** The host filter's chip label while it narrows the list; else null. */
|
|
785
|
-
agentFilterLabel: string | null;
|
|
786
|
-
clearAgentFilter: () => void;
|
|
787
|
-
resumeAgentFilter: () => void;
|
|
788
|
-
allCategories: string[];
|
|
789
|
-
allTags: string[];
|
|
790
|
-
consumer: UseAgentConsumerReturn;
|
|
791
|
-
tabCounts: AgentListTabCounts;
|
|
792
|
-
activeFilterCount: number;
|
|
793
|
-
hoveredAgent: AgentSummary | null;
|
|
794
|
-
setHoveredAgent: react.Dispatch<react.SetStateAction<AgentSummary | null>>;
|
|
795
|
-
ensureLoaded: () => void;
|
|
796
|
-
handleSelectAgent: (agent: AgentSummary) => void;
|
|
797
|
-
handleAgentHover: (agent: AgentSummary, panelOpen: boolean) => void;
|
|
798
|
-
handleAgentHoverEnd: (agent: AgentSummary, onClear: () => void) => void;
|
|
799
|
-
handleDetailPanelMouseEnter: () => void;
|
|
800
|
-
handleDetailPanelMouseLeave: (onClear: () => void) => void;
|
|
801
|
-
};
|
|
802
785
|
|
|
803
786
|
interface AgentListDropdownProps {
|
|
804
787
|
onSelect?: (agentId: string) => void;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use client";
|
|
3
2
|
|
|
4
3
|
// catalog/react/context.tsx
|
|
5
4
|
import { useMemo as useMemo2 } from "react";
|
|
@@ -339,14 +338,8 @@ function useAgentConsumer(consumerId, options) {
|
|
|
339
338
|
};
|
|
340
339
|
}
|
|
341
340
|
|
|
342
|
-
// catalog/shared/useAgentListCore.ts
|
|
343
|
-
import {
|
|
344
|
-
useCallback as useCallback3,
|
|
345
|
-
useEffect as useEffect3,
|
|
346
|
-
useMemo as useMemo3,
|
|
347
|
-
useRef as useRef2,
|
|
348
|
-
useState as useState2
|
|
349
|
-
} from "react";
|
|
341
|
+
// catalog/shared/useAgentListCore-react.ts
|
|
342
|
+
import { useCallback as useCallback3, useEffect as useEffect3, useMemo as useMemo3, useRef as useRef2, useState as useState2 } from "react";
|
|
350
343
|
|
|
351
344
|
// catalog/score.ts
|
|
352
345
|
function computeAgentSearchScore(agent, query) {
|
|
@@ -736,14 +729,7 @@ function agentListFooterLabel(args) {
|
|
|
736
729
|
return archivedHiddenCount > 0 ? `${base} \xB7 ${archivedHiddenCount} archived hidden` : base;
|
|
737
730
|
}
|
|
738
731
|
|
|
739
|
-
// catalog/shared/useAgentListCore.ts
|
|
740
|
-
var HOVER_GRACE_MS = 900;
|
|
741
|
-
function coerceVisibleTab(current, allowed, initialTab) {
|
|
742
|
-
if (allowed.length === 0) return null;
|
|
743
|
-
if (allowed.includes(current)) return null;
|
|
744
|
-
return initialTab && allowed.includes(initialTab) ? initialTab : allowed[0] ?? null;
|
|
745
|
-
}
|
|
746
|
-
var EMPTY_EXCLUDES = [];
|
|
732
|
+
// catalog/shared/useAgentListCore-react.ts
|
|
747
733
|
function useAgentListCore({
|
|
748
734
|
consumerId,
|
|
749
735
|
onSelect,
|
|
@@ -969,6 +955,15 @@ function useAgentListCore({
|
|
|
969
955
|
handleDetailPanelMouseLeave
|
|
970
956
|
};
|
|
971
957
|
}
|
|
958
|
+
|
|
959
|
+
// catalog/shared/useAgentListCore.ts
|
|
960
|
+
var HOVER_GRACE_MS = 900;
|
|
961
|
+
function coerceVisibleTab(current, allowed, initialTab) {
|
|
962
|
+
if (allowed.length === 0) return null;
|
|
963
|
+
if (allowed.includes(current)) return null;
|
|
964
|
+
return initialTab && allowed.includes(initialTab) ? initialTab : allowed[0] ?? null;
|
|
965
|
+
}
|
|
966
|
+
var EMPTY_EXCLUDES = [];
|
|
972
967
|
var selectStatus = (state) => state.status;
|
|
973
968
|
|
|
974
969
|
// catalog/react/AgentListDropdown.tsx
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
import { RunRequest, AppletError, KindEnvelope, ServedInput, RunRef, IntelligencePort } from '@ai-matrx/agents/intelligence';
|
|
2
2
|
|
|
3
|
-
/**
|
|
4
|
-
* `@ai-matrx/agents/intelligence/react` — `useMandateRun`, the smallest
|
|
5
|
-
* React binding over an `IntelligencePort`. Never throws into React: every
|
|
6
|
-
* failure lands in `error` and `status: "error"`.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
3
|
type MandateRunStatus = "idle" | "resolving" | "running" | "needs_input" | "done" | "error";
|
|
10
4
|
interface UseMandateRun {
|
|
11
5
|
/** Start the job; `key` is bound by the hook, the rest is the run request. */
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
import { RunRequest, AppletError, KindEnvelope, ServedInput, RunRef, IntelligencePort } from '@ai-matrx/agents/intelligence';
|
|
2
2
|
|
|
3
|
-
/**
|
|
4
|
-
* `@ai-matrx/agents/intelligence/react` — `useMandateRun`, the smallest
|
|
5
|
-
* React binding over an `IntelligencePort`. Never throws into React: every
|
|
6
|
-
* failure lands in `error` and `status: "error"`.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
3
|
type MandateRunStatus = "idle" | "resolving" | "running" | "needs_input" | "done" | "error";
|
|
10
4
|
interface UseMandateRun {
|
|
11
5
|
/** Start the job; `key` is bound by the hook, the rest is the run request. */
|
package/dist/sources/index.d.cts
CHANGED
|
@@ -47,7 +47,13 @@ interface SourceRef {
|
|
|
47
47
|
promote?: ResourcePromotion | ResourcePromotion[];
|
|
48
48
|
exclude?: string[];
|
|
49
49
|
}
|
|
50
|
-
|
|
50
|
+
/**
|
|
51
|
+
* A TYPE, not an interface (2026-10-23): it IS a JSON object, so it is assignable wherever the server
|
|
52
|
+
* contract types the field as a JSON object (@ai-matrx/api's request bodies carry `source_set` as
|
|
53
|
+
* `{ [key: string]: JsonValue }` — the podcast generate request). An interface has no implicit index
|
|
54
|
+
* signature and would need a cast at every send.
|
|
55
|
+
*/
|
|
56
|
+
type SourceSet = {
|
|
51
57
|
__kind: typeof SOURCE_SET_KIND;
|
|
52
58
|
version: typeof SOURCE_SET_VERSION;
|
|
53
59
|
sources: SourceRef[];
|
|
@@ -59,7 +65,7 @@ interface SourceSet {
|
|
|
59
65
|
retrieve_query?: string;
|
|
60
66
|
/** The model whose context window sets the budget. */
|
|
61
67
|
target_model_id?: string;
|
|
62
|
-
}
|
|
68
|
+
};
|
|
63
69
|
type SourceState = "ready" | "processing" | "failed" | "unavailable";
|
|
64
70
|
interface SourceManifestForm {
|
|
65
71
|
form: string;
|
package/dist/sources/index.d.ts
CHANGED
|
@@ -47,7 +47,13 @@ interface SourceRef {
|
|
|
47
47
|
promote?: ResourcePromotion | ResourcePromotion[];
|
|
48
48
|
exclude?: string[];
|
|
49
49
|
}
|
|
50
|
-
|
|
50
|
+
/**
|
|
51
|
+
* A TYPE, not an interface (2026-10-23): it IS a JSON object, so it is assignable wherever the server
|
|
52
|
+
* contract types the field as a JSON object (@ai-matrx/api's request bodies carry `source_set` as
|
|
53
|
+
* `{ [key: string]: JsonValue }` — the podcast generate request). An interface has no implicit index
|
|
54
|
+
* signature and would need a cast at every send.
|
|
55
|
+
*/
|
|
56
|
+
type SourceSet = {
|
|
51
57
|
__kind: typeof SOURCE_SET_KIND;
|
|
52
58
|
version: typeof SOURCE_SET_VERSION;
|
|
53
59
|
sources: SourceRef[];
|
|
@@ -59,7 +65,7 @@ interface SourceSet {
|
|
|
59
65
|
retrieve_query?: string;
|
|
60
66
|
/** The model whose context window sets the budget. */
|
|
61
67
|
target_model_id?: string;
|
|
62
|
-
}
|
|
68
|
+
};
|
|
63
69
|
type SourceState = "ready" | "processing" | "failed" | "unavailable";
|
|
64
70
|
interface SourceManifestForm {
|
|
65
71
|
form: string;
|
|
@@ -47,7 +47,13 @@ interface SourceRef {
|
|
|
47
47
|
promote?: ResourcePromotion | ResourcePromotion[];
|
|
48
48
|
exclude?: string[];
|
|
49
49
|
}
|
|
50
|
-
|
|
50
|
+
/**
|
|
51
|
+
* A TYPE, not an interface (2026-10-23): it IS a JSON object, so it is assignable wherever the server
|
|
52
|
+
* contract types the field as a JSON object (@ai-matrx/api's request bodies carry `source_set` as
|
|
53
|
+
* `{ [key: string]: JsonValue }` — the podcast generate request). An interface has no implicit index
|
|
54
|
+
* signature and would need a cast at every send.
|
|
55
|
+
*/
|
|
56
|
+
type SourceSet = {
|
|
51
57
|
__kind: typeof SOURCE_SET_KIND;
|
|
52
58
|
version: typeof SOURCE_SET_VERSION;
|
|
53
59
|
sources: SourceRef[];
|
|
@@ -59,7 +65,7 @@ interface SourceSet {
|
|
|
59
65
|
retrieve_query?: string;
|
|
60
66
|
/** The model whose context window sets the budget. */
|
|
61
67
|
target_model_id?: string;
|
|
62
|
-
}
|
|
68
|
+
};
|
|
63
69
|
type SourceState = "ready" | "processing" | "failed" | "unavailable";
|
|
64
70
|
interface SourceManifestForm {
|
|
65
71
|
form: string;
|
|
@@ -705,21 +711,6 @@ interface FileRecoveryDeps {
|
|
|
705
711
|
fileOrganizationId?: ((fileId: string) => string | null | undefined) | undefined;
|
|
706
712
|
}
|
|
707
713
|
|
|
708
|
-
/**
|
|
709
|
-
* `@ai-matrx/agents/sources/react` — thin React hooks over the Source runtime
|
|
710
|
-
* (`@ai-matrx/agents/sources/runtime`). No logic lives here that a non-React
|
|
711
|
-
* client could not reach through the runtime itself: the hooks subscribe,
|
|
712
|
-
* schedule, and hand back the same controller.
|
|
713
|
-
*
|
|
714
|
-
* const set = useSourceSet(adapter, { persistenceReady });
|
|
715
|
-
* const intake = useSourceIntake(set, deps);
|
|
716
|
-
* useSourceRecovery(set, intake, runner, { organizationId, readFileState });
|
|
717
|
-
* const search = useSourcePartsSearch(client, ref, query);
|
|
718
|
-
*
|
|
719
|
-
* A host binds the adapter to its own store once (memoized per surface) —
|
|
720
|
-
* the web app binds Redux; another client binds its own.
|
|
721
|
-
*/
|
|
722
|
-
|
|
723
714
|
interface UseSourceSetOptions {
|
|
724
715
|
/**
|
|
725
716
|
* The draft store has been read back (a device store loads a moment after
|
|
@@ -47,7 +47,13 @@ interface SourceRef {
|
|
|
47
47
|
promote?: ResourcePromotion | ResourcePromotion[];
|
|
48
48
|
exclude?: string[];
|
|
49
49
|
}
|
|
50
|
-
|
|
50
|
+
/**
|
|
51
|
+
* A TYPE, not an interface (2026-10-23): it IS a JSON object, so it is assignable wherever the server
|
|
52
|
+
* contract types the field as a JSON object (@ai-matrx/api's request bodies carry `source_set` as
|
|
53
|
+
* `{ [key: string]: JsonValue }` — the podcast generate request). An interface has no implicit index
|
|
54
|
+
* signature and would need a cast at every send.
|
|
55
|
+
*/
|
|
56
|
+
type SourceSet = {
|
|
51
57
|
__kind: typeof SOURCE_SET_KIND;
|
|
52
58
|
version: typeof SOURCE_SET_VERSION;
|
|
53
59
|
sources: SourceRef[];
|
|
@@ -59,7 +65,7 @@ interface SourceSet {
|
|
|
59
65
|
retrieve_query?: string;
|
|
60
66
|
/** The model whose context window sets the budget. */
|
|
61
67
|
target_model_id?: string;
|
|
62
|
-
}
|
|
68
|
+
};
|
|
63
69
|
type SourceState = "ready" | "processing" | "failed" | "unavailable";
|
|
64
70
|
interface SourceManifestForm {
|
|
65
71
|
form: string;
|
|
@@ -705,21 +711,6 @@ interface FileRecoveryDeps {
|
|
|
705
711
|
fileOrganizationId?: ((fileId: string) => string | null | undefined) | undefined;
|
|
706
712
|
}
|
|
707
713
|
|
|
708
|
-
/**
|
|
709
|
-
* `@ai-matrx/agents/sources/react` — thin React hooks over the Source runtime
|
|
710
|
-
* (`@ai-matrx/agents/sources/runtime`). No logic lives here that a non-React
|
|
711
|
-
* client could not reach through the runtime itself: the hooks subscribe,
|
|
712
|
-
* schedule, and hand back the same controller.
|
|
713
|
-
*
|
|
714
|
-
* const set = useSourceSet(adapter, { persistenceReady });
|
|
715
|
-
* const intake = useSourceIntake(set, deps);
|
|
716
|
-
* useSourceRecovery(set, intake, runner, { organizationId, readFileState });
|
|
717
|
-
* const search = useSourcePartsSearch(client, ref, query);
|
|
718
|
-
*
|
|
719
|
-
* A host binds the adapter to its own store once (memoized per surface) —
|
|
720
|
-
* the web app binds Redux; another client binds its own.
|
|
721
|
-
*/
|
|
722
|
-
|
|
723
714
|
interface UseSourceSetOptions {
|
|
724
715
|
/**
|
|
725
716
|
* The draft store has been read back (a device store loads a moment after
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-matrx/agents",
|
|
3
|
-
"version": "0.59.
|
|
3
|
+
"version": "0.59.257",
|
|
4
4
|
"description": "Portable AI Matrx agent stream protocol, event projection, and safe result-presentation primitives.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -509,11 +509,11 @@
|
|
|
509
509
|
"sideEffects": false,
|
|
510
510
|
"dependencies": {
|
|
511
511
|
"@ai-matrx/alchemy": "latest",
|
|
512
|
-
"@ai-matrx/api": "latest",
|
|
513
|
-
"@ai-matrx/data": "latest",
|
|
514
|
-
"@ai-matrx/content-ir": "latest",
|
|
515
512
|
"@ai-matrx/associations": "latest",
|
|
513
|
+
"@ai-matrx/content-ir": "latest",
|
|
514
|
+
"@ai-matrx/api": "latest",
|
|
516
515
|
"@ai-matrx/design-system": "latest",
|
|
516
|
+
"@ai-matrx/data": "latest",
|
|
517
517
|
"@ai-matrx/diff": "latest",
|
|
518
518
|
"@ai-matrx/icons": "latest",
|
|
519
519
|
"@ai-matrx/kit": "latest"
|
|
@@ -561,5 +561,5 @@
|
|
|
561
561
|
"verify:tarball": "node ./scripts/verify-tarball.mjs",
|
|
562
562
|
"typegen:self-test": "node scripts/typegen/drop-guard.self-test.mjs && node scripts/typegen/check-api-types-fresh.mjs --self-test"
|
|
563
563
|
},
|
|
564
|
-
"gitHead": "
|
|
564
|
+
"gitHead": "0a2b8c9356bcba5cf0338a6c2c63b1c6058374ef"
|
|
565
565
|
}
|