fix(cli): silence "session restored" log for one-shot commands (alpha.40)
Add quiet opt to BrokerClient; withMesh passes quiet:true so commands like peers/state/info/remind no longer print per-mesh restore chatter. Long-running paths (launch, MCP) stay verbose. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "claudemesh-cli",
|
"name": "claudemesh-cli",
|
||||||
"version": "1.0.0-alpha.39",
|
"version": "1.0.0-alpha.40",
|
||||||
"description": "Peer mesh for Claude Code sessions — CLI + MCP server.",
|
"description": "Peer mesh for Claude Code sessions — CLI + MCP server.",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"claude-code",
|
"claude-code",
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ export async function withMesh<T>(
|
|||||||
}
|
}
|
||||||
|
|
||||||
const displayName = opts.displayName ?? config.displayName ?? `${hostname()}-${process.pid}`;
|
const displayName = opts.displayName ?? config.displayName ?? `${hostname()}-${process.pid}`;
|
||||||
const client = new BrokerClient(mesh, { displayName });
|
const client = new BrokerClient(mesh, { displayName, quiet: true });
|
||||||
|
|
||||||
try {
|
try {
|
||||||
await client.connect();
|
await client.connect();
|
||||||
|
|||||||
@@ -186,6 +186,8 @@ export class BrokerClient {
|
|||||||
onStatusChange?: (status: ConnStatus) => void;
|
onStatusChange?: (status: ConnStatus) => void;
|
||||||
displayName?: string;
|
displayName?: string;
|
||||||
debug?: boolean;
|
debug?: boolean;
|
||||||
|
/** Suppress informational stderr logs like "session restored". Default false. */
|
||||||
|
quiet?: boolean;
|
||||||
} = {},
|
} = {},
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
@@ -297,9 +299,11 @@ export class BrokerClient {
|
|||||||
const groups = msg.restoredGroups
|
const groups = msg.restoredGroups
|
||||||
? (msg.restoredGroups as Array<{ name: string; role?: string }>).map((g) => g.role ? `@${g.name}:${g.role}` : `@${g.name}`).join(", ")
|
? (msg.restoredGroups as Array<{ name: string; role?: string }>).map((g) => g.role ? `@${g.name}:${g.role}` : `@${g.name}`).join(", ")
|
||||||
: "none";
|
: "none";
|
||||||
|
if (!this.opts.quiet) {
|
||||||
process.stderr.write(
|
process.stderr.write(
|
||||||
`[claudemesh] session restored — last seen ${msg.lastSeenAt ?? "unknown"}, groups: ${groups}\n`,
|
`[claudemesh] session restored — last seen ${msg.lastSeenAt ?? "unknown"}, groups: ${groups}\n`,
|
||||||
);
|
);
|
||||||
|
}
|
||||||
if (msg.restoredStats) {
|
if (msg.restoredStats) {
|
||||||
const rs = msg.restoredStats as { messagesIn: number; messagesOut: number; toolCalls: number; errors: number };
|
const rs = msg.restoredStats as { messagesIn: number; messagesOut: number; toolCalls: number; errors: number };
|
||||||
this._statsCounters.messagesIn = rs.messagesIn ?? 0;
|
this._statsCounters.messagesIn = rs.messagesIn ?? 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user