@bytespell/amux 0.0.4 → 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.
Files changed (47) hide show
  1. package/dist/chunk-C73RKCTS.js +36 -0
  2. package/dist/chunk-C73RKCTS.js.map +1 -0
  3. package/dist/chunk-HJCRMFTD.js +771 -0
  4. package/dist/chunk-HJCRMFTD.js.map +1 -0
  5. package/dist/lib/logger.d.ts +24 -0
  6. package/dist/{src/lib → lib}/logger.js +1 -2
  7. package/dist/lib/mentions.d.ts +14 -0
  8. package/dist/lib/mentions.js +7 -0
  9. package/dist/streams/backends/index.d.ts +88 -0
  10. package/dist/streams/backends/index.js +13 -0
  11. package/dist/streams/manager.d.ts +49 -0
  12. package/dist/streams/manager.js +237 -0
  13. package/dist/streams/manager.js.map +1 -0
  14. package/dist/types-DoG5bt6C.d.ts +153 -0
  15. package/dist/types.d.ts +2 -0
  16. package/dist/{chunk-226DBKL3.js → types.js} +7 -8
  17. package/dist/types.js.map +1 -0
  18. package/package.json +10 -37
  19. package/scripts/fix-pty.cjs +21 -0
  20. package/dist/bin/cli.js +0 -28
  21. package/dist/bin/cli.js.map +0 -1
  22. package/dist/chunk-226DBKL3.js.map +0 -1
  23. package/dist/chunk-2NON2HR2.js +0 -1602
  24. package/dist/chunk-2NON2HR2.js.map +0 -1
  25. package/dist/chunk-L4DBPVMA.js +0 -122
  26. package/dist/chunk-L4DBPVMA.js.map +0 -1
  27. package/dist/chunk-OQ5K5ON2.js +0 -319
  28. package/dist/chunk-OQ5K5ON2.js.map +0 -1
  29. package/dist/chunk-PZ5AY32C.js +0 -10
  30. package/dist/chunk-SX7NC3ZM.js +0 -65
  31. package/dist/chunk-SX7NC3ZM.js.map +0 -1
  32. package/dist/chunk-YYN3GXYP.js +0 -333
  33. package/dist/chunk-YYN3GXYP.js.map +0 -1
  34. package/dist/src/agents/eventStore.js +0 -22
  35. package/dist/src/agents/eventStore.js.map +0 -1
  36. package/dist/src/agents/manager.js +0 -12
  37. package/dist/src/agents/manager.js.map +0 -1
  38. package/dist/src/db/index.js +0 -10
  39. package/dist/src/server.js +0 -16
  40. package/dist/src/server.js.map +0 -1
  41. package/dist/src/trpc/files.js +0 -11
  42. package/dist/src/trpc/files.js.map +0 -1
  43. package/dist/src/types.js +0 -12
  44. package/dist/src/types.js.map +0 -1
  45. /package/dist/{src/lib → lib}/logger.js.map +0 -0
  46. /package/dist/{chunk-PZ5AY32C.js.map → lib/mentions.js.map} +0 -0
  47. /package/dist/{src/db → streams/backends}/index.js.map +0 -0
