society-protocol 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +111 -0
  3. package/dist/adapters.d.ts +101 -0
  4. package/dist/adapters.d.ts.map +1 -0
  5. package/dist/adapters.js +764 -0
  6. package/dist/adapters.js.map +1 -0
  7. package/dist/agents-md.d.ts +59 -0
  8. package/dist/agents-md.d.ts.map +1 -0
  9. package/dist/agents-md.js +204 -0
  10. package/dist/agents-md.js.map +1 -0
  11. package/dist/autoconfig.d.ts +137 -0
  12. package/dist/autoconfig.d.ts.map +1 -0
  13. package/dist/autoconfig.js +452 -0
  14. package/dist/autoconfig.js.map +1 -0
  15. package/dist/bootstrap.d.ts +68 -0
  16. package/dist/bootstrap.d.ts.map +1 -0
  17. package/dist/bootstrap.js +304 -0
  18. package/dist/bootstrap.js.map +1 -0
  19. package/dist/bridges/a2a-bridge.d.ts +156 -0
  20. package/dist/bridges/a2a-bridge.d.ts.map +1 -0
  21. package/dist/bridges/a2a-bridge.js +337 -0
  22. package/dist/bridges/a2a-bridge.js.map +1 -0
  23. package/dist/bridges/mcp-bridge.d.ts +87 -0
  24. package/dist/bridges/mcp-bridge.d.ts.map +1 -0
  25. package/dist/bridges/mcp-bridge.js +332 -0
  26. package/dist/bridges/mcp-bridge.js.map +1 -0
  27. package/dist/cache.d.ts +130 -0
  28. package/dist/cache.d.ts.map +1 -0
  29. package/dist/cache.js +257 -0
  30. package/dist/cache.js.map +1 -0
  31. package/dist/capsules.d.ts +23 -0
  32. package/dist/capsules.d.ts.map +1 -0
  33. package/dist/capsules.js +75 -0
  34. package/dist/capsules.js.map +1 -0
  35. package/dist/cli/commands.d.ts +8 -0
  36. package/dist/cli/commands.d.ts.map +1 -0
  37. package/dist/cli/commands.js +263 -0
  38. package/dist/cli/commands.js.map +1 -0
  39. package/dist/coc.d.ts +121 -0
  40. package/dist/coc.d.ts.map +1 -0
  41. package/dist/coc.js +629 -0
  42. package/dist/coc.js.map +1 -0
  43. package/dist/coc.test.d.ts +2 -0
  44. package/dist/coc.test.d.ts.map +1 -0
  45. package/dist/coc.test.js +80 -0
  46. package/dist/coc.test.js.map +1 -0
  47. package/dist/compression.d.ts +125 -0
  48. package/dist/compression.d.ts.map +1 -0
  49. package/dist/compression.js +573 -0
  50. package/dist/compression.js.map +1 -0
  51. package/dist/cot-stream.d.ts +220 -0
  52. package/dist/cot-stream.d.ts.map +1 -0
  53. package/dist/cot-stream.js +673 -0
  54. package/dist/cot-stream.js.map +1 -0
  55. package/dist/crypto-wasm.d.ts +100 -0
  56. package/dist/crypto-wasm.d.ts.map +1 -0
  57. package/dist/crypto-wasm.js +229 -0
  58. package/dist/crypto-wasm.js.map +1 -0
  59. package/dist/federation.d.ts +200 -0
  60. package/dist/federation.d.ts.map +1 -0
  61. package/dist/federation.js +691 -0
  62. package/dist/federation.js.map +1 -0
  63. package/dist/federation.test.d.ts +2 -0
  64. package/dist/federation.test.d.ts.map +1 -0
  65. package/dist/federation.test.js +71 -0
  66. package/dist/federation.test.js.map +1 -0
  67. package/dist/gateway/capability-router.d.ts +77 -0
  68. package/dist/gateway/capability-router.d.ts.map +1 -0
  69. package/dist/gateway/capability-router.js +222 -0
  70. package/dist/gateway/capability-router.js.map +1 -0
  71. package/dist/gateway/demand-spawner.d.ts +155 -0
  72. package/dist/gateway/demand-spawner.d.ts.map +1 -0
  73. package/dist/gateway/demand-spawner.js +426 -0
  74. package/dist/gateway/demand-spawner.js.map +1 -0
  75. package/dist/identity.d.ts +46 -0
  76. package/dist/identity.d.ts.map +1 -0
  77. package/dist/identity.js +102 -0
  78. package/dist/identity.js.map +1 -0
  79. package/dist/identity.test.d.ts +2 -0
  80. package/dist/identity.test.d.ts.map +1 -0
  81. package/dist/identity.test.js +45 -0
  82. package/dist/identity.test.js.map +1 -0
  83. package/dist/index.d.ts +36 -0
  84. package/dist/index.d.ts.map +1 -0
  85. package/dist/index.js +1572 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/integration.d.ts +210 -0
  88. package/dist/integration.d.ts.map +1 -0
  89. package/dist/integration.js +1105 -0
  90. package/dist/integration.js.map +1 -0
  91. package/dist/integration.test.d.ts +2 -0
  92. package/dist/integration.test.d.ts.map +1 -0
  93. package/dist/integration.test.js +155 -0
  94. package/dist/integration.test.js.map +1 -0
  95. package/dist/knowledge.d.ts +219 -0
  96. package/dist/knowledge.d.ts.map +1 -0
  97. package/dist/knowledge.js +543 -0
  98. package/dist/knowledge.js.map +1 -0
  99. package/dist/knowledge.test.d.ts +2 -0
  100. package/dist/knowledge.test.d.ts.map +1 -0
  101. package/dist/knowledge.test.js +72 -0
  102. package/dist/knowledge.test.js.map +1 -0
  103. package/dist/latent-space.d.ts +178 -0
  104. package/dist/latent-space.d.ts.map +1 -0
  105. package/dist/latent-space.js +385 -0
  106. package/dist/latent-space.js.map +1 -0
  107. package/dist/lib.d.ts +30 -0
  108. package/dist/lib.d.ts.map +1 -0
  109. package/dist/lib.js +30 -0
  110. package/dist/lib.js.map +1 -0
  111. package/dist/mcp/server.d.ts +74 -0
  112. package/dist/mcp/server.d.ts.map +1 -0
  113. package/dist/mcp/server.js +1392 -0
  114. package/dist/mcp/server.js.map +1 -0
  115. package/dist/metrics.d.ts +98 -0
  116. package/dist/metrics.d.ts.map +1 -0
  117. package/dist/metrics.js +222 -0
  118. package/dist/metrics.js.map +1 -0
  119. package/dist/p2p.d.ts +87 -0
  120. package/dist/p2p.d.ts.map +1 -0
  121. package/dist/p2p.js +606 -0
  122. package/dist/p2p.js.map +1 -0
  123. package/dist/persona/capabilities.d.ts +17 -0
  124. package/dist/persona/capabilities.d.ts.map +1 -0
  125. package/dist/persona/capabilities.js +224 -0
  126. package/dist/persona/capabilities.js.map +1 -0
  127. package/dist/persona/domains.d.ts +22 -0
  128. package/dist/persona/domains.d.ts.map +1 -0
  129. package/dist/persona/domains.js +176 -0
  130. package/dist/persona/domains.js.map +1 -0
  131. package/dist/persona/embeddings.d.ts +40 -0
  132. package/dist/persona/embeddings.d.ts.map +1 -0
  133. package/dist/persona/embeddings.js +265 -0
  134. package/dist/persona/embeddings.js.map +1 -0
  135. package/dist/persona/engine.d.ts +79 -0
  136. package/dist/persona/engine.d.ts.map +1 -0
  137. package/dist/persona/engine.js +1087 -0
  138. package/dist/persona/engine.js.map +1 -0
  139. package/dist/persona/index.d.ts +11 -0
  140. package/dist/persona/index.d.ts.map +1 -0
  141. package/dist/persona/index.js +11 -0
  142. package/dist/persona/index.js.map +1 -0
  143. package/dist/persona/lifecycle.d.ts +17 -0
  144. package/dist/persona/lifecycle.d.ts.map +1 -0
  145. package/dist/persona/lifecycle.js +36 -0
  146. package/dist/persona/lifecycle.js.map +1 -0
  147. package/dist/persona/retrieval.d.ts +6 -0
  148. package/dist/persona/retrieval.d.ts.map +1 -0
  149. package/dist/persona/retrieval.js +122 -0
  150. package/dist/persona/retrieval.js.map +1 -0
  151. package/dist/persona/sync.d.ts +15 -0
  152. package/dist/persona/sync.d.ts.map +1 -0
  153. package/dist/persona/sync.js +92 -0
  154. package/dist/persona/sync.js.map +1 -0
  155. package/dist/persona/types.d.ts +283 -0
  156. package/dist/persona/types.d.ts.map +1 -0
  157. package/dist/persona/types.js +2 -0
  158. package/dist/persona/types.js.map +1 -0
  159. package/dist/persona/zkp/engine.d.ts +26 -0
  160. package/dist/persona/zkp/engine.d.ts.map +1 -0
  161. package/dist/persona/zkp/engine.js +370 -0
  162. package/dist/persona/zkp/engine.js.map +1 -0
  163. package/dist/persona/zkp/types.d.ts +39 -0
  164. package/dist/persona/zkp/types.d.ts.map +1 -0
  165. package/dist/persona/zkp/types.js +2 -0
  166. package/dist/persona/zkp/types.js.map +1 -0
  167. package/dist/planner.d.ts +114 -0
  168. package/dist/planner.d.ts.map +1 -0
  169. package/dist/planner.js +522 -0
  170. package/dist/planner.js.map +1 -0
  171. package/dist/proactive/checkpoints.d.ts +9 -0
  172. package/dist/proactive/checkpoints.d.ts.map +1 -0
  173. package/dist/proactive/checkpoints.js +20 -0
  174. package/dist/proactive/checkpoints.js.map +1 -0
  175. package/dist/proactive/engine.d.ts +59 -0
  176. package/dist/proactive/engine.d.ts.map +1 -0
  177. package/dist/proactive/engine.js +406 -0
  178. package/dist/proactive/engine.js.map +1 -0
  179. package/dist/proactive/scheduler.d.ts +11 -0
  180. package/dist/proactive/scheduler.d.ts.map +1 -0
  181. package/dist/proactive/scheduler.js +45 -0
  182. package/dist/proactive/scheduler.js.map +1 -0
  183. package/dist/proactive/swarm-controller.d.ts +189 -0
  184. package/dist/proactive/swarm-controller.d.ts.map +1 -0
  185. package/dist/proactive/swarm-controller.js +477 -0
  186. package/dist/proactive/swarm-controller.js.map +1 -0
  187. package/dist/proactive/swarm-registry.d.ts +13 -0
  188. package/dist/proactive/swarm-registry.d.ts.map +1 -0
  189. package/dist/proactive/swarm-registry.js +122 -0
  190. package/dist/proactive/swarm-registry.js.map +1 -0
  191. package/dist/proactive/types.d.ts +145 -0
  192. package/dist/proactive/types.d.ts.map +1 -0
  193. package/dist/proactive/types.js +25 -0
  194. package/dist/proactive/types.js.map +1 -0
  195. package/dist/registry.d.ts +35 -0
  196. package/dist/registry.d.ts.map +1 -0
  197. package/dist/registry.js +88 -0
  198. package/dist/registry.js.map +1 -0
  199. package/dist/reputation.d.ts +123 -0
  200. package/dist/reputation.d.ts.map +1 -0
  201. package/dist/reputation.js +366 -0
  202. package/dist/reputation.js.map +1 -0
  203. package/dist/reputation.test.d.ts +5 -0
  204. package/dist/reputation.test.d.ts.map +1 -0
  205. package/dist/reputation.test.js +265 -0
  206. package/dist/reputation.test.js.map +1 -0
  207. package/dist/rooms.d.ts +96 -0
  208. package/dist/rooms.d.ts.map +1 -0
  209. package/dist/rooms.js +410 -0
  210. package/dist/rooms.js.map +1 -0
  211. package/dist/sdk/client.d.ts +290 -0
  212. package/dist/sdk/client.d.ts.map +1 -0
  213. package/dist/sdk/client.js +1287 -0
  214. package/dist/sdk/client.js.map +1 -0
  215. package/dist/sdk/index.d.ts +32 -0
  216. package/dist/sdk/index.d.ts.map +1 -0
  217. package/dist/sdk/index.js +70 -0
  218. package/dist/sdk/index.js.map +1 -0
  219. package/dist/security.d.ts +230 -0
  220. package/dist/security.d.ts.map +1 -0
  221. package/dist/security.js +652 -0
  222. package/dist/security.js.map +1 -0
  223. package/dist/skills/engine.d.ts +262 -0
  224. package/dist/skills/engine.d.ts.map +1 -0
  225. package/dist/skills/engine.js +788 -0
  226. package/dist/skills/engine.js.map +1 -0
  227. package/dist/skills/engine.test.d.ts +2 -0
  228. package/dist/skills/engine.test.d.ts.map +1 -0
  229. package/dist/skills/engine.test.js +134 -0
  230. package/dist/skills/engine.test.js.map +1 -0
  231. package/dist/skills/parser.d.ts +129 -0
  232. package/dist/skills/parser.d.ts.map +1 -0
  233. package/dist/skills/parser.js +318 -0
  234. package/dist/skills/parser.js.map +1 -0
  235. package/dist/social.d.ts +149 -0
  236. package/dist/social.d.ts.map +1 -0
  237. package/dist/social.js +401 -0
  238. package/dist/social.js.map +1 -0
  239. package/dist/storage-optimized.d.ts +116 -0
  240. package/dist/storage-optimized.d.ts.map +1 -0
  241. package/dist/storage-optimized.js +264 -0
  242. package/dist/storage-optimized.js.map +1 -0
  243. package/dist/storage.d.ts +584 -0
  244. package/dist/storage.d.ts.map +1 -0
  245. package/dist/storage.js +2703 -0
  246. package/dist/storage.js.map +1 -0
  247. package/dist/storage.test.d.ts +2 -0
  248. package/dist/storage.test.d.ts.map +1 -0
  249. package/dist/storage.test.js +78 -0
  250. package/dist/storage.test.js.map +1 -0
  251. package/dist/swp.d.ts +443 -0
  252. package/dist/swp.d.ts.map +1 -0
  253. package/dist/swp.js +223 -0
  254. package/dist/swp.js.map +1 -0
  255. package/dist/swp.test.d.ts +5 -0
  256. package/dist/swp.test.d.ts.map +1 -0
  257. package/dist/swp.test.js +127 -0
  258. package/dist/swp.test.js.map +1 -0
  259. package/dist/templates.d.ts +25 -0
  260. package/dist/templates.d.ts.map +1 -0
  261. package/dist/templates.js +1048 -0
  262. package/dist/templates.js.map +1 -0
  263. package/dist/test-e2e.d.ts +14 -0
  264. package/dist/test-e2e.d.ts.map +1 -0
  265. package/dist/test-e2e.js +266 -0
  266. package/dist/test-e2e.js.map +1 -0
  267. package/dist/workers/research-worker.d.ts +19 -0
  268. package/dist/workers/research-worker.d.ts.map +1 -0
  269. package/dist/workers/research-worker.js +141 -0
  270. package/dist/workers/research-worker.js.map +1 -0
  271. package/package.json +110 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapters.js","sourceRoot":"","sources":["../src/adapters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Society Protocol — AGENTS.md Support (AAIF Standard)
