Fix: Daemon startup and Qwen CLI path for Windows

This commit is contained in:
admin
2026-02-26 02:28:06 +04:00
Unverified
parent 80cdad994c
commit c9799c1eac
6 changed files with 358 additions and 180 deletions

76
.qwen/statusline.cjs Normal file
View File

@@ -0,0 +1,76 @@
#!/usr/bin/env node
const { readFileSync } = require("fs");
const { join } = require("path");
const DIR = join(__dirname, "qwenclaw");
const STATE_FILE = join(DIR, "state.json");
const PID_FILE = join(DIR, "daemon.pid");
const R = "\x1b[0m";
const DIM = "\x1b[2m";
const RED = "\x1b[31m";
const GREEN = "\x1b[32m";
function fmt(ms) {
if (ms <= 0) return GREEN + "now!" + R;
var s = Math.floor(ms / 1000);
var h = Math.floor(s / 3600);
var m = Math.floor((s % 3600) / 60);
if (h > 0) return h + "h " + m + "m";
if (m > 0) return m + "m";
return (s % 60) + "s";
}
function alive() {
try {
var pid = readFileSync(PID_FILE, "utf-8").trim();
process.kill(Number(pid), 0);
return true;
} catch { return false; }
}
var B = DIM + "\u2502" + R;
var TL = DIM + "\u256d" + R;
var TR = DIM + "\u256e" + R;
var BL = DIM + "\u2570" + R;
var BR = DIM + "\u256f" + R;
var H = DIM + "\u2500" + R;
var HEADER = TL + H.repeat(6) + " \ud83e\udd9e qwenclaw \ud83e\udd9e " + H.repeat(6) + TR;
var FOOTER = BL + H.repeat(30) + BR;
if (!alive()) {
process.stdout.write(
HEADER + "\n" +
B + " " + RED + "\u25cb offline" + R + " " + B + "\n" +
FOOTER
);
process.exit(0);
}
try {
var state = JSON.parse(readFileSync(STATE_FILE, "utf-8"));
var now = Date.now();
var info = [];
if (state.heartbeat) {
info.push("\ud83d\udc93 " + fmt(state.heartbeat.nextAt - now));
}
var jc = (state.jobs || []).length;
info.push("\ud83d\udccb " + jc + " job" + (jc !== 1 ? "s" : ""));
info.push(GREEN + "\u25cf live" + R);
if (state.telegram) {
info.push(GREEN + "\ud83d\udce1" + R);
}
var mid = " " + info.join(" " + B + " ") + " ";
process.stdout.write(HEADER + "\n" + B + mid + B + "\n" + FOOTER);
} catch {
process.stdout.write(
HEADER + "\n" +
B + DIM + " waiting... " + R + B + "\n" +
FOOTER
);
}