sverklo audit
F
Overall Health
F
Dead code
47% orphan symbols (1135/2423)
F
Circular deps
18 cycles detected
D
Coupling
max fan-in: 46 (apps/x/packages/core/src/config/config.ts)
F
Security
300 concerns found
Overview
- 857 files indexed
- 3746 code symbols extracted
- 17467 symbol references tracked
- 0 active memories (0 core, 0 stale)
- Languages: typescript (828), python (15), javascript (14)
God Nodes (most-referenced symbols)
These are the symbols your codebase depends on most. Changes here have the largest blast radius.
- add — 80 references
- BadRequestError — 78 references
- authorize — 69 references
- NotFoundError — 57 references
- readFile — 48 references
- writeFile — 44 references
- authCheck — 43 references
- getConfig — 41 references
- update — 31 references
- Button — 24 references
Hub Files (highest PageRank)
Core architectural files — imported by many others.
apps/x/packages/core/src/config/config.ts(1.00)apps/rowboat/app/lib/types/workflow_types.ts(0.46)apps/rowboat/app/actions/auth.actions.ts(0.43)apps/rowboat/src/application/policies/usage-quota.policy.interface.ts(0.36)apps/rowboat/src/application/policies/project-action-authorization.policy.ts(0.35)apps/rowboat/app/lib/feature_flags.ts(0.35)apps/rowboat/app/lib/auth0.ts(0.25)apps/rowboat/app/lib/types/types.ts(0.20)apps/rowboat/src/application/repositories/project-members.repository.interface.ts(0.19)apps/cli/src/config/config.ts(0.19)
Orphans (potential dead code)
Named functions with zero detected references. Could be dead code, public API exports, or referenced dynamically.
- Form —
apps/rowboat/app/projects/[projectId]/sources/new/form.tsx:12 - createUrlsDataSource —
apps/rowboat/app/projects/[projectId]/sources/new/form.tsx:58 - createFilesDataSource —
apps/rowboat/app/projects/[projectId]/sources/new/form.tsx:88 - createTextDataSource —
apps/rowboat/app/projects/[projectId]/sources/new/form.tsx:103 - InMemoryMessageQueue —
apps/cli/src/application/lib/message-queue.ts:14 - FSAgentsRepo —
apps/cli/src/agents/repo.ts:19 - AgentRuntime —
apps/cli/src/agents/runtime.ts:30 - RunLogger —
apps/cli/src/agents/runtime.ts:152 - StreamStepMessageBuilder —
apps/cli/src/agents/runtime.ts:183 - normaliseAskHumanToolCall —
apps/cli/src/agents/runtime.ts:240
Coupling (high-PageRank files)
apps/x/packages/core/src/config/config.ts(1.00)apps/rowboat/app/lib/types/workflow_types.ts(0.46)apps/rowboat/app/actions/auth.actions.ts(0.43)apps/rowboat/src/application/policies/usage-quota.policy.interface.ts(0.36)apps/rowboat/src/application/policies/project-action-authorization.policy.ts(0.35)
Circular Dependencies (18 cycles)
- apps/x/packages/core/src/account/account.ts -> apps/x/packages/core/src/di/container.ts -> apps/x/packages/core/src/models/repo.ts -> apps/x/packages/core/src/models/models.ts -> apps/x/packages/core/src/account/account.ts
- apps/x/packages/core/src/auth/tokens.ts -> apps/x/packages/core/src/di/container.ts -> apps/x/packages/core/src/models/repo.ts -> apps/x/packages/core/src/models/models.ts -> apps/x/packages/core/src/models/gateway.ts -> apps/x/packages/core/src/auth/tokens.ts
- apps/x/packages/core/src/agents/runtime.ts -> apps/x/packages/core/src/application/lib/exec-tool.ts -> apps/x/packages/core/src/application/lib/builtin-tools.ts -> apps/x/packages/core/src/mcp/mcp.ts -> apps/x/packages/core/src/di/container.ts -> apps/x/packages/core/src/agents/runtime.ts
- apps/x/packages/core/src/agents/runtime.ts -> apps/x/packages/core/src/application/lib/exec-tool.ts -> apps/x/packages/core/src/application/lib/builtin-tools.ts -> apps/x/packages/core/src/di/container.ts -> apps/x/packages/core/src/agents/runtime.ts
- apps/x/packages/core/src/agents/runtime.ts -> apps/x/packages/core/src/di/container.ts -> apps/x/packages/core/src/agents/runtime.ts
- apps/rowboat/src/application/lib/agents-runtime/agent-handoffs.ts -> apps/rowboat/src/application/lib/agents-runtime/agents.ts -> apps/rowboat/src/application/lib/agents-runtime/agent-handoffs.ts
- apps/rowboat/src/application/lib/agents-runtime/agents.ts -> apps/rowboat/src/application/lib/agents-runtime/pipeline-state-manager.ts -> apps/rowboat/src/application/lib/agents-runtime/agents.ts
- apps/x/apps/main/src/ipc.ts -> apps/x/apps/main/src/oauth-handler.ts -> apps/x/apps/main/src/ipc.ts
- apps/cli/src/models/models.ts -> apps/cli/src/models/repo.ts -> apps/cli/src/models/models.ts
- apps/cli/src/di/container.ts -> apps/cli/src/models/repo.ts -> apps/cli/src/models/models.ts -> apps/cli/src/di/container.ts
- apps/cli/src/di/container.ts -> apps/cli/src/runs/repo.ts -> apps/cli/src/runs/runs.ts -> apps/cli/src/di/container.ts
- apps/cli/src/runs/repo.ts -> apps/cli/src/runs/runs.ts -> apps/cli/src/runs/repo.ts
- apps/cli/src/agents/runtime.ts -> apps/cli/src/application/lib/exec-tool.ts -> apps/cli/src/application/lib/builtin-tools.ts -> apps/cli/src/mcp/mcp.ts -> apps/cli/src/di/container.ts -> apps/cli/src/runs/repo.ts -> apps/cli/src/runs/runs.ts -> apps/cli/src/agents/runtime.ts
- apps/cli/src/agents/runtime.ts -> apps/cli/src/application/lib/exec-tool.ts -> apps/cli/src/application/lib/builtin-tools.ts -> apps/cli/src/di/container.ts -> apps/cli/src/runs/repo.ts -> apps/cli/src/runs/runs.ts -> apps/cli/src/agents/runtime.ts
- apps/cli/src/agents/runtime.ts -> apps/cli/src/di/container.ts -> apps/cli/src/runs/repo.ts -> apps/cli/src/runs/runs.ts -> apps/cli/src/agents/runtime.ts
- apps/cli/src/agents/runtime.ts -> apps/cli/src/runs/repo.ts -> apps/cli/src/runs/runs.ts -> apps/cli/src/agents/runtime.ts
- apps/rowboat/app/projects/[projectId]/copilot/app.tsx -> apps/rowboat/app/projects/[projectId]/copilot/components/messages.tsx -> apps/rowboat/app/projects/[projectId]/copilot/components/actions.tsx -> apps/rowboat/app/projects/[projectId]/copilot/app.tsx
- apps/rowboat/app/lib/components/input-field.tsx -> apps/rowboat/app/projects/[projectId]/workflow/workflow_editor.tsx -> apps/rowboat/app/projects/[projectId]/config/components/voice.tsx -> apps/rowboat/app/projects/[projectId]/config/components/project.tsx -> apps/rowboat/app/lib/components/input-field.tsx
Security Issues (300 found)
Critical (3)
- Hardcoded secret —
apps/cli/src/models/models.ts:62 apiKey: "rowboatx",- Command injection risk —
apps/x/packages/core/src/application/lib/builtin-tools.ts:538 const output = execSync(rg ${rgArgs}, {- Command injection risk —
apps/x/packages/core/src/application/lib/builtin-tools.ts:575 const output = execSync(grep ${grepArgs}, {
High (1)
- new Function() usage —
apps/x/packages/core/src/application/lib/builtin-tools.ts:32 const _importDynamic = new Function('mod', 'return import(mod)') as (mod: string) => Promise<any>;
Low (296)
- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:24 console.log('configureTwilioNumber - Received params:', params);- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:31 console.log('Twilio numbers for this account:', numbers);- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:50 console.log('configureTwilioNumber - Saved config result:', savedConfig);- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:64 console.log('saveTwilioConfig - Incoming params:', {- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:78 console.log('saveTwilioConfig - All active configs in DB:', allConfigs);- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:85 console.log('saveTwilioConfig - Existing config search by project:', {- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:102 console.log('saveTwilioConfig - Config to save:', configToSave);- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:114 console.log('saveTwilioConfig - Updating existing config:', existingConfig._id);- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:119 console.log('saveTwilioConfig - Update result:', result);- Excessive console.log —
apps/rowboat/app/actions/twilio.actions.ts:121 console.log('saveTwilioConfig - No existing config found, creating new');- ...and 286 more
Suggested Next Steps
- Before refactoring add, run
sverklo_impactto see the 80 call sites apps/x/packages/core/src/config/config.tsis your most-imported file — changes here cascade widely- 15+ potential orphans detected — audit for dead code