fix(frpc): ttyd switch to tcp proxy to fix ws bidirectional issue
Made-with: Cursor
This commit is contained in:
@@ -164,6 +164,7 @@ function downloadFile(url, dest) {
|
|||||||
*/
|
*/
|
||||||
function writeFrpcConfig(clawId, frpConfig) {
|
function writeFrpcConfig(clawId, frpConfig) {
|
||||||
const { server, port, auth_token, dashboard_local_port = 18789 } = frpConfig;
|
const { server, port, auth_token, dashboard_local_port = 18789 } = frpConfig;
|
||||||
|
const ttyRemotePort = 10000 + Number(clawId);
|
||||||
const toml = `# 由 clawd 自动生成,请勿手动修改
|
const toml = `# 由 clawd 自动生成,请勿手动修改
|
||||||
serverAddr = "${server}"
|
serverAddr = "${server}"
|
||||||
serverPort = ${port}
|
serverPort = ${port}
|
||||||
@@ -180,13 +181,13 @@ subdomain = "${clawId}"
|
|||||||
|
|
||||||
[[proxies]]
|
[[proxies]]
|
||||||
name = "tty-${clawId}"
|
name = "tty-${clawId}"
|
||||||
type = "http"
|
type = "tcp"
|
||||||
localPort = ${TTYD_PORT}
|
localPort = ${TTYD_PORT}
|
||||||
subdomain = "tty-${clawId}"
|
remotePort = ${ttyRemotePort}
|
||||||
`;
|
`;
|
||||||
fs.mkdirSync(CONFIG_DIR, { recursive: true });
|
fs.mkdirSync(CONFIG_DIR, { recursive: true });
|
||||||
fs.writeFileSync(FRPC_CONFIG, toml, 'utf8');
|
fs.writeFileSync(FRPC_CONFIG, toml, 'utf8');
|
||||||
console.log(`[frpc] frpc.toml 已写入: dashboard subdomain=${clawId}, tty subdomain=tty-${clawId}`);
|
console.log(`[frpc] frpc.toml 已写入: dashboard subdomain=${clawId}, tty tcp-port=${ttyRemotePort}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
class FrpcManager {
|
class FrpcManager {
|
||||||
|
|||||||
Reference in New Issue
Block a user