@wowyuarm/dsh-agent-team 0.1.6 → 0.1.8

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.
Files changed (108) hide show
  1. package/README.md +11 -5
  2. package/README.zh.md +11 -5
  3. package/package.json +44 -42
  4. package/packages/agent-team/README.md +2 -0
  5. package/packages/agent-team/README.zh.md +2 -0
  6. package/packages/agent-team/core-skills/member-skill-manager/SKILL.md +2 -0
  7. package/packages/agent-team/lib/index.js +140 -204
  8. package/packages/agent-team/lib/ledger.js +436 -25
  9. package/packages/agent-team/lib/member-context.js +6 -2
  10. package/packages/agent-team/lib/member-runtime.js +229 -0
  11. package/packages/agent-team/lib/preset-roster.js +1 -0
  12. package/packages/agent-team/lib/progress-nudge.js +320 -0
  13. package/packages/agent-team/lib/spec.js +30 -1
  14. package/packages/agent-team/lib/typert.host.js +250 -70
  15. package/packages/agent-team/lib/typert.remote-client.d.ts +5 -1
  16. package/packages/agent-team/lib/typert.remote-client.d.ts.map +1 -1
  17. package/packages/agent-team/lib/typert.remote-client.js +168 -38
  18. package/packages/agent-team/lib/types/entities.js +1 -0
  19. package/packages/agent-team/lib/types/index.d.ts +28 -44
  20. package/packages/agent-team/lib/types/index.d.ts.map +1 -1
  21. package/packages/agent-team/lib/types/ledger.d.ts +60 -2
  22. package/packages/agent-team/lib/types/ledger.d.ts.map +1 -1
  23. package/packages/agent-team/lib/types/member-context.d.ts.map +1 -1
  24. package/packages/agent-team/lib/types/member-runtime.d.ts +108 -0
  25. package/packages/agent-team/lib/types/member-runtime.d.ts.map +1 -0
  26. package/packages/agent-team/lib/types/operations.js +1 -0
  27. package/packages/agent-team/lib/types/preset-roster.d.ts.map +1 -1
  28. package/packages/agent-team/lib/types/progress-nudge.d.ts +136 -0
  29. package/packages/agent-team/lib/types/progress-nudge.d.ts.map +1 -0
  30. package/packages/agent-team/lib/types/requests-results.js +1 -0
  31. package/packages/agent-team/lib/types/spec.d.ts.map +1 -1
  32. package/packages/agent-team/lib/types/types/entities.d.ts +357 -0
  33. package/packages/agent-team/lib/types/types/entities.d.ts.map +1 -0
  34. package/packages/agent-team/lib/types/types/operations.d.ts +303 -0
  35. package/packages/agent-team/lib/types/types/operations.d.ts.map +1 -0
  36. package/packages/agent-team/lib/types/types/requests-results.d.ts +529 -0
  37. package/packages/agent-team/lib/types/types/requests-results.d.ts.map +1 -0
  38. package/packages/agent-team/lib/types/types.d.ts +10 -1070
  39. package/packages/agent-team/lib/types/types.d.ts.map +1 -1
  40. package/packages/agent-team/preset/team-member/agent.cordis.yml +6 -4
  41. package/packages/client-agent-team/README.md +3 -1
  42. package/packages/client-agent-team/README.zh.md +3 -1
  43. package/packages/client-agent-team/lib/client.js +773 -733
  44. package/packages/client-agent-team/lib/client.js.map +1 -1
  45. package/packages/client-agent-team/lib/types/client/TeamAgentsPanel.d.ts +3 -2
  46. package/packages/client-agent-team/lib/types/client/TeamAgentsPanel.d.ts.map +1 -1
  47. package/packages/client-agent-team/lib/types/client/TeamAgentsPanel.js +30 -7
  48. package/packages/client-agent-team/lib/types/client/TeamChannelPage.d.ts +1 -1
  49. package/packages/client-agent-team/lib/types/client/TeamChannelPage.d.ts.map +1 -1
  50. package/packages/client-agent-team/lib/types/client/TeamChannelPage.js +5 -9
  51. package/packages/client-agent-team/lib/types/client/TeamChannelsPanel.d.ts +2 -1
  52. package/packages/client-agent-team/lib/types/client/TeamChannelsPanel.d.ts.map +1 -1
  53. package/packages/client-agent-team/lib/types/client/TeamChannelsPanel.js +31 -5
  54. package/packages/client-agent-team/lib/types/client/TeamComposer.d.ts +3 -1
  55. package/packages/client-agent-team/lib/types/client/TeamComposer.d.ts.map +1 -1
  56. package/packages/client-agent-team/lib/types/client/TeamComposer.js +39 -28
  57. package/packages/client-agent-team/lib/types/client/TeamConversation.d.ts +1 -1
  58. package/packages/client-agent-team/lib/types/client/TeamConversation.d.ts.map +1 -1
  59. package/packages/client-agent-team/lib/types/client/TeamConversation.js +2 -2
  60. package/packages/client-agent-team/lib/types/client/TeamMemberAvatar.d.ts.map +1 -1
  61. package/packages/client-agent-team/lib/types/client/TeamMemberAvatar.js +3 -2
  62. package/packages/client-agent-team/lib/types/client/TeamMessage.d.ts.map +1 -1
  63. package/packages/client-agent-team/lib/types/client/TeamMessage.js +15 -3
  64. package/packages/client-agent-team/lib/types/client/TeamPresenceDot.d.ts +2 -2
  65. package/packages/client-agent-team/lib/types/client/TeamPresenceDot.d.ts.map +1 -1
  66. package/packages/client-agent-team/lib/types/client/TeamPresenceDot.js +4 -6
  67. package/packages/client-agent-team/lib/types/client/TeamStateDot.d.ts +14 -0
  68. package/packages/client-agent-team/lib/types/client/TeamStateDot.d.ts.map +1 -0
  69. package/packages/client-agent-team/lib/types/client/TeamStateDot.js +15 -0
  70. package/packages/client-agent-team/lib/types/client/TeamThreadPage.d.ts +2 -1
  71. package/packages/client-agent-team/lib/types/client/TeamThreadPage.d.ts.map +1 -1
  72. package/packages/client-agent-team/lib/types/client/TeamThreadPage.js +41 -16
  73. package/packages/client-agent-team/lib/types/client/TeamWorkspaceBrowser.d.ts +1 -1
  74. package/packages/client-agent-team/lib/types/client/TeamWorkspaceBrowser.d.ts.map +1 -1
  75. package/packages/client-agent-team/lib/types/client/TeamWorkspaceBrowser.js +2 -2
  76. package/packages/client-agent-team/lib/types/client/TeamWorkspaceRow.d.ts +1 -1
  77. package/packages/client-agent-team/lib/types/client/TeamWorkspaceRow.d.ts.map +1 -1
  78. package/packages/client-agent-team/lib/types/client/index.d.ts +1 -1
  79. package/packages/client-agent-team/lib/types/client/index.d.ts.map +1 -1
  80. package/packages/client-agent-team/lib/types/client/index.js +9 -77
  81. package/packages/client-agent-team/lib/types/client/locales.d.ts +26 -0
  82. package/packages/client-agent-team/lib/types/client/locales.d.ts.map +1 -1
  83. package/packages/client-agent-team/lib/types/client/locales.js +26 -0
  84. package/packages/client-agent-team/lib/types/client/navigation.d.ts +2 -1
  85. package/packages/client-agent-team/lib/types/client/navigation.d.ts.map +1 -1
  86. package/packages/client-agent-team/lib/types/client/sidebar-drag.d.ts +1 -2
  87. package/packages/client-agent-team/lib/types/client/sidebar-drag.d.ts.map +1 -1
  88. package/packages/client-agent-team/lib/types/client/sidebar-order.d.ts +1 -1
  89. package/packages/client-agent-team/lib/types/client/sidebar-order.d.ts.map +1 -1
  90. package/packages/client-agent-team/lib/types/client/sidebar-sections.d.ts +1 -1
  91. package/packages/client-agent-team/lib/types/client/sidebar-sections.d.ts.map +1 -1
  92. package/packages/client-agent-team/lib/types/client/slots.d.ts +5 -1
  93. package/packages/client-agent-team/lib/types/client/slots.d.ts.map +1 -1
  94. package/packages/client-agent-team/lib/types/client/task-refs.d.ts +7 -1
  95. package/packages/client-agent-team/lib/types/client/task-refs.d.ts.map +1 -1
  96. package/packages/client-agent-team/lib/types/client/task-refs.js +25 -3
  97. package/packages/client-agent-team/lib/types/client/team-formatters.d.ts +11 -10
  98. package/packages/client-agent-team/lib/types/client/team-formatters.d.ts.map +1 -1
  99. package/packages/client-agent-team/lib/types/client/team-formatters.js +14 -11
  100. package/packages/client-agent-team/lib/types/client/team-membership.d.ts +1 -1
  101. package/packages/client-agent-team/lib/types/client/team-membership.d.ts.map +1 -1
  102. package/packages/tool-agent-team/lib/index.js +9 -9
  103. package/packages/client-agent-team/lib/types/client/TeamMemberSessionComposer.d.ts +0 -17
  104. package/packages/client-agent-team/lib/types/client/TeamMemberSessionComposer.d.ts.map +0 -1
  105. package/packages/client-agent-team/lib/types/client/TeamMemberSessionComposer.js +0 -135
  106. package/packages/client-agent-team/lib/types/client/member-session-input.d.ts +0 -22
  107. package/packages/client-agent-team/lib/types/client/member-session-input.d.ts.map +0 -1
  108. package/packages/client-agent-team/lib/types/client/member-session-input.js +0 -98
