jishushell 0.0.1 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +36 -0
  3. package/THIRD-PARTY-NOTICES +387 -0
  4. package/dist/auth.d.ts +6 -0
  5. package/dist/auth.js +88 -0
  6. package/dist/auth.js.map +1 -0
  7. package/dist/cli.d.ts +2 -0
  8. package/dist/cli.js +290 -0
  9. package/dist/cli.js.map +1 -0
  10. package/dist/config.d.ts +24 -0
  11. package/dist/config.js +226 -0
  12. package/dist/config.js.map +1 -0
  13. package/dist/constants.d.ts +3 -0
  14. package/dist/constants.js +15 -0
  15. package/dist/constants.js.map +1 -0
  16. package/dist/control.d.ts +44 -0
  17. package/dist/control.js +1359 -0
  18. package/dist/control.js.map +1 -0
  19. package/dist/crypto-shim.d.ts +1 -0
  20. package/dist/crypto-shim.js +2 -0
  21. package/dist/crypto-shim.js.map +1 -0
  22. package/dist/doctor.d.ts +46 -0
  23. package/dist/doctor.js +937 -0
  24. package/dist/doctor.js.map +1 -0
  25. package/dist/install.d.ts +27 -0
  26. package/dist/install.js +570 -0
  27. package/dist/install.js.map +1 -0
  28. package/dist/routes/auth.d.ts +4 -0
  29. package/dist/routes/auth.js +151 -0
  30. package/dist/routes/auth.js.map +1 -0
  31. package/dist/routes/instances.d.ts +2 -0
  32. package/dist/routes/instances.js +1303 -0
  33. package/dist/routes/instances.js.map +1 -0
  34. package/dist/routes/setup.d.ts +2 -0
  35. package/dist/routes/setup.js +139 -0
  36. package/dist/routes/setup.js.map +1 -0
  37. package/dist/routes/system.d.ts +2 -0
  38. package/dist/routes/system.js +102 -0
  39. package/dist/routes/system.js.map +1 -0
  40. package/dist/server.d.ts +6 -0
  41. package/dist/server.js +392 -0
  42. package/dist/server.js.map +1 -0
  43. package/dist/services/instance-manager.d.ts +67 -0
  44. package/dist/services/instance-manager.js +1319 -0
  45. package/dist/services/instance-manager.js.map +1 -0
  46. package/dist/services/llm-proxy/adapters.d.ts +3 -0
  47. package/dist/services/llm-proxy/adapters.js +309 -0
  48. package/dist/services/llm-proxy/adapters.js.map +1 -0
  49. package/dist/services/llm-proxy/circuit-breaker.d.ts +9 -0
  50. package/dist/services/llm-proxy/circuit-breaker.js +73 -0
  51. package/dist/services/llm-proxy/circuit-breaker.js.map +1 -0
  52. package/dist/services/llm-proxy/encryption.d.ts +6 -0
  53. package/dist/services/llm-proxy/encryption.js +61 -0
  54. package/dist/services/llm-proxy/encryption.js.map +1 -0
  55. package/dist/services/llm-proxy/index.d.ts +24 -0
  56. package/dist/services/llm-proxy/index.js +708 -0
  57. package/dist/services/llm-proxy/index.js.map +1 -0
  58. package/dist/services/llm-proxy/rate-limiter.d.ts +1 -0
  59. package/dist/services/llm-proxy/rate-limiter.js +39 -0
  60. package/dist/services/llm-proxy/rate-limiter.js.map +1 -0
  61. package/dist/services/llm-proxy/sse.d.ts +10 -0
  62. package/dist/services/llm-proxy/sse.js +378 -0
  63. package/dist/services/llm-proxy/sse.js.map +1 -0
  64. package/dist/services/llm-proxy/ssrf.d.ts +16 -0
  65. package/dist/services/llm-proxy/ssrf.js +185 -0
  66. package/dist/services/llm-proxy/ssrf.js.map +1 -0
  67. package/dist/services/llm-proxy/types.d.ts +52 -0
  68. package/dist/services/llm-proxy/types.js +2 -0
  69. package/dist/services/llm-proxy/types.js.map +1 -0
  70. package/dist/services/llm-proxy/usage.d.ts +12 -0
  71. package/dist/services/llm-proxy/usage.js +108 -0
  72. package/dist/services/llm-proxy/usage.js.map +1 -0
  73. package/dist/services/nomad-manager.d.ts +22 -0
  74. package/dist/services/nomad-manager.js +828 -0
  75. package/dist/services/nomad-manager.js.map +1 -0
  76. package/dist/services/plugin-installer.d.ts +22 -0
  77. package/dist/services/plugin-installer.js +102 -0
  78. package/dist/services/plugin-installer.js.map +1 -0
  79. package/dist/services/process-manager.d.ts +25 -0
  80. package/dist/services/process-manager.js +531 -0
  81. package/dist/services/process-manager.js.map +1 -0
  82. package/dist/services/setup-manager.d.ts +93 -0
  83. package/dist/services/setup-manager.js +1922 -0
  84. package/dist/services/setup-manager.js.map +1 -0
  85. package/dist/services/system-monitor.d.ts +1 -0
  86. package/dist/services/system-monitor.js +79 -0
  87. package/dist/services/system-monitor.js.map +1 -0
  88. package/dist/services/telemetry/activation.d.ts +12 -0
  89. package/dist/services/telemetry/activation.js +75 -0
  90. package/dist/services/telemetry/activation.js.map +1 -0
  91. package/dist/services/telemetry/client.d.ts +21 -0
  92. package/dist/services/telemetry/client.js +47 -0
  93. package/dist/services/telemetry/client.js.map +1 -0
  94. package/dist/services/telemetry/device-fingerprint.d.ts +18 -0
  95. package/dist/services/telemetry/device-fingerprint.js +123 -0
  96. package/dist/services/telemetry/device-fingerprint.js.map +1 -0
  97. package/dist/services/telemetry/heartbeat.d.ts +13 -0
  98. package/dist/services/telemetry/heartbeat.js +81 -0
  99. package/dist/services/telemetry/heartbeat.js.map +1 -0
  100. package/dist/services/telemetry/index.d.ts +3 -0
  101. package/dist/services/telemetry/index.js +4 -0
  102. package/dist/services/telemetry/index.js.map +1 -0
  103. package/dist/types.d.ts +51 -0
  104. package/dist/types.js +2 -0
  105. package/dist/types.js.map +1 -0
  106. package/dist/utils/safe-json.d.ts +2 -0
  107. package/dist/utils/safe-json.js +80 -0
  108. package/dist/utils/safe-json.js.map +1 -0
  109. package/dist/utils/ttl-cache.d.ts +29 -0
  110. package/dist/utils/ttl-cache.js +77 -0
  111. package/dist/utils/ttl-cache.js.map +1 -0
  112. package/install/jishu-install.sh +2920 -0
  113. package/install/jishu-uninstall.sh +811 -0
  114. package/install/post-install.sh +110 -0
  115. package/install/post-uninstall.sh +46 -0
  116. package/package.json +57 -8
  117. package/public/assets/Dashboard-CAOQDYDR.js +1 -0
  118. package/public/assets/InitPassword-CkehIkJG.js +1 -0
  119. package/public/assets/InstanceDetail-CzW2S95J.js +14 -0
  120. package/public/assets/Login-RkjzTNWg.js +1 -0
  121. package/public/assets/NewInstance-DdbErdjA.js +1 -0
  122. package/public/assets/Settings-BUD7zwv9.js +1 -0
  123. package/public/assets/Setup-RRTIERGG.js +1 -0
  124. package/public/assets/index-77Ug7feY.css +1 -0
  125. package/public/assets/index-DfRnVUQR.js +16 -0
  126. package/public/assets/providers-lBSOjUWy.js +1 -0
  127. package/public/assets/usePolling-CqQ8hrNc.js +1 -0
  128. package/public/assets/vendor-i18n-Bvxxh8Di.js +9 -0
  129. package/public/assets/vendor-react-DONn7uBV.js +59 -0
  130. package/public/index.html +15 -0
  131. package/scripts/build-image.sh +55 -0
  132. package/scripts/run.sh +310 -0
  133. package/scripts/setup-pi.sh +80 -0
  134. package/scripts/start-feishu1.js +46 -0
  135. package/index.js +0 -0
  136. package/jishushell-0.0.1.tgz +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nomad-manager.js","sourceRoot":"","sources":["../../src/services/nomad-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Plugin Installer — global serial queue for IM plugin installation.
