@tloncorp/openclaw 0.4.3 → 0.6.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 (104) hide show
  1. package/README.md +130 -141
  2. package/dist/index.js +147 -138
  3. package/dist/index.js.map +1 -1
  4. package/dist/setup-api.js +2 -2
  5. package/dist/setup-entry.js +2 -2
  6. package/dist/setup-entry.js.map +1 -1
  7. package/dist/src/account-fields.js +7 -3
  8. package/dist/src/account-fields.js.map +1 -1
  9. package/dist/src/actions.js +73 -52
  10. package/dist/src/actions.js.map +1 -1
  11. package/dist/src/channel.js +51 -39
  12. package/dist/src/channel.js.map +1 -1
  13. package/dist/src/channel.runtime.js +61 -32
  14. package/dist/src/channel.runtime.js.map +1 -1
  15. package/dist/src/config-schema.js +24 -4
  16. package/dist/src/config-schema.js.map +1 -1
  17. package/dist/src/effective-owner.js.map +1 -1
  18. package/dist/src/gateway-status.js +55 -7
  19. package/dist/src/gateway-status.js.map +1 -1
  20. package/dist/src/monitor/approval.js +71 -62
  21. package/dist/src/monitor/approval.js.map +1 -1
  22. package/dist/src/monitor/command-auth.js +7 -7
  23. package/dist/src/monitor/command-auth.js.map +1 -1
  24. package/dist/src/monitor/command-bridge.js +3 -2
  25. package/dist/src/monitor/command-bridge.js.map +1 -1
  26. package/dist/src/monitor/computing-presence.js +76 -12
  27. package/dist/src/monitor/computing-presence.js.map +1 -1
  28. package/dist/src/monitor/discovery.js +16 -9
  29. package/dist/src/monitor/discovery.js.map +1 -1
  30. package/dist/src/monitor/history.js +58 -26
  31. package/dist/src/monitor/history.js.map +1 -1
  32. package/dist/src/monitor/index.js +2771 -2483
  33. package/dist/src/monitor/index.js.map +1 -1
  34. package/dist/src/monitor/media.js +106 -78
  35. package/dist/src/monitor/media.js.map +1 -1
  36. package/dist/src/monitor/nudge-runner.js +36 -27
  37. package/dist/src/monitor/nudge-runner.js.map +1 -1
  38. package/dist/src/monitor/nudge-state.js +7 -11
  39. package/dist/src/monitor/nudge-state.js.map +1 -1
  40. package/dist/src/monitor/owner-reply-persistence.js +27 -26
  41. package/dist/src/monitor/owner-reply-persistence.js.map +1 -1
  42. package/dist/src/monitor/processed-messages.js.map +1 -1
  43. package/dist/src/monitor/settings-sync.js +1 -8
  44. package/dist/src/monitor/settings-sync.js.map +1 -1
  45. package/dist/src/monitor/utils.js +77 -71
  46. package/dist/src/monitor/utils.js.map +1 -1
  47. package/dist/src/nudge-decision.js +40 -43
  48. package/dist/src/nudge-decision.js.map +1 -1
  49. package/dist/src/nudge-messages.js +9 -9
  50. package/dist/src/nudge-scheduler.js.map +1 -1
  51. package/dist/src/owner-listen-command.js +38 -28
  52. package/dist/src/owner-listen-command.js.map +1 -1
  53. package/dist/src/pending-nudge.js.map +1 -1
  54. package/dist/src/runtime.js +10 -6
  55. package/dist/src/runtime.js.map +1 -1
  56. package/dist/src/session-roles.js +2 -1
  57. package/dist/src/session-roles.js.map +1 -1
  58. package/dist/src/settings.js +233 -102
  59. package/dist/src/settings.js.map +1 -1
  60. package/dist/src/setup-core.js +32 -32
  61. package/dist/src/setup-core.js.map +1 -1
  62. package/dist/src/setup-surface.js +19 -19
  63. package/dist/src/setup-surface.js.map +1 -1
  64. package/dist/src/shared-state.js +46 -0
  65. package/dist/src/shared-state.js.map +1 -0
  66. package/dist/src/targets.js +17 -10
  67. package/dist/src/targets.js.map +1 -1
  68. package/dist/src/telemetry.js +17 -14
  69. package/dist/src/telemetry.js.map +1 -1
  70. package/dist/src/tlon-binary.js +20 -12
  71. package/dist/src/tlon-binary.js.map +1 -1
  72. package/dist/src/tlon-tool-guard.js +5 -5
  73. package/dist/src/tool-trace.js +17 -13
  74. package/dist/src/tool-trace.js.map +1 -1
  75. package/dist/src/types.js +30 -12
  76. package/dist/src/types.js.map +1 -1
  77. package/dist/src/urbit/api-client.js +16 -12
  78. package/dist/src/urbit/api-client.js.map +1 -1
  79. package/dist/src/urbit/auth.js +9 -9
  80. package/dist/src/urbit/auth.js.map +1 -1
  81. package/dist/src/urbit/base-url.js +11 -11
  82. package/dist/src/urbit/base-url.js.map +1 -1
  83. package/dist/src/urbit/channel-ops.js +25 -19
  84. package/dist/src/urbit/channel-ops.js.map +1 -1
  85. package/dist/src/urbit/context.js +8 -8
  86. package/dist/src/urbit/context.js.map +1 -1
  87. package/dist/src/urbit/errors.js +33 -7
  88. package/dist/src/urbit/errors.js.map +1 -1
  89. package/dist/src/urbit/fetch.js +3 -3
  90. package/dist/src/urbit/fetch.js.map +1 -1
  91. package/dist/src/urbit/http-poke.js +10 -10
  92. package/dist/src/urbit/http-poke.js.map +1 -1
  93. package/dist/src/urbit/send.js +27 -23
  94. package/dist/src/urbit/send.js.map +1 -1
  95. package/dist/src/urbit/sse-client.js +45 -41
  96. package/dist/src/urbit/sse-client.js.map +1 -1
  97. package/dist/src/urbit/story.js +31 -30
  98. package/dist/src/urbit/story.js.map +1 -1
  99. package/dist/src/urbit/upload.js +8 -8
  100. package/dist/src/urbit/upload.js.map +1 -1
  101. package/dist/src/version.generated.js +2 -1
  102. package/dist/src/version.generated.js.map +1 -1
  103. package/openclaw.plugin.json +37 -0
  104. package/package.json +35 -15