@@ -0,0 +1,136 @@
1
+ /**
2
+ * Progress-visibility nudges: advisory Session notices that keep Member agents
3
+ * reporting progress into their Threads. Two regimes over one shared
4
+ * per-Member silent-tool-call counter:
5
+ *
6
+ * - Thread progress (A): a Member holding an active Claim, or following a
7
+ * taskless Thread, that has run many tool calls since its last committed
8
+ * public communication is reminded to post a brief update. The reminder
9
+ * ladder advances 20 → 40 → 60… per Member.
10
+ * - Claim suggestion (B): a Member following a still-`todo` Task it has never
11
+ * claimed is reminded — once per (Member, Thread) within the current Member
12
+ * Session — that team_claim exists.
13
+ *
14
+ * The Coordinator owns counting, thresholds, notice formatting, dedupe,
15
+ * in-flight revocation, and the deferred steer. It consumes only facts the
16
+ * Host already holds: live `tool/call`/`user/message` session events in their
17
+ * real `{type, seq, time, data}` envelope, the Session log for one-time
18
+ * recovery, committed ledger operations, and a ledger-owned eligibility
19
+ * projection (`progressNudgeTargets`). It never writes Team facts and never
20
+ * wakes idle agents on its own — a nudge rides the member's next tool call.
21
+ *
22
+ * @module @wowyuarm/dsh-agent-team/progress-nudge
23
+ */
24
+ import { type UserMessage } from '@deepseek-ai/dsh-llm';
25
+ import type { SessionEvent, SessionId } from '@deepseek-ai/dsh-session';
26
+ import type { AgentTeamMemberId, AgentTeamProgressNudgeTargets } from './types.ts';
27
+ /** Notice summary for every nudge this Coordinator injects. */
28
+ export declare const PROGRESS_NUDGE_NOTICE_SUMMARY = "Progress visibility reminder";
29
+ export declare const PROGRESS_NUDGE_TOOL_CALLS_START = 20;
30
+ export declare const PROGRESS_NUDGE_TOOL_CALLS_STEP = 20;
31
+ export declare const CLAIM_SUGGESTION_TOOL_CALLS = 5;
32
+ /** Minimal Agent surface the Coordinator depends on; real Agents satisfy it, tests fake it. */
33
+ export interface ProgressNudgeAgent {
34
+ readonly inbox: {
35
+ readonly nextStep: readonly UserMessage[];
36
+ readonly nextTurn: readonly UserMessage[];
37
+ remove(messageId: UserMessage['id']): boolean;
38
+ };
39
+ steer(message: UserMessage): void;
40
+ }
41
+ /**
42
+ * Read-only view of one Session log used to recover consumed one-time Claim
43
+ * suggestions when a Member Session's tracking is (re)established.
44
+ */
45
+ export interface ProgressNudgeSessionLog {
46
+ /** Durable events in sequence order; the real `Session.ownEvents()`. */
47
+ readonly events: readonly SessionEvent[];
48
+ }
49
+ /** Minimal operation fact the Coordinator consumes; the ledger's full record satisfies it structurally. */
50
+ export interface ProgressNudgeOperation {
51
+ readonly actor: {
52
+ readonly kind: string;
53
+ readonly memberId?: AgentTeamMemberId | undefined;
54
+ };
55
+ readonly kind: string;
56
+ }
57
+ export interface ProgressNudgeCoordinatorOptions {
58
+ /** Live Agent lookup for revocation and injection. */
59
+ readonly agentForMember: (memberId: AgentTeamMemberId) => ProgressNudgeAgent | undefined;
60
+ /** Current eligibility projection from the ledger. */
61
+ readonly targetsForMember: (memberId: AgentTeamMemberId) => AgentTeamProgressNudgeTargets;
62
+ /** Durable Session log lookup for one-time recovery on (re)activation. */
63
+ readonly sessionLogForMember: (memberId: AgentTeamMemberId, sessionId: SessionId) => ProgressNudgeSessionLog | undefined;
64
+ /** Log one line when steer fails; the Host wires its logger. */
65
+ readonly log?: (message: string) => void;
66
+ /**
67
+ * Schedule the actual steer past an in-flight session append publication.
68
+ * The default defers one microtask; tests may substitute a synchronous or
69
+ * manually triggered scheduler. The callback runs the real steer.
70
+ */
71
+ readonly scheduleSteer?: (run: () => void) => void;
72
+ /** Initial ladder start; tests override to keep runs small. */
73
+ readonly progressThresholdStart?: number;
74
+ /** Ladder step; tests override to keep runs small. */
75
+ readonly progressThresholdStep?: number;
76
+ /** Claim-suggestion threshold; tests override to keep runs small. */
77
+ readonly claimSuggestionThreshold?: number;
78
+ }
79
+ /** Ledger operation kinds that count as committed public communication and reset silence. */
80
+ export declare function isPublicCommunicationOperationKind(kind: string): boolean;
81
+ /** Whether one message is a nudge notice this module injected. */
82
+ export declare function isProgressNudgeNotice(message: UserMessage): boolean;
83
+ /**
84
+ * Event-driven per-Member nudge state machine. All state is in-process and
85
+ * scoped to one Member Session; nothing is persisted. The Host feeds it live
86
+ * session events in their real envelope, committed operations, and lifecycle
87
+ * stop points.
88
+ */
89
+ export declare class ProgressNudgeCoordinator {
90
+ private readonly members;
91
+ private readonly agentForMember;
92
+ private readonly targetsForMember;
93
+ private readonly sessionLogForMember;
94
+ private readonly log;
95
+ private readonly scheduleSteer;
96
+ private readonly progressThresholdStart;
97
+ private readonly progressThresholdStep;
98
+ private readonly claimSuggestionThreshold;
99
+ constructor(options: ProgressNudgeCoordinatorOptions);
100
+ /**
101
+ * One live session event for a Member, in its real `{type, seq, time, data}`
102
+ * envelope. Only `tool/call` counts toward silence; a `user/message` whose
103
+ * source is exactly this module's own notice records that the model consumed
104
+ * the nudge (a Claim suggestion becomes final only then). The live `agent`
105
+ * is passed in by the caller because it exists at event time even before
106
+ * the Host finishes publishing the handle.
107
+ */
108
+ onSessionEvent(memberId: AgentTeamMemberId, sessionId: SessionId, agent: ProgressNudgeAgent, event: SessionEvent): void;
109
+ /**
110
+ * One ledger operation committed. A Member actor's public communication
111
+ * resets its silence; every commit also reconciles pending notices whose
112
+ * targets may have just disappeared (Task accepted, Channel archived, the
113
+ * Claim taken by someone else).
114
+ */
115
+ onCommitted(operation: ProgressNudgeOperation): void;
116
+ /** Revoke one Member's queued-but-unconsumed nudge, e.g. when a higher-priority Team notice is injected. */
117
+ revokePendingNotice(memberId: AgentTeamMemberId): void;
118
+ /** Drop all tracking for one Member (suspend/archive/remove/renew/context-clear/steer failure). */
119
+ stopTracking(memberId: AgentTeamMemberId): void;
120
+ /** Stop tracking every Member. */
121
+ dispose(): void;
122
+ /** Rebuild the consumed one-time suggestion set from this Session's durable log. */
123
+ private recoverClaimSuggestions;
124
+ private dropState;
125
+ private revokePending;
126
+ /** Re-check every live Member's pending notice against the targets it actually listed. */
127
+ private reconcileAll;
128
+ private maybeNudge;
129
+ /**
130
+ * Recovery, Inbox, and pre-compaction notices outrank a progress nudge. If
131
+ * one is already pending, this nudge stays due and retries on the next tool
132
+ * call; a DM relay is not a notice and never blocks.
133
+ */
134
+ private hasBlockingNotice;
135
+ }
136
+ //# sourceMappingURL=progress-nudge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress-nudge.d.ts","sourceRoot":"","sources":["../../src/progress-nudge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,6BAA6B,EAAsB,MAAM,YAAY,CAAA;AAItG,+DAA+D;AAC/D,eAAO,MAAM,6BAA6B,iCAAiC,CAAA;AAE3E,eAAO,MAAM,+BAA+B,KAAK,CAAA;AACjD,eAAO,MAAM,8BAA8B,KAAK,CAAA;AAChD,eAAO,MAAM,2BAA2B,IAAI,CAAA;AAK5C,+FAA+F;AAC/F,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAA;QACzC,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAA;QACzC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAA;KAC9C,CAAA;IACD,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAA;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAA;CACzC;AAED,2GAA2G;AAC3G,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAA;KAAE,CAAA;IAC5F,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,+BAA+B;IAC9C,sDAAsD;IACtD,QAAQ,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,kBAAkB,GAAG,SAAS,CAAA;IACxF,sDAAsD;IACtD,QAAQ,CAAC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,6BAA6B,CAAA;IACzF,0EAA0E;IAC1E,QAAQ,CAAC,mBAAmB,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,KAAK,uBAAuB,GAAG,SAAS,CAAA;IACxH,gEAAgE;IAChE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,IAAI,KAAK,IAAI,CAAA;IAClD,+DAA+D;IAC/D,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAA;IACxC,sDAAsD;IACtD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAA;IACvC,qEAAqE;IACrE,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAA;CAC3C;AA2BD,6FAA6F;AAC7F,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGxE;AAED,kEAAkE;AAClE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAInE;AAED;;;;;GAKG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiD;IACzE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmD;IAClF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqD;IACtF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAwD;IAC5F,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAyC;IAC7D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2B;IACzD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAQ;IAC9C,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAQ;gBAErC,OAAO,EAAE,+BAA+B;IAWpD;;;;;;;OAOG;IACH,cAAc,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI;IA6BvH;;;;;OAKG;IACH,WAAW,CAAC,SAAS,EAAE,sBAAsB,GAAG,IAAI;IAapD,4GAA4G;IAC5G,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAKtD,mGAAmG;IACnG,YAAY,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAK/C,kCAAkC;IAClC,OAAO,IAAI,IAAI;IAIf,oFAAoF;IACpF,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,aAAa;IAerB,0FAA0F;IAC1F,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,UAAU;IAmDlB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CAQ1B"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1 +1 @@
1
- {"version":3,"file":"spec.d.ts","sourceRoot":"","sources":["../../src/spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,OAAO,KAAK,EAOV,kBAAkB,EAClB,oBAAoB,EAIrB,MAAM,YAAY,CAAA;AA2bnB,wIAAwI;AACxI,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAoE,CAAA;AAEvI,2HAA2H;AAC3H,eAAO,MAAM,mBAAmB;;;;;;CAM9B,CAAA"}
1
+ {"version":3,"file":"spec.d.ts","sourceRoot":"","sources":["../../src/spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,OAAO,KAAK,EAOV,kBAAkB,EAClB,oBAAoB,EAIrB,MAAM,YAAY,CAAA;AAwdnB,wIAAwI;AACxI,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAoE,CAAA;AAEvI,2HAA2H;AAC3H,eAAO,MAAM,mBAAmB;;;;;;CAM9B,CAAA"}
@@ -0,0 +1,357 @@
1
+ import type { ReasoningEffortId } from '@deepseek-ai/dsh-llm';
2
+ import type { Branded } from '@deepseek-ai/dsh-brand';
3
+ import type { SessionId } from '@deepseek-ai/dsh-session';
4
+ import type { WorkspaceId } from '@deepseek-ai/dsh-workspace';
5
+ /** Stable identifier of one Agent Team operation. */
6
+ export type AgentTeamOperationId = Branded<'AgentTeamOperationId'>;
7
+ /** Caller-supplied idempotency identifier for one business operation. */
8
+ export type AgentTeamRequestId = Branded<'AgentTeamRequestId'>;
9
+ /** Stable identifier of one uploaded composer attachment (cache, not archive). */
10
+ export type AgentTeamAttachmentId = Branded<'AgentTeamAttachmentId'>;
11
+ /** Stable identifier of one Team member. */
12
+ export type AgentTeamMemberId = Branded<'AgentTeamMemberId'>;
13
+ /** Stable identifier of one Workspace-scoped Channel. */
14
+ export type AgentTeamChannelRef = Branded<'AgentTeamChannelRef'>;
15
+ /** Stable identifier of one immutable Message. */
16
+ export type AgentTeamMessageRef = Branded<'AgentTeamMessageRef'>;
17
+ /** Stable identifier of one Task. */
18
+ export type AgentTeamTaskRef = Branded<'AgentTeamTaskRef'>;
19
+ /** Stable identifier of one Thread. */
20
+ export type AgentTeamThreadRef = Branded<'AgentTeamThreadRef'>;
21
+ /** Stable identifier of one Claim. */
22
+ export type AgentTeamClaimRef = Branded<'AgentTeamClaimRef'>;
23
+ /** Stable identifier of one public Thread Activity. */
24
+ export type AgentTeamActivityRef = Branded<'AgentTeamActivityRef'>;
25
+ /** Process-local one-use authorization for one Human invitation. */
26
+ export type AgentTeamConfirmationToken = Branded<'AgentTeamConfirmationToken'>;
27
+ /** Snapshot of the Human authority authorized for an operation. */
28
+ export interface AgentTeamHumanActor {
29
+ readonly kind: 'human';
30
+ readonly memberId: AgentTeamMemberId;
31
+ readonly handle: string;
32
+ }
33
+ /** Snapshot of the exact Agent Member authorized by its live Agent binding. */
34
+ export interface AgentTeamMemberActor {
35
+ readonly kind: 'member';
36
+ readonly memberId: AgentTeamMemberId;
37
+ readonly handle: string;
38
+ }
39
+ export type AgentTeamActor = AgentTeamHumanActor | AgentTeamMemberActor;
40
+ /** Provider route plus provider-owned model id one Member can be pinned to. */
41
+ export interface AgentTeamModelSelection {
42
+ readonly provider: string;
43
+ readonly model: string;
44
+ /** Adapter-owned reasoning effort, or the model's provider/default behavior when absent. */
45
+ readonly reasoningEffort?: ReasoningEffortId;
46
+ }
47
+ /**
48
+ * Durable capability intent of one Member, carried verbatim on the Member
49
+ * entity through every lifecycle operation. Pure intent: names are not
50
+ * validated against any known-tool list at commit time, so a Harness upgrade
51
+ * that renames or removes tools can never make an old ledger unreplayable.
52
+ * Divergence surfaces at activation as runtime-derived warnings, never as
53
+ * persisted facts (stale persisted warnings would lie after Host restart or
54
+ * Harness upgrades).
55
+ */
56
+ export interface AgentTeamMemberCapabilities {
57
+ /**
58
+ * Deliberate interface reservation, no UI writes it today: Runtime Revision
59
+ * manifests depend on this seam — do not remove during cleanup.
60
+ * Absent = the Member sees all standard tools; present = the activation
61
+ * allow-list (unknown names drop with a warning; the Host always unions
62
+ * the five Team tools over it).
63
+ */
64
+ readonly tools?: {
65
+ readonly allow?: readonly string[];
66
+ } | undefined;
67
+ /**
68
+ * Absent = auto-load every skill in the Member's private skills directory;
69
+ * present = only the listed skill names.
70
+ */
71
+ readonly skills?: {
72
+ readonly allow?: readonly string[];
73
+ } | undefined;
74
+ }
75
+ /** Durable identity and lifecycle intent of one team-managed Agent. */
76
+ export interface AgentTeamAgentMember {
77
+ readonly memberId: AgentTeamMemberId;
78
+ readonly sessionId: SessionId;
79
+ readonly workspaceId: WorkspaceId;
80
+ readonly handle: string;
81
+ readonly description: string;
82
+ readonly presetId: string;
83
+ /** Absent inherits the Host default model selection at every activation. */
84
+ readonly model?: AgentTeamModelSelection | undefined;
85
+ /** Durable capability intent; see AgentTeamMemberCapabilities. */
86
+ readonly capabilities?: AgentTeamMemberCapabilities | undefined;
87
+ /** Host-internal namespace; never exposed through Client projections. */
88
+ readonly privateMemoryPath: string;
89
+ /**
90
+ * Durable lifecycle state. `enabled`/`suspended` are the reversible working
91
+ * pair; `archived` hides the Member from every surface while keeping its
92
+ * Session log and private memory recoverable (no restore entry point yet,
93
+ * mirroring archived dsh sessions); `inactive` is irreversible removal with
94
+ * data cleanup.
95
+ */
96
+ readonly state: 'enabled' | 'suspended' | 'inactive' | 'archived';
97
+ }
98
+ /**
99
+ * Runtime-derived capability divergence between a Member's persisted intent
100
+ * and the names known at activation time (for example after a Harness
101
+ * upgrade renamed or removed a tool). Derived state only — never persisted;
102
+ * recomputed at every activation so warnings never go stale.
103
+ */
104
+ export interface AgentTeamCapabilityWarning {
105
+ /** The persisted allow-list entry that resolved to no known capability. */
106
+ readonly name: string;
107
+ /** Digest of the names that were known when the entry was dropped. */
108
+ readonly knownNames: readonly string[];
109
+ }
110
+ /** Host projection combining durable intent with process-local availability. */
111
+ export interface AgentTeamAgentMemberStatus {
112
+ readonly member: AgentTeamAgentMember;
113
+ readonly availability: 'active' | 'suspended' | 'inactive' | 'archived' | 'unavailable';
114
+ readonly presence: 'available' | 'working' | 'error' | 'unavailable';
115
+ readonly diagnostic?: string;
116
+ /**
117
+ * Runtime-derived, activation-scoped capability warnings (see
118
+ * AgentTeamCapabilityWarning); empty while capabilities resolve cleanly.
119
+ */
120
+ readonly capabilityWarnings?: readonly AgentTeamCapabilityWarning[] | undefined;
121
+ }
122
+ /** Browser-safe Member identity with Host-only paths removed. */
123
+ export type AgentTeamClientMember = Omit<AgentTeamAgentMember, 'privateMemoryPath'>;
124
+ /** Browser-safe lifecycle projection. */
125
+ export interface AgentTeamClientMemberStatus extends Omit<AgentTeamAgentMemberStatus, 'member'> {
126
+ readonly member: AgentTeamClientMember;
127
+ }
128
+ /** Workspace-scoped request used by the Client Remote projection. */
129
+ export interface AgentTeamMembersRequest {
130
+ readonly workspaceId: WorkspaceId;
131
+ }
132
+ /** Look up navigation facts for branded Task refs found in message bodies. */
133
+ export interface AgentTeamResolveTaskRefsRequest {
134
+ readonly workspaceId: WorkspaceId;
135
+ readonly taskRefs: readonly AgentTeamTaskRef[];
136
+ }
137
+ /** One resolved Task; refs that do not exist in the workspace are omitted. */
138
+ export interface AgentTeamResolvedTaskRef {
139
+ readonly taskRef: AgentTeamTaskRef;
140
+ readonly channelRef: AgentTeamChannelRef;
141
+ readonly threadRef: AgentTeamThreadRef;
142
+ readonly taskNumber: number;
143
+ }
144
+ export interface AgentTeamResolveTaskRefsResult {
145
+ readonly resolved: readonly AgentTeamResolvedTaskRef[];
146
+ }
147
+ export interface AgentTeamOperationBase {
148
+ readonly sequence: number;
149
+ readonly operationId: AgentTeamOperationId;
150
+ readonly requestId: AgentTeamRequestId;
151
+ readonly occurredAt: string;
152
+ readonly actor: AgentTeamActor;
153
+ readonly previousOperationId: AgentTeamOperationId | null;
154
+ }
155
+ /** One Workspace-scoped collaboration Channel. */
156
+ export interface AgentTeamChannel {
157
+ readonly channelRef: AgentTeamChannelRef;
158
+ readonly workspaceId: WorkspaceId;
159
+ readonly name: string;
160
+ readonly description: string;
161
+ readonly createdAtSequence: number;
162
+ /**
163
+ * Durable lifecycle state. `archived` hides the Channel and its Threads from
164
+ * every surface while keeping all facts recoverable (no restore entry point
165
+ * yet, mirroring archived dsh sessions). Ledgers written before Channel
166
+ * archival existed omit the field; the record schema normalizes it to
167
+ * `active` at load time.
168
+ */
169
+ readonly state: 'active' | 'archived';
170
+ }
171
+ /** One durable Channel membership fact derived from the operation ledger. */
172
+ export interface AgentTeamChannelMembership {
173
+ readonly channelRef: AgentTeamChannelRef;
174
+ readonly memberId: AgentTeamMemberId;
175
+ }
176
+ /** One immutable top-level or reply Message. */
177
+ export interface AgentTeamMessageAttachment {
178
+ readonly attachmentId: AgentTeamAttachmentId;
179
+ readonly name: string;
180
+ readonly byteSize: number;
181
+ readonly mediaType: string;
182
+ }
183
+ export interface AgentTeamMessage {
184
+ readonly messageRef: AgentTeamMessageRef;
185
+ readonly channelRef: AgentTeamChannelRef;
186
+ readonly threadRef: AgentTeamThreadRef;
187
+ /** Absent on Messages committed while the Thread had no Task; promotion does not rewrite prior Messages. */
188
+ readonly taskRef?: AgentTeamTaskRef;
189
+ readonly sender: AgentTeamMemberId;
190
+ readonly body: string;
191
+ readonly attachments?: readonly AgentTeamMessageAttachment[] | undefined;
192
+ readonly topLevel: boolean;
193
+ readonly sequence: number;
194
+ /** Wall-clock instant of the wrapping ledger operation; pre-occurredAt ledgers normalize on replay. */
195
+ readonly occurredAt: string;
196
+ }
197
+ /** Task overlay created by an atomic start or Human promotion. */
198
+ export interface AgentTeamTask {
199
+ readonly taskRef: AgentTeamTaskRef;
200
+ readonly channelRef: AgentTeamChannelRef;
201
+ readonly threadRef: AgentTeamThreadRef;
202
+ readonly status: 'todo' | 'in_progress' | 'in_review' | 'done' | 'closed';
203
+ readonly resolution: 'open' | 'accepted' | 'closed';
204
+ }
205
+ /** Current projection of one collaboration Thread. */
206
+ export interface AgentTeamThread {
207
+ readonly threadRef: AgentTeamThreadRef;
208
+ /** Present after atomic Task creation or Human promotion; absent on taskless Threads. */
209
+ readonly taskRef?: AgentTeamTaskRef;
210
+ /** Last public Message, Claim, or Task-resolution sequence. */
211
+ readonly revision: number;
212
+ }
213
+ /**
214
+ * A Member's current attention period for one Thread.
215
+ *
216
+ * Its absence means the Member is not following. Read state is compact: all
217
+ * follower-visible facts from `startSequence` through `readThroughSequence`
218
+ * are acknowledged, except for sparse direct markers retained separately.
219
+ */
220
+ export interface AgentTeamThreadAttention {
221
+ readonly memberId: AgentTeamMemberId;
222
+ readonly threadRef: AgentTeamThreadRef;
223
+ readonly startSequence: number;
224
+ readonly readThroughSequence: number;
225
+ }
226
+ /** Identity of one Member × Thread attention period. */
227
+ export interface AgentTeamThreadAttentionKey {
228
+ readonly memberId: AgentTeamMemberId;
229
+ readonly threadRef: AgentTeamThreadRef;
230
+ }
231
+ /**
232
+ * Current progress-nudge candidacy for one Member, as a read-only projection
233
+ * snapshot. `progress` covers Thread-progress reminders (the Member holds an
234
+ * active Claim, or follows a taskless Thread); `claim` covers Claim reminders
235
+ * (the Member follows a still-`todo` Task and has never claimed it).
236
+ */
237
+ export interface AgentTeamProgressNudgeTargets {
238
+ readonly progress: readonly {
239
+ /** Why this Thread is a progress-reminder candidate. */
240
+ readonly reason: 'active-claim' | 'taskless-follower';
241
+ readonly threadRef: AgentTeamThreadRef;
242
+ readonly taskRef?: AgentTeamTaskRef;
243
+ }[];
244
+ readonly claim: readonly {
245
+ readonly threadRef: AgentTeamThreadRef;
246
+ readonly taskRef: AgentTeamTaskRef;
247
+ }[];
248
+ }
249
+ /** Sparse direct-priority marker for one structured Message mention. */
250
+ export interface AgentTeamDirectMarker {
251
+ readonly memberId: AgentTeamMemberId;
252
+ readonly threadRef: AgentTeamThreadRef;
253
+ readonly messageRef: AgentTeamMessageRef;
254
+ readonly sequence: number;
255
+ }
256
+ /** Sparse marker retaining a relevant Task or Claim Activity after Attention ends. */
257
+ export interface AgentTeamActivityMarker {
258
+ readonly memberId: AgentTeamMemberId;
259
+ readonly threadRef: AgentTeamThreadRef;
260
+ readonly activityRef: AgentTeamActivityRef;
261
+ readonly sequence: number;
262
+ }
263
+ /** Durable changes to private Member inbox state carried by one operation. */
264
+ export interface AgentTeamInboxDelta {
265
+ readonly attention: {
266
+ /** New or replacement current Attention records. */
267
+ readonly set: readonly AgentTeamThreadAttention[];
268
+ /** Attention periods ended by this operation. */
269
+ readonly removed: readonly AgentTeamThreadAttentionKey[];
270
+ };
271
+ readonly directMarkers: {
272
+ readonly added: readonly AgentTeamDirectMarker[];
273
+ readonly removed: readonly AgentTeamDirectMarker[];
274
+ };
275
+ readonly activityMarkers: {
276
+ readonly added: readonly AgentTeamActivityMarker[];
277
+ readonly removed: readonly AgentTeamActivityMarker[];
278
+ };
279
+ }
280
+ /** One Direction Claim retained as Task progress history. */
281
+ export interface AgentTeamClaim {
282
+ readonly claimRef: AgentTeamClaimRef;
283
+ readonly taskRef: AgentTeamTaskRef;
284
+ readonly threadRef: AgentTeamThreadRef;
285
+ readonly owner: AgentTeamMemberId;
286
+ readonly direction: string;
287
+ readonly normalizedDirection: string;
288
+ readonly state: 'active' | 'done' | 'released';
289
+ }
290
+ interface AgentTeamActivityBase {
291
+ readonly activityRef: AgentTeamActivityRef;
292
+ readonly taskRef: AgentTeamTaskRef;
293
+ readonly threadRef: AgentTeamThreadRef;
294
+ readonly actor: AgentTeamMemberId;
295
+ readonly sequence: number;
296
+ }
297
+ export interface AgentTeamClaimActivity extends AgentTeamActivityBase {
298
+ readonly kind: 'claim' | 'done' | 'release';
299
+ readonly claimRef: AgentTeamClaimRef;
300
+ }
301
+ export interface AgentTeamTaskActivity extends AgentTeamActivityBase {
302
+ readonly kind: 'promote' | 'accept' | 'close' | 'reopen';
303
+ /** Claims atomically released by close; absent for other Task transitions. */
304
+ readonly releasedClaimRefs?: readonly AgentTeamClaimRef[] | undefined;
305
+ /** Active claims the Human acceptance completed alongside the Task; absent for plain accepts. */
306
+ readonly completedClaimRefs?: readonly AgentTeamClaimRef[] | undefined;
307
+ }
308
+ /** One automatic, public release summary caused by a membership lifecycle action. */
309
+ export interface AgentTeamClaimsReleasedActivity extends AgentTeamActivityBase {
310
+ readonly kind: 'claims_released';
311
+ readonly claimRefs: readonly AgentTeamClaimRef[];
312
+ }
313
+ /** One ordered public Thread Activity. */
314
+ export type AgentTeamActivity = AgentTeamClaimActivity | AgentTeamTaskActivity | AgentTeamClaimsReleasedActivity;
315
+ /** One public, revisioned fact in a Thread timeline. */
316
+ export type AgentTeamThreadFact = {
317
+ readonly kind: 'message';
318
+ readonly sequence: number;
319
+ readonly message: AgentTeamMessage;
320
+ /** Structured Member refs from the originating send operation; empty when the Message mentions nobody. */
321
+ readonly mentions: readonly AgentTeamMemberId[];
322
+ } | {
323
+ readonly kind: 'activity';
324
+ readonly sequence: number;
325
+ readonly activity: AgentTeamActivity;
326
+ };
327
+ /** One fact returned by a durable Thread read. */
328
+ export interface AgentTeamThreadReadFact {
329
+ readonly fact: AgentTeamThreadFact;
330
+ /** This fact was part of the unread batch advanced by this read. */
331
+ readonly unread: boolean;
332
+ /** This fact carries one of the recipient's structured direct mentions. */
333
+ readonly direct: boolean;
334
+ }
335
+ /** Stored form of a Message inside durable operations; pre-occurredAt ledgers omit it and normalize on load. */
336
+ export type AgentTeamStoredMessage = Omit<AgentTeamMessage, 'occurredAt'> & {
337
+ readonly occurredAt?: string | undefined;
338
+ };
339
+ /** Stored form of one Thread timeline fact; mirrors AgentTeamThreadFact with stored messages. */
340
+ export type AgentTeamStoredThreadFact = {
341
+ readonly kind: 'message';
342
+ readonly sequence: number;
343
+ readonly message: AgentTeamStoredMessage;
344
+ readonly mentions: readonly AgentTeamMemberId[];
345
+ } | {
346
+ readonly kind: 'activity';
347
+ readonly sequence: number;
348
+ readonly activity: AgentTeamActivity;
349
+ };
350
+ /** Stored form of one durable Thread read fact. */
351
+ export interface AgentTeamStoredThreadReadFact {
352
+ readonly fact: AgentTeamStoredThreadFact;
353
+ readonly unread: boolean;
354
+ readonly direct: boolean;
355
+ }
356
+ export {};
357
+ //# sourceMappingURL=entities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../../src/types/entities.ts"],"names":[],"mappings":"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"}