@@ -0,0 +1,36 @@
1
+ // src/lib/mentions.ts
2
+ import path from "path";
3
+ function parseMessageToContentBlocks(message, workingDir) {
4
+ const blocks = [];
5
+ const mentionRegex = /@(\.{0,2}[\w\/\.\-]+)/g;
6
+ let lastIndex = 0;
7
+ for (const match of message.matchAll(mentionRegex)) {
8
+ if (match.index > lastIndex) {
9
+ const text = message.slice(lastIndex, match.index);
10
+ if (text.trim()) {
11
+ blocks.push({ type: "text", text });
12
+ }
13
+ }
14
+ const relativePath = match[1];
15
+ const absolutePath = path.resolve(workingDir, relativePath);
16
+ blocks.push({
17
+ type: "resource_link",
18
+ uri: `file://${absolutePath}`,
19
+ name: relativePath
20
+ // Required per ACP spec - use the path the user typed
21
+ });
22
+ lastIndex = match.index + match[0].length;
23
+ }
24
+ if (lastIndex < message.length) {
25
+ const text = message.slice(lastIndex);
26
+ if (text.trim()) {
27
+ blocks.push({ type: "text", text });
28
+ }
29
+ }
30
+ return blocks.length > 0 ? blocks : [{ type: "text", text: message }];
31
+ }
32
+
33
+ export {
34
+ parseMessageToContentBlocks
35
+ };
36
+ //# sourceMappingURL=chunk-C73RKCTS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/lib/mentions.ts"],"sourcesContent":["import type { ContentBlock } from '../types.js';\nimport path from 'path';\n\n/**\n * Parse message text with @mentions into ContentBlock array.\n * @mentions become resource_link blocks, other text becomes text blocks.\n *\n * Examples:\n * - \"hello world\" → [{ type: 'text', text: 'hello world' }]\n * - \"@src/foo.ts\" → [{ type: 'resource_link', uri: 'file://...', name: 'src/foo.ts' }]\n * - \"check @src/foo.ts for bugs\" → text + resource_link + text\n */\nexport function parseMessageToContentBlocks(\n message: string,\n workingDir: string\n): ContentBlock[] {\n const blocks: ContentBlock[] = [];\n // Match @path/to/file.ts, @./local.ts, @../parent/file.ts\n // Allows leading ./ or ../ followed by path characters\n const mentionRegex = /@(\\.{0,2}[\\w\\/\\.\\-]+)/g;\n\n let lastIndex = 0;\n for (const match of message.matchAll(mentionRegex)) {\n // Add text before mention\n if (match.index! > lastIndex) {\n const text = message.slice(lastIndex, match.index);\n if (text.trim()) {\n blocks.push({ type: 'text', text });\n }\n }\n\n // Add resource_link for mention\n const relativePath = match[1];\n const absolutePath = path.resolve(workingDir, relativePath);\n blocks.push({\n type: 'resource_link',\n uri: `file://${absolutePath}`,\n name: relativePath, // Required per ACP spec - use the path the user typed\n });\n\n lastIndex = match.index! + match[0].length;\n }\n\n // Add remaining text\n if (lastIndex < message.length) {\n const text = message.slice(lastIndex);\n if (text.trim()) {\n blocks.push({ type: 'text', text });\n }\n }\n\n // If no mentions found, return single text block\n return blocks.length > 0 ? blocks : [{ type: 'text', text: message }];\n}\n"],"mappings":";AACA,OAAO,UAAU;AAWV,SAAS,4BACd,SACA,YACgB;AAChB,QAAM,SAAyB,CAAC;AAGhC,QAAM,eAAe;AAErB,MAAI,YAAY;AAChB,aAAW,SAAS,QAAQ,SAAS,YAAY,GAAG;AAElD,QAAI,MAAM,QAAS,WAAW;AAC5B,YAAM,OAAO,QAAQ,MAAM,WAAW,MAAM,KAAK;AACjD,UAAI,KAAK,KAAK,GAAG;AACf,eAAO,KAAK,EAAE,MAAM,QAAQ,KAAK,CAAC;AAAA,MACpC;AAAA,IACF;AAGA,UAAM,eAAe,MAAM,CAAC;AAC5B,UAAM,eAAe,KAAK,QAAQ,YAAY,YAAY;AAC1D,WAAO,KAAK;AAAA,MACV,MAAM;AAAA,MACN,KAAK,UAAU,YAAY;AAAA,MAC3B,MAAM;AAAA;AAAA,IACR,CAAC;AAED,gBAAY,MAAM,QAAS,MAAM,CAAC,EAAE;AAAA,EACtC;AAGA,MAAI,YAAY,QAAQ,QAAQ;AAC9B,UAAM,OAAO,QAAQ,MAAM,SAAS;AACpC,QAAI,KAAK,KAAK,GAAG;AACf,aAAO,KAAK,EAAE,MAAM,QAAQ,KAAK,CAAC;AAAA,IACpC;AAAA,EACF;AAGA,SAAO,OAAO,SAAS,IAAI,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,QAAQ,CAAC;AACtE;","names":[]}