Repository Analysis

builderz-labs/mission-control

Self-hosted control plane for AI agents: dispatch tasks, review runs, track spend, and operate OpenClaw, Claude Code, Codex, and other runtimes.

5.8 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of builderz-labs/mission-control, a TypeScript project with 6,126 GitHub stars. SynthScan v2.0 examined 187,612 lines of code across 725 source files, recording 429 pattern matches distributed across 13 syntactic categories. The overall adjusted score of 5.8 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

5.8
Adjusted Score
5.8
Raw Score
100%
Time Factor
2026-08-25
Last Push
6.1K
Stars
TypeScript
Language
187.6K
Lines of Code
725
Files
429
Pattern Hits
2026-08-29
Scan Date
0.03
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 20MEDIUM 260LOW 149

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 429 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Decorative Section Separators259 hits · 812 pts
SeverityFileLineSnippetContext
MEDIUMinstall.sh14# ── Defaults ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh22# ── Parse arguments ───────────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh38# ── Helpers ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh129# ── Clone or update repo ─────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh156# ── Generate .env ─────────────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh204# ── Docker deployment ─────────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh234# ── Local deployment ──────────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh266# ── Systemd service ──────────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh312# ── OpenClaw fleet check ─────────────────────────────────────────────────────COMMENT
MEDIUMinstall.sh410# ── Main ──────────────────────────────────────────────────────────────────────COMMENT
MEDIUMtests/skills-crud.spec.ts21 // ── GET /api/skills ───────────────────────────COMMENT
MEDIUMtests/skills-crud.spec.ts34 // ── POST /api/skills ──────────────────────────COMMENT
MEDIUMtests/skills-crud.spec.ts81 // ── GET /api/skills?mode=content ──────────────COMMENT
MEDIUMtests/skills-crud.spec.ts114 // ── PUT /api/skills ───────────────────────────COMMENT
MEDIUMtests/skills-crud.spec.ts150 // ── DELETE /api/skills ────────────────────────COMMENT
MEDIUMtests/skills-crud.spec.ts183 // ── Security checks ───────────────────────────COMMENT
MEDIUMtests/skills-crud.spec.ts231 // ── Path traversal protection ─────────────────COMMENT
MEDIUMtests/agent-self-register.spec.ts18 // ── POST /api/agents/register ─────────────────────────COMMENT
MEDIUMtests/exec-approval-allowlist.spec.ts114 // ── Auth ──────────────────────────────────────COMMENT
MEDIUMtests/notifications.spec.ts14 // ── GET /api/notifications ───────────────────COMMENT
MEDIUMtests/notifications.spec.ts49 // ── POST /api/notifications ──────────────────COMMENT
MEDIUMtests/notifications.spec.ts73 // ── PUT /api/notifications ───────────────────COMMENT
MEDIUMtests/quality-review.spec.ts14 // ── POST /api/quality-review ─────────────────COMMENT
MEDIUMtests/quality-review.spec.ts59 // ── GET /api/quality-review ──────────────────COMMENT
MEDIUMtests/user-management.spec.ts14 // ── POST /api/auth/users ─────────────────────COMMENT
MEDIUMtests/user-management.spec.ts56 // ── GET /api/auth/users ──────────────────────COMMENT
MEDIUMtests/user-management.spec.ts66 // ── PUT /api/auth/users ──────────────────────COMMENT
MEDIUMtests/user-management.spec.ts90 // ── DELETE /api/auth/users ───────────────────COMMENT
MEDIUMtests/injection-guard-endpoints.spec.ts22 // ── POST /api/workflows ──────────────────────COMMENT
MEDIUMtests/injection-guard-endpoints.spec.ts51 // ── POST /api/spawn ──────────────────────────COMMENT
MEDIUMtests/injection-guard-endpoints.spec.ts70 // ── POST /api/agents/message ─────────────────COMMENT
MEDIUMtests/injection-guard-endpoints.spec.ts81 // ── POST /api/chat/messages ──────────────────COMMENT
MEDIUMtests/local-agent-sync.spec.ts6 // ── POST /api/agents/sync?source=local ────────COMMENT
MEDIUMtests/local-agent-sync.spec.ts27 // ── GET /api/agents (source field) ────────────COMMENT
MEDIUMtests/search-and-export.spec.ts14 // ── GET /api/search ──────────────────────────COMMENT
MEDIUMtests/search-and-export.spec.ts42 // ── GET /api/export ──────────────────────────COMMENT
MEDIUMtests/search-and-export.spec.ts66 // ── GET /api/activities ──────────────────────COMMENT
MEDIUMtests/alerts-crud.spec.ts14 // ── POST /api/alerts ─────────────────────────COMMENT
MEDIUMtests/alerts-crud.spec.ts49 // ── GET /api/alerts ──────────────────────────COMMENT
MEDIUMtests/alerts-crud.spec.ts62 // ── PUT /api/alerts ──────────────────────────COMMENT
MEDIUMtests/alerts-crud.spec.ts86 // ── DELETE /api/alerts ───────────────────────COMMENT
MEDIUMtests/alerts-crud.spec.ts100 // ── Full lifecycle ───────────────────────────COMMENT
MEDIUMtests/diagnostics-api.spec.ts5 // ── Auth ─────────────────────────────────────COMMENT
MEDIUMtests/diagnostics-api.spec.ts12 // ── Response shape ───────────────────────────COMMENT
MEDIUMtests/webhooks-crud.spec.ts14 // ── POST /api/webhooks ───────────────────────COMMENT
MEDIUMtests/webhooks-crud.spec.ts44 // ── GET /api/webhooks ────────────────────────COMMENT
MEDIUMtests/webhooks-crud.spec.ts62 // ── PUT /api/webhooks ────────────────────────COMMENT
MEDIUMtests/webhooks-crud.spec.ts99 // ── DELETE /api/webhooks ─────────────────────COMMENT
MEDIUMtests/webhooks-crud.spec.ts113 // ── Full lifecycle ───────────────────────────COMMENT
MEDIUMtests/skills-registry.spec.ts6 // ── GET /api/skills/registry (search) ─────────COMMENT
MEDIUMtests/skills-registry.spec.ts70 // ── POST /api/skills/registry (install) ───────COMMENT
MEDIUMtests/agents-crud.spec.ts14 // ── POST /api/agents ─────────────────────────COMMENT
MEDIUMtests/agents-crud.spec.ts46 // ── GET /api/agents ──────────────────────────COMMENT
MEDIUMtests/agents-crud.spec.ts68 // ── GET /api/agents/[id] ─────────────────────COMMENT
MEDIUMtests/agents-crud.spec.ts95 // ── PUT /api/agents/[id] ─────────────────────COMMENT
MEDIUMtests/agents-crud.spec.ts118 // ── PUT /api/agents (bulk by name) ───────────COMMENT
MEDIUMtests/agents-crud.spec.ts152 // ── DELETE /api/agents/[id] ──────────────────COMMENT
MEDIUMtests/agents-crud.spec.ts169 // ── Full lifecycle ───────────────────────────COMMENT
MEDIUMtests/onboarding-api.spec.ts13 // ── Auth ─────────────────────────────────────COMMENT
MEDIUMtests/onboarding-api.spec.ts27 // ── GET ──────────────────────────────────────COMMENT
199 more matches not shown…
Hyper-Verbose Identifiers98 hits · 101 pts
SeverityFileLineSnippetContext
LOWsrc/app/api/agents/[id]/files/route.ts36function resolveAgentWorkspacePath(workspace: string): string {CODE
LOWsrc/app/api/agents/[id]/soul/route.ts13function resolveAgentWorkspacePath(workspace: string): string {CODE
LOWsrc/app/api/local/flight-deck/route.ts13function getConfiguredFlightDeckPath(): string | null {CODE
LOWsrc/app/api/local/flight-deck/route.ts38function resolveFlightDeckInstallPath(): string | null {CODE
LOWsrc/app/api/integrations/route.ts259async function getIntegrationProbeSnapshot(): Promise<IntegrationProbeSnapshot> {CODE
LOWsrc/app/api/gateways/route.ts258function enrichGatewaysWithAgentCounts(CODE
LOWsrc/app/api/gateways/connect/route.ts46function isNonBrowserReachableHost(host: string): boolean {CODE
LOWsrc/app/api/gateways/control/route.ts42function startHermesGatewayDetached(hermesBin: string, homeDir: string): { pid: number | null; error?: string } {CODE
LOWsrc/app/api/gateways/control/route.ts78function stopHermesGatewayDetached(homeDir: string): { stopped: boolean; error?: string } {CODE
LOWsrc/app/api/notifications/deliver/route.ts274function formatNotificationMessage(notification: Notification): string {CODE
LOWsrc/app/api/onboarding/route.ts46function readUserOnboardingSetting(key: OnboardingSettingKey, username: string): string {CODE
LOWsrc/app/api/onboarding/route.ts52function writeUserOnboardingSetting(key: OnboardingSettingKey, value: string, actor: string) {CODE
LOWsrc/components/settings/agent-runtimes-section.tsx67function isRuntimeTransportFailure(error: unknown): boolean {CODE
LOWsrc/components/panels/settings-panel.tsx47function parseCoordinatorTargetAgents(rawAgents: any[]): CoordinatorTargetAgent[] {CODE
LOWsrc/components/panels/webhook-panel.tsx74function isWebhookTransportFailure(error: unknown): boolean {CODE
LOWsrc/components/panels/orchestration-bar.tsx58function isOrchestrationNetworkFailure(error: unknown): boolean {CODE
LOW…ents/dashboard/widgets/onboarding-checklist-widget.tsx16export function OnboardingChecklistWidget() {CODE
LOWsrc/lib/workspaces.ts112export function ensureTenantWorkspaceAccess(CODE
LOWsrc/lib/workspaces.ts126export function ensureTenantProjectAccess(CODE
LOWsrc/lib/codex-sessions.ts49function listRecentCodexSessionFiles(limit: number): ParsedFile[] {CODE
LOWsrc/lib/agent-workspace.ts12export function getAgentWorkspaceCandidates(agentConfig: any, agentName: string): string[] {CODE
LOWsrc/lib/task-routing.ts38export function resolveTaskImplementationTarget(task: TaskLike): TaskImplementationTarget {CODE
LOWsrc/lib/task-dispatch.ts106export function resolveTaskDispatchModelOverride(task: Pick<DispatchableTask, 'agent_config'>): string | null {CODE
LOWsrc/lib/task-dispatch.ts343export function extractDeferredCompletionText(waitPayload: any): string | null {CODE
LOWsrc/lib/task-dispatch.ts403function normalizeGatewayIdentifier(value: unknown): string | null {CODE
LOWsrc/lib/task-dispatch.ts409function buildDeferredCompletionMarkers(task: DeferredCompletionTask): string[] {CODE
LOWsrc/lib/task-dispatch.ts431function findAssistantTextAfterTaskPrompt(rawTranscript: string, task: DeferredCompletionTask): string | null {CODE
LOWsrc/lib/task-dispatch.ts455function recoverDeferredCompletionTextFromTranscript(CODE
LOWsrc/lib/task-dispatch.ts509export async function reconcileDeferredTaskCompletions(options: {CODE
LOWsrc/lib/task-dispatch.ts967function isDirectDispatchAvailable(provider?: DirectProvider): boolean {CODE
LOWsrc/lib/task-dispatch.ts1208async function callMiniMaxAnthropicCompatible(CODE
LOWsrc/lib/task-dispatch.ts1397function resolveGatewayAgentIdForReview(task: ReviewableTask): string {CODE
LOWsrc/lib/transcript-parser.ts67function normalizeTranscriptMessage(msg: any, timestamp?: string): TranscriptMessage | null {CODE
LOWsrc/lib/transcript-parser.ts110export function parseGatewayHistoryTranscript(messages: unknown[], limit: number): TranscriptMessage[] {CODE
LOWsrc/lib/hermes-sessions.ts99export function clearHermesDetectionCache(): void {CODE
LOWsrc/lib/password.ts23export function verifyPasswordWithRehashCheck(password: string, stored: string): { valid: boolean; needsRehash: boolean CODE
LOWsrc/lib/onboarding-session.ts17export function getOnboardingSessionDecision(CODE
LOWsrc/lib/onboarding-session.ts35export function readOnboardingDismissedThisSession(): boolean {CODE
LOWsrc/lib/onboarding-session.ts44export function markOnboardingDismissedThisSession(): void {CODE
LOWsrc/lib/onboarding-session.ts51export function clearOnboardingDismissedThisSession(): void {CODE
LOWsrc/lib/onboarding-session.ts58export function readOnboardingReplayFromStart(): boolean {CODE
LOWsrc/lib/onboarding-session.ts67export function markOnboardingReplayFromStart(): void {CODE
LOWsrc/lib/onboarding-session.ts74export function clearOnboardingReplayFromStart(): void {CODE
LOWsrc/lib/receipt-signing.ts48export function getOrCreateSigningKey(): ReceiptKeyPair {CODE
LOWsrc/lib/webhooks.ts70async function assertSafeWebhookDestination(urlStr: string): Promise<void> {CODE
LOWsrc/lib/browser-security.ts15export function shouldRedirectDashboardToHttps(input: {CODE
LOWsrc/lib/super-admin.ts44function getTenantWorkspaceDirname(): string {CODE
LOWsrc/lib/super-admin.ts353export function createTenantAndBootstrapJob(request: TenantBootstrapRequest, actor: string) {CODE
LOWsrc/lib/super-admin.ts480export function createTenantDecommissionJob(tenantId: number, request: TenantDecommissionRequest, actor: string) {CODE
LOWsrc/lib/super-admin.ts553export function transitionProvisionJobStatus(CODE
LOWsrc/lib/device-identity.ts263export async function getOrCreateDeviceIdentity(): Promise<DeviceIdentity> {CODE
LOWsrc/lib/device-identity.ts263export async function getOrCreateDeviceIdentity(): Promise<DeviceIdentity> {CODE
LOWsrc/lib/provider-subscriptions.ts182export function detectProviderSubscriptions(forceRefresh = false): SubscriptionDetectionResult {CODE
LOWsrc/lib/provider-subscriptions.ts201export function getProviderSubscriptionFlags(forceRefresh = false): Record<string, boolean> {CODE
LOWsrc/lib/auto-credentials.ts69export function ensureAutoGeneratedCredentials(): void {CODE
LOWsrc/lib/gateway-url.ts40export function buildGatewayPathFallbackUrls(rawUrl: string): string[] {CODE
LOWsrc/lib/task-status.ts29export function normalizeTaskCreateStatus(CODE
LOWsrc/lib/task-status.ts42export function normalizeTaskUpdateStatus(args: {CODE
LOWsrc/lib/opencode-sessions.ts151export function getOpenCodeBinaryCandidates(): string[] {CODE
LOWsrc/lib/session-cookie.ts16export function parseMcSessionCookieHeader(cookieHeader: string): string | null {CODE
38 more matches not shown…
Magic Placeholder Names18 hits · 90 pts
SeverityFileLineSnippetContext
HIGHREADME.md125export MC_API_KEY=replace-with-your-api-keyCODE
HIGHREADME.md164 env MC_URL=http://127.0.0.1:3000 MC_API_KEY=replace-with-your-api-key \CODE
HIGHSKILL.md14**Auth header:** `x-api-key: <your-api-key>`CODE
HIGHdocs/cli-integration.md12 -H "x-api-key: YOUR_API_KEY" \CODE
HIGHdocs/cli-integration.md45 -H "x-api-key: YOUR_API_KEY" \CODE
HIGHdocs/cli-integration.md64 -H "x-api-key: YOUR_API_KEY"CODE
HIGHdocs/cli-integration.md76 -H "x-api-key: YOUR_API_KEY" \CODE
HIGHdocs/cli-integration.md90 -H "x-api-key: YOUR_API_KEY" \CODE
HIGHdocs/quickstart.md23export MC_API_KEY=your-api-keyCODE
HIGHdocs/deployment.md186 -e API_KEY=your-api-key \CODE
HIGHdocs/deployment.md408API_KEY=<your-api-key>CODE
HIGHsrc/lib/framework-templates.ts75 -H "x-api-key: YOUR_API_KEY" \\CODE
HIGHsrc/lib/framework-templates.ts89 -H "x-api-key: YOUR_API_KEY" \\CODE
HIGHsrc/lib/framework-templates.ts99 -H "x-api-key: YOUR_API_KEY" \\CODE
HIGHsrc/lib/framework-templates.ts123API_KEY = "YOUR_API_KEY"CODE
HIGHsrc/lib/framework-templates.ts172HEADERS = {"Content-Type": "application/json", "x-api-key": "YOUR_API_KEY"}CODE
HIGHsrc/lib/framework-templates.ts223HEADERS = {"Content-Type": "application/json", "x-api-key": "YOUR_API_KEY"}CODE
HIGHsrc/lib/framework-templates.ts261const HEADERS = { "Content-Type": "application/json", "x-api-key": "YOUR_API_KEY" };CODE
Structural Annotation Overuse17 hits · 28 pts
SeverityFileLineSnippetContext
LOWdocs/orchestration.md243# Step 1: Research task for irisCOMMENT
LOWdocs/orchestration.md257# Step 2: Implementation task for scout (after iris finishes)COMMENT
LOWdocs/orchestration.md272# Step 3: Review task for aegisCOMMENT
LOWdocs/quickstart.md11## Step 1: Start Mission ControlCOMMENT
LOWdocs/quickstart.md26## Step 2: Register an AgentCOMMENT
LOWdocs/quickstart.md57## Step 3: Create a TaskCOMMENT
LOWdocs/quickstart.md89## Step 4: Poll the Task QueueCOMMENT
LOWdocs/quickstart.md123## Step 5: Complete the TaskCOMMENT
LOWdocs/quickstart.md137## Step 6: Send a HeartbeatCOMMENT
LOWsrc/app/setup/page.tsx130 // Step 1: ValidatingCOMMENT
LOWsrc/app/setup/page.tsx135 // Step 2: Creating accountCOMMENT
LOWsrc/app/setup/page.tsx162 // Step 3: Configuring sessionCOMMENT
LOWsrc/app/setup/page.tsx167 // Step 4: LaunchingCOMMENT
LOWsrc/components/terminal/terminal-view.tsx45 // Step 1: Check PTY support via REST APICOMMENT
LOWsrc/components/terminal/terminal-view.tsx62 // Step 2: Load xterm.js dynamically (heavy dependency, client-only)COMMENT
LOWsrc/components/terminal/terminal-view.tsx151 // Step 3: Connect WebSocketCOMMENT
LOWsrc/lib/task-dispatch.ts1892 // Step 1: Invoke via gateway (new session)COMMENT
Verbosity Indicators8 hits · 15 pts
SeverityFileLineSnippetContext
LOWsrc/app/setup/page.tsx130 // Step 1: ValidatingCOMMENT
LOWsrc/app/setup/page.tsx135 // Step 2: Creating accountCOMMENT
LOWsrc/app/setup/page.tsx162 // Step 3: Configuring sessionCOMMENT
LOWsrc/app/setup/page.tsx167 // Step 4: LaunchingCOMMENT
LOWsrc/components/terminal/terminal-view.tsx45 // Step 1: Check PTY support via REST APICOMMENT
LOWsrc/components/terminal/terminal-view.tsx62 // Step 2: Load xterm.js dynamically (heavy dependency, client-only)COMMENT
LOWsrc/components/terminal/terminal-view.tsx151 // Step 3: Connect WebSocketCOMMENT
LOWsrc/lib/task-dispatch.ts1892 // Step 1: Invoke via gateway (new session)COMMENT
Redundant / Tautological Comments7 hits · 10 pts
SeverityFileLineSnippetContext
LOWinstall.sh179 # Set OPENCLAW_GATEWAY_HOST to the Docker host gateway IP so the containerCOMMENT
LOWinstall.sh322 # Check if openclaw binary existsCOMMENT
LOWscripts/notification-daemon.sh43# Check if Mission Control is runningCOMMENT
LOWscripts/notification-daemon.sh155# Check if daemon is already runningCOMMENT
LOWscripts/notification-daemon.sh175 # Check if already runningCOMMENT
LOWscripts/agent-heartbeat.sh30# Check if Mission Control is runningCOMMENT
LOWscripts/agent-heartbeat.sh147 # Check if Mission Control is runningCOMMENT
Over-Commented Block9 hits · 9 pts
SeverityFileLineSnippetContext
LOWinstall.sh1#!/usr/bin/env bashCOMMENT
LOWdocker-compose.yml21 # not runtime. Setting them here only works if you rebuild the image:COMMENT
LOWscripts/notification-daemon.sh1#!/bin/bashCOMMENT
LOWsrc/app/api/openclaw/doctor/route.ts21 detail: [err?.stdout, err?.stderr, err?.message].filter(Boolean).join('\n').trim(),COMMENT
LOWsrc/lib/agent-runtimes.ts521 // Detect Claude Code authentication. Claude supports two auth modes:COMMENT
LOWsrc/lib/task-dispatch.ts121 if (task.agent_config) {COMMENT
LOWsrc/lib/task-dispatch.ts641 return (process.env.ANTHROPIC_API_KEY || '').trim() || nullCOMMENT
LOWsrc/lib/task-dispatch.ts801 outputTokens: data.usage.output_tokens || 0,COMMENT
LOWsrc/lib/claude-code-sessions.ts1// Per-agent Claude Code base-session lifecycle (#602).COMMENT
Cross-Language Confusion (JS/TS)2 hits · 8 pts
SeverityFileLineSnippetContext
HIGHsrc/app/api/hermes/route.ts378 elif event_name == "agent:end":STRING
HIGHsrc/app/api/hermes/route.ts380 elif event_name == "session:start":STRING
Example Usage Blocks3 hits · 5 pts
SeverityFileLineSnippetContext
LOWinstall.sh5# Usage:COMMENT
LOWscripts/notification-daemon.sh6# Usage:COMMENT
LOWscripts/agent-heartbeat.sh6# Usage:COMMENT
Fake / Example Data4 hits · 4 pts
SeverityFileLineSnippetContext
LOWsrc/lib/google-auth.test.ts19 json: async () => ({ aud: 'x', email: 'user@example.com', sub: 'sub', email_verified: false }),CODE
LOWsrc/lib/google-auth.test.ts32 json: async () => ({ aud: 'wrong', email: 'user@example.com', sub: 'sub', email_verified: true }),CODE
LOWsrc/lib/google-auth.test.ts50 json: async () => ({ aud: 'x', email: 'user@example.com', sub: 'sub', email_verified: 'true', name: 'User' }),CODE
LOWsrc/lib/google-auth.test.ts54 email: 'user@example.com',CODE
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMscripts/load-env.sh4# This file is sourced by both POSIX sh and Bash startup scripts.COMMENT
Unused Imports2 hits · 2 pts
SeverityFileLineSnippetContext
LOWscripts/gen-star-history.py14CODE
LOWscripts/check-workflow-action-pins.py4CODE
Excessive Try-Catch Wrapping1 hit · 1 pts
SeverityFileLineSnippetContext
LOWsrc/app/api/hermes/route.ts382 except Exception as exc:STRING