lobstah-openclaw-plugin 0.5.13 → 0.6.1
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.
- package/dist/index.js +67 -41
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -48,6 +48,56 @@ function eventsPath(id, lane) {
|
|
|
48
48
|
return path.join(laneDirs(lane).state, `${id}.events`);
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
+
// packages/core/dist/decisions.js
|
|
52
|
+
var DECISION_DETAIL_MAX = 64 * 1024;
|
|
53
|
+
var ANSWER_TYPES = {
|
|
54
|
+
".png": "image/png",
|
|
55
|
+
".jpg": "image/jpeg",
|
|
56
|
+
".jpeg": "image/jpeg",
|
|
57
|
+
".gif": "image/gif",
|
|
58
|
+
".webp": "image/webp",
|
|
59
|
+
".pdf": "application/pdf",
|
|
60
|
+
".txt": "text/plain",
|
|
61
|
+
".md": "text/markdown",
|
|
62
|
+
".csv": "text/csv",
|
|
63
|
+
".json": "application/json",
|
|
64
|
+
".log": "text/plain",
|
|
65
|
+
".diff": "text/plain",
|
|
66
|
+
".patch": "text/plain",
|
|
67
|
+
".yaml": "text/plain",
|
|
68
|
+
".yml": "text/plain",
|
|
69
|
+
".toml": "text/plain",
|
|
70
|
+
".zip": "application/zip"
|
|
71
|
+
};
|
|
72
|
+
var ANSWER_EXTENSIONS = Object.keys(ANSWER_TYPES);
|
|
73
|
+
|
|
74
|
+
// packages/core/dist/config.js
|
|
75
|
+
var DEFAULT_LIMITS = {
|
|
76
|
+
maxConcurrent: 2,
|
|
77
|
+
choreConcurrent: 1,
|
|
78
|
+
wedgeThresholdSecs: 600,
|
|
79
|
+
maxRestartAttempts: 2,
|
|
80
|
+
wallClockSecs: 3600,
|
|
81
|
+
pushEarly: true,
|
|
82
|
+
draftPr: true,
|
|
83
|
+
checkpointOnStop: true,
|
|
84
|
+
backgroundWaitSecs: 1800,
|
|
85
|
+
exitGraceSecs: 30,
|
|
86
|
+
choreRetentionDays: 7,
|
|
87
|
+
attachmentMaxBytes: 25 * 1024 * 1024,
|
|
88
|
+
retentionDays: 0,
|
|
89
|
+
minFreeGB: 0,
|
|
90
|
+
reuseWorktree: true,
|
|
91
|
+
releaseOnMerge: false
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
// packages/core/dist/disk.js
|
|
95
|
+
var GB = 1024 ** 3;
|
|
96
|
+
|
|
97
|
+
// packages/core/dist/inbox.js
|
|
98
|
+
import * as fs4 from "node:fs";
|
|
99
|
+
import * as path3 from "node:path";
|
|
100
|
+
|
|
51
101
|
// packages/core/dist/queue.js
|
|
52
102
|
import * as fs3 from "node:fs";
|
|
53
103
|
import * as path2 from "node:path";
|
|
@@ -118,59 +168,38 @@ function requestCancel(id, lane) {
|
|
|
118
168
|
fs3.writeFileSync(path2.join(laneDirs(lane).active, id, "cancel"), (/* @__PURE__ */ new Date()).toISOString());
|
|
119
169
|
}
|
|
120
170
|
|
|
121
|
-
// packages/core/dist/events.js
|
|
122
|
-
import * as fs4 from "node:fs";
|
|
123
|
-
function lastEventAt(id, lane) {
|
|
124
|
-
try {
|
|
125
|
-
return fs4.statSync(eventsPath(id, lane)).mtimeMs;
|
|
126
|
-
} catch {
|
|
127
|
-
return void 0;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
171
|
// packages/core/dist/inbox.js
|
|
132
|
-
import * as fs5 from "node:fs";
|
|
133
|
-
import * as path3 from "node:path";
|
|
134
172
|
var metaName = (file) => file.replace(/\.msg$/, ".meta.json");
|
|
135
173
|
function inboxDir(id, lane) {
|
|
136
174
|
return path3.join(laneDirs(lane).inbox, id);
|
|
137
175
|
}
|
|
138
176
|
function sendMessage(id, lane, text2, from, attachments = []) {
|
|
139
177
|
const dir = inboxDir(id, lane);
|
|
140
|
-
|
|
141
|
-
const existing =
|
|
142
|
-
const handled =
|
|
178
|
+
fs4.mkdirSync(path3.join(dir, "handled"), { recursive: true });
|
|
179
|
+
const existing = fs4.readdirSync(dir).filter((f) => f.endsWith(".msg")).length;
|
|
180
|
+
const handled = fs4.readdirSync(path3.join(dir, "handled")).filter((f) => f.endsWith(".msg")).length;
|
|
143
181
|
const name = `${String(existing + handled + 1).padStart(3, "0")}.msg`;
|
|
144
182
|
const tmp = path3.join(dir, `.tmp-${process.pid}-${Date.now()}`);
|
|
145
183
|
if (from !== void 0 || attachments.length > 0) {
|
|
146
184
|
const meta = { from: from ?? "unknown", at: (/* @__PURE__ */ new Date()).toISOString(), ...attachments.length ? { attachments } : {} };
|
|
147
185
|
const metaTmp = `${tmp}.meta`;
|
|
148
|
-
|
|
149
|
-
|
|
186
|
+
fs4.writeFileSync(metaTmp, JSON.stringify(meta, null, 2));
|
|
187
|
+
fs4.renameSync(metaTmp, path3.join(dir, metaName(name)));
|
|
150
188
|
}
|
|
151
|
-
|
|
152
|
-
|
|
189
|
+
fs4.writeFileSync(tmp, text2);
|
|
190
|
+
fs4.renameSync(tmp, path3.join(dir, name));
|
|
153
191
|
return name;
|
|
154
192
|
}
|
|
155
193
|
|
|
156
|
-
// packages/core/dist/
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
checkpointOnStop: true,
|
|
166
|
-
backgroundWaitSecs: 1800,
|
|
167
|
-
choreRetentionDays: 7,
|
|
168
|
-
attachmentMaxBytes: 25 * 1024 * 1024,
|
|
169
|
-
retentionDays: 0,
|
|
170
|
-
minFreeGB: 0,
|
|
171
|
-
reuseWorktree: true,
|
|
172
|
-
releaseOnMerge: false
|
|
173
|
-
};
|
|
194
|
+
// packages/core/dist/events.js
|
|
195
|
+
import * as fs5 from "node:fs";
|
|
196
|
+
function lastEventAt(id, lane) {
|
|
197
|
+
try {
|
|
198
|
+
return fs5.statSync(eventsPath(id, lane)).mtimeMs;
|
|
199
|
+
} catch {
|
|
200
|
+
return void 0;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
174
203
|
|
|
175
204
|
// packages/core/dist/toon.js
|
|
176
205
|
function cell(v) {
|
|
@@ -189,9 +218,6 @@ function toonTable(name, rows, cols) {
|
|
|
189
218
|
return [header, ...rows.map((r) => ` ${cols.map((c) => cell(r[c])).join(",")}`)].join("\n");
|
|
190
219
|
}
|
|
191
220
|
|
|
192
|
-
// packages/core/dist/disk.js
|
|
193
|
-
var GB = 1024 ** 3;
|
|
194
|
-
|
|
195
221
|
// packages/core/dist/compiled.js
|
|
196
222
|
var COMPILED_BINARY = (() => {
|
|
197
223
|
const bun = globalThis.Bun;
|
|
@@ -199,7 +225,7 @@ var COMPILED_BINARY = (() => {
|
|
|
199
225
|
})();
|
|
200
226
|
|
|
201
227
|
// packages/core/dist/pr.js
|
|
202
|
-
var PR_VIEW_FIELDS = "state,isDraft,headRefOid,baseRefName,headRefName,mergeStateStatus,reviewDecision,statusCheckRollup,mergedAt,closedAt,updatedAt,reviews";
|
|
228
|
+
var PR_VIEW_FIELDS = "title,state,isDraft,headRefOid,baseRefName,baseRefOid,headRefName,mergeStateStatus,reviewDecision,statusCheckRollup,mergedAt,closedAt,updatedAt,reviews";
|
|
203
229
|
var PR_VIEW_FIELDS_NO_CHECKS = PR_VIEW_FIELDS.split(",").filter((f) => f !== "statusCheckRollup").join(",");
|
|
204
230
|
|
|
205
231
|
// apps/node/src/tools.ts
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lobstah-openclaw-plugin",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "OpenClaw plugin for lobstah: gives fleet agents dispatch/status/send/cancel tools and operators a /lobstah command.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "aequitas labs LLC",
|