3
+ *
4
+ * Tracks install status per `${instanceId}:${channelId}` key.
5
+ * Only one install runs at a time across all instances to avoid memory pressure.
6
+ */
7
+ export type PluginStatus = "not_installed" | "installing" | "installed" | "failed";
8
+ export interface PluginStatusInfo {
9
+ status: PluginStatus;
10
+ error?: string;
11
+ }
12
+ /** Get install status for a single plugin on an instance. */
13
+ export declare function getPluginStatus(instanceId: string, channelId: string): PluginStatusInfo;
14
+ /** Get install status for all tracked IM plugins on an instance. */
15
+ export declare function getAllPluginStatuses(instanceId: string): Record<string, PluginStatusInfo>;
16
+ /**
17
+ * Enqueue a plugin install. Returns immediately.
18
+ * If already installed or already queued/installing, resolves immediately.
19
+ */
20
+ export declare function enqueueInstall(instanceId: string, channelId: string): void;
21
+ /** Number of items waiting in the queue (for diagnostics). */
22
+ export declare function getQueueLength(): number;
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Plugin Installer — global serial queue for IM plugin installation.
3
+ *
4
+ * Tracks install status per `${instanceId}:${channelId}` key.
5
+ * Only one install runs at a time across all instances to avoid memory pressure.
6
+ */
7
+ import { installChannelPlugin, isChannelPluginInstalled, CHANNEL_PLUGIN_MAP } from "./instance-manager.js";
8
+ /** Plugins tracked by the status API */
9
+ const TRACKED_PLUGINS = ["feishu", "openclaw-weixin"];
10
+ const _installing = new Map();
11
+ /** Recent install failures — cleared on next install attempt */
12
+ const _lastError = new Map();
13
+ const _queue = [];
14
+ let _processing = false;
15
+ function makeKey(instanceId, channelId) {
16
+ return `${instanceId}:${channelId}`;
17
+ }
18
+ /** Get install status for a single plugin on an instance. */
19
+ export function getPluginStatus(instanceId, channelId) {
20
+ const key = makeKey(instanceId, channelId);
21
+ if (_installing.has(key))
22
+ return { status: "installing" };
23
+ if (isChannelPluginInstalled(instanceId, channelId))
24
+ return { status: "installed" };
25
+ const err = _lastError.get(key);
26
+ if (err)
27
+ return { status: "failed", error: err };
28
+ return { status: "not_installed" };
29
+ }
30
+ /** Get install status for all tracked IM plugins on an instance. */
31
+ export function getAllPluginStatuses(instanceId) {
32
+ const result = {};
33
+ for (const channelId of TRACKED_PLUGINS) {
34
+ result[channelId] = getPluginStatus(instanceId, channelId);
35
+ }
36
+ return result;
37
+ }
38
+ /**
39
+ * Enqueue a plugin install. Returns immediately.
40
+ * If already installed or already queued/installing, resolves immediately.
41
+ */
42
+ export function enqueueInstall(instanceId, channelId) {
43
+ if (!CHANNEL_PLUGIN_MAP[channelId]) {
44
+ console.error(`[plugin-installer] Unknown channel: ${channelId}`);
45
+ return;
46
+ }
47
+ const key = makeKey(instanceId, channelId);
48
+ // Already installed — nothing to do
49
+ if (isChannelPluginInstalled(instanceId, channelId))
50
+ return;
51
+ // Already installing or queued — skip duplicate
52
+ if (_installing.has(key))
53
+ return;
54
+ if (_queue.some(e => e.key === key))
55
+ return;
56
+ _installing.set(key, { startedAt: Date.now() });
57
+ _lastError.delete(key);
58
+ _queue.push({
59
+ instanceId,
60
+ channelId,
61
+ key,
62
+ resolve: () => { },
63
+ reject: () => { },
64
+ });
65
+ console.log(`[plugin-installer] Enqueued ${channelId} for ${instanceId} (queue length: ${_queue.length})`);
66
+ processQueue();
67
+ }
68
+ async function processQueue() {
69
+ if (_processing)
70
+ return;
71
+ _processing = true;
72
+ while (_queue.length > 0) {
73
+ const entry = _queue.shift();
74
+ const { instanceId, channelId, key } = entry;
75
+ // Double-check: may have been installed while waiting in queue
76
+ if (isChannelPluginInstalled(instanceId, channelId)) {
77
+ _installing.delete(key);
78
+ entry.resolve();
79
+ continue;
80
+ }
81
+ console.log(`[plugin-installer] Installing ${channelId} for ${instanceId}...`);
82
+ try {
83
+ await installChannelPlugin(instanceId, channelId);
84
+ console.log(`[plugin-installer] ${channelId} installed for ${instanceId}`);
85
+ entry.resolve();
86
+ }
87
+ catch (err) {
88
+ console.error(`[plugin-installer] ${channelId} install failed for ${instanceId}:`, err.message);
89
+ _lastError.set(key, err.message || "安装失败");
90
+ entry.reject(err);
91
+ }
92
+ finally {
93
+ _installing.delete(key);
94
+ }
95
+ }
96
+ _processing = false;
97
+ }
98
+ /** Number of items waiting in the queue (for diagnostics). */
99
+ export function getQueueLength() {
100
+ return _queue.length;
101
+ }
102
+ //# sourceMappingURL=plugin-installer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-installer.js","sourceRoot":"","sources":["../../src/services/plugin-installer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ interface ProcessStatus {
2
+ status: string;
3
+ pid: number | null;
4
+ uptime: number | null;
5
+ memory_mb: number | null;
6
+ cpu_percent: number | null;
7
+ }
8
+ export declare function computeCpuPercent(pid: number, procTicks: number, totalTicks: number): number;
9
+ /**
10
+ * Parse ps etime format [[dd-]hh:]mm:ss into seconds.
11
+ * Examples: "03:22" → 202, "01:03:22" → 3802, "2-01:03:22" → 176602
12
+ */
13
+ export declare function parseEtime(etime: string): number;
14
+ export declare function getStatus(instanceId: string): Promise<ProcessStatus>;
15
+ export declare function getLegacyStatus(instanceId: string): Promise<ProcessStatus>;
16
+ export declare function startInstance(instanceId: string): Promise<Record<string, any>>;
17
+ export declare function stopInstance(instanceId: string): Promise<Record<string, any>>;
18
+ export declare function restartInstance(instanceId: string): Promise<Record<string, any>>;
19
+ export declare function getLogs(instanceId: string, lines?: number, logType?: string): string[];
20
+ export declare function exec(instanceId: string, command: string[], timeoutMs?: number): Promise<{
21
+ stdout: string;
22
+ stderr: string;
23
+ exitCode: number;
24
+ }>;
25
+ export {};