agim-cli 1.2.41 → 1.2.43

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.
@@ -1 +1 @@
1
- {"version":3,"file":"a2a-notify.d.ts","sourceRoot":"","sources":["../../src/core/a2a-notify.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAI/C,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,WAAW,GAAG,SAAS,CAAA;AA2ExD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAsB,cAAc,CAClC,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,IAAI,CAAC,CAaf;AAID,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAChD;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CAoBf;AAID,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC1D,OAAO,CAAC,IAAI,CAAC,CAQf;AAID,wBAAsB,eAAe,CACnC,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACzE,OAAO,CAAC,IAAI,CAAC,CASf;AAkBD,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb;IAAE,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,CAmCtB"}
1
+ {"version":3,"file":"a2a-notify.d.ts","sourceRoot":"","sources":["../../src/core/a2a-notify.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAI/C,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,WAAW,GAAG,SAAS,CAAA;AA2ExD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAsB,cAAc,CAClC,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,eAAe,GACpB,OAAO,CAAC,IAAI,CAAC,CAaf;AAID,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAChD;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CAoBf;AAID,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC1D,OAAO,CAAC,IAAI,CAAC,CAQf;AAID,wBAAsB,eAAe,CACnC,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACzE,OAAO,CAAC,IAAI,CAAC,CASf;AAkBD,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb;IAAE,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,CAmCtB"}
@@ -23,7 +23,8 @@ import { promises as fs } from 'node:fs';
23
23
  import { logger as rootLogger } from './logger.js';
24
24
  import { sink } from './message-sink.js';
25
25
  import { savePaste } from './viewer-local.js';
26
- import { buildPasteUrl } from './viewer-config.js';
26
+ import { buildPasteUrl, resolveViewerMode } from './viewer-config.js';
27
+ import { postPasteRemote } from './viewer-remote.js';
27
28
  import { getArtifactsDir } from './artifacts.js';
28
29
  const log = rootLogger.child({ component: 'a2a-notify' });
29
30
  function readMode() {
@@ -244,8 +245,21 @@ async function snapshotToViewerLink(jobId, filename, title) {
244
245
  try {
245
246
  const buf = await fs.readFile(join(outputDir, filename));
246
247
  const lower = filename.toLowerCase();
248
+ const text = buf.toString('utf8');
249
+ // v1.2.42 — when remote-paste mode is active, upload to the
250
+ // configured paste server first. Fall back to local viewer on any
251
+ // failure so A2A snapshot links keep working even if the remote
252
+ // server is down.
253
+ if (resolveViewerMode() === 'remote') {
254
+ const remoteUrl = await postPasteRemote({
255
+ content: text,
256
+ source: `a2a:job-${jobId}:${filename}`,
257
+ });
258
+ if (remoteUrl)
259
+ return remoteUrl;
260
+ }
247
261
  const id = savePaste({
248
- content: buf.toString('utf8'),
262
+ content: text,
249
263
  content_type: (lower.endsWith('.md') || lower.endsWith('.markdown')) ? 'markdown' : 'plain',
250
264
  title,
251
265
  source: `a2a:job-${jobId}:${filename}`,
@@ -1 +1 @@
1
- {"version":3,"file":"a2a-notify.js","sourceRoot":"","sources":["../../src/core/a2a-notify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"a2a-notify.js","sourceRoot":"","sources":["../../src/core/a2a-notify.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"message-sink.d.ts","sourceRoot":"","sources":["../../src/core/message-sink.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAGlD,OAAO,EAEL,KAAK,UAAU,EAAE,KAAK,cAAc,EACrC,MAAM,aAAa,CAAA;AAQpB,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAA;AACjC,MAAM,MAAM,YAAY,GAAG,cAAc,CAAA;AAEzC,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB;;2CAEuC;IACvC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd;;oDAEgD;IAChD,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB;;0BAEsB;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB;uEACmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;6EAMyE;IACzE,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB;;uCAEmC;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB;;yCAEqC;IACrC,SAAS,EAAE,OAAO,CAAA;CACnB;AAUD;;;;;;;mEAOmE;AACnE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAS/E;AAkGD,wBAAsB,OAAO,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CA+FjE;AAwED,wBAAgB,WAAW,IAAI,IAAI,CAgBlC;AAED,wBAAgB,UAAU,IAAI,IAAI,CAOjC;AAED,8CAA8C;AAC9C,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzD;AAGD,eAAO,MAAM,IAAI;;;;CAIhB,CAAA"}
1
+ {"version":3,"file":"message-sink.d.ts","sourceRoot":"","sources":["../../src/core/message-sink.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAGlD,OAAO,EAEL,KAAK,UAAU,EAAE,KAAK,cAAc,EACrC,MAAM,aAAa,CAAA;AASpB,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAA;AACjC,MAAM,MAAM,YAAY,GAAG,cAAc,CAAA;AAEzC,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB;;2CAEuC;IACvC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd;;oDAEgD;IAChD,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB;;0BAEsB;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB;uEACmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;6EAMyE;IACzE,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB;;uCAEmC;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB;;yCAEqC;IACrC,SAAS,EAAE,OAAO,CAAA;CACnB;AAUD;;;;;;;mEAOmE;AACnE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAS/E;AAiHD,wBAAsB,OAAO,CAAC,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CA+FjE;AAwED,wBAAgB,WAAW,IAAI,IAAI,CAgBlC;AAED,wBAAgB,UAAU,IAAI,IAAI,CAOjC;AAED,8CAA8C;AAC9C,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzD;AAGD,eAAO,MAAM,IAAI;;;;CAIhB,CAAA"}
@@ -29,8 +29,9 @@ import { logger as rootLogger } from './logger.js';
29
29
  import { enqueue, pickPending, markDelivered, markFailed, } from './outbox.js';
30
30
  import { markJobDelivered, markJobFailed } from './job-board.js';
31
31
  import { decideRender } from './render-router.js';
32
- import { getViewerConfig, buildPasteUrl } from './viewer-config.js';
32
+ import { getViewerConfig, buildPasteUrl, resolveViewerMode } from './viewer-config.js';
33
33
  import { savePaste } from './viewer-local.js';
34
+ import { postPasteRemote } from './viewer-remote.js';
34
35
  const log = rootLogger.child({ component: 'message-sink' });
35
36
  function defaultThreadKey(p) {
36
37
  return p.threadKey ?? `${p.platform}:${p.channelId}:${p.threadId}`;
@@ -106,13 +107,17 @@ async function doSend(row, overrideAdapter) {
106
107
  // Viewer routing
107
108
  // ---------------------------------------------------------------------------
108
109
  /**
109
- * Run the agent text through render-router and, when routing to web, persist
110
- * the full markdown to viewer-local and replace the IM-facing string with
111
- * `<summary>\n\n📎 <url>`. Designed to be a pure transformation on any
112
- * fallback path (viewer disabled, save failed, base URL missing) it returns
113
- * the original or a lightly-degraded string so the message still ships.
110
+ * Run the agent text through render-router and, when routing to web, either
111
+ * - upload markdown to a remote paste server (v1.2.42 mode='remote'), OR
112
+ * - persist to local viewer.db + build link off publicBaseUrl/tunnel.
113
+ *
114
+ * Designed so any failure path (viewer disabled, save failed, remote down,
115
+ * no base URL) cleanly degrades to inline so the user still gets a reply.
116
+ *
117
+ * NOTE: now async because the remote mode does a real HTTP POST. Local
118
+ * mode stays effectively sync.
114
119
  */
115
- function applyViewerRouting(text, p, threadKey) {
120
+ async function applyViewerRouting(text, p, threadKey) {
116
121
  const cfg = getViewerConfig();
117
122
  const decision = decideRender(text, { thresholds: cfg.thresholds, viewerEnabled: cfg.enabled });
118
123
  if (decision.mode === 'inline') {
@@ -121,6 +126,16 @@ function applyViewerRouting(text, p, threadKey) {
121
126
  // truncate-link / summary-link both want a saved paste + a link.
122
127
  const fullMd = decision.fullMd ?? text;
123
128
  const summary = decision.summary ?? '';
129
+ const mode = resolveViewerMode(cfg);
130
+ // v1.2.42 — remote mode: upload + use returned URL directly. On
131
+ // failure (timeout, non-2xx, missing url field) fall through to the
132
+ // local fallback path below so users always get *something*.
133
+ if (mode === 'remote') {
134
+ const url = await postPasteRemote({ content: fullMd, source: threadKey });
135
+ if (url)
136
+ return summary ? `${summary}\n\n📎 ${url}` : `📎 ${url}`;
137
+ log.warn({ event: 'sink.viewer.remote_failed', threadId: p.threadId }, 'remote paste upload failed; falling back to local viewer');
138
+ }
124
139
  const id = savePaste({
125
140
  content: fullMd,
126
141
  content_type: 'markdown',
@@ -134,7 +149,7 @@ function applyViewerRouting(text, p, threadKey) {
134
149
  }
135
150
  const url = buildPasteUrl(id);
136
151
  if (!url) {
137
- log.warn({ event: 'sink.viewer.no_base_url', threadId: p.threadId }, 'IMHUB_VIEWER_PUBLIC_BASE_URL is not set; degrading to inline');
152
+ log.warn({ event: 'sink.viewer.no_base_url', threadId: p.threadId }, 'no public URL available (set IMHUB_VIEWER_PUBLIC_BASE_URL, IMHUB_VIEWER_TUNNEL_MODE=quick, or IMHUB_VIEWER_REMOTE_PASTE_URL); degrading to inline');
138
153
  return summary || fullMd;
139
154
  }
140
155
  return summary ? `${summary}\n\n📎 ${url}` : `📎 ${url}`;
@@ -153,7 +168,7 @@ export async function deliver(p) {
153
168
  // bury the result behind a link nobody opens. Card / typing kinds are
154
169
  // also untouched (cards have their own structure; typing is fire-and-forget).
155
170
  if (p.kind === 'text' && p.source === 'agent' && payloadStr.length > 0) {
156
- payloadStr = applyViewerRouting(payloadStr, p, threadKey);
171
+ payloadStr = await applyViewerRouting(payloadStr, p, threadKey);
157
172
  }
158
173
  // Typing indicators are pure UX hints — never persist them. If the worker
159
174
  // delivered a "start typing" row two minutes later it would be ridiculous.
@@ -1 +1 @@
1
- {"version":3,"file":"message-sink.js","sourceRoot":"","sources":["../../src/core/message-sink.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-sink.js","sourceRoot":"","sources":["../../src/core/message-sink.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,24 @@
1
1
  import { type ViewerThresholds } from './render-router.js';
2
2
  export type ViewerTunnelMode = 'off' | 'quick';
3
+ /**
4
+ * v1.2.42 (#viewer-3-mode) — three ways agim can produce a public URL
5
+ * for long markdown:
6
+ * - 'remote' : POST to an external paste server that returns the URL
7
+ * (good for users without their own domain — operator
8
+ * ships agim-cli with a hosted endpoint preconfigured).
9
+ * - 'local' : keep the markdown in this host's viewer.db, serve it
10
+ * from the web server, and rely on an operator-managed
11
+ * reverse proxy / public DNS (publicBaseUrl).
12
+ * - 'tunnel' : same as 'local' for storage; URL comes from
13
+ * cloudflared quick tunnel. Cloudflared may be blocked
14
+ * in mainland China (DNS) — we surface that as a setup
15
+ * hint, not a hard failure.
16
+ * - 'none' : nothing usable; sink degrades to inline summary.
17
+ *
18
+ * Mode picker order (first non-empty wins):
19
+ * remote-paste url → public base url → quick tunnel → none
20
+ */
21
+ export type ViewerMode = 'remote' | 'local' | 'tunnel' | 'none';
3
22
  export interface ViewerConfig {
4
23
  /** Master switch. When false, all replies are sent inline regardless of length. */
5
24
  enabled: boolean;
@@ -17,10 +36,64 @@ export interface ViewerConfig {
17
36
  * `https://*.trycloudflare.com` and changes per agim restart.
18
37
  */
19
38
  tunnelMode: ViewerTunnelMode;
39
+ /**
40
+ * v1.2.42 — Remote paste-server endpoint. When set, message-sink
41
+ * uploads the full markdown to this URL via HTTP POST instead of
42
+ * storing it in viewer.db, and uses the URL returned by the server
43
+ * for the IM link. Lets users without their own domain still get
44
+ * working viewer links (the operator runs a single hosted paste
45
+ * server for everyone).
46
+ *
47
+ * Wire contract (server side): receive `POST <url>`, body =
48
+ * markdown (text/markdown or application/json {markdown}), respond
49
+ * with JSON `{ url: "https://..." }` for the public link. See
50
+ * `services/viewer-paste/README.md` for a reference implementation.
51
+ */
52
+ remotePasteUrl: string;
53
+ /** Optional Bearer token forwarded to the remote paste server. */
54
+ remotePasteToken: string;
20
55
  /** Char / line / code-block thresholds for routing to web. */
21
56
  thresholds: ViewerThresholds;
22
57
  }
58
+ /**
59
+ * v1.2.43 — community-hosted default paste server.
60
+ *
61
+ * Operators who don't have a domain or working tunnel still get usable
62
+ * viewer links out of the box by routing through this public service.
63
+ * Users can:
64
+ * - Override by setting their own IMHUB_VIEWER_REMOTE_PASTE_URL
65
+ * - Opt back into a local-only path by setting IMHUB_VIEWER_PUBLIC_BASE_URL
66
+ * - Disable the default entirely with IMHUB_VIEWER_NO_DEFAULT_REMOTE=1
67
+ *
68
+ * IMPORTANT — privacy: with the default on, any markdown long enough
69
+ * to exit the inline path is uploaded to viewer.iclaw.host over HTTPS.
70
+ * agim's CLI wizard surfaces this trade-off on first run; deployment
71
+ * docs (`docs/viewer-modes.md`) cover it too.
72
+ */
73
+ export declare const DEFAULT_REMOTE_PASTE_URL = "https://viewer.iclaw.host/paste";
23
74
  export declare function getViewerConfig(): ViewerConfig;
75
+ /**
76
+ * v1.2.42 / v1.2.43 — pick the active viewer mode. First non-empty
77
+ * configured source wins; the community default remote is the final
78
+ * fallback so an out-of-the-box install still produces working links.
79
+ *
80
+ * Order:
81
+ * 1. user-set IMHUB_VIEWER_REMOTE_PASTE_URL → remote (operator-managed)
82
+ * 2. user-set IMHUB_VIEWER_PUBLIC_BASE_URL → local (own domain)
83
+ * 3. IMHUB_VIEWER_TUNNEL_MODE=quick → tunnel
84
+ * 4. community default viewer.iclaw.host → remote (default-on)
85
+ * 5. nothing → none (inline degrade)
86
+ *
87
+ * Set IMHUB_VIEWER_NO_DEFAULT_REMOTE=1 to skip step 4 (privacy opt-out).
88
+ */
89
+ export declare function resolveViewerMode(cfg?: ViewerConfig): ViewerMode;
90
+ /**
91
+ * Resolve the effective remote paste URL the sink should POST to.
92
+ * Honours user-set value first, then the community default unless
93
+ * the operator opted out via IMHUB_VIEWER_NO_DEFAULT_REMOTE=1.
94
+ * Returns null when no usable URL is available.
95
+ */
96
+ export declare function getEffectiveRemotePasteUrl(cfg?: ViewerConfig): string | null;
24
97
  /**
25
98
  * Resolve the effective public base URL. Order of preference:
26
99
  * 1. Explicit IMHUB_VIEWER_PUBLIC_BASE_URL (operator-managed reverse proxy)
@@ -1 +1 @@
1
- {"version":3,"file":"viewer-config.d.ts","sourceRoot":"","sources":["../../src/core/viewer-config.ts"],"names":[],"mappings":"AAMA,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAG9E,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,OAAO,CAAA;AAE9C,MAAM,WAAW,YAAY;IAC3B,mFAAmF;IACnF,OAAO,EAAE,OAAO,CAAA;IAChB;;;;;OAKG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB;;;;;OAKG;IACH,UAAU,EAAE,gBAAgB,CAAA;IAC5B,8DAA8D;IAC9D,UAAU,EAAE,gBAAgB,CAAA;CAC7B;AAQD,wBAAgB,eAAe,IAAI,YAAY,CAgB9C;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAQnE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAIjF"}
1
+ {"version":3,"file":"viewer-config.d.ts","sourceRoot":"","sources":["../../src/core/viewer-config.ts"],"names":[],"mappings":"AAMA,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAG9E,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,OAAO,CAAA;AAE9C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAA;AAE/D,MAAM,WAAW,YAAY;IAC3B,mFAAmF;IACnF,OAAO,EAAE,OAAO,CAAA;IAChB;;;;;OAKG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB;;;;;OAKG;IACH,UAAU,EAAE,gBAAgB,CAAA;IAC5B;;;;;;;;;;;;OAYG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,kEAAkE;IAClE,gBAAgB,EAAE,MAAM,CAAA;IACxB,8DAA8D;IAC9D,UAAU,EAAE,gBAAgB,CAAA;CAC7B;AAQD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,wBAAwB,oCAAoC,CAAA;AAEzE,wBAAgB,eAAe,IAAI,YAAY,CAoB9C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,YAAgC,GAAG,UAAU,CAOnF;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,GAAE,YAAgC,GAAG,MAAM,GAAG,IAAI,CAI/F;AAOD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAQnE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAIjF"}
@@ -11,16 +11,36 @@ function parsePositiveInt(raw, fallback) {
11
11
  const n = parseInt(raw, 10);
12
12
  return Number.isFinite(n) && n > 0 ? n : fallback;
13
13
  }
14
+ /**
15
+ * v1.2.43 — community-hosted default paste server.
16
+ *
17
+ * Operators who don't have a domain or working tunnel still get usable
18
+ * viewer links out of the box by routing through this public service.
19
+ * Users can:
20
+ * - Override by setting their own IMHUB_VIEWER_REMOTE_PASTE_URL
21
+ * - Opt back into a local-only path by setting IMHUB_VIEWER_PUBLIC_BASE_URL
22
+ * - Disable the default entirely with IMHUB_VIEWER_NO_DEFAULT_REMOTE=1
23
+ *
24
+ * IMPORTANT — privacy: with the default on, any markdown long enough
25
+ * to exit the inline path is uploaded to viewer.iclaw.host over HTTPS.
26
+ * agim's CLI wizard surfaces this trade-off on first run; deployment
27
+ * docs (`docs/viewer-modes.md`) cover it too.
28
+ */
29
+ export const DEFAULT_REMOTE_PASTE_URL = 'https://viewer.iclaw.host/paste';
14
30
  export function getViewerConfig() {
15
31
  const enabledRaw = (process.env.IMHUB_VIEWER_ENABLED || '').toLowerCase();
16
32
  const enabled = enabledRaw === '1' || enabledRaw === 'true' || enabledRaw === 'yes';
17
33
  const publicBaseUrl = (process.env.IMHUB_VIEWER_PUBLIC_BASE_URL || '').replace(/\/$/, '');
18
34
  const tunnelModeRaw = (process.env.IMHUB_VIEWER_TUNNEL_MODE || 'off').toLowerCase();
19
35
  const tunnelMode = tunnelModeRaw === 'quick' ? 'quick' : 'off';
36
+ const remotePasteUrl = (process.env.IMHUB_VIEWER_REMOTE_PASTE_URL || '').replace(/\/$/, '');
37
+ const remotePasteToken = process.env.IMHUB_VIEWER_REMOTE_PASTE_TOKEN || '';
20
38
  return {
21
39
  enabled,
22
40
  publicBaseUrl,
23
41
  tunnelMode,
42
+ remotePasteUrl,
43
+ remotePasteToken,
24
44
  thresholds: {
25
45
  chars: parsePositiveInt(process.env.IMHUB_VIEWER_CHARS, DEFAULT_THRESHOLDS.chars),
26
46
  lines: parsePositiveInt(process.env.IMHUB_VIEWER_LINES, DEFAULT_THRESHOLDS.lines),
@@ -28,6 +48,50 @@ export function getViewerConfig() {
28
48
  },
29
49
  };
30
50
  }
51
+ /**
52
+ * v1.2.42 / v1.2.43 — pick the active viewer mode. First non-empty
53
+ * configured source wins; the community default remote is the final
54
+ * fallback so an out-of-the-box install still produces working links.
55
+ *
56
+ * Order:
57
+ * 1. user-set IMHUB_VIEWER_REMOTE_PASTE_URL → remote (operator-managed)
58
+ * 2. user-set IMHUB_VIEWER_PUBLIC_BASE_URL → local (own domain)
59
+ * 3. IMHUB_VIEWER_TUNNEL_MODE=quick → tunnel
60
+ * 4. community default viewer.iclaw.host → remote (default-on)
61
+ * 5. nothing → none (inline degrade)
62
+ *
63
+ * Set IMHUB_VIEWER_NO_DEFAULT_REMOTE=1 to skip step 4 (privacy opt-out).
64
+ */
65
+ export function resolveViewerMode(cfg = getViewerConfig()) {
66
+ if (!cfg.enabled)
67
+ return 'none';
68
+ if (cfg.remotePasteUrl)
69
+ return 'remote';
70
+ if (cfg.publicBaseUrl)
71
+ return 'local';
72
+ if (cfg.tunnelMode === 'quick')
73
+ return 'tunnel';
74
+ if (!isDefaultRemoteDisabled())
75
+ return 'remote'; // community default
76
+ return 'none';
77
+ }
78
+ /**
79
+ * Resolve the effective remote paste URL the sink should POST to.
80
+ * Honours user-set value first, then the community default unless
81
+ * the operator opted out via IMHUB_VIEWER_NO_DEFAULT_REMOTE=1.
82
+ * Returns null when no usable URL is available.
83
+ */
84
+ export function getEffectiveRemotePasteUrl(cfg = getViewerConfig()) {
85
+ if (cfg.remotePasteUrl)
86
+ return cfg.remotePasteUrl;
87
+ if (!isDefaultRemoteDisabled())
88
+ return DEFAULT_REMOTE_PASTE_URL;
89
+ return null;
90
+ }
91
+ function isDefaultRemoteDisabled() {
92
+ const v = (process.env.IMHUB_VIEWER_NO_DEFAULT_REMOTE || '').toLowerCase();
93
+ return v === '1' || v === 'true' || v === 'yes';
94
+ }
31
95
  /**
32
96
  * Resolve the effective public base URL. Order of preference:
33
97
  * 1. Explicit IMHUB_VIEWER_PUBLIC_BASE_URL (operator-managed reverse proxy)
@@ -1 +1 @@
1
- {"version":3,"file":"viewer-config.js","sourceRoot":"","sources":["../../src/core/viewer-config.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,EAAE;AACF,4EAA4E;AAC5E,0EAA0E;AAC1E,0EAA0E;AAE1E,OAAO,EAAE,kBAAkB,EAAyB,MAAM,oBAAoB,CAAA;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAyBjD,SAAS,gBAAgB,CAAC,GAAuB,EAAE,QAAgB;IACjE,IAAI,CAAC,GAAG;QAAE,OAAO,QAAQ,CAAA;IACzB,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IAC3B,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;AACnD,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;IACzE,MAAM,OAAO,GAAG,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,KAAK,CAAA;IACnF,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IACzF,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IACnF,MAAM,UAAU,GAAqB,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IAChF,OAAO;QACL,OAAO;QACP,aAAa;QACb,UAAU;QACV,UAAU,EAAE;YACV,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,KAAK,CAAC;YACjF,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,KAAK,CAAC;YACjF,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,kBAAkB,CAAC,SAAS,CAAC;SAC/F;KACF,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,QAAiB;IACzD,MAAM,GAAG,GAAG,eAAe,EAAE,CAAA;IAC7B,IAAI,GAAG,CAAC,aAAa;QAAE,OAAO,GAAG,CAAC,aAAa,CAAA;IAC/C,IAAI,GAAG,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,mBAAmB,EAAE,CAAA;QAChC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAA;IACnB,CAAC;IACD,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,EAAU,EAAE,eAAwB;IAChE,MAAM,IAAI,GAAG,yBAAyB,CAAC,eAAe,CAAC,CAAA;IACvD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACtB,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAA;AAC7C,CAAC"}
1
+ {"version":3,"file":"viewer-config.js","sourceRoot":"","sources":["../../src/core/viewer-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ export interface PostRemoteOpts {
2
+ content: string;
3
+ source?: string;
4
+ /** Server-suggested retention. The server is free to clamp or ignore. */
5
+ ttlSeconds?: number;
6
+ }
7
+ /**
8
+ * Upload markdown to the configured remote paste server. Returns the
9
+ * shareable URL on success, null otherwise (caller should degrade).
10
+ *
11
+ * Failure modes that return null (without throwing):
12
+ * - env not configured
13
+ * - upload body too large
14
+ * - network timeout / DNS / 5xx
15
+ * - non-JSON or missing `url` in response
16
+ *
17
+ * Returns null instead of throwing so the message-sink degradation
18
+ * path is the same as for "no public URL configured at all".
19
+ */
20
+ export declare function postPasteRemote(opts: PostRemoteOpts): Promise<string | null>;
21
+ //# sourceMappingURL=viewer-remote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewer-remote.d.ts","sourceRoot":"","sources":["../../src/core/viewer-remote.ts"],"names":[],"mappings":"AA6CA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAqElF"}
@@ -0,0 +1,127 @@
1
+ // v1.2.42 — viewer-remote.ts
2
+ //
3
+ // Three-mode viewer routing (see viewer-config.ts) — this file is the
4
+ // "remote" mode. Upload the full markdown to an external paste server
5
+ // and use the URL it returns instead of storing locally + relying on
6
+ // the operator's reverse proxy.
7
+ //
8
+ // Why this mode exists
9
+ // --------------------
10
+ // Most agim users (especially in mainland China) don't have a public
11
+ // domain or a working cloudflared tunnel. Asking them to set up a
12
+ // reverse proxy just to make IM long-message links work is a tall
13
+ // order. With this mode the maintainer (or a community-hosted
14
+ // service) runs ONE paste server, and every agim install POSTs its
15
+ // markdown there.
16
+ //
17
+ // Privacy trade-off
18
+ // -----------------
19
+ // Activating this mode means the user's agent output LEAVES the host
20
+ // over HTTPS. Default is OFF; users opt in via env / config. The CLI
21
+ // wizard explains this trade-off explicitly.
22
+ //
23
+ // Wire contract
24
+ // -------------
25
+ // Request:
26
+ // POST <IMHUB_VIEWER_REMOTE_PASTE_URL>
27
+ // Content-Type: application/json
28
+ // Authorization: Bearer <token> (optional; sent only when set)
29
+ // Body: { "content": "<markdown>", "source": "<thread-key>",
30
+ // "ttlSeconds": 2592000 // optional TTL hint (30 days)
31
+ // }
32
+ //
33
+ // Response (2xx):
34
+ // { "url": "https://paste.example/v/<id>" }
35
+ //
36
+ // Anything else → return null; the sink degrades to inline summary.
37
+ import { logger as rootLogger } from './logger.js';
38
+ import { getViewerConfig, getEffectiveRemotePasteUrl } from './viewer-config.js';
39
+ const log = rootLogger.child({ component: 'viewer-remote' });
40
+ const POST_TIMEOUT_MS = 10_000;
41
+ const MAX_UPLOAD_BYTES = 1_000_000; // 1 MB. Bigger than this, degrade.
42
+ /**
43
+ * Upload markdown to the configured remote paste server. Returns the
44
+ * shareable URL on success, null otherwise (caller should degrade).
45
+ *
46
+ * Failure modes that return null (without throwing):
47
+ * - env not configured
48
+ * - upload body too large
49
+ * - network timeout / DNS / 5xx
50
+ * - non-JSON or missing `url` in response
51
+ *
52
+ * Returns null instead of throwing so the message-sink degradation
53
+ * path is the same as for "no public URL configured at all".
54
+ */
55
+ export async function postPasteRemote(opts) {
56
+ const cfg = getViewerConfig();
57
+ const endpoint = getEffectiveRemotePasteUrl(cfg);
58
+ if (!endpoint)
59
+ return null;
60
+ const bytes = Buffer.byteLength(opts.content, 'utf-8');
61
+ if (bytes > MAX_UPLOAD_BYTES) {
62
+ log.warn({
63
+ event: 'viewer.remote.too_large',
64
+ bytes, cap: MAX_UPLOAD_BYTES,
65
+ }, 'markdown too large for remote paste; degrading to inline');
66
+ return null;
67
+ }
68
+ try {
69
+ const ac = new AbortController();
70
+ const timer = setTimeout(() => ac.abort(), POST_TIMEOUT_MS);
71
+ let res;
72
+ try {
73
+ res = await fetch(endpoint, {
74
+ method: 'POST',
75
+ headers: {
76
+ 'Content-Type': 'application/json',
77
+ 'User-Agent': 'agim-cli viewer-remote',
78
+ ...(cfg.remotePasteToken ? { Authorization: `Bearer ${cfg.remotePasteToken}` } : {}),
79
+ },
80
+ body: JSON.stringify({
81
+ content: opts.content,
82
+ source: opts.source,
83
+ ttlSeconds: opts.ttlSeconds,
84
+ }),
85
+ signal: ac.signal,
86
+ });
87
+ }
88
+ finally {
89
+ clearTimeout(timer);
90
+ }
91
+ if (!res.ok) {
92
+ log.warn({
93
+ event: 'viewer.remote.bad_status',
94
+ status: res.status,
95
+ }, 'remote paste server returned non-2xx');
96
+ return null;
97
+ }
98
+ let data;
99
+ try {
100
+ data = await res.json();
101
+ }
102
+ catch (err) {
103
+ log.warn({
104
+ event: 'viewer.remote.bad_json',
105
+ err: err instanceof Error ? err.message : String(err),
106
+ }, 'remote paste response was not JSON');
107
+ return null;
108
+ }
109
+ if (!data.url || typeof data.url !== 'string' || !/^https?:\/\//.test(data.url)) {
110
+ log.warn({
111
+ event: 'viewer.remote.missing_url',
112
+ sampleKeys: Object.keys(data || {}).slice(0, 5),
113
+ }, 'remote paste response had no usable url field');
114
+ return null;
115
+ }
116
+ log.debug({ event: 'viewer.remote.posted', bytes, url: data.url });
117
+ return data.url;
118
+ }
119
+ catch (err) {
120
+ log.warn({
121
+ event: 'viewer.remote.failed',
122
+ err: err instanceof Error ? err.message : String(err),
123
+ });
124
+ return null;
125
+ }
126
+ }
127
+ //# sourceMappingURL=viewer-remote.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewer-remote.js","sourceRoot":"","sources":["../../src/core/viewer-remote.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agim-cli",
3
- "version": "1.2.41",
3
+ "version": "1.2.43",
4
4
  "description": "Agim (阿吉姆) — universal messenger-to-agent bridge. Connect WeChat / Feishu / DingTalk / Email to Claude Code / Codex / OpenCode, or any custom agent via ACP. Installs the `agim` command.",
5
5
  "type": "module",
6
6
  "bin": {