@@ -6,7 +6,7 @@
6
6
  * compatibility — clubs are deprecated and slated for removal audit.
7
7
  */
8
8
  /** DM sub-operations that are send actions (not management). */
9
- const DM_SEND_ACTIONS = new Set(["send", "reply"]);
9
+ const DM_SEND_ACTIONS = new Set(['send', 'reply']);
10
10
  /**
11
11
  * Check whether a parsed tlon command is a blocked send operation.
12
12
  *
@@ -18,7 +18,7 @@ export function checkBlockedSendOperation(args) {
18
18
  return null;
19
19
  const subcommand = args[0]?.toLowerCase();
20
20
  const action = args[1]?.toLowerCase();
21
- if (subcommand !== "dms" || !DM_SEND_ACTIONS.has(action)) {
21
+ if (subcommand !== 'dms' || !DM_SEND_ACTIONS.has(action)) {
22
22
  return null;
23
23
  }
24
24
  // dms send/reply require a target as the next argument
@@ -26,13 +26,13 @@ export function checkBlockedSendOperation(args) {
26
26
  if (!target)
27
27
  return null;
28
28
  // Allow legacy club targets (0v...) for backward compatibility
29
- if (target.startsWith("0v")) {
29
+ if (target.startsWith('0v')) {
30
30
  return null;
31
31
  }
32
32
  // Non-club target — this is a wrong-path send that should use `message`
33
33
  // For replies, preserve the messageId (args[3]) so the redirect includes replyTo
34
- if (action === "reply") {
35
- const messageId = args[3] ?? "<messageId>";
34
+ if (action === 'reply') {
35
+ const messageId = args[3] ?? '<messageId>';
36
36
  return (`Blocked: 'dms reply' with a ship target should use the \`message\` tool instead. ` +
37
37
  `Use: message action=send, channel=tlon, target=${target}, replyTo=${messageId}, message=<text>. ` +
38
38
  `The \`message\` tool handles threading, bot profile, rate limiting, and reply routing correctly.`);
@@ -1,18 +1,18 @@
1
1
  const TOOL_TRACE_CONTENT_ENV_VARS = [
2
- "TEST_LIVE_TOOL_TRACE_CONTENTS",
3
- "CI_LIVE_TOOL_TRACE_CONTENTS",
2
+ 'TEST_LIVE_TOOL_TRACE_CONTENTS',
3
+ 'CI_LIVE_TOOL_TRACE_CONTENTS',
4
4
  ];
5
- const REDACTED = "[REDACTED]";
5
+ const REDACTED = '[REDACTED]';
6
6
  const MAX_DEPTH = 4;
7
7
  const MAX_STRING_LENGTH = 300;
8
8
  const MAX_ARRAY_ITEMS = 20;
9
9
  const MAX_OBJECT_KEYS = 30;
10
10
  const SENSITIVE_KEY_RE = /^(?:authorization|auth|password|secret|token|accesstoken|refreshtoken|apikey|api_key|cookie|set-cookie|code)$/i;
11
11
  function isPlainObject(value) {
12
- return typeof value === "object" && value !== null && !Array.isArray(value);
12
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
13
13
  }
14
14
  function truncateString(value) {
15
- if (value.startsWith("data:")) {
15
+ if (value.startsWith('data:')) {
16
16
  const prefix = value.slice(0, 48);
17
17
  return `${prefix}… [data-url ${value.length} chars]`;
18
18
  }
@@ -22,17 +22,19 @@ function truncateString(value) {
22
22
  return `${value.slice(0, MAX_STRING_LENGTH)}… [${value.length} chars]`;
23
23
  }
24
24
  function sanitizeValue(value, depth = 0) {
25
- if (value == null || typeof value === "number" || typeof value === "boolean") {
25
+ if (value == null ||
26
+ typeof value === 'number' ||
27
+ typeof value === 'boolean') {
26
28
  return value;
27
29
  }
28
- if (typeof value === "string") {
30
+ if (typeof value === 'string') {
29
31
  return truncateString(value);
30
32
  }
31
- if (typeof value === "bigint") {
33
+ if (typeof value === 'bigint') {
32
34
  return value.toString();
33
35
  }
34
- if (typeof value === "function") {
35
- return `[Function ${value.name || "anonymous"}]`;
36
+ if (typeof value === 'function') {
37
+ return `[Function ${value.name || 'anonymous'}]`;
36
38
  }
37
39
  if (value instanceof Error) {
38
40
  return {
@@ -50,7 +52,9 @@ function sanitizeValue(value, depth = 0) {
50
52
  return String(value);
51
53
  }
52
54
  if (Array.isArray(value)) {
53
- const items = value.slice(0, MAX_ARRAY_ITEMS).map((item) => sanitizeValue(item, depth + 1));
55
+ const items = value
56
+ .slice(0, MAX_ARRAY_ITEMS)
57
+ .map((item) => sanitizeValue(item, depth + 1));
54
58
  if (value.length > MAX_ARRAY_ITEMS) {
55
59
  items.push(`[+${value.length - MAX_ARRAY_ITEMS} more items]`);
56
60
  }
@@ -73,7 +77,7 @@ function sanitizeValue(value, depth = 0) {
73
77
  return String(value);
74
78
  }
75
79
  export function liveToolTraceContentsEnabled(env = process.env) {
76
- return TOOL_TRACE_CONTENT_ENV_VARS.some((name) => /^(1|true|yes|on)$/i.test(env[name] ?? ""));
80
+ return TOOL_TRACE_CONTENT_ENV_VARS.some((name) => /^(1|true|yes|on)$/i.test(env[name] ?? ''));
77
81
  }
78
82
  export function formatToolTraceEvent(params) {
79
83
  const body = {
@@ -85,7 +89,7 @@ export function formatToolTraceEvent(params) {
85
89
  return `tooltrace ${params.phase}: ${JSON.stringify(body)}`;
86
90
  }
87
91
  export function shouldLogAfterToolTrace(event) {
88
- if (typeof event.durationMs === "number") {
92
+ if (typeof event.durationMs === 'number') {
89
93
  return true;
90
94
  }
91
95
  if (event.error) {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-trace.js","sourceRoot":"","sources":["../../src/tool-trace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-trace.js","sourceRoot":"","sources":["../../src/tool-trace.ts"],"names":[],"mappings":"AAAA,MAAM,2BAA2B,GAAG;IAClC,+BAA+B;IAC/B,6BAA6B;CACrB,CAAC;AAEX,MAAM,QAAQ,GAAG,YAAY,CAAC;AAC9B,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,MAAM,gBAAgB,GACpB,gHAAgH,CAAC;AAEnH,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAClC,OAAO,GAAG,MAAM,eAAe,KAAK,CAAC,MAAM,SAAS,CAAC;IACvD,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,IAAI,iBAAiB,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,MAAM,KAAK,CAAC,MAAM,SAAS,CAAC;AACzE,CAAC;AAED,SAAS,aAAa,CAAC,KAAc,EAAE,KAAK,GAAG,CAAC;IAC9C,IACE,KAAK,IAAI,IAAI;QACb,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,SAAS,EAC1B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QAChC,OAAO,aAAa,KAAK,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC;IACnD,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC;SACvC,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,IAAI,SAAS,EAAE,CAAC;QACvB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,UAAU,KAAK,CAAC,MAAM,IAAI,CAAC;QACpC,CAAC;QACD,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,gBAAgB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;QACtD,CAAC;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK;aAChB,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC;aACzB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QACjD,IAAI,KAAK,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,eAAe,cAAc,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtC,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,KAAK,IAAI,eAAe,EAAE,CAAC;gBAC7B,MAAM,CAAC,aAAa,GAAG,KAAK,OAAO,CAAC,MAAM,GAAG,eAAe,aAAa,CAAC;gBAC1E,MAAM;YACR,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC;gBACtC,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG;IAC5D,OAAO,2BAA2B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC/C,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAC3C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAKpC;IACC,MAAM,IAAI,GAAG;QACX,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,SAAS;QAClD,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;KACvC,CAAC;IAEF,OAAO,aAAa,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAIvC;IACC,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC;AAC9B,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,aAAa;IACb,cAAc;CACf,CAAC"}
package/dist/src/types.js CHANGED
@@ -9,7 +9,7 @@ export function resolveTlonAccount(cfg, accountId) {
9
9
  const base = cfg.channels?.tlon;
10
10
  if (!base) {
11
11
  return {
12
- accountId: accountId || "default",
12
+ accountId: accountId || 'default',
13
13
  name: null,
14
14
  enabled: false,
15
15
  configured: false,
@@ -37,36 +37,54 @@ export function resolveTlonAccount(cfg, accountId) {
37
37
  ownerListenDisabledChannels: [],
38
38
  };
39
39
  }
40
- const useDefault = !accountId || accountId === "default";
40
+ const useDefault = !accountId || accountId === 'default';
41
41
  const account = useDefault ? base : base.accounts?.[accountId];
42
42
  const ship = (account?.ship ?? base.ship ?? null);
43
43
  const url = (account?.url ?? base.url ?? null);
44
44
  const code = (account?.code ?? base.code ?? null);
45
- const allowPrivateNetwork = (account?.allowPrivateNetwork ?? base.allowPrivateNetwork ?? null);
46
- const groupChannels = (account?.groupChannels ?? base.groupChannels ?? []);
47
- const dmAllowlist = (account?.dmAllowlist ?? base.dmAllowlist ?? []);
45
+ const accountNetwork = account?.network;
46
+ const accountAllowPrivateNetwork = account?.allowPrivateNetwork;
47
+ const allowPrivateNetwork = (accountNetwork?.dangerouslyAllowPrivateNetwork ??
48
+ accountAllowPrivateNetwork ??
49
+ base.network?.dangerouslyAllowPrivateNetwork ??
50
+ base.allowPrivateNetwork ??
51
+ null);
52
+ const groupChannels = (account?.groupChannels ??
53
+ base.groupChannels ??
54
+ []);
55
+ const dmAllowlist = (account?.dmAllowlist ??
56
+ base.dmAllowlist ??
57
+ []);
48
58
  const groupInviteAllowlist = (account?.groupInviteAllowlist ??
49
59
  base.groupInviteAllowlist ??
50
60
  []);
51
61
  const autoDiscoverChannels = (account?.autoDiscoverChannels ??
52
62
  base.autoDiscoverChannels ??
53
63
  null);
54
- const showModelSignature = (account?.showModelSignature ?? base.showModelSignature ?? null);
55
- const autoAcceptDmInvites = (account?.autoAcceptDmInvites ?? base.autoAcceptDmInvites ?? null);
64
+ const showModelSignature = (account?.showModelSignature ??
65
+ base.showModelSignature ??
66
+ null);
67
+ const autoAcceptDmInvites = (account?.autoAcceptDmInvites ??
68
+ base.autoAcceptDmInvites ??
69
+ null);
56
70
  const autoAcceptGroupInvites = (account?.autoAcceptGroupInvites ??
57
71
  base.autoAcceptGroupInvites ??
58
72
  null);
59
73
  const ownerShip = (account?.ownerShip ?? base.ownerShip ?? null);
60
- const reactionLevel = (account?.reactionLevel ?? base.reactionLevel ?? null);
74
+ const reactionLevel = (account?.reactionLevel ??
75
+ base.reactionLevel ??
76
+ null);
61
77
  const maxConsecutiveBotResponses = (account
62
78
  ?.maxConsecutiveBotResponses ??
63
79
  base.maxConsecutiveBotResponses ??
64
80
  null);
65
81
  const telemetry = resolveTelemetryConfig(base.telemetry, account?.telemetry);
66
- const defaultAuthorizedShips = (account?.defaultAuthorizedShips ??
82
+ const defaultAuthorizedShips = (account
83
+ ?.defaultAuthorizedShips ??
67
84
  base?.defaultAuthorizedShips ??
68
85
  []);
69
- const ownerListenEnabled = (account?.ownerListenEnabled ??
86
+ const ownerListenEnabled = (account
87
+ ?.ownerListenEnabled ??
70
88
  base?.ownerListenEnabled ??
71
89
  null);
72
90
  const ownerListenDisabledChannels = (account
@@ -75,7 +93,7 @@ export function resolveTlonAccount(cfg, accountId) {
75
93
  []);
76
94
  const configured = Boolean(ship && url && code);
77
95
  return {
78
- accountId: accountId || "default",
96
+ accountId: accountId || 'default',
79
97
  name: (account?.name ?? base.name ?? null),
80
98
  enabled: (account?.enabled ?? base.enabled ?? true) !== false,
81
99
  configured,
@@ -105,7 +123,7 @@ export function listTlonAccountIds(cfg) {
105
123
  return [];
106
124
  }
107
125
  const accounts = base.accounts ?? {};
108
- return [...(base.ship ? ["default"] : []), ...Object.keys(accounts)];
126
+ return [...(base.ship ? ['default'] : []), ...Object.keys(accounts)];
109
127
  }
110
128
  /**
111
129
  * Like `listTlonAccountIds`, but only includes accounts that are both
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { configureClient } from "@tloncorp/api";
2
- import { createHttpPokeApi } from "./http-poke.js";
3
- import { authenticate } from "./auth.js";
4
- import { ssrfPolicyFromAllowPrivateNetwork } from "./context.js";
5
- import { urbitFetch } from "./fetch.js";
1
+ import { configureClient } from '@tloncorp/api';
2
+ import { authenticate } from './auth.js';
3
+ import { ssrfPolicyFromAllowPrivateNetwork } from './context.js';
4
+ import { urbitFetch } from './fetch.js';
5
+ import { createHttpPokeApi } from './http-poke.js';
6
6
  /**
7
7
  * Create a minimal Urbit-compatible shim that delegates poke() to the given function.
8
8
  * The @tloncorp/api configureClient accepts a `client` that looks like an Urbit instance.
@@ -22,14 +22,18 @@ function createClientShim(pokeFn, shipUrl, scryFn) {
22
22
  scryWithInfo: scryFn
23
23
  ? async (params) => {
24
24
  const result = await scryFn(params);
25
- return { result: result, responseSizeInBytes: 0, responseStatus: 200 };
25
+ return {
26
+ result: result,
27
+ responseSizeInBytes: 0,
28
+ responseStatus: 200,
29
+ };
26
30
  }
27
31
  : async () => {
28
- throw new Error("Scry not supported on this client shim");
32
+ throw new Error('Scry not supported on this client shim');
29
33
  },
30
34
  // Properties configureClient may access
31
35
  verbose: false,
32
- nodeId: "",
36
+ nodeId: '',
33
37
  url: shipUrl,
34
38
  };
35
39
  }
@@ -40,7 +44,7 @@ function createClientShim(pokeFn, shipUrl, scryFn) {
40
44
  export function configureTlonApiWithPoke(pokeFn, ship, shipUrl, scryFn) {
41
45
  const shim = createClientShim(pokeFn, shipUrl, scryFn);
42
46
  configureClient({
43
- shipName: ship.replace(/^~/, ""),
47
+ shipName: ship.replace(/^~/, ''),
44
48
  shipUrl,
45
49
  client: shim,
46
50
  });
@@ -66,12 +70,12 @@ export async function withAuthenticatedTlonApi(params, fn) {
66
70
  baseUrl: params.url,
67
71
  path: scryPath,
68
72
  init: {
69
- method: "GET",
73
+ method: 'GET',
70
74
  headers: { Cookie: cookie },
71
75
  },
72
76
  ssrfPolicy,
73
77
  timeoutMs: 30_000,
74
- auditContext: "tlon-api-scry",
78
+ auditContext: 'tlon-api-scry',
75
79
  });
76
80
  try {
77
81
  if (!response.ok) {
@@ -85,7 +89,7 @@ export async function withAuthenticatedTlonApi(params, fn) {
85
89
  };
86
90
  const shim = createClientShim(api.poke, params.url, scryFn);
87
91
  configureClient({
88
- shipName: params.ship.replace(/^~/, ""),
92
+ shipName: params.ship.replace(/^~/, ''),
89
93
  shipUrl: params.url,
90
94
  client: shim,
91
95
  getCode: async () => params.code,
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../src/urbit/api-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../src/urbit/api-client.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { UrbitAuthError } from "./errors.js";
2
- import { urbitFetch } from "./fetch.js";
1
+ import { UrbitAuthError } from './errors.js';
2
+ import { urbitFetch } from './fetch.js';
3
3
  export async function authenticate(url, code, options = {}) {
4
4
  const { response, release } = await urbitFetch({
5
5
  baseUrl: url,
6
- path: "/~/login",
6
+ path: '/~/login',
7
7
  init: {
8
- method: "POST",
9
- headers: { "Content-Type": "application/x-www-form-urlencoded" },
8
+ method: 'POST',
9
+ headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
10
10
  body: new URLSearchParams({ password: code }).toString(),
11
11
  },
12
12
  ssrfPolicy: options.ssrfPolicy,
@@ -14,17 +14,17 @@ export async function authenticate(url, code, options = {}) {
14
14
  fetchImpl: options.fetchImpl,
15
15
  timeoutMs: options.timeoutMs ?? 15_000,
16
16
  maxRedirects: 3,
17
- auditContext: "tlon-urbit-login",
17
+ auditContext: 'tlon-urbit-login',
18
18
  });
19
19
  try {
20
20
  if (!response.ok) {
21
- throw new UrbitAuthError("auth_failed", `Login failed with status ${response.status}`);
21
+ throw new UrbitAuthError('auth_failed', `Login failed with status ${response.status}`);
22
22
  }
23
23
  // Some Urbit setups require the response body to be read before cookie headers finalize.
24
24
  await response.text().catch(() => { });
25
- const cookie = response.headers.get("set-cookie");
25
+ const cookie = response.headers.get('set-cookie');
26
26
  if (!cookie) {
27
- throw new UrbitAuthError("missing_cookie", "No authentication cookie received");
27
+ throw new UrbitAuthError('missing_cookie', 'No authentication cookie received');
28
28
  }
29
29
  return cookie;
30
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/urbit/auth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AASxC,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,GAAW,EACX,IAAY,EACZ,UAAoC,EAAE;IAEtC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC;QAC7C,OAAO,EAAE,GAAG;QACZ,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;YAChE,IAAI,EAAE,IAAI,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;SACzD;QACD,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,MAAM;QACtC,YAAY,EAAE,CAAC;QACf,YAAY,EAAE,kBAAkB;KACjC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,cAAc,CAAC,aAAa,EAAE,4BAA4B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACzF,CAAC;QAED,yFAAyF;QACzF,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,cAAc,CAAC,gBAAgB,EAAE,mCAAmC,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/urbit/auth.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAYxC,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,GAAW,EACX,IAAY,EACZ,UAAoC,EAAE;IAEtC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC;QAC7C,OAAO,EAAE,GAAG;QACZ,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;YAChE,IAAI,EAAE,IAAI,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;SACzD;QACD,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,MAAM;QACtC,YAAY,EAAE,CAAC;QACf,YAAY,EAAE,kBAAkB;KACjC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,cAAc,CACtB,aAAa,EACb,4BAA4B,QAAQ,CAAC,MAAM,EAAE,CAC9C,CAAC;QACJ,CAAC;QAED,yFAAyF;QACzF,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,cAAc,CACtB,gBAAgB,EAChB,mCAAmC,CACpC,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,11 +1,11 @@
1
- import { isBlockedHostnameOrIp } from "openclaw/plugin-sdk/tlon";
1
+ import { isBlockedHostnameOrIp } from 'openclaw/plugin-sdk/ssrf-runtime';
2
2
  function hasScheme(value) {
3
3
  return /^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//.test(value);
4
4
  }
5
5
  export function validateUrbitBaseUrl(raw) {
6
- const trimmed = String(raw ?? "").trim();
6
+ const trimmed = String(raw ?? '').trim();
7
7
  if (!trimmed) {
8
- return { ok: false, error: "Required" };
8
+ return { ok: false, error: 'Required' };
9
9
  }
10
10
  const candidate = hasScheme(trimmed) ? trimmed : `https://${trimmed}`;
11
11
  let parsed;
@@ -13,21 +13,21 @@ export function validateUrbitBaseUrl(raw) {
13
13
  parsed = new URL(candidate);
14
14
  }
15
15
  catch {
16
- return { ok: false, error: "Invalid URL" };
16
+ return { ok: false, error: 'Invalid URL' };
17
17
  }
18
- if (!["http:", "https:"].includes(parsed.protocol)) {
19
- return { ok: false, error: "URL must use http:// or https://" };
18
+ if (!['http:', 'https:'].includes(parsed.protocol)) {
19
+ return { ok: false, error: 'URL must use http:// or https://' };
20
20
  }
21
21
  if (parsed.username || parsed.password) {
22
- return { ok: false, error: "URL must not include credentials" };
22
+ return { ok: false, error: 'URL must not include credentials' };
23
23
  }
24
- const hostname = parsed.hostname.trim().toLowerCase().replace(/\.$/, "");
24
+ const hostname = parsed.hostname.trim().toLowerCase().replace(/\.$/, '');
25
25
  if (!hostname) {
26
- return { ok: false, error: "Invalid hostname" };
26
+ return { ok: false, error: 'Invalid hostname' };
27
27
  }
28
28
  // Normalize to origin so callers can't smuggle paths/query fragments into the base URL,
29
29
  // and strip a trailing dot from the hostname (DNS root label).
30
- const isIpv6 = hostname.includes(":");
30
+ const isIpv6 = hostname.includes(':');
31
31
  const host = parsed.port
32
32
  ? `${isIpv6 ? `[${hostname}]` : hostname}:${parsed.port}`
33
33
  : isIpv6
@@ -36,7 +36,7 @@ export function validateUrbitBaseUrl(raw) {
36
36
  return { ok: true, baseUrl: `${parsed.protocol}//${host}`, hostname };
37
37
  }
38
38
  export function isBlockedUrbitHostname(hostname) {
39
- const normalized = hostname.trim().toLowerCase().replace(/\.$/, "");
39
+ const normalized = hostname.trim().toLowerCase().replace(/\.$/, '');
40
40
  if (!normalized) {
41
41
  return false;
42
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base-url.js","sourceRoot":"","sources":["../../../src/urbit/base-url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAMjE,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,OAAO,EAAE,CAAC;IAEtE,IAAI,MAAW,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC;IAClE,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC;IAClE,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAClD,CAAC;IAED,wFAAwF;IACxF,+DAA+D;IAC/D,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;QACtB,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE;QACzD,CAAC,CAAC,MAAM;YACN,CAAC,CAAC,IAAI,QAAQ,GAAG;YACjB,CAAC,CAAC,QAAQ,CAAC;IAEf,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACpE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,qBAAqB,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"base-url.js","sourceRoot":"","sources":["../../../src/urbit/base-url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAMzE,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,OAAO,EAAE,CAAC;IAEtE,IAAI,MAAW,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC;IAClE,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC;IAClE,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAClD,CAAC;IAED,wFAAwF;IACxF,+DAA+D;IAC/D,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;QACtB,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE;QACzD,CAAC,CAAC,MAAM;YACN,CAAC,CAAC,IAAI,QAAQ,GAAG;YACjB,CAAC,CAAC,QAAQ,CAAC;IAEf,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACpE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,qBAAqB,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC"}
@@ -1,10 +1,10 @@
1
- import { UrbitHttpError } from "./errors.js";
2
- import { urbitFetch } from "./fetch.js";
1
+ import { UrbitHttpError } from './errors.js';
2
+ import { urbitFetch } from './fetch.js';
3
3
  export async function pokeUrbitChannel(deps, params) {
4
4
  const pokeId = Date.now();
5
5
  const pokeData = {
6
6
  id: pokeId,
7
- action: "poke",
7
+ action: 'poke',
8
8
  ship: deps.ship,
9
9
  app: params.app,
10
10
  mark: params.mark,
@@ -14,9 +14,9 @@ export async function pokeUrbitChannel(deps, params) {
14
14
  baseUrl: deps.baseUrl,
15
15
  path: `/~/channel/${deps.channelId}`,
16
16
  init: {
17
- method: "PUT",
17
+ method: 'PUT',
18
18
  headers: {
19
- "Content-Type": "application/json",
19
+ 'Content-Type': 'application/json',
20
20
  Cookie: deps.cookie,
21
21
  },
22
22
  body: JSON.stringify([pokeData]),
@@ -29,8 +29,8 @@ export async function pokeUrbitChannel(deps, params) {
29
29
  });
30
30
  try {
31
31
  if (!response.ok && response.status !== 204) {
32
- const errorText = await response.text().catch(() => "");
33
- throw new Error(`Poke failed: ${response.status}${errorText ? ` - ${errorText}` : ""}`);
32
+ const errorText = await response.text().catch(() => '');
33
+ throw new Error(`Poke failed: ${response.status}${errorText ? ` - ${errorText}` : ''}`);
34
34
  }
35
35
  return pokeId;
36
36
  }
@@ -44,7 +44,7 @@ export async function scryUrbitPath(deps, params) {
44
44
  baseUrl: deps.baseUrl,
45
45
  path: scryPath,
46
46
  init: {
47
- method: "GET",
47
+ method: 'GET',
48
48
  headers: { Cookie: deps.cookie },
49
49
  },
50
50
  ssrfPolicy: deps.ssrfPolicy,
@@ -68,9 +68,9 @@ export async function createUrbitChannel(deps, params) {
68
68
  baseUrl: deps.baseUrl,
69
69
  path: `/~/channel/${deps.channelId}`,
70
70
  init: {
71
- method: "PUT",
71
+ method: 'PUT',
72
72
  headers: {
73
- "Content-Type": "application/json",
73
+ 'Content-Type': 'application/json',
74
74
  Cookie: deps.cookie,
75
75
  },
76
76
  body: JSON.stringify(params.body),
@@ -83,7 +83,10 @@ export async function createUrbitChannel(deps, params) {
83
83
  });
84
84
  try {
85
85
  if (!response.ok && response.status !== 204) {
86
- throw new UrbitHttpError({ operation: "Channel creation", status: response.status });
86
+ throw new UrbitHttpError({
87
+ operation: 'Channel creation',
88
+ status: response.status,
89
+ });
87
90
  }
88
91
  }
89
92
  finally {
@@ -95,19 +98,19 @@ export async function wakeUrbitChannel(deps) {
95
98
  baseUrl: deps.baseUrl,
96
99
  path: `/~/channel/${deps.channelId}`,
97
100
  init: {
98
- method: "PUT",
101
+ method: 'PUT',
99
102
  headers: {
100
- "Content-Type": "application/json",
103
+ 'Content-Type': 'application/json',
101
104
  Cookie: deps.cookie,
102
105
  },
103
106
  body: JSON.stringify([
104
107
  {
105
108
  id: Date.now(),
106
- action: "poke",
109
+ action: 'poke',
107
110
  ship: deps.ship,
108
- app: "hood",
109
- mark: "helm-hi",
110
- json: "Opening API channel",
111
+ app: 'hood',
112
+ mark: 'helm-hi',
113
+ json: 'Opening API channel',
111
114
  },
112
115
  ]),
113
116
  },
@@ -115,11 +118,14 @@ export async function wakeUrbitChannel(deps) {
115
118
  lookupFn: deps.lookupFn,
116
119
  fetchImpl: deps.fetchImpl,
117
120
  timeoutMs: 30_000,
118
- auditContext: "tlon-urbit-channel-wake",
121
+ auditContext: 'tlon-urbit-channel-wake',
119
122
  });
120
123
  try {
121
124
  if (!response.ok && response.status !== 204) {
122
- throw new UrbitHttpError({ operation: "Channel activation", status: response.status });
125
+ throw new UrbitHttpError({
126
+ operation: 'Channel activation',
127
+ status: response.status,
128
+ });
123
129
  }
124
130
  }
125
131
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"channel-ops.js","sourceRoot":"","sources":["../../../src/urbit/channel-ops.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAYxC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAsB,EACtB,MAA0E;IAE1E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAG;QACf,EAAE,EAAE,MAAM;QACV,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC;IAEF,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC;QAC7C,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,cAAc,IAAI,CAAC,SAAS,EAAE;QACpC,IAAI,EAAE;YACJ,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;SACjC;QACD,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,MAAM;QACjB,YAAY,EAAE,MAAM,CAAC,YAAY;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5C,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,gBAAgB,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1F,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAA4F,EAC5F,MAA8C;IAE9C,MAAM,QAAQ,GAAG,UAAU,MAAM,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC;QAC7C,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;SACjC;QACD,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,MAAM;QACjB,YAAY,EAAE,MAAM,CAAC,YAAY;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,gBAAgB,QAAQ,CAAC,MAAM,aAAa,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAsB,EACtB,MAA+C;IAE/C,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC;QAC7C,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,cAAc,IAAI,CAAC,SAAS,EAAE;QACpC,IAAI,EAAE;YACJ,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;SAClC;QACD,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,MAAM;QACjB,YAAY,EAAE,MAAM,CAAC,YAAY;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5C,MAAM,IAAI,cAAc,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAsB;IAC3D,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,UAAU,CAAC;QAC7C,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,cAAc,IAAI,CAAC,SAAS,EAAE;QACpC,IAAI,EAAE;YACJ,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB;oBACE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;oBACd,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,GAAG,EAAE,MAAM;oBACX,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,qBAAqB;iBAC5B;aACF,CAAC;SACH;QACD,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,MAAM;QACjB,YAAY,EAAE,yBAAyB;KACxC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5C,MAAM,IAAI,cAAc,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAsB,EACtB,MAA2D;IAE3D,MAAM,kBAAkB,CAAC,IAAI,EAAE;QAC7B,IAAI,EAAE,MAAM,CAAC,UAAU;QACvB,YAAY,EAAE,MAAM,CAAC,kBAAkB;KACxC,CAAC,CAAC;IACH,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"channel-ops.js","sourceRoot":"","sources":["../../../src/urbit/channel-ops.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,21 @@
1
- import { validateUrbitBaseUrl } from "./base-url.js";
2
- import { UrbitUrlError } from "./errors.js";
1
+ import { validateUrbitBaseUrl } from './base-url.js';
2
+ import { UrbitUrlError } from './errors.js';
3
3
  export function resolveShipFromHostname(hostname) {
4
- const trimmed = hostname.trim().toLowerCase().replace(/\.$/, "");
4
+ const trimmed = hostname.trim().toLowerCase().replace(/\.$/, '');
5
5
  if (!trimmed) {
6
- return "";
6
+ return '';
7
7
  }
8
- if (trimmed.includes(".")) {
9
- return trimmed.split(".")[0] ?? trimmed;
8
+ if (trimmed.includes('.')) {
9
+ return trimmed.split('.')[0] ?? trimmed;
10
10
  }
11
11
  return trimmed;
12
12
  }
13
13
  export function normalizeUrbitShip(ship, hostname) {
14
- const raw = ship?.replace(/^~/, "") ?? resolveShipFromHostname(hostname);
14
+ const raw = ship?.replace(/^~/, '') ?? resolveShipFromHostname(hostname);
15
15
  return raw.trim();
16
16
  }
17
17
  export function normalizeUrbitCookie(cookie) {
18
- return cookie.split(";")[0] ?? cookie;
18
+ return cookie.split(';')[0] ?? cookie;
19
19
  }
20
20
  export function getUrbitContext(url, ship) {
21
21
  const validated = validateUrbitBaseUrl(url);
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/urbit/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQ5C,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACjE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC;IAC1C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAwB,EAAE,QAAgB;IAC3E,MAAM,GAAG,GAAG,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACzE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,IAAa;IACxD,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO;QACL,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ;QAC5B,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,mBAA+C;IAE/C,OAAO,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACzE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAClC,oEAAoE;IACpE,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/urbit/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQ5C,MAAM,UAAU,uBAAuB,CAAC,QAAgB;IACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACjE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC;IAC1C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,IAAwB,EACxB,QAAgB;IAEhB,MAAM,GAAG,GAAG,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACzE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,IAAa;IACxD,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO;QACL,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ;QAC5B,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,mBAA+C;IAE/C,OAAO,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACzE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAClC,oEAAoE;IACpE,OAAO,SAAS,CAAC;AACnB,CAAC"}