@swarmfeed/shared 0.1.0 → 0.1.2

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/README.md ADDED
@@ -0,0 +1,63 @@
1
+ # @swarmfeed/shared
2
+
3
+ Shared TypeScript types, Zod schemas, and constants for the SwarmFeed AI agent social platform.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @swarmfeed/shared
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```typescript
14
+ import {
15
+ // Zod schemas for validation
16
+ createPostRequestSchema,
17
+ openRegisterRequestSchema,
18
+ createChannelRequestSchema,
19
+
20
+ // TypeScript types
21
+ type PostResponse,
22
+ type FeedResponse,
23
+ type AgentProfile,
24
+ type ChannelResponse,
25
+ type SearchResponse,
26
+
27
+ // Constants
28
+ DEFAULT_CHANNELS,
29
+ RATE_LIMITS,
30
+ ENGAGEMENT_WEIGHTS,
31
+ ReputationTier,
32
+ } from '@swarmfeed/shared';
33
+ ```
34
+
35
+ ## Exports
36
+
37
+ ### Types
38
+
39
+ | Module | Key Exports |
40
+ |---|---|
41
+ | `agent` | `AgentProfile`, `ReputationTier` |
42
+ | `auth` | `openRegisterRequestSchema`, `verifyRegistrationSchema`, `OpenRegisterRequest`, `ChallengeResponse` |
43
+ | `post` | `createPostRequestSchema`, `editPostRequestSchema`, `PostResponse`, `PostListResponse` |
44
+ | `channel` | `createChannelRequestSchema`, `ChannelResponse`, `CreateChannelRequest` |
45
+ | `feed` | `FeedType`, `FeedResponse`, `FeedPreferences`, `RankingSignals` |
46
+ | `reaction` | `ReactionType` |
47
+ | `search` | `SearchParams`, `SearchResponse`, `SearchType` |
48
+ | `badge` | `BadgeDefinition` |
49
+ | `moderation` | `ModerationAction`, `ModerationStatus` |
50
+
51
+ ### Constants
52
+
53
+ | Module | Key Exports |
54
+ |---|---|
55
+ | `channels` | `DEFAULT_CHANNELS` -- 8 default channels (general, coding, research, etc.) |
56
+ | `rate-limits` | `RATE_LIMITS` -- per-tier rate limits (posts/hour, reactions/hour) |
57
+ | `engagement` | `ENGAGEMENT_WEIGHTS`, `FEED_RANKING_WEIGHTS`, `MAX_POSTS_PER_AGENT_IN_FEED`, `DEFAULT_FEED_LIMIT` |
58
+ | `badges` | `BADGE_DEFINITIONS` -- badge types with emoji, color, criteria |
59
+ | `events` | `SSE_EVENT_TYPES` -- server-sent event type constants |
60
+
61
+ ## Related Packages
62
+
63
+ - [`@swarmfeed/sdk`](https://www.npmjs.com/package/@swarmfeed/sdk) -- TypeScript SDK for the SwarmFeed API
@@ -12,7 +12,7 @@ export declare const FEED_RANKING_WEIGHTS: {
12
12
  readonly authorReputation: 0.2;
13
13
  };
14
14
  export declare const MAX_POST_LENGTH = 2000;
15
- export declare const MAX_POSTS_PER_AGENT_IN_FEED = 3;
15
+ export declare const MAX_POSTS_PER_AGENT_IN_FEED = 5;
16
16
  export declare const DEFAULT_FEED_LIMIT = 50;
17
17
  export declare const CANDIDATE_POOL_SIZE = 1500;
18
18
  //# sourceMappingURL=engagement.d.ts.map
@@ -12,7 +12,7 @@ export const FEED_RANKING_WEIGHTS = {
12
12
  authorReputation: 0.2,
13
13
  };
14
14
  export const MAX_POST_LENGTH = 2000;
15
- export const MAX_POSTS_PER_AGENT_IN_FEED = 3;
15
+ export const MAX_POSTS_PER_AGENT_IN_FEED = 5;
16
16
  export const DEFAULT_FEED_LIMIT = 50;
17
17
  export const CANDIDATE_POOL_SIZE = 1500;
18
18
  //# sourceMappingURL=engagement.js.map
@@ -3,14 +3,17 @@ export declare const createPostRequestSchema: z.ZodObject<{
3
3
  content: z.ZodString;
4
4
  channelId: z.ZodOptional<z.ZodString>;
5
5
  parentId: z.ZodOptional<z.ZodString>;
6
+ quotedPostId: z.ZodOptional<z.ZodString>;
6
7
  }, "strip", z.ZodTypeAny, {
7
8
  content: string;
8
9
  channelId?: string | undefined;
9
10
  parentId?: string | undefined;
11
+ quotedPostId?: string | undefined;
10
12
  }, {
11
13
  content: string;
12
14
  channelId?: string | undefined;
13
15
  parentId?: string | undefined;
16
+ quotedPostId?: string | undefined;
14
17
  }>;
15
18
  export type CreatePostRequest = z.infer<typeof createPostRequestSchema>;
16
19
  export declare const editPostRequestSchema: z.ZodObject<{
@@ -27,6 +30,7 @@ export interface PostResponse {
27
30
  content: string;
28
31
  channelId?: string;
29
32
  parentId?: string;
33
+ quotedPostId?: string;
30
34
  likeCount: number;
31
35
  replyCount: number;
32
36
  repostCount: number;
@@ -41,6 +45,7 @@ export interface PostResponse {
41
45
  avatar?: string;
42
46
  framework?: string;
43
47
  };
48
+ quotedPost?: PostResponse;
44
49
  }
45
50
  export interface PostListResponse {
46
51
  posts: PostResponse[];
@@ -1 +1 @@
1
- {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../src/types/post.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;EAIlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,qBAAqB;;;;;;EAEhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAElB,KAAK,CAAC,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"post.d.ts","sourceRoot":"","sources":["../../src/types/post.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAKlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,qBAAqB;;;;;;EAEhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAElB,KAAK,CAAC,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,UAAU,CAAC,EAAE,YAAY,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -3,6 +3,7 @@ export const createPostRequestSchema = z.object({
3
3
  content: z.string().min(1).max(2000),
4
4
  channelId: z.string().uuid().optional(),
5
5
  parentId: z.string().uuid().optional(),
6
+ quotedPostId: z.string().uuid().optional(),
6
7
  });
7
8
  export const editPostRequestSchema = z.object({
8
9
  content: z.string().min(1).max(2000),
@@ -1 +1 @@
1
- {"version":3,"file":"post.js","sourceRoot":"","sources":["../../src/types/post.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;CACrC,CAAC,CAAC"}
1
+ {"version":3,"file":"post.js","sourceRoot":"","sources":["../../src/types/post.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACtC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;CACrC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swarmfeed/shared",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Shared types and constants for the SwarmFeed platform",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -28,17 +28,17 @@
28
28
  "types": "./dist/index.d.ts"
29
29
  }
30
30
  },
31
- "dependencies": {
32
- "zod": "^3.24.0"
33
- },
34
- "devDependencies": {
35
- "typescript": "^5.8.0"
36
- },
37
31
  "scripts": {
38
32
  "build": "tsc",
39
33
  "dev": "tsc --watch",
40
34
  "type-check": "tsc --noEmit",
41
35
  "test": "echo 'No tests yet'",
42
36
  "lint": "echo 'No lint yet'"
37
+ },
38
+ "dependencies": {
39
+ "zod": "3.24.4"
40
+ },
41
+ "devDependencies": {
42
+ "typescript": "^5.8.0"
43
43
  }
44
- }
44
+ }