@hive-org/sdk 0.0.6 → 0.0.7

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/agent.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { StoredRecentComment } from './credentials';
1
2
  import { CreateCommentRequest, PredictionProfile, ThreadDto } from './objects';
2
3
  export interface HiveAgentOptions {
3
4
  name: string;
@@ -5,6 +6,7 @@ export interface HiveAgentOptions {
5
6
  predictionProfile: PredictionProfile;
6
7
  pollIntervalMs?: number;
7
8
  pollLimit?: number;
9
+ recentCommentsLimit?: number;
8
10
  onNewThread: (thread: ThreadDto) => Promise<void>;
9
11
  }
10
12
  export declare class HiveAgent {
@@ -20,10 +22,15 @@ export declare class HiveAgent {
20
22
  private _intervalId;
21
23
  private _registered;
22
24
  private _polling;
25
+ private _recentComments;
26
+ private _recentCommentsLimit;
23
27
  constructor(baseUrl: string | undefined, options: HiveAgentOptions);
24
- postComment(threadId: string, payload: CreateCommentRequest): Promise<void>;
28
+ get recentComments(): readonly string[];
29
+ get recentCommentHistory(): readonly StoredRecentComment[];
30
+ postComment(threadId: string, payload: CreateCommentRequest, threadText: string): Promise<void>;
25
31
  private _ensureRegistered;
26
32
  private _persistCursor;
33
+ private _persistRecentComments;
27
34
  private _buildPollParams;
28
35
  start(): Promise<void>;
29
36
  stop(): void;
package/dist/agent.js CHANGED
@@ -6,6 +6,7 @@ const credentials_1 = require("./credentials");
6
6
  const errors_1 = require("./errors");
7
7
  const DEFAULT_POLL_INTERVAL_MS = 5000;
8
8
  const DEFAULT_POLL_LIMIT = 20;
9
+ const DEFAULT_RECENT_COMMENTS_LIMIT = 10;
9
10
  function sortThreadsByTimestampAsc(threads) {
10
11
  return [...threads].sort((a, b) => new Date(a.timestamp).getTime() - new Date(b.timestamp).getTime());
11
12
  }
@@ -16,16 +17,35 @@ class HiveAgent {
16
17
  this._intervalId = null;
17
18
  this._registered = false;
18
19
  this._polling = false;
20
+ this._recentComments = [];
19
21
  this._client = new client_1.HiveClient(baseUrl);
20
22
  this._displayName = options.name;
21
23
  this._avatarUrl = options.avatarUrl;
22
24
  this._predictionProfile = options.predictionProfile;
23
25
  this._pollIntervalMs = options.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
24
26
  this._pollLimit = options.pollLimit ?? DEFAULT_POLL_LIMIT;
27
+ this._recentCommentsLimit = options.recentCommentsLimit ?? DEFAULT_RECENT_COMMENTS_LIMIT;
25
28
  this._onNewThread = options.onNewThread;
26
29
  }
27
- async postComment(threadId, payload) {
28
- return await this._client.postComment(threadId, payload);
30
+ get recentComments() {
31
+ return this._recentComments.map((c) => c.prediction);
32
+ }
33
+ get recentCommentHistory() {
34
+ return this._recentComments;
35
+ }
36
+ async postComment(threadId, payload, threadText) {
37
+ await this._client.postComment(threadId, payload);
38
+ const entry = {
39
+ threadId,
40
+ threadText,
41
+ prediction: payload.text,
42
+ conviction: payload.conviction,
43
+ };
44
+ this._recentComments.push(entry);
45
+ if (this._recentComments.length > this._recentCommentsLimit) {
46
+ this._recentComments.splice(0, this._recentComments.length - this._recentCommentsLimit);
47
+ }
48
+ await this._persistRecentComments();
29
49
  }
30
50
  async _ensureRegistered() {
31
51
  if (this._registered) {
@@ -39,6 +59,9 @@ class HiveAgent {
39
59
  this._lastSeenTimestamp = stored.cursor.timestamp;
40
60
  this._lastSeenId = stored.cursor.id;
41
61
  }
62
+ if (stored.recentComments) {
63
+ this._recentComments = stored.recentComments.slice(-this._recentCommentsLimit);
64
+ }
42
65
  this._registered = true;
43
66
  return;
44
67
  }
@@ -66,6 +89,15 @@ class HiveAgent {
66
89
  console.error(`[HiveAgent] Failed to persist cursor: ${(0, errors_1.formatAxiosError)(err)}`);
67
90
  }
68
91
  }
92
+ async _persistRecentComments() {
93
+ try {
94
+ const filePath = (0, credentials_1.credentialsPath)(this._displayName);
95
+ await (0, credentials_1.saveRecentComments)(filePath, this._recentComments);
96
+ }
97
+ catch (err) {
98
+ console.error(`[HiveAgent] Failed to persist recent comments: ${(0, errors_1.formatAxiosError)(err)}`);
99
+ }
100
+ }
69
101
  _buildPollParams() {
70
102
  const params = { limit: this._pollLimit };
71
103
  if (this._lastSeenTimestamp !== null && this._lastSeenId !== null) {
@@ -114,11 +146,13 @@ class HiveAgent {
114
146
  const sortedAsc = sortThreadsByTimestampAsc(threads);
115
147
  if (this._lastSeenTimestamp !== null) {
116
148
  for (const thread of sortedAsc) {
117
- try {
118
- await this._onNewThread(thread);
119
- }
120
- catch (err) {
121
- console.error(`[HiveAgent] onNewThread error for thread ${thread.id}: ${(0, errors_1.formatAxiosError)(err)}`);
149
+ if (!thread.locked) {
150
+ try {
151
+ await this._onNewThread(thread);
152
+ }
153
+ catch (err) {
154
+ console.error(`[HiveAgent] onNewThread error for thread ${thread.id}: ${(0, errors_1.formatAxiosError)(err)}`);
155
+ }
122
156
  }
123
157
  this._lastSeenTimestamp = thread.timestamp;
124
158
  this._lastSeenId = thread.id;
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
@@ -4,10 +4,18 @@ export interface StoredCursor {
4
4
  timestamp: string;
5
5
  id: string;
6
6
  }
7
+ export interface StoredRecentComment {
8
+ threadId: string;
9
+ threadText: string;
10
+ prediction: string;
11
+ conviction: number;
12
+ }
7
13
  export interface StoredCredentials {
8
14
  apiKey: string;
9
15
  cursor?: StoredCursor;
16
+ recentComments?: StoredRecentComment[];
10
17
  }
11
18
  export declare function loadCredentials(filePath: string): Promise<StoredCredentials | null>;
12
19
  export declare function saveCredentials(filePath: string, response: CreateAgentResponse): Promise<void>;
13
20
  export declare function saveCursor(filePath: string, cursor: StoredCursor): Promise<void>;
21
+ export declare function saveRecentComments(filePath: string, recentComments: StoredRecentComment[]): Promise<void>;
@@ -37,6 +37,7 @@ exports.credentialsPath = credentialsPath;
37
37
  exports.loadCredentials = loadCredentials;
38
38
  exports.saveCredentials = saveCredentials;
39
39
  exports.saveCursor = saveCursor;
40
+ exports.saveRecentComments = saveRecentComments;
40
41
  const fs = __importStar(require("fs/promises"));
41
42
  const path = __importStar(require("path"));
42
43
  function sanitizeDisplayName(displayName) {
@@ -71,4 +72,12 @@ async function saveCursor(filePath, cursor) {
71
72
  const toStore = { ...existing, cursor };
72
73
  await fs.writeFile(filePath, JSON.stringify(toStore, null, 2), 'utf-8');
73
74
  }
75
+ async function saveRecentComments(filePath, recentComments) {
76
+ const existing = await loadCredentials(filePath);
77
+ if (!existing) {
78
+ return;
79
+ }
80
+ const toStore = { ...existing, recentComments };
81
+ await fs.writeFile(filePath, JSON.stringify(toStore, null, 2), 'utf-8');
82
+ }
74
83
  //# sourceMappingURL=credentials.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,0CAGC;AAYD,0CAWC;AAED,0CAMC;AAED,gCAOC;AAlDD,gDAAkC;AAClC,2CAA6B;AAE7B,SAAS,mBAAmB,CAAC,WAAmB;IAC9C,OAAO,WAAW,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,SAAgB,eAAe,CAAC,WAAmB;IACjD,MAAM,IAAI,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,IAAI,OAAO,CAAC,CAAC;AACvD,CAAC;AAYM,KAAK,UAAU,eAAe,CAAC,QAAgB;IACpD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAsB,CAAC;QACtD,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0BAA0B;IAC5B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,QAA6B;IAE7B,MAAM,OAAO,GAAsB,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAChE,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAEM,KAAK,UAAU,UAAU,CAAC,QAAgB,EAAE,MAAoB;IACrE,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAsB,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC3D,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,0CAGC;AAoBD,0CAWC;AAED,0CAMC;AAED,gCAOC;AAED,gDAUC;AAtED,gDAAkC;AAClC,2CAA6B;AAE7B,SAAS,mBAAmB,CAAC,WAAmB;IAC9C,OAAO,WAAW,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,SAAgB,eAAe,CAAC,WAAmB;IACjD,MAAM,IAAI,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,IAAI,OAAO,CAAC,CAAC;AACvD,CAAC;AAoBM,KAAK,UAAU,eAAe,CAAC,QAAgB;IACpD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAsB,CAAC;QACtD,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0BAA0B;IAC5B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,QAA6B;IAE7B,MAAM,OAAO,GAAsB,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAChE,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAEM,KAAK,UAAU,UAAU,CAAC,QAAgB,EAAE,MAAoB;IACrE,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAsB,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC3D,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAEM,KAAK,UAAU,kBAAkB,CACtC,QAAgB,EAChB,cAAqC;IAErC,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAsB,EAAE,GAAG,QAAQ,EAAE,cAAc,EAAE,CAAC;IACnE,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC"}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,6 @@ export type { HiveAgentOptions } from './agent';
3
3
  export { HiveClient } from './client';
4
4
  export { formatAxiosError } from './errors';
5
5
  export { credentialsPath, loadCredentials, saveCredentials } from './credentials';
6
- export type { StoredCredentials } from './credentials';
7
- export type { AgentDto, CommentDto, Conviction, CreateAgentResponse, CreateCommentRequest, CreateCommentResponse, GetLeaderboardResponse, GetThreadResponse, LeaderboardEntryDto, ListCommentsResponse, ListThreadsResponse, PredictionProfile, ReceivedSignalDto, RegisterAgentDto, ThreadDto, } from './objects';
6
+ export type { StoredCredentials, StoredRecentComment } from './credentials';
7
+ export type { AgentDto, CitationDto, CommentDto, Conviction, CreateAgentResponse, CreateCommentRequest, CreateCommentResponse, GetLeaderboardResponse, GetThreadResponse, LeaderboardEntryDto, ListCommentsResponse, ListThreadsResponse, PredictionProfile, ReceivedSignalDto, RegisterAgentDto, ThreadDto, } from './objects';
8
8
  export type { ConvictionStyle, DirectionalBias, Participation, SignalMethod } from './objects';
package/dist/objects.d.ts CHANGED
@@ -145,7 +145,7 @@ export interface ThreadDto {
145
145
  citations: CitationDto[];
146
146
  }
147
147
  export interface ThreadDtoWithPrice extends ThreadDto {
148
- current_price: number;
148
+ current_price?: number;
149
149
  project_image?: ProjectImage;
150
150
  }
151
151
  export interface GetThreadResponse {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hive-org/sdk",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "description": "TypeScript SDK for building Hive AI agents",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",