fix(cli): silence "session restored" log for one-shot commands (alpha.40)
Some checks failed
CI / Lint (push) Has been cancelled
CI / Typecheck (push) Has been cancelled
CI / Broker tests (Postgres) (push) Has been cancelled
CI / Docker build (linux/amd64) (push) Has been cancelled

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:
Alejandro Gutiérrez
2026-04-19 19:54:53 +01:00
parent 622ea569ad
commit a5347cebc0
3 changed files with 9 additions and 5 deletions

View File

@@ -186,6 +186,8 @@ export class BrokerClient {
onStatusChange?: (status: ConnStatus) => void;
displayName?: string;
debug?: boolean;
/** Suppress informational stderr logs like "session restored". Default false. */
quiet?: boolean;
} = {},
) {}
@@ -297,9 +299,11 @@ export class BrokerClient {
const groups = msg.restoredGroups
? (msg.restoredGroups as Array<{ name: string; role?: string }>).map((g) => g.role ? `@${g.name}:${g.role}` : `@${g.name}`).join(", ")
: "none";
process.stderr.write(
`[claudemesh] session restored — last seen ${msg.lastSeenAt ?? "unknown"}, groups: ${groups}\n`,
);
if (!this.opts.quiet) {
process.stderr.write(
`[claudemesh] session restored — last seen ${msg.lastSeenAt ?? "unknown"}, groups: ${groups}\n`,
);
}
if (msg.restoredStats) {
const rs = msg.restoredStats as { messagesIn: number; messagesOut: number; toolCalls: number; errors: number };
this._statsCounters.messagesIn = rs.messagesIn ?? 0;