3
+ *
4
+ * Generates and parses AGENTS.md files following the Agentic AI Foundation
5
+ * standard (Linux Foundation). Used by 60,000+ open-source projects and
6
+ * supported by Google, OpenAI, Factory, Sourcegraph, and Cursor.
7
+ *
8
+ * Reference: https://agents.md / https://github.com/agentsmd/agents.md
9
+ */
10
+ export interface AgentsMdConfig {
11
+ /** Project name */
12
+ projectName: string;
13
+ /** One-sentence project description */
14
+ description: string;
15
+ /** Society Protocol room for collaboration */
16
+ room?: string;
17
+ /** MCP server endpoint or config path */
18
+ mcpServer?: string;
19
+ /** A2A Agent Card URL */
20
+ a2aAgentCard?: string;
21
+ /** Custom build commands */
22
+ buildCommands?: {
23
+ build?: string;
24
+ test?: string;
25
+ lint?: string;
26
+ dev?: string;
27
+ };
28
+ /** Code style preferences */
29
+ codeStyle?: {
30
+ language?: string;
31
+ formatter?: string;
32
+ conventions?: string[];
33
+ };
34
+ /** Security notes */
35
+ security?: string[];
36
+ /** Additional sections (key = heading, value = content) */
37
+ customSections?: Record<string, string>;
38
+ /** Society node capabilities */
39
+ capabilities?: string[];
40
+ /** Federation membership */
41
+ federation?: string;
42
+ /** Knowledge spaces to use */
43
+ knowledgeSpaces?: string[];
44
+ }
45
+ /**
46
+ * Generate an AGENTS.md file following the AAIF standard.
47
+ * Follows the "ruthless minimalism" principle — every token loads on every request.
48
+ */
49
+ export declare function generateAgentsMd(config: AgentsMdConfig): string;
50
+ /**
51
+ * Parse an AGENTS.md file into structured config.
52
+ * Lenient parser — AGENTS.md is plain Markdown with no formal schema.
53
+ */
54
+ export declare function parseAgentsMd(content: string): Partial<AgentsMdConfig>;
55
+ /**
56
+ * Generate the Society Protocol AGENTS.md for the core package itself.
57
+ */
58
+ export declare function generateSocietyAgentsMd(): string;
59
+ //# sourceMappingURL=agents-md.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-md.d.ts","sourceRoot":"","sources":["../src/agents-md.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,WAAW,cAAc;IAC3B,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4BAA4B;IAC5B,aAAa,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/E,6BAA6B;IAC7B,SAAS,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,2DAA2D;IAC3D,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAyF/D;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CA6DtE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAuChD"}
@@ -0,0 +1,204 @@
1
+ /**
2
+ * Society Protocol — AGENTS.md Support (AAIF Standard)
3
+ *
4
+ * Generates and parses AGENTS.md files following the Agentic AI Foundation
5
+ * standard (Linux Foundation). Used by 60,000+ open-source projects and
6
+ * supported by Google, OpenAI, Factory, Sourcegraph, and Cursor.
7
+ *
8
+ * Reference: https://agents.md / https://github.com/agentsmd/agents.md
9
+ */
10
+ /**
11
+ * Generate an AGENTS.md file following the AAIF standard.
12
+ * Follows the "ruthless minimalism" principle — every token loads on every request.
13
+ */
14
+ export function generateAgentsMd(config) {
15
+ const sections = [];
16
+ // Project description (required — establishes role context)
17
+ sections.push(`# ${config.projectName}\n`);
18
+ sections.push(config.description);
19
+ // Society Protocol integration
20
+ sections.push('\n## Society Protocol\n');
21
+ sections.push(`This project uses [Society Protocol](https://society.computer) for P2P multi-agent collaboration.\n`);
22
+ if (config.room) {
23
+ sections.push(`- **Room:** \`${config.room}\``);
24
+ }
25
+ if (config.federation) {
26
+ sections.push(`- **Federation:** \`${config.federation}\``);
27
+ }
28
+ if (config.mcpServer) {
29
+ sections.push(`- **MCP Server:** \`${config.mcpServer}\``);
30
+ }
31
+ if (config.a2aAgentCard) {
32
+ sections.push(`- **A2A Agent Card:** \`${config.a2aAgentCard}\``);
33
+ }
34
+ if (config.capabilities?.length) {
35
+ sections.push(`- **Capabilities:** ${config.capabilities.join(', ')}`);
36
+ }
37
+ if (config.knowledgeSpaces?.length) {
38
+ sections.push(`- **Knowledge Spaces:** ${config.knowledgeSpaces.join(', ')}`);
39
+ }
40
+ // MCP Integration
41
+ sections.push('\n### MCP Configuration\n');
42
+ sections.push('```json');
43
+ sections.push(JSON.stringify({
44
+ mcpServers: {
45
+ society: {
46
+ command: 'npx',
47
+ args: ['society-protocol', 'mcp'],
48
+ env: {
49
+ SOCIETY_ROOM: config.room || 'default',
50
+ },
51
+ },
52
+ },
53
+ }, null, 2));
54
+ sections.push('```');
55
+ // Build commands
56
+ if (config.buildCommands) {
57
+ sections.push('\n## Commands\n');
58
+ const cmds = config.buildCommands;
59
+ if (cmds.build)
60
+ sections.push(`- **Build:** \`${cmds.build}\``);
61
+ if (cmds.test)
62
+ sections.push(`- **Test:** \`${cmds.test}\``);
63
+ if (cmds.lint)
64
+ sections.push(`- **Lint:** \`${cmds.lint}\``);
65
+ if (cmds.dev)
66
+ sections.push(`- **Dev:** \`${cmds.dev}\``);
67
+ }
68
+ // Code style
69
+ if (config.codeStyle) {
70
+ sections.push('\n## Code Style\n');
71
+ if (config.codeStyle.language) {
72
+ sections.push(`- **Language:** ${config.codeStyle.language}`);
73
+ }
74
+ if (config.codeStyle.formatter) {
75
+ sections.push(`- **Formatter:** ${config.codeStyle.formatter}`);
76
+ }
77
+ if (config.codeStyle.conventions?.length) {
78
+ for (const conv of config.codeStyle.conventions) {
79
+ sections.push(`- ${conv}`);
80
+ }
81
+ }
82
+ }
83
+ // Security
84
+ if (config.security?.length) {
85
+ sections.push('\n## Security\n');
86
+ for (const note of config.security) {
87
+ sections.push(`- ${note}`);
88
+ }
89
+ }
90
+ // Custom sections
91
+ if (config.customSections) {
92
+ for (const [heading, content] of Object.entries(config.customSections)) {
93
+ sections.push(`\n## ${heading}\n`);
94
+ sections.push(content);
95
+ }
96
+ }
97
+ return sections.join('\n') + '\n';
98
+ }
99
+ /**
100
+ * Parse an AGENTS.md file into structured config.
101
+ * Lenient parser — AGENTS.md is plain Markdown with no formal schema.
102
+ */
103
+ export function parseAgentsMd(content) {
104
+ const config = {};
105
+ // Extract project name from first H1
106
+ const h1Match = content.match(/^#\s+(.+)$/m);
107
+ if (h1Match) {
108
+ config.projectName = h1Match[1].trim();
109
+ }
110
+ // Extract first paragraph as description
111
+ const lines = content.split('\n');
112
+ let descStart = -1;
113
+ for (let i = 0; i < lines.length; i++) {
114
+ if (lines[i].startsWith('# ')) {
115
+ descStart = i + 1;
116
+ continue;
117
+ }
118
+ if (descStart >= 0 && lines[i].trim() && !lines[i].startsWith('#')) {
119
+ config.description = lines[i].trim();
120
+ break;
121
+ }
122
+ }
123
+ // Extract bullet items by label
124
+ const extractBullet = (label) => {
125
+ const re = new RegExp(`\\*\\*${label}:\\*\\*\\s*\`([^\`]+)\``, 'i');
126
+ const match = content.match(re);
127
+ return match?.[1];
128
+ };
129
+ config.room = extractBullet('Room');
130
+ config.federation = extractBullet('Federation');
131
+ config.mcpServer = extractBullet('MCP Server');
132
+ config.a2aAgentCard = extractBullet('A2A Agent Card');
133
+ // Extract capabilities
134
+ const capMatch = content.match(/\*\*Capabilities:\*\*\s*(.+)/i);
135
+ if (capMatch) {
136
+ config.capabilities = capMatch[1].split(',').map((s) => s.trim());
137
+ }
138
+ // Extract knowledge spaces
139
+ const ksMatch = content.match(/\*\*Knowledge Spaces:\*\*\s*(.+)/i);
140
+ if (ksMatch) {
141
+ config.knowledgeSpaces = ksMatch[1].split(',').map((s) => s.trim());
142
+ }
143
+ // Extract build commands
144
+ const buildCmd = extractBullet('Build');
145
+ const testCmd = extractBullet('Test');
146
+ const lintCmd = extractBullet('Lint');
147
+ const devCmd = extractBullet('Dev');
148
+ if (buildCmd || testCmd || lintCmd || devCmd) {
149
+ config.buildCommands = {};
150
+ if (buildCmd)
151
+ config.buildCommands.build = buildCmd;
152
+ if (testCmd)
153
+ config.buildCommands.test = testCmd;
154
+ if (lintCmd)
155
+ config.buildCommands.lint = lintCmd;
156
+ if (devCmd)
157
+ config.buildCommands.dev = devCmd;
158
+ }
159
+ return config;
160
+ }
161
+ /**
162
+ * Generate the Society Protocol AGENTS.md for the core package itself.
163
+ */
164
+ export function generateSocietyAgentsMd() {
165
+ return generateAgentsMd({
166
+ projectName: 'Society Protocol',
167
+ description: 'P2P multi-agent collaboration framework with Chain of Collaboration, Knowledge Pool, and reputation system.',
168
+ room: 'society-dev',
169
+ mcpServer: 'npx society-protocol mcp',
170
+ a2aAgentCard: '/.well-known/agent.json',
171
+ buildCommands: {
172
+ build: 'npm run build',
173
+ test: 'npm test',
174
+ dev: 'npx tsx src/index.ts node --name DevAgent --room dev',
175
+ },
176
+ codeStyle: {
177
+ language: 'TypeScript (strict)',
178
+ formatter: 'None (manual)',
179
+ conventions: [
180
+ 'Use explicit types, avoid `any`',
181
+ 'Prefer `interface` over `type` for object shapes',
182
+ 'Use `ulid()` for all generated IDs',
183
+ 'All P2P messages use SWP envelope format',
184
+ 'Use CRDT clocks (HLC + vector) for distributed state',
185
+ 'All knowledge cards have explicit KnowledgeType',
186
+ ],
187
+ },
188
+ security: [
189
+ 'All messages are Ed25519-signed',
190
+ 'Verify signatures before processing any SWP envelope',
191
+ 'Never expose private keys in logs or error messages',
192
+ 'Use SSRF protection for all external HTTP calls',
193
+ 'Validate all input against capability tokens',
194
+ ],
195
+ capabilities: [
196
+ 'p2p-networking', 'chain-of-collaboration', 'knowledge-pool',
197
+ 'reputation', 'federation', 'mcp-server', 'a2a-bridge',
198
+ 'proactive-missions', 'persona-vault', 'cot-streaming',
199
+ ],
200
+ federation: 'society-core',
201
+ knowledgeSpaces: ['protocol-docs', 'api-reference', 'examples'],
202
+ });
203
+ }
204
+ //# sourceMappingURL=agents-md.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents-md.js","sourceRoot":"","sources":["../src/agents-md.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Auto-Configuration Module
3
+ *
4
+ * Detecta ambiente automaticamente e gera configuração otimizada
5
+ * - Recursos disponíveis (CPU, RAM, disco, rede)
6
+ - Ambiente (home, datacenter, cloud, mobile)
7
+ * - Padrão de uso (light, full-node, relay)
8
+ * - Configura de porta automática
9
+ */
10
+ export interface SystemResources {
11
+ cpu: {
12
+ cores: number;
13
+ model: string;
14
+ speed: number;
15
+ loadAvg: number[];
16
+ };
17
+ memory: {
18
+ total: number;
19
+ free: number;
20
+ available: number;
21
+ };
22
+ disk: {
23
+ path: string;
24
+ total: number;
25
+ free: number;
26
+ type: string;
27
+ };
28
+ network: {
29
+ interfaces: Record<string, NetworkInterfaceInfo[]>;
30
+ hasPublicIP: boolean;
31
+ estimatedBandwidth: number;
32
+ };
33
+ }
34
+ export interface NetworkInterfaceInfo {
35
+ address: string;
36
+ family: string;
37
+ internal: boolean;
38
+ }
39
+ export interface DetectedEnvironment {
40
+ type: 'home' | 'office' | 'datacenter' | 'cloud' | 'mobile' | 'unknown';
41
+ cloudProvider?: 'aws' | 'gcp' | 'azure' | 'digitalocean' | 'heroku' | 'other';
42
+ hasPublicIP: boolean;
43
+ behindNAT: boolean;
44
+ canBeRelay: boolean;
45
+ }
46
+ export interface UsagePattern {
47
+ type: 'light' | 'standard' | 'full' | 'relay';
48
+ maxConnections: number;
49
+ cacheSizeMB: number;
50
+ enableDHT: boolean;
51
+ enableRelay: boolean;
52
+ logLevel: 'debug' | 'info' | 'warn' | 'error';
53
+ }
54
+ export interface AutoConfig {
55
+ environment: DetectedEnvironment;
56
+ resources: SystemResources;
57
+ usage: UsagePattern;
58
+ recommended: {
59
+ p2pPort: number;
60
+ apiPort: number;
61
+ wsPort: number;
62
+ storagePath: string;
63
+ maxPeers: number;
64
+ connectionLimits: {
65
+ min: number;
66
+ max: number;
67
+ };
68
+ };
69
+ }
70
+ export declare class AutoConfigurator {
71
+ private configDir;
72
+ constructor();
73
+ /**
74
+ * Detect system resources
75
+ */
76
+ detectResources(): Promise<SystemResources>;
77
+ /**
78
+ * Find best storage path (most free space)
79
+ */
80
+ private findBestStoragePath;
81
+ /**
82
+ * Detect filesystem type
83
+ */
84
+ private detectFilesystemType;
85
+ /**
86
+ * Detect if machine has public IP
87
+ */
88
+ private detectPublicIP;
89
+ /**
90
+ * Check if IP is private
91
+ */
92
+ private isPrivateIP;
93
+ /**
94
+ * Estimate network bandwidth (rough)
95
+ */
96
+ private estimateBandwidth;
97
+ /**
98
+ * Detect environment type
99
+ */
100
+ detectEnvironment(): Promise<DetectedEnvironment>;
101
+ /**
102
+ * Determine optimal usage pattern based on resources
103
+ */
104
+ determineUsagePattern(): Promise<UsagePattern>;
105
+ /**
106
+ * Find available port
107
+ */
108
+ private findAvailablePort;
109
+ /**
110
+ * Generate complete auto-configuration
111
+ */
112
+ generateConfig(): Promise<AutoConfig>;
113
+ /**
114
+ * Apply configuration to config file
115
+ */
116
+ applyConfig(config?: AutoConfig): Promise<void>;
117
+ /**
118
+ * Print detected configuration (for CLI)
119
+ */
120
+ printConfig(): Promise<void>;
121
+ }
122
+ /**
123
+ * Quick auto-config
124
+ */
125
+ export declare function autoConfigure(): Promise<AutoConfig>;
126
+ /**
127
+ * Detect if running in CI/CD environment
128
+ */
129
+ export declare function detectCI(): {
130
+ isCI: boolean;
131
+ provider?: string;
132
+ };
133
+ /**
134
+ * Detect if running in Docker/container
135
+ */
136
+ export declare function detectContainer(): boolean;
137
+ //# sourceMappingURL=autoconfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autoconfig.d.ts","sourceRoot":"","sources":["../src/autoconfig.ts"],"names":[],"mappings":"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"}