@clawos-dev/clawd 0.2.257 → 0.2.258
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/cli.cjs +757 -771
- package/dist/dispatch/mcp-server.cjs +36 -17
- package/dist/inbox/mcp-server.cjs +9 -7
- package/dist/peer-ops/mcp-server.cjs +7 -5
- package/dist/persona-defaults/persona-app-builder/CLAUDE.md +36 -56
- package/dist/persona-defaults/persona-clawd-butler/.claude/skills/clawd-orchestration/SKILL.md +2 -2
- package/dist/persona-defaults/persona-clawd-butler/CLAUDE.md +2 -2
- package/dist/persona-defaults/persona-dataclaw-builder/CLAUDE.md +9 -20
- package/dist/rpc-tool/mcp-server.cjs +21209 -0
- package/dist/share-ui/assets/{guest-D7iXbNdh.js → guest-SFe_5tKr.js} +65 -65
- package/dist/share-ui/guest.html +1 -1
- package/dist/shift/mcp-server.cjs +15 -16
- package/dist/ticket/mcp-server.cjs +10 -5
- package/package.json +1 -1
package/dist/share-ui/guest.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>Clawd 分享</title>
|
|
7
|
-
<script type="module" crossorigin src="/share-ui/assets/guest-
|
|
7
|
+
<script type="module" crossorigin src="/share-ui/assets/guest-SFe_5tKr.js"></script>
|
|
8
8
|
<link rel="stylesheet" crossorigin href="/share-ui/assets/guest-DTAqwGDc.css">
|
|
9
9
|
</head>
|
|
10
10
|
<body style="margin: 0">
|
|
@@ -21131,13 +21131,14 @@ function log(msg, info) {
|
|
|
21131
21131
|
var TOOL_DESCRIPTION_PREFIX = "Manage a clawd shift (recurring or one-shot trigger that spawns another cc persona to run a prompt). NOT the cc built-in cron/schedule tools (CronCreate / CronDelete / CronList / ScheduleWakeup / RemoteTrigger are all disabled in this session). Shifts persist in ~/.clawd/shift.json across cc sessions. ";
|
|
21132
21132
|
async function callDaemon(method, params, ctx) {
|
|
21133
21133
|
const daemonUrl = process.env.CLAWD_DAEMON_URL;
|
|
21134
|
+
const daemonToken = process.env.CLAWD_DAEMON_TOKEN;
|
|
21134
21135
|
const personaId = process.env.CLAWD_PERSONA_ID;
|
|
21135
21136
|
const sessionId = process.env.CLAWD_SESSION_ID;
|
|
21136
|
-
if (!daemonUrl) {
|
|
21137
|
-
log(`${method} CLAWD_DAEMON_URL missing`);
|
|
21137
|
+
if (!daemonUrl || !daemonToken) {
|
|
21138
|
+
log(`${method} CLAWD_DAEMON_URL/TOKEN missing`);
|
|
21138
21139
|
return {
|
|
21139
21140
|
content: [
|
|
21140
|
-
{ type: "text", text: "Error: CLAWD_DAEMON_URL env not set; cannot call daemon." }
|
|
21141
|
+
{ type: "text", text: "Error: CLAWD_DAEMON_URL/CLAWD_DAEMON_TOKEN env not set; cannot call daemon." }
|
|
21141
21142
|
],
|
|
21142
21143
|
isError: true
|
|
21143
21144
|
};
|
|
@@ -21155,7 +21156,7 @@ async function callDaemon(method, params, ctx) {
|
|
|
21155
21156
|
};
|
|
21156
21157
|
}
|
|
21157
21158
|
const f = ctx.fetch ?? fetch;
|
|
21158
|
-
const url = `${daemonUrl}/
|
|
21159
|
+
const url = `${daemonUrl}/rpc/${method}`;
|
|
21159
21160
|
log(`${method} pre-fetch`, { url, hasSessionId: Boolean(sessionId) });
|
|
21160
21161
|
let res;
|
|
21161
21162
|
try {
|
|
@@ -21163,11 +21164,9 @@ async function callDaemon(method, params, ctx) {
|
|
|
21163
21164
|
method: "POST",
|
|
21164
21165
|
headers: {
|
|
21165
21166
|
"content-type": "application/json",
|
|
21166
|
-
|
|
21167
|
-
// 上游 buildSpawnContext 一定注入 CLAWD_SESSION_ID(reducer.ts:169)
|
|
21168
|
-
...sessionId ? { "x-clawd-session-id": sessionId } : {}
|
|
21167
|
+
authorization: `Bearer ${daemonToken}`
|
|
21169
21168
|
},
|
|
21170
|
-
body: JSON.stringify({ ...params, personaId })
|
|
21169
|
+
body: JSON.stringify({ ...params, personaId, ...sessionId ? { sessionId } : {} })
|
|
21171
21170
|
});
|
|
21172
21171
|
} catch (err) {
|
|
21173
21172
|
const e = err;
|
|
@@ -21205,19 +21204,19 @@ async function callDaemon(method, params, ctx) {
|
|
|
21205
21204
|
};
|
|
21206
21205
|
}
|
|
21207
21206
|
async function handleAddShiftCall(params, ctx = {}) {
|
|
21208
|
-
return callDaemon("shift-internal
|
|
21207
|
+
return callDaemon("shift-internal:add", params, ctx);
|
|
21209
21208
|
}
|
|
21210
21209
|
async function handleListShiftsCall(params, ctx = {}) {
|
|
21211
|
-
return callDaemon("shift-internal
|
|
21210
|
+
return callDaemon("shift-internal:list", params, ctx);
|
|
21212
21211
|
}
|
|
21213
21212
|
async function handleCancelShiftCall(params, ctx = {}) {
|
|
21214
|
-
return callDaemon("shift-internal
|
|
21213
|
+
return callDaemon("shift-internal:cancel", params, ctx);
|
|
21215
21214
|
}
|
|
21216
21215
|
async function handleUpdateShiftCall(params, ctx = {}) {
|
|
21217
|
-
return callDaemon("shift-internal
|
|
21216
|
+
return callDaemon("shift-internal:update", params, ctx);
|
|
21218
21217
|
}
|
|
21219
21218
|
async function handleGetShiftHistoryCall(params, ctx = {}) {
|
|
21220
|
-
return callDaemon("shift-internal
|
|
21219
|
+
return callDaemon("shift-internal:history", params, ctx);
|
|
21221
21220
|
}
|
|
21222
21221
|
var ScheduleSchema = external_exports.union([
|
|
21223
21222
|
external_exports.object({ kind: external_exports.literal("at"), at: external_exports.string() }),
|
|
@@ -21235,10 +21234,10 @@ var ScheduleSchema = external_exports.union([
|
|
|
21235
21234
|
async function main() {
|
|
21236
21235
|
log("boot", { pid: process.pid, logPath: SHIFT_LOG ?? "(stderr)" });
|
|
21237
21236
|
const daemonUrl = process.env.CLAWD_DAEMON_URL;
|
|
21238
|
-
if (!daemonUrl) {
|
|
21239
|
-
log("boot refusing \u2014 CLAWD_DAEMON_URL not set");
|
|
21237
|
+
if (!daemonUrl || !process.env.CLAWD_DAEMON_TOKEN) {
|
|
21238
|
+
log("boot refusing \u2014 CLAWD_DAEMON_URL/TOKEN not set");
|
|
21240
21239
|
process.stderr.write(
|
|
21241
|
-
"shift-mcp-server: CLAWD_DAEMON_URL not set; refusing to boot\n"
|
|
21240
|
+
"shift-mcp-server: CLAWD_DAEMON_URL/CLAWD_DAEMON_TOKEN not set; refusing to boot\n"
|
|
21242
21241
|
);
|
|
21243
21242
|
process.exit(1);
|
|
21244
21243
|
}
|
|
@@ -21246,18 +21246,23 @@ async function handleAbandonTicket(input, client) {
|
|
|
21246
21246
|
}
|
|
21247
21247
|
async function resolveTicketCaller(opts = {}) {
|
|
21248
21248
|
const daemonUrl = process.env.CLAWD_DAEMON_URL;
|
|
21249
|
+
const daemonToken = process.env.CLAWD_DAEMON_TOKEN;
|
|
21249
21250
|
const sessionId = process.env.CLAWD_SESSION_ID;
|
|
21250
|
-
if (!daemonUrl || !sessionId) {
|
|
21251
|
-
logLine("resolveCaller: env missing", {
|
|
21251
|
+
if (!daemonUrl || !daemonToken || !sessionId) {
|
|
21252
|
+
logLine("resolveCaller: env missing", {
|
|
21253
|
+
hasDaemonUrl: !!daemonUrl,
|
|
21254
|
+
hasDaemonToken: !!daemonToken,
|
|
21255
|
+
hasSessionId: !!sessionId
|
|
21256
|
+
});
|
|
21252
21257
|
return null;
|
|
21253
21258
|
}
|
|
21254
21259
|
const f = opts.fetch ?? fetch;
|
|
21255
21260
|
let res;
|
|
21256
21261
|
try {
|
|
21257
|
-
res = await f(`${daemonUrl}/
|
|
21262
|
+
res = await f(`${daemonUrl}/rpc/session:currentTurnSender`, {
|
|
21258
21263
|
method: "POST",
|
|
21259
|
-
headers: { "content-type": "application/json",
|
|
21260
|
-
body:
|
|
21264
|
+
headers: { "content-type": "application/json", authorization: `Bearer ${daemonToken}` },
|
|
21265
|
+
body: JSON.stringify({ sessionId })
|
|
21261
21266
|
});
|
|
21262
21267
|
} catch (err) {
|
|
21263
21268
|
logLine("resolveCaller: fetch threw", { err: String(err